关于Microsoft Teams语音集成:CTI事件订阅与媒体分叉问询
关于Microsoft Teams语音集成的两个问题解答
1. 获取用户接听、挂断电话的CTI类事件
- Microsoft Graph变更通知支持通话事件监听,需订阅
communications/calls资源的状态变更。当用户通话状态从incoming转为answered(接听)、或从active转为completed(挂断)时,会触发通知推送。配置时需申请对应权限:应用权限可选Calls.Read.All或Calls.ReadWrite.All,委派权限可选Calls.Read。 - 替代方案:
- 若开发的是嵌入Teams的客户端应用,可直接使用Teams Client SDK提供的
callStarted、callEnded事件,在客户端层面监听通话状态变化。 - 若部署了Direct Routing,可通过会话边界控制器(SBC)捕获通话事件,适配企业级部署场景。
- 若开发的是嵌入Teams的客户端应用,可直接使用Teams Client SDK提供的
- 注:Webhooks and Connectors仅针对频道消息场景,确实不适用用户通话事件监听。
2. Teams通话媒体流分叉至其他目的地做智能分析
- 可通过Microsoft Graph Communications API的媒体流订阅功能实现。在创建或加入通话时,配置媒体流转发规则,将实时音频流发送到智能分析服务。该功能支持以SIP或WebRTC协议将媒体流推送到指定端点,满足实时对话分析需求。
- 使用该功能需应用具备
Calls.Initiate.All、Calls.AccessMedia.All等权限,同时你的分析服务需支持接收对应协议的媒体流。
内容的提问来源于stack exchange,提问作者Alan
相关产品推荐
相关产品推荐

