Retrieving chatinfo and attendees using MS Graph SDK

%3CLINGO-SUB%20id%3D%22lingo-sub-2051281%22%20slang%3D%22en-US%22%3ERetrieving%20chatinfo%20and%20attendees%20using%20MS%20Graph%20SDK%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2051281%22%20slang%3D%22en-US%22%3E%3CP%3EStarting%20with%20a%20sample%20oauth%20%3CA%20href%3D%22http%3A%2F%2F(https%3A%2F%2Fgithub.com%2Fmicrosoftgraph%2Faspnetcore-connect-sample%22%20target%3D%22_self%22%20rel%3D%22nofollow%20noopener%20noreferrer%22%3Eapp%3C%2FA%3E%26nbsp%3BI%20am%20trying%20to%20retrieve%20info%20about%20an%20online%20meeting%20that%20occurred.%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CPRE%20class%3D%22lia-code-sample%20language-csharp%22%3E%3CCODE%3ECreate%20the%20client%3A%0A%0Avar%20graphClient%20%3D%20_graphServiceClientFactory.GetAuthenticatedGraphClient((ClaimsIdentity)User.Identity)%3B%3C%2FCODE%3E%3C%2FPRE%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CPRE%20class%3D%22lia-code-sample%20language-csharp%22%3E%3CCODE%3EMake%20request%3A%0A%0Avar%20returnObj%20%3D%20await%20graphClient.Me.OnlineMeetings.CreateOrGet(meetingID).Request().PostAsync()%3B%3C%2FCODE%3E%3C%2FPRE%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3EThe%20problem%20is%20the%20lack%20of%20information%20returned.%20I%20am%20trying%20to%20retrive%20the%20chat%20from%20the%20meeting%2C%20which%20seems%20like%20it%20should%20be%20in%20returnObj.ChatInfo%20but%20this%20is%20all%20I%20get%20back%3A%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CPRE%20class%3D%22lia-code-sample%20language-csharp%22%3E%3CCODE%3E%7B%0A%22threadId%22%3A%2219%3Ameeting_SOMELONGUNIQUESTRINGHERE%40thread.v2%22%2C%0A%22messageId%22%3A%220%22%2C%0A%22%40odata.type%22%3A%22microsoft.graph.chatInfo%22%0A%7D%3C%2FCODE%3E%3C%2FPRE%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3E%3CBR%20%2F%3EAlso%20missing%20are%20the%20attendees%20in%20Participants%20(count%3D0).%20I%20know%20there%20are%20non%20zero%20attendees%20and%20that%20a%20chat%20log%20exists.%3C%2FP%3E%3CP%3ETrying%20Select%20or%20Expand%20does%20not%20help.%20Select%20returns%20nothing%20new%2C%20and%20expand%20gives%20an%20error%20along%20the%20lines%20of%20%60Message%3A%20Parsing%20OData%20Select%20and%20Expand%20failed%3A%20Property%20'participants'%20on%20type%20'microsoft.graph.onlineMeeting'%20is%20not%20a%20navigation%20property%20or%20complex%20property.%20Only%20navigation%20properties%20can%20be%20expanded.%60%2C%20and%20similarly%20for%20chatinfo.%3CBR%20%2F%3EAlso%2C%20using%20the%20threadId%20I%20thought%20maybe%20I%20could%20do%20this%3A%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CPRE%20class%3D%22lia-code-sample%20language-csharp%22%3E%3CCODE%3Evar%20groups%20%3D%20await%20graphClient.Groups.Request().GetAsync()%3B%0AGroup%20group%20%3D%20groups%5B0%5D%3B%0AConversationThread%20chat%3B%0Achat%20%3D%20await%20graphClient.Groups%5Bgroup.Id%5D.Threads%5BchatId%5D.Request().GetAsync()%3B%3C%2FCODE%3E%3C%2FPRE%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3E%3CBR%20%2F%3Ewhere%20for%20chatId%20I%20used%20the%20threadId%20from%20chatinfo%2C%20wholey%20and%20parsed%20out%20in%20different%20ways%20but%20I%20get%20Not%20Found.%3C%2FP%3E%3CP%3ENo%20idea%20if%20what%20I'm%20trying%20to%20do%20is%20even%20possible%20as%20the%20documentation%20is%20rather%20lacking%20in%20terms%20of%20tying%20different%20pieces%20together%20(Like%20what%20is%20the%20threadId%20for%3F%20where%20is%20it%20used%3F).%3C%2FP%3E%3CP%3EAlso%2C%20here%20are%20the%20various%20scopes%20I%20am%20requesting%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CPRE%20class%3D%22lia-code-sample%20language-csharp%22%3E%3CCODE%3E%22GraphScopes%22%3A%20%22User.Read%20User.ReadBasic.All%20Mail.Send%20OnlineMeetings.ReadWrite%20Group.Read.All%20Team.ReadBasic.All%22%3C%2FCODE%3E%3C%2FPRE%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-LABS%20id%3D%22lingo-labs-2051281%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
New Contributor

Starting with a sample oauth app I am trying to retrieve info about an online meeting that occurred.

 

 

Create the client:

var graphClient = _graphServiceClientFactory.GetAuthenticatedGraphClient((ClaimsIdentity)User.Identity);

 

 

 

 

 

Make request:

var returnObj = await graphClient.Me.OnlineMeetings.CreateOrGet(meetingID).Request().PostAsync();

 

 

The problem is the lack of information returned. I am trying to retrive the chat from the meeting, which seems like it should be in returnObj.ChatInfo but this is all I get back:

 

 

{
"threadId":"19:meeting_SOMELONGUNIQUESTRINGHERE@thread.v2",
"messageId":"0",
"@odata.type":"microsoft.graph.chatInfo"
}

 

 


Also missing are the attendees in Participants (count=0). I know there are non zero attendees and that a chat log exists.

Trying Select or Expand does not help. Select returns nothing new, and expand gives an error along the lines of `Message: Parsing OData Select and Expand failed: Property 'participants' on type 'microsoft.graph.onlineMeeting' is not a navigation property or complex property. Only navigation properties can be expanded.`, and similarly for chatinfo.
Also, using the threadId I thought maybe I could do this:

 

 

var groups = await graphClient.Groups.Request().GetAsync();
Group group = groups[0];
ConversationThread chat;
chat = await graphClient.Groups[group.Id].Threads[chatId].Request().GetAsync();

 

 


where for chatId I used the threadId from chatinfo, wholey and parsed out in different ways but I get Not Found.

No idea if what I'm trying to do is even possible as the documentation is rather lacking in terms of tying different pieces together (Like what is the threadId for? where is it used?).

Also, here are the various scopes I am requesting

 

 

"GraphScopes": "User.Read User.ReadBasic.All Mail.Send OnlineMeetings.ReadWrite Group.Read.All Team.ReadBasic.All"

 

 

 

1 Reply