Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

EchoVoiceBot: bot never connects to call, with no error #776

Open
GlebIsrailevich opened this issue Oct 21, 2024 · 3 comments
Open

EchoVoiceBot: bot never connects to call, with no error #776

GlebIsrailevich opened this issue Oct 21, 2024 · 3 comments

Comments

@GlebIsrailevich
Copy link

We trying to run (locally) the EchoBot example (GitHub: microsoftgraph/microsoft-graph-comms-samples/Samples/PublicSamples/EchoBot/).
Our prerequisites:
- Windows 10;
- Visual Studio 2022 Community;
- .NET version 4.7.1.
- Ngrok free version

  1. When we run them bot from Visual Studio (as administrator) it sucessfully initialazing a bot and than runs it. There is only one fail:
fail: EchoBot.Services.Http.BotMediaLogger[0]
      [SkypeBotsMediaPlatform][AppId:xxxxxxxxxxxxxxxxxxx] MediaPerf is not registered: no key found at SYSTEM\CurrentControlSet\Services\MediaPerf\Performance

But as i saw in issues its a kind of warning and it will be depreciated soon.
2. After setting up a bot we create a Post call to join call in Microsoft Teams in Postman.

localhost:9442/JoinCall
  1. Than we receiving these logs
info: EchoBot.Services.ServiceSetup.AppHost[0]
      Listening on: http://+:9442/
info: EchoBot.Services.ServiceSetup.AppHost[0]
      EchoBot: running
info: EchoBot.Services.Http.Controllers.JoinCallController[0]
      JOIN CALL
info: EchoBot.Services.Bot.BotService[0]
      AuthenticationProvider: Generating OAuth token.
info: EchoBot.Services.Bot.BotService[0]
      AuthenticationProvider: Generated OAuth token. Expires in 59,9828372716667 minutes.
info: EchoBot.Services.Bot.BotService[0]
      Call creation complete: xxxxxxxxxxxxxxxxxxxxxxx

Finally program reaches this Task:

private async Task StartAudioVideoFramePlayerAsync() 

(line 162 in BotMediaStream.cs)
where gets method finally {} and stops, without any logs which can point on any issue
4. Important Note: I've checked whether tcp works. And according to my tests in wireshark all tcp calls work correctly. But despite that fact im not receiving notitfication calls and any logs from microsoft graph.
5. Ports that im using:

  • "BotCallingInternalPort": "9442"
  • "BotInternalPort": "9441"
  • "MediaInternalPort": "8445"
  • "MediaInstanceExternalPort" choosen automatically by ngrok
  1. My configuration of ngrok (MediaInstanceExternalPort) differs from given in tutorial.I don't use remote_host property in ngrok, as it is a paid feature, i set up a redirect on a remote host with my domain, using following configuration of nginx:
server {
        listen 12152;
        proxy_pass 0.tcp.ngrok.io:12152;
    }

Where 12152 is my mediaInstanceExternalPort from ngrok tcp.
This setup successfully redirects tcp requests back to service, which can be checked from Wireshark.

And thats it, what can possibly be wrong and who have faced similar problems?

@InDieTasten
Copy link

Please make sure you are also funneling logs from the SDKs GraphLogger into your log stream. The logs you shared don't contain any info about media platform initialization

@GlebIsrailevich
Copy link
Author

Please make sure you are also funneling logs from the SDKs GraphLogger into your log stream. The logs you shared don't contain any info about media platform initialization

Some logs from Graph logger are showing after redirecting it to console, but no logs related to media initialization

@tranguyendinh
Copy link

Hi guy, can you tell me how to config ngrok for running Echobot locally

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants