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

Teams呼叫机器人通过objectId转接至其他应用及语音信箱相关问题咨询

Teams呼叫转接相关问题解决方案

1. 直接通过objectId转接至其他Teams calling bot的实现

  • 同Azure AD租户下的Teams calling bot支持直接通过objectId完成转接,无需走PSTN号码。
  • 你遇到的Request authorization tenant mismatch错误常见原因有三个:
    • 发起转接的bot和目标转接bot不属于同一个Azure AD租户,目前Graph API原生不支持跨租户直接用应用objectId转接呼叫,跨租户场景只能走目标bot的PSTN号码实现
    • 你构造请求时传入的tenantId和你发起Graph API请求所用的access token对应的租户ID不一致,需要校验你获取access token时指定的租户参数和SetTenantId传入的值完全相同
    • 你填入的transferTargetId是目标应用的应用ID(Client ID),而非所需的Azure AD对象ID(Object ID),这两个值在Azure AD应用注册页是分开展示的,需要替换为正确的Object ID
  • 同租户场景下的请求构造优化:你可以删除多余的SetTenantId调用,确保请求头里的access token所属租户和目标应用所属租户一致即可正常完成转接。

2. 转接至语音信箱的实现方法

转接语音信箱需要在构造TransferTarget时指定语音信箱标识,参考代码示例如下:

var requestBody = new CallTransferRequestBody
{
    TransferTarget = new InvitationParticipantInfo
    {
        Identity = new IdentitySet
        {
            // 若转接至指定用户的语音信箱,Id填入该用户的AAD Object ID或用户主体名称(UPN)
            Voicemail = new Identity { Id = "<target-user-id-or-upn>" }
        },
        AdditionalData = new Dictionary<string, object>
        {
            {"endpointType", "voicemail"}
        }
    }
};
  • 使用前需要确认两点:
    • 你的bot已被授予Calls.Initiate.All或Calls.AccessMedia.All的应用级API权限
    • 目标用户已开通Exchange Online许可,且已激活Teams语音信箱功能

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 01:12:00