microsoftgraph / microsoftgraph/microsoft-graph-comms-samples

Call Status is always 'Establishing' but never turned to established - Calling bot for Microsoft Team- Application Hosted Media

Open
#243 16 comments 1 reaction 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

I am really new to bot framework, I am currently working on a bot that is supposed to receive incoming (peer-to-peer) calls from Microsoft Teams using [Graph Calling SDK] and [Real time media library] and play an audio file (stored in a folder in my application) and get details of incoming audio media stream. My application is basically a .net framework 4.7.2 console application and i am trying to follow 'AVPFrontend' and 'HueBot Samples. Now the problem is when i don't involve any media configuration, bot answers the call and call is never disconnected. But when i include media platform settings, call status is never turned to 'Established' but it's always 'Establishing'

image

Following are my media platform settings:

builder.SetNotificationUrl(new Uri(ConfigurationManager.AppSettings["BotBaseURI"] + "api/calling"));
            builder.SetMediaPlatformSettings(new MediaPlatformSettings()
            {
                MediaPlatformInstanceSettings = new MediaPlatformInstanceSettings()
                {
                    CertificateThumbprint = "1c9bfea46besdfjsdk234234230e217b821666cf3f6",
                    InstanceInternalPort = 8500,
                    InstancePublicPort = 10119,
                    InstancePublicIPAddress = new IPAddress(0x0),
                    ServiceFqdn = "0.bot.conntoso.com",

                },

                ApplicationId = AppID,
            }
            );
            builder.SetServiceBaseUrl(PlaceCallEndpointUrl);

I am using ngrok to test and debug ngrok locally, following are my settings:
image

Expected behavior
The Call Status should turn to 'Established'

Additional context
From AVPFrontEnd sample, I have implemented PlatformCallController.cs (which addresses incoming call) and DemoController.cs (this should handle webhooks once call is accepted, according to my understanding). but code in DemoController.cs is never executed.
What am i missing, please help me to address this issue. Thanks!

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

Compare the AVPFrontend and HueBot samples with PlatformCallController.cs and DemoController.cs, then review the supplied MediaPlatformSettings and ngrok setup. Trace the incoming-call and webhook flow first, including where call status changes and where callbacks are logged. Done means the call reaches Established and DemoController.cs receives the expected webhook.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
api, audio-video-rtc, backend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.