MS Teams Bot 邀请呼叫队列作为参与者

MS Teams Bot invite Call Queue as Participant

我在 MS Teams 上有一个通信机器人。这个想法是,用户可以呼叫这个机器人,然后在收集到有关呼叫者的一些信息后,机器人将邀请代理加入通话。该机器人还有一些其他的中介角色,所以我希望它留在通话中。 到目前为止,我已经能够邀请普通用户加入通话,但对于呼叫队列和自动助理等应用程序,我收到了 403 错误代码。 我就是这样试的。

        const requestConfig = {
        "headers": {
            'Authorization': `Bearer ${accessToken}`
        }
    }

    const requestBody = {
        "participants": [
          {
            "@odata.type": "#microsoft.graph.invitationParticipantInfo",
            "identity": {
              "@odata.type": "#microsoft.graph.identitySet",
              
              "application": {
                "@odata.type": "#microsoft.graph.identity",
                "displayName": "Call Queue",
                "id": queueId
              }
            }
          }
        ],
      }

在此 post Link 中提到可以将未应答的呼叫重定向到队列,但我尚未能够重现这一点。 非常感谢反馈。

你可以试试这个方法:-

  • 在应用程序目录的根目录下创建一个 web.config 文件。

  • 将以下代码添加到web.config。

<!-- indicates that the index.js file is a node.js application 
to be handled by the iisnode module -->

<handlers>
  <add name="iisnode" path="index.js" verb="*" modules="iisnode" />
</handlers>

<!-- adds index.js to the default document list to allow 
URLs that only specify the application root location, 
e.g. http://mysite.antarescloud.com/ -->

<directoryBrowse enabled="true" />

要重定向到自动助理或呼叫队列,请使用“applicationInstance”标识。

const requestBody = {
    "targets": [{
        "@odata.type": "#microsoft.graph.invitationParticipantInfo",
        "identity": {
            "@odata.type": "#microsoft.graph.identitySet",

            "applicationInstance": {
                "@odata.type": "#microsoft.graph.identity",
                "displayName": "Call Queue",
                "id": queueId
            }
        }
    }],
}

编辑:在此处查看请求文档:https://docs.microsoft.com/en-us/graph/api/call-redirect?view=graph-rest-beta&tabs=http#request