call forwarding调查

2012-11-30 13:20 1073人阅读 评论(0) 收藏 举报
 分类:
通信技术(7) 

目录(?)[+]

call forwarding介绍

call forwarding是call增值业务;在TS24082中有详细的介绍 呼叫转移有3方用户

整个流程即:

各种呼叫转移流程

CFU 无条件呼叫转移

  • A方流程

     
     
     MS                                                           Network 
                                              SETUP 
      ------------------------------------------------------------------> 
                                             FACILITY 
        <----------------------------------------------------------------- 
                    Facility (Invoke = NotifySS (CFU, SS-Notification)) 
  • B方 没有动作;
  • C方
     
     
     MS                                                           Network 
                                              SETUP 
        < ---------------------------------------------------------------- 
                       Facility (Invoke = NotifySS (CFU, SS-Notification)) 
     Redirecting party BCD number (screening indicator, presentation indicator, redirecting party digits), Redirecting party subaddress 

CFB 用户忙时呼叫转移

  • A方流程

     
     MS                                                                Network 
                                              SETUP 
       ----------------------------------------------------------------------> 
                                             FACILITY 
        <--------------------------------------------------------------------- 
                        Facility (Invoke = NotifySS (CFB, SS-Notification)) 
  • B方
     
     MS                                                                   Network 
                                              SETUP 
        <----------------------------------------------------------------------- 
                                   RELEASE COMPLETE/RELEASE/DISCONNECT 
      -------------------------------------------------------------------------> 
                              ....Transaction Identifier (A-B).... 
                                 ....Cause # 17 (User Busy).... 
     
                                      FACILITY (TI=B-X) 
        <------------------------------------------------------------------------ 
                      Facility (Invoke = NotifySS (CFB, SS-Notification)) 
  • C方
     
     MS                                                                  Network 
                                              SETUP 
        < ---------------------------------------------------------------------- 
                        Facility (Invoke = NotifySS (CFB, SS-Notification)) 
     Redirecting party BCD number (screening indicator, presentation indicator, redirecting party digits), Redirecting party subaddress 

CFNRy 无回应呼叫转移

  • A方流程

     
     MS                                                                    Network 
                                              SETUP 
       ---------------------------------------------------------------------------------> 
                                             FACILITY 
        <------------------------------------------------------------------------ 
                        Facility (Invoke = NotifySS (CFNRy, SS-Notification)) 
  • B方
     
     MS                                                               Network 
                                      FACILITY 
       <----------------------------------------------------------------------- 
                     Facility (Invoke = NotifySS (CFNRy, SS-Notification)) 
  • C方
     
     MS                                                                  Network 
                                              SETUP 
        < ------------------------------------------------------------------- 
         Facility (Invoke = NotifySS (CFNRc, SS-Notification))Redirecting party BCD number (screening indicator, presentation indicator, redirecting party digits) 

CFNRc 用户不可达呼叫转移

  • A方流程

     
     MS                                                                   Network 
                                              SETUP 
         -----------------------------------------------------------------------> 
                                             FACILITY 
        <------------------------------------------------------------------------- 
                           Facility (Invoke = NotifySS (CFNRc, SS-Notification)) 
  • B方 没有动作;
  • C方
     
     
     MS                                                           Network 
                                     SETUP 
        < ---------------------------------------------------------------- 
         Facility (Invoke = NotifySS (CFNRc, SS-Notification))Redirecting party BCD number (screening indicator, presentation indicator, redirecting party digits) 

设置呼叫转移

MS                                                                        Network
REGISTER
------------------------------------------------------------------------>
Facility (Invoke = ActivateSS (呼叫转移类型, BasicServiceCode))
RELEASE COMPLETE
<-----------------------------------------------------------------------
Facility (Return result = DeactivateSS (SS-Status))
注册失败情况:从网络发以下请求中其中一种:
RELEASE COMPLETE
<- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ----
Facility (Return error (Error))
RELEASE COMPLETE
<- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Facility (Reject (Invoke_problem))

取消呼叫转移

MS                                                                      Network
REGISTER
--------------------------------------------------------------------------->
Facility (Invoke = DeactivateSS (呼叫转移类型, BasicServiceCode))
RELEASE COMPLETE
<---------------------------------------------------------------------------
Facility (Return result = DeactivateSS (SS-Status))
取消呼叫转移失败情况:从网络发以下请求中其中一种:
RELEASE COMPLETE
<- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Facility (Return error (Error))
RELEASE COMPLETE
<- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Facility (Reject (Invoke_problem))

呼叫转移代码实现

呼叫转移界面显示实现

主要在callnotifer.java中getSuppSvcNotificationText();主要实现了若用户设置好呼叫转移后,发生呼叫转移时以toast形式提示给用户。
主要分下面2个方面(A 打电话给B,B设置呼叫转移到C;)

  • 呼出MO

    • MO_CODE_UNCONDITIONAL_CF_ACTIVE/MO_CODE_SOME_CF_ACTIVE: B激活了呼叫转移功能,若B拨打电话出去时,当modem侧上报Alerting消息里包含了faclity的消息,根据B设置的callforwarding的条件,显示给用户;
    • MO_CODE_CALL_FORWARDED: A拨打电话给B,呼叫转移给C,接收到网络端发过来的facility消息,在用户A上显示此电话是一个呼叫转移call;
  • 呼入MT
    • MT_CODE_FORWARDED_CALL:用户C接到呼叫转移过来的call,接收到网络端发过来的facility消息,在用户C上显示这是一个呼叫转移call;
    • MT_CODE_ADDITIONAL_CALL_FORWARDED:当用户B设置为CFB 或是 CFNRy ,若发生了呼叫转移,接收到网络端发过来的facility消息,在用户B上显示该call已呼叫转移;(CFNRy 没有确定)

SETUP消息中包含facility消息表明此为一个forwarding call

  • cmcall.c

    • cmcall_rpt_proc() 底层上报facility消息到CM侧;
    • cmwcall_rpt_call()
      • 根据cm_rpt_ptr->hdr.cmd ,case:CM_MT_CALL_SS_IND 处理;
      • 若是一个forwarding call,则通知上层,消息为:CM_CALL_EVENT_CALL_BEING_FORWARDED
  • qmi_voice_cm_if.h
    • 把底层上报的消息修改为qmi侧能识别的消息;CM_CALL_EVENT_CALL_BEING_FORWARDED--->QMI_VOICE_CM_IF_EVT_CALL_BEING_FORWARDED
    • qmi_voice_cm_if_fill_and_send_sups_notification_ind()对该消息进行处理;
      • 赋值notify_type然后调用qmi_voice_cm_if_unsol_response();header=QMI_VOICE_CM_IF_CMD_SUPS_NOTIFICATION_IND;
    • qmi_voice_cm_if_unsol_response()对header=QMI_VOICE_CM_IF_CMD_SUPS_NOTIFICATION_IND
      • 再一次进行那个赋值
      • dcc_send_cmd(DCC_QMI_VOICE_CMD, data_ptr);
  • DCC_QMI_VOICE_CMD的情况由qmi_voice_process_cmd()处理
  • qmi_voice.c
    • qmi_voice_process_cmd() header:QMI_VOICE_CM_IF_CMD_SUPS_NOTIFICATION_IND;
    • qmi_voicei_sups_notification_ind()
    • qmi_svc_send_ind(xx,xx,VOICEI_CMD_VAL_SUPS_NOTIFICATION_IND【0x0032】,ind),上报到qcril侧;
  • voice_service_v02.h
    • QMI_VOICE_SUPS_NOTIFICATION_IND_V02 0x0032
  • qcril_qmi_voice.c
    • qcril_qmi_voice_unsol_ind_cb_helper()

      • case:QMI_VOICE_SUPS_NOTIFICATION_IND_V02 --->qcril_qmi_voice_sups_notification_ind_hdlr()
    • qcril_qmi_voice_sups_notification_ind_hdlr()
      • 根据notification_type进行处理。若来电时forwarding call,符合case:NOTIFICATION_TYPE_INCOMING_FORWARDED_CALL_V02;则标明此为forwarding call;上报给RIL侧;
      • 上报消息RIL_UNSOL_SUPP_SVC_NOTIFICATION;该上报没有标明这是什么条件的呼叫转移,只是说明此为一个呼叫转移的电话。

SETUP消息中没有facility消息但包含redirecting number的forwarding call

call forwarding相关推荐

  1. USRP E310启用SSH的X11 Forwarding功能

    SSH的X11 Forwarding功能提供了一个非常好的方法,在你的本地主机上执行远程主机的GUI程序. 1.USRP E310中做如下配置: 打开/etc/ssh/sshd_config,并添加如 ...

  2. OSPF:Forwarding Address in NSSA External LSA

    NSSA External LSA中的Forwarding Address (1)与AS External LSA的比较 说明: 转发地址继承原路由下一跳所需条件 下一跳所属网段参与OSPF进程.对应 ...

  3. Docker报错 WARNING: IPv4 forwarding is disabled. Networking will not work.

    问题:创建容器的时候报错 # docker run -it -p 30001:22 --name=centos-ssh centos /bin/bash WARNING: IPv4 forwardin ...

  4. Xshell 连接报错解决:WARNING! The remote SSH server rejected X11 forwarding request.

    一.报错情况 WARNING! The remote SSH server rejected X11 forwarding request. 二.解决方案 (1)编辑文件:/etc/ssh/sshd_ ...

  5. Port Forwarding Port Triggering

    2019独角兽企业重金招聘Python工程师标准>>> 在使用NAT的网络中,内部终端的IP地址为私网地址,发出去的IP包在NAT网关处进行地址转换,以公网地址与外部联系.在转换过程 ...

  6. 创建容器时[Warning] IPv4 forwarding is disabled. Networking will not work.

    创建容器时[Warning] IPv4 forwarding is disabled. Networking will not work. 解决办法: 在docker的宿主机中更改以下 [root@l ...

  7. docker WARNING: IPv4 forwarding is disabled. 解决方法

    [root@localhost ~]# docker build -t test1 . ...省略... WARNING: IPv4 forwarding is disabled. Networkin ...

  8. docker - 启动container时出现 [warning] : ipv4 forwarding is disabled. networking will not work

    起因 今天在一台新的centos宿主机上安装docker,由于关闭了iptables,在此之后启动container的时候会出现警告: WARNING: IPv4 forwarding is disa ...

  9. How to Set up SSH Tunneling (Port Forwarding)?

    How to Set up SSH Tunneling (Port Forwarding) Example:ssh -N -L 0.0.0.0:8005:127.0.0.1:8005 username ...

  10. uva 12442 . Forwarding Emails

    "... so forward this to ten other people, to prove that you believe the emperor has new clothes ...

最新文章

  1. Spring之注解方式实例化Java类
  2. PTA 基础编程题目集 7-20 打印九九口诀表 C语言
  3. 走向通用智能的核心:任务树的建立
  4. This text field does not specify an inputType or a hint
  5. 初试BMap时出现BMap is not defined错误(HTML页面)
  6. .NET基础示例系列之二十:对图片的几种简单处理
  7. linux 环境变量 export PATH和PATH有什么区别?
  8. 怎么用计算机弹出soldout,SOLDOUT2游戏新手攻略玩法全面介绍
  9. OPENSSL ENGINE机制
  10. 定义jQuery插件
  11. 使用脚本删除ios工程中未使用图片
  12. 如果背单词,可能需要的参考辞典...
  13. x的x分之一次方极限x趋于0_x分之e的x次方减一的极限
  14. oracle取得组内行号,行号
  15. 多个端口指定多个目录。花生壳多个域名多个网站
  16. C/C++ 反编译工具开源软件
  17. 挖掘服务器ads怎么修改密码,数据管理服务器ADSADX.PDF
  18. android连路由器 mtu,解决app无网络问题,将宽带路由器MTU从1500修改成1480
  19. 一种有趣的隐写技术(图转声,声转图)
  20. c语言流控制(20180710)

热门文章

  1. 64位系统装32位mysql有问题吗_32位系统部署到64位下常见问题及解决
  2. 网页源代码查看竟然有这么多方法!你都知道吗?
  3. 跟着小码哥一起学习OC语法,都在这里了
  4. 编码器脉冲计数器/2路DI高速计数器Modbus RTU模块
  5. JAVA学习路线图---(JAVA1234)
  6. React-滑条组件使用
  7. Linux 管道 管道命令 命名管道
  8. 阿里云服务器ubuntu 16.04 安装mysql
  9. 对多个Excel表中的数据进行合并计算
  10. php date 格式时分秒,PHP 把秒数转为时分秒格式