|
|
|
|
|
 |
| SIP Phone 多业务框架解决方案 --- Open IP Phone Develop |
| 1. 多业务框架介绍 |
| 实现多业务框架的目的有: |
- 为多种SIP Phone 终端提供统一的应用框架,一套代码可以同时为PC/PDA 上的Softphone, 或者 SIP 电话机等多种终端服务
- 分离业务控制和信令控制功能
- 分离业务实现与实际媒体控制功能
|
| 多业务框架主要实现以下功能: |
- 实现语音通话功能
- 实现视频通话功能
- 实现用户交互操作
- 实现与协议无关(如MGCP, H.248, SIP, H.323,H.323M等)的标准特性
- 实现与协议无关的补充业务特性
- 实现用于自有的业务特性 |
| 多业务框架的应用场景有: |
- Audio/Video Telephone
- Software Phone
- SIP Software Phone |
| 2. 多业务框架模型 |
|
图1 多业务框架模型 |
| 在多业务框架中主要有以下模块构成 |
- SIP 协议栈,实现 SIP 信令的事务控制和会话管理
- SUA(SIP User Agent),实现了 SIP 多个呼叫(一端对一端为一个呼叫)的业务信令呼叫控制
- JPF (Juphoon Phone Framework),实现每个端点的业务管理和媒体控制(打开关闭媒体通道,负责信令中的媒体协商),同时负责接收用户的呼叫和业务控制命令,并且向用户通报接入的呼叫和相关操作状态
- Softphone GUI, Telephone UI, IAD UI 是接近用户级的实现,举例来说,对于Softphone GUI,就是实现了一个电话机的界面,有呼叫按钮,接听按钮 等等;对于 Telephone UI 来说就是实现了摘机,挂机,拨号,拍叉等按键的驱动
- AUDIO,VIDEO 是一层抽象的媒体控制层,JPF 只需要使用 AUDIO,VIDEO提供的操作接口(比如 Audio_StrmCreate 创建一个媒体流)即可实现对媒体通道的开关、流向控制(比如只发送,只接收等)。AUDIO 层负责跟具体声卡驱动或DSP驱动接口的实现,同时负责维护 RTP 媒体流的控制,而且,所有与 Audio QoS 相关的实现都在此模块来实现 |
| 3. 框架组件协作 |
|
图2 多业务框架协作路径 |
用户需要提供相关的协作组件: |
- DSP Service
提供语音Codec(比如G.711 A/U, G.723.1, G.729等) 和语音 QoS 组件(比如回声消除,静音抑制等)
- Video Service
提供视频采样和显示组件
- Telephone Service
提供摘机、挂机、拨号的驱动接口,LCD 显示组件等
|
|
图3 多业务框架用户交互 |
| 4. 多业务框架概念 |
|
图4 多业务框架主要概念 |
| 5. 多业务框架线程模型 |
|
图5 多业务框架线程模型 |
|