You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure通信服务Teams互通:外呼Teams PSTN通话报错排查

问题:Azure通信服务Teams互通过程中PSTN外呼报错修复

我参考Azure通信服务JavaScript示例及Teams互通用例实现PSTN外呼功能,添加代码后出现错误。

添加的代码:

startPSTNButton.addEventListener('click',async () => {
    try {
        console.log('PSTN IN');
        const pstnCallee = { phoneNumber: '+81311112222' }
        const oneToOneCall = teamsCallAgent.startCall([pstnCallee], { threadId: '00000000-0000-0000-0000-000000000000' });

        console.log('Call out');
        // Subscribe to the call's properties and events.
        subscribeToCall(oneToOneCall);
    } catch (error) {
        console.error(error);
    }
});

错误信息:

CallingCommunicationError: Starting a one to one with thread ID is invalid.
    at TeamsCallAgentImpl.startCall (sdk.bundle.js:183:140138)
    at W.value (sdk.bundle.js:161:2267)
    at HTMLButtonElement. (client.js:311:1) (anonymous) @ client.js:317

问题核心:设置threadId为00000000-0000-0000-0000-000000000000是否正确?该如何修复此错误?


解答

  • threadId设置无效:你使用的全零UUID作为threadId是错误的,且PSTN一对一外呼场景不需要指定threadId参数。threadId仅用于关联已存在的Teams群组会话,而PSTN外呼属于全新的点对点通话,不需要绑定任何现有线程。

  • 修复后的代码:直接移除startCall方法中的threadId配置项即可:

startPSTNButton.addEventListener('click',async () => {
    try {
        console.log('PSTN IN');
        const pstnCallee = { phoneNumber: '+81311112222' }
        // 移除无效的threadId参数
        const oneToOneCall = teamsCallAgent.startCall([pstnCallee]);

        console.log('Call out');
        // Subscribe to the call's properties and events.
        subscribeToCall(oneToOneCall);
    } catch (error) {
        console.error(error);
    }
});
  • 补充说明:仅当需要将通话关联到已有的Teams团队或群组聊天线程时,才需传递有效的threadId。对于PSTN这类点对点外呼,SDK会自动创建新的通话会话,无需手动指定该参数。

内容的提问来源于stack exchange,提问作者Shinnosuke Takeda

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 01:10:26