英文:
Is there an event generated for declined teams calls in CSharp Graph Communications Calling SDK?
问题
The Microsoft Graph通信API会发送有关呼叫相关事件的Webhook回调,例如参与者加入和离开时会生成一个Webhook。当使用CSharp Graph通信调用SDK(https://microsoftgraph.github.io/microsoft-graph-comms-samples/docs/index.html)时,如果已经注册了相应的回调(ICommunicationsClient.Calls()[callid].Participants.OnUpdated),则会生成相应的事件。还可以注册一个回调以监听呼叫更新事件(ICommunicationsClient.Calls()[callid].OnUpdated)。我已经注册了这两个事件。
机器人有可能加入Teams会议,然后通过拨号邀请用户参加会议。在这种情况下,用户可以接受或拒绝邀请。如果用户接受并加入会议,我会看到参与者加入的Webhook以及相应的SDK事件回调。同样,当参与者稍后离开会议时也会看到。然而,如果用户拒绝,我会看到Webhook,但不会生成事件回调。
如果用户拒绝会议邀请,也会生成一个Webhook。此Webhook的数据形式如下:
[Webhook数据示例]
然而,我无法确定CSharp SDK是否将此Webhook公开为事件。它没有记录在案,也没有代码可用于确定如何获得有关此事件的信息。SDK中是否会为此Webhook生成事件,以及如何注册此事件呢?
我已尝试查看不同文档类中的SDK方法,以及检查现有的回调是否会响应此Webhook,但未能取得任何进展。
谢谢,Tom
英文:
The microsoft graph communications api sends webhook callbacks for various events related to calls, for example, when a participant joins and leaves, a webhook is generated. When utilizing the CSharp Graph Communications Calling SDK (https://microsoftgraph.github.io/microsoft-graph-comms-samples/docs/index.html), a corresponding event is generated if the appropriate callback is registered (ICommunicationsClient.Calls()[callid].Participants.OnUpdated). There is also a callback that may be registered to listen for call update events (ICommunicationsClient.Calls()[callid].OnUpdated). I have registered for both of these events.
It is possible for the bot to join a teams meeting, and then invite a user into the meeting via a dial-out. In this case, the user may accept and join the meeting, or decline the invitation. If the user accepts and joins the meeting, I see the participant join webhook as well as the corresponding sdk event callback. Likewise, when a participant later leaves the meeting. However, for a decline, I see the webhook, but no event callback is generated.
If a user declines a meeting invitation, a webhook is also generated. The data in this webhook is of the following form:
{
"@odata.type": "#microsoft.graph.commsNotifications",
"value": [
{
"@odata.type": "#microsoft.graph.commsNotification",
"changeType": "deleted",
"resource": "/app/calls/<callid-guid>/operations/<opid-guid>",
"resourceData": {
"@odata.type": "#microsoft.graph.inviteParticipantsOperation",
"clientContext": "<client-context-guid>",
"id": "<id-guid>",
"participants": [
{
"@odata.type": "#microsoft.graph.invitationParticipantInfo",
"identity": {
"@odata.type": "#microsoft.graph.identitySet",
"user": {
"@odata.type": "#microsoft.graph.identity",
"id": "<user-guid>",
"tenantId": "<tenantid-guid>"
}
},
"participantId": "<participant-id-guid>"
}
],
"resultInfo": {
"@odata.type": "#microsoft.graph.resultInfo",
"code": 603,
"message": "addParticipants failed for participant 8:orgid:<user-guid>. Underlying reason: Decline. DiagCode: 603#0.@",
"subcode": 0
},
"status": "failed"
},
"resourceUrl": "/communications/calls/<callid-guid>/operations/<opid-guid>"
}
]
}
However, I am not able to determine if the csharp sdk exposes this webhook as an event. It is not documented, nor is the code available for determining how I can get informed of this event. Is there an event that gets generated in the sdk for this webhook? And if so, how do I register for this event?
I have tried looking through the sdk methods in the various documented classes as well as checking to see if the existing callbacks are invoked in response to this webhook. I was unable to make any progress in doing so.
thanks,
Tom
答案1
得分: 1
CSharp Graph Communications Calling SDK 中似乎没有为拒绝的团队通话生成任何事件。
如果您希望,可以在这里提出此功能建议:Microsoft Teams社区
英文:
There doesn't seems to be any event generated for declined teams calls in CSharp Graph Communications Calling SDK.
If you wish you can suggest this feature here: Microsoft Teams Community
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论