Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
ISO/IEC 29341-20-11标准定义了UPnP电话呼叫服务,这是UPnP电话体系结构中的核心组件,可在家庭和小型企业网络中实现呼叫控制功能。该服务规范提供了一个标准化接口,用于通过IP网络发起、管理和终止电话呼叫,同时支持音频和视频通信会话。它抽象了底层电话基础设施,使IP电话、软电话、媒体服务器和家庭网关等多种设备能够在多供应商环境中无缝互操作。该服务还支持紧急呼叫处理、呼叫转移、多方会议和呼叫等待等高级补充功能,满足从个人通信到企业协作的多样化需求。
呼叫服务公开一组反映网络中电话呼叫当前状态的状态变量。关键状态变量包括CallState(空闲、拨号、振铃、已连接、保持、会议等)、ActiveCallList(使用唯一标识符枚举所有当前活动呼叫)以及LineStatus(指示电话线路的可用性)。每个呼叫会话由唯一的CallID标识,服务维护用于诊断和计费目的的呼叫历史记录。呼叫服务还提供了详细的通话统计信息,包括呼叫时长、接通率和平均呼叫建立时间,为网络质量监控和用户体验优化提供数据支持。
管理呼叫转换的状态机遵循适用于分组交换网络的ITU-T Q.931建议。状态之间的转换由Dial(拨号)、Answer(应答)、Hangup(挂断)、Hold(保持)、Retrieve(取回)、Conference(会议)和Transfer(转接)等操作触发,每个操作都映射到具有明确定义的输入和输出参数的相应UPnP操作。该状态机还支持呼叫保持音乐播放、静音控制和通话录音等增强功能的状态转换,为开发者提供灵活的呼叫功能扩展能力。
| 操作 | 描述 | 必需参数 |
|---|---|---|
| Dial(拨号) | 向指定的URI发起呼出 | CallTargetURI, PreferredMedia |
| Answer(应答) | 接收入呼叫会话 | CallID |
| Hangup(挂断) | 终止活动呼叫会话 | CallID |
| Hold(保持) | 将活动呼叫置于保持状态 | CallID |
| Conference(会议) | 将多个呼叫合并为会议会话 | CallIDList |
| Transfer(转接) | 将呼叫转接到另一个URI | CallID, TargetURI |
| SendDTMF(发送DTMF) | 在呼叫期间发送DTMF音 | CallID, Digits |
典型用例包括基本的点对点呼叫、三方会议、呼叫转接以及与媒体服务器集成以实现语音邮件和自动话务员服务。该服务还支持主叫号码显示、呼叫等待通知和匿名呼叫拒绝等补充服务。此外,呼叫服务支持基于用户状态的路由策略,可以根据用户的在线状态自动选择呼入路由目标。
在实现UPnP电话呼叫服务时,必须特别注意UPnP状态机与底层SIP或H.323协议栈之间的同步。服务作为抽象层,将UPnP操作映射到SIP方法(例如,Dial对应INVITE,Hangup对应BYE,Hold对应带有保持SDP的re-INVITE)。必须最小化UPnP控制路径引入的延迟,以避免呼叫建立过程中出现可察觉的延迟。
安全考虑包括呼叫控制请求的认证、通过TLS加密信令消息、以及URI参数的验证以防止话费欺诈和未授权呼叫。制造商还应对Dial操作实施速率限制,以减轻自动化拨号场景中的滥用风险。