墨西哥telcel三方通话需求
0赞[DESCRIPTION]
墨西哥telcel 要求在1 active+1 hold + 1 incoming的时候,在来电option界面有两个菜单:1、end active and
accept:即挂断掉active call,然后将来电接起,hold call不变;2、end hold and hold active and accept: 即
挂断掉hold call,然后将active call给hold住,然后将来电接起。
[SOLUTION]
对于第一个菜单:end active and accept,实际上就是我方目前的replace这个功能,可以利用原来的replace菜单;
对于第二个菜单:end hold and hold active and accept,需要通过添加代码来实现,请参考如下solution:
09A:
1、设置一个全局标志位, 初始化为false。
2、在有一个held 和incoming的状态下,在option中show出这个菜单项;
3、点击菜单后,将标志位设置为true,去执行mmi_ucm_end_all_held_action();
4、在mmi_ucm_end_act_rsp函数中,在result = OK的case中,判断is_wait_dial为true,则执行dial action之后,添
加判断,如果之前设置的全局变量为true,则将其再置回false,并进行mmi_ucm_hold_and_accept_action()的动作即可
。
09B/10A:
1、在UCMUI.c中设置一个全局标志位,初始化为false;
2、在UcmSrvPrmt.c中添加一个permit函数,判断有1 hold,1 active,1 incoming voice call状态下,在option中
show出这个菜单项;
3、点击菜单后,将标志位设置为true,去执行mmi_ucm_end_all_held_action();
4、在mmi_ucm_act_callback中,在case SRV_UCM_END_ALL_HELD_ACT
case SRV_UCM_END_SINGLE_ACT
case
SRV_UCM_END_CONFERENCE_ACT
中都添加判断:判断之前的全局标志位是否为true,如果是则将其再赋为false,然后调用
mmi_ucm_incoming_call_sendkey();