microsoftgraph / microsoftgraph/microsoft-graph-comms-samples

Unable to retrieve a large number of participants after accessing ssl.ClientCertificateErrors

Open
#754 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
No language data
Stars
253
Forks
275
Avg merge
1d 5h
Merged PRs (30d)
1

Description

Describe the issue

I have a question about the sample code in Samples/V1.0Samples/LocalMediaSamples/PolicyRecordingBot.
In the ProcessNotificationAsync function, an problem occurs when trying to get request.Properties["MS_OwinContext"]["ssl.ClientCertificateErrors"].

After accessing request.Properties[“MS_OwinContext”][“ssl.ClientCertificateErrors”], GraphLogger outputs the following warning when calling the CommunicationsClient.ProcessNotifications function.

After that, the ParticipantsOnUpdated function of the Sample.PolicyRecordingBot.FrontEnd.Bot.CallHandler class will no longer be called when the number of conference participants exceeds about 20 and more.
Therefore, participants are not retrieved.

Code Snippet

try
{
    var sslError = (request.Properties["MS_OwinContext"] as Microsoft.Owin.OwinContext).Environment["ssl.ClientCertificateErrors"];
}
catch (KeyNotFoundException)
{
}

Expected behavior

A large number of participants should be retrieved after accessing request.Properties["MS_OwinContext"]["ssl.ClientCertificateErrors"].

Graph SDK (please complete the following information):

  • Microsoft.Skype.Bots.Media, Version=1.26.0.94
  • Microsoft.Graph.Communications.Calls, Version=1.2.0.10574

Call ID

2e008480-759d-40c9-a2f0-bb15281d1089

Logs

2024-08-20T18:22:07.1299779Z Warning: NotificationDispatcher.cs:171 ProcessNotification
ScenarioId: 2583c502-ab58-448e-b7f4-77e22b71f946
AppId: 120e1c65-b587-42c8-a49d-6262b586c53d
AppName: Sample.PolicyRecordingBot.FrontEnd
No queue or registered callbacks for
Updated: /communications/calls/2e008480-759d-40c9-a2f0-bb15281d1089

Additional context

  • Even if this problem occurs, it will be called without any problem when there are less than 20 participants in the online meeting.
  • If the display name of participants is long, for example, the problem will occur even if there are less than 20 participants. In other words, it appears that this problem occurs when the data size of participant information becomes large.
  • Of course, if request.Properties[“MS_OwinContext”][“ssl.ClientCertificateErrors”] is not retrieved, this problem does not occur.
  • (request.Properties[“MS_OwinContext”] as Microsoft.Owin.OwinContext).Environment is an IDictionary.
    • When accessing the Count or Keys properties or using foreach, same problem will occur.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with ProcessNotificationAsync in Samples/V1.0Samples/LocalMediaSamples/PolicyRecordingBot/FrontEnd/Http/Controllers/PlatformCallController.cs and ParticipantsOnUpdated in FrontEnd/Bot/CallHandler.cs. Reproduce the issue while inspecting the ssl.ClientCertificateErrors access and the CommunicationsClient.ProcessNotifications warning in NotificationDispatcher.cs. Done means notification callbacks continue and participants are retrieved when participant data is large.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
api, backend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.