SOLVED
Home

Tracking / listing the participants in a call using graph API

%3CLINGO-SUB%20id%3D%22lingo-sub-752251%22%20slang%3D%22en-US%22%3ETracking%20%2F%20listing%20the%20participants%20in%20a%20call%20using%20graph%20API%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-752251%22%20slang%3D%22en-US%22%3E%3CP%3EI%20am%20developing%20a%20bot%20which%20takes%20a%20call%20from%20a%20user%20then%20invites%20other%20participants.%20It%20would%20be%20advantageous%20to%20keep%20track%20of%20the%20participants%20in%20a%20call%2C%20whether%20they%20were%20added%20by%20the%20bot%20or%20the%20user.%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3EOnce%20the%20bot's%20calling%20endpoint%20receives%20a%20message%20that%20the%20call%20has%20been%20established%2C%20the%20bot%20invites%20participants%20by%20making%20a%20request%20to%20the%20graph%20on%20app%2Fcalls%2F%7Bid%7D%2Fparticipants%2Finvite%20with%20the%20participant%20details%20in%20the%20body.%20This%20returns%20a%20response%20containing%20the%20details%20of%20a%20comms%20operation.%20When%20the%20invited%20participant%20accepts%20the%20invitation%2C%20the%20calling%20endpoint%20receives%20a%20message%20that%20the%20comms%20operation%20was%20deleted%20and%20the%20status%20is%20%22completed%22.%20So%20far%20so%20good-%20I%20now%20know%20that%20the%20participant%20is%20in%20the%20call.%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3EThe%20problem%20is%20that%20if%20a%20human%20participant%20in%20the%20call%20invites%20someone%2C%20there%20is%20no%20message%20to%20indicate%20this%20on%20the%20calling%20endpoint.%20Should%20there%20be%3F%20Is%20there%20a%20way%20for%20the%20bot%20to%20know%20when%20a%20person%20has%20been%20invited%20by%20another%20person%20in%20the%20call%3F%3C%2FP%3E%3CP%3E-%3C%2FP%3E%3CP%3EA%20related%20issue%20is%20that%20when%20I%20try%20to%20request%20the%20list%20of%20participants%20in%20a%20call%20(as%20detailed%20on%20%3CA%20href%3D%22https%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fgraph%2Fapi%2Fcall-list-participants%3Fview%3Dgraph-rest-beta%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%22%3Ehttps%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fgraph%2Fapi%2Fcall-list-participants%3Fview%3Dgraph-rest-beta%3C%2FA%3E)%20the%20response%20suggests%20there%20are%20none.%20For%20example%3A%3C%2FP%3E%3CP%3E%3CBR%20%2F%3EI%20place%20a%20call%20to%20the%20bot%2C%20and%20the%20calling%20endpoint%20receives%20a%20notification%20of%20an%20incoming%20call%20with%20id%20471f0300-401f-4c4a-9967-3cee9a052519.%20The%20bot%20answers%20the%20call%20with%20a%20POST%20on%3A%3CBR%20%2F%3E%3CA%20href%3D%22https%3A%2F%2Fgraph.microsoft.com%2Fbeta%2Fapp%2Fcalls%2F471f0300-401f-4c4a-9967-3cee9a052519%2Fanswer%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%22%3Ehttps%3A%2F%2Fgraph.microsoft.com%2Fbeta%2Fapp%2Fcalls%2F471f0300-401f-4c4a-9967-3cee9a052519%2Fanswer%3C%2FA%3E%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3EThe%20bot%20subsequently%20receives%20a%20message%20on%20the%20calling%20endpoint%20that%20it%20has%20been%20established.%20I%20can%20query%20the%20graph%20about%20this%20call%20by%20making%20a%20GET%3A%3CBR%20%2F%3E%3CA%20href%3D%22https%3A%2F%2Fgraph.microsoft.com%2Fbeta%2Fapp%2Fcalls%2F471f0300-401f-4c4a-9967-3cee9a052519%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%22%3Ehttps%3A%2F%2Fgraph.microsoft.com%2Fbeta%2Fapp%2Fcalls%2F471f0300-401f-4c4a-9967-3cee9a052519%3C%2FA%3E%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3EI%20get%20a%20response%20with%20code%20200%20and%20the%20details%20of%20the%20call%20in%20progress%2C%20so%20the%20call%20clearly%20valid%20and%20accessible.%20However%2C%20if%20I%20attempt%20to%20get%20the%20list%20of%20participants%20with%20this%20GET%3A%3CBR%20%2F%3E%3CA%20href%3D%22https%3A%2F%2Fgraph.microsoft.com%2Fbeta%2Fapp%2Fcalls%2F471f0300-401f-4c4a-9967-3cee9a052519%2Fparticipants%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%22%3Ehttps%3A%2F%2Fgraph.microsoft.com%2Fbeta%2Fapp%2Fcalls%2F471f0300-401f-4c4a-9967-3cee9a052519%2Fparticipants%3C%2FA%3E%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3EI%20get%20a%20response%20with%20code%20200%2C%20but%20the%20body%20contains%20the%20following%3A%3CBR%20%2F%3E%7B%22%40odata.context%22%3A%22%3CA%20href%3D%22https%3A%2F%2Fgraph.microsoft.com%2Fbeta%2F%24metadata%23app%2Fcalls('441f0300-451f-41a0-be85-4f4be0cb0204')%2Fparticipants%26quot%3B%2C%26quot%3Bvalue%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%22%3Ehttps%3A%2F%2Fgraph.microsoft.com%2Fbeta%2F%24metadata%23app%2Fcalls('%3C%2FA%3E%3CA%20href%3D%22https%3A%2F%2Fgraph.microsoft.com%2Fbeta%2Fapp%2Fcalls%2F471f0300-401f-4c4a-9967-3cee9a052519%2Fparticipants%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%22%3E471f0300-401f-4c4a-9967-3cee9a052519%3C%2FA%3E%3CA%20href%3D%22https%3A%2F%2Fgraph.microsoft.com%2Fbeta%2F%24metadata%23app%2Fcalls('441f0300-451f-41a0-be85-4f4be0cb0204')%2Fparticipants%26quot%3B%2C%26quot%3Bvalue%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%22%3E')%2Fparticipants%22%2C%22value%3C%2FA%3E%22%3A%5B%5D%7D%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3E-%3C%2FP%3E%3CP%3EI'd%20appreciate%20any%20insight%20on%20what%20I%20might%20be%20doing%20wrong%20here.%3CBR%20%2F%3EThanks%20a%20lot.%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3EEdit%3A%20Upon%20posting%20this%20earlier%2C%20it%20was%20immediately%20flagged%20as%20spam%20for%20some%20reason-%20being%20unsure%20whether%20or%20not%20it%20would%20re-appear%2C%20I%20made%20the%20same%20post%20at%20stack%20overflow%3A%3C%2FP%3E%3CP%3E%3CA%20href%3D%22https%3A%2F%2Fstackoverflow.com%2Fquestions%2F57009128%2Fmicrosoft-teams-tracking-listing-the-participants-in-a-call-using-graph-api%22%20target%3D%22_blank%22%20rel%3D%22nofollow%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%22%3Ehttps%3A%2F%2Fstackoverflow.com%2Fquestions%2F57009128%2Fmicrosoft-teams-tracking-listing-the-participants-in-a-call-using-graph-api%3C%2FA%3E%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-LABS%20id%3D%22lingo-labs-752251%22%20slang%3D%22en-US%22%3E%3CLINGO-LABEL%3EDeveloper%3C%2FLINGO-LABEL%3E%3CLINGO-LABEL%3EMicrosoft%20Teams%3C%2FLINGO-LABEL%3E%3C%2FLINGO-LABS%3E%3CLINGO-SUB%20id%3D%22lingo-sub-756672%22%20slang%3D%22en-US%22%3ERe%3A%20Tracking%20%2F%20listing%20the%20participants%20in%20a%20call%20using%20graph%20API%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-756672%22%20slang%3D%22en-US%22%3E%3CP%3E%3CA%20href%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F375355%22%20target%3D%22_blank%22%3E%40pault85%3C%2FA%3EThis%20question%20is%20a%20duplicate%20of%26nbsp%3B%3CA%20href%3D%22https%3A%2F%2Fstackoverflow.com%2Fquestions%2F57009128%2Fmicrosoft-teams-tracking-listing-the-participants-in-a-call-using-graph-api%22%20target%3D%22_self%22%20rel%3D%22nofollow%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%22%3ETracking%20%2F%20listing%20the%20participants%20in%20a%20call%20using%20Graph%20API%3C%2FA%3E.%20Please%20use%20this%20link%20to%20track%20the%20discussion%20on%20this.%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-758624%22%20slang%3D%22en-US%22%3ERe%3A%20Tracking%20%2F%20listing%20the%20participants%20in%20a%20call%20using%20graph%20API%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-758624%22%20slang%3D%22en-US%22%3EYes%2C%20apologies%20for%20the%20cross%20post-%20this%20one%20was%20flagged%20as%20spam%20and%20I%20couldn't%20see%20it%20in%20the%20list.%20Feel%20free%20to%20close%20it%20if%20necessary.%3C%2FLINGO-BODY%3E
pault85
New Contributor

I am developing a bot which takes a call from a user then invites other participants. It would be advantageous to keep track of the participants in a call, whether they were added by the bot or the user.

 

Once the bot's calling endpoint receives a message that the call has been established, the bot invites participants by making a request to the graph on app/calls/{id}/participants/invite with the participant details in the body. This returns a response containing the details of a comms operation. When the invited participant accepts the invitation, the calling endpoint receives a message that the comms operation was deleted and the status is "completed". So far so good- I now know that the participant is in the call.

 

The problem is that if a human participant in the call invites someone, there is no message to indicate this on the calling endpoint. Should there be? Is there a way for the bot to know when a person has been invited by another person in the call?

-

A related issue is that when I try to request the list of participants in a call (as detailed on https://docs.microsoft.com/en-us/graph/api/call-list-participants?view=graph-rest-beta) the response suggests there are none. For example:


I place a call to the bot, and the calling endpoint receives a notification of an incoming call with id 471f0300-401f-4c4a-9967-3cee9a052519. The bot answers the call with a POST on:
https://graph.microsoft.com/beta/app/calls/471f0300-401f-4c4a-9967-3cee9a052519/answer

 

The bot subsequently receives a message on the calling endpoint that it has been established. I can query the graph about this call by making a GET:
https://graph.microsoft.com/beta/app/calls/471f0300-401f-4c4a-9967-3cee9a052519

 

I get a response with code 200 and the details of the call in progress, so the call clearly valid and accessible. However, if I attempt to get the list of participants with this GET:
https://graph.microsoft.com/beta/app/calls/471f0300-401f-4c4a-9967-3cee9a052519/participants

 

I get a response with code 200, but the body contains the following:
{"@odata.context":"https://graph.microsoft.com/beta/$metadata#app/calls('471f0300-401f-4c4a-9967-3cee9a052519')/participants","value":[]}

 

-

I'd appreciate any insight on what I might be doing wrong here.
Thanks a lot.

 

Edit: Upon posting this earlier, it was immediately flagged as spam for some reason- being unsure whether or not it would re-appear, I made the same post at stack overflow:

https://stackoverflow.com/questions/57009128/microsoft-teams-tracking-listing-the-participants-in-a-...

2 Replies
Solution

@pault85 This question is a duplicate of Tracking / listing the participants in a call using Graph API. Please use this link to track the discussion on this.

Yes, apologies for the cross post- this one was flagged as spam and I couldn't see it in the list. Feel free to close it if necessary.
Related Conversations