0
votes

My API endpoint don't receive any signal from Skype bot service but it's as expected with Web chat when i deploy my code into production. This API using: - .net core 2.2 - Bot builder v4.5.2 - host in IIS 7.5

The API is work fine in both 2 channels web chat & Skype at local using ngrok. At local i see request log in iis log beblow with each agent:

  • Skype channel: Microsoft-SkypeBotApi+(Microsoft-BotFramework/3.0)

  • Web Chat: BF-DirectLine+(Microsoft-BotFramework/3.2++https://botframework.com/ua)

At the production i only see requests come from Web Chat channel in iis log. I'm not sure about the firewall in production because this is server of 3rd.

I guess about 2 case:

  1. the Skype bot service don't send request to my endpoint with a special reason?

  2. Skype bot service sent out request but this request could not arrive my API end point (special restrict firewall).

I tried test for many cases but the result is the same:

  • I tried use the same bot in at 2 environments (change endpoint URL).
  • I tried create new bots.
  • I tried deployed the code into another server which i sure about the income & outcome request (result as my expectation at this server).

IIS logs at local:

2019-09-23 04:07:17 ::1 OPTIONS /api/messages - 3978 - ::1 Mozilla/5.0+(Windows+NT+10.0;+Win64;+x64;+rv:69.0)+Gecko/20100101+Firefox/69.0 https://botservice.hosting.portal.azure.net/botservice/?bundlingKind=PopularPartitioner&cacheability=3&extensionName=Microsoft_Azure_BotService&l=en&pageVersion=1.4.0.40&trustedAuthority=portal.azure.com 405 0 0 12

2019-09-23 04:07:32 ::1 POST /api/messages - 3978 - ::1 BF-DirectLine+(Microsoft-BotFramework/3.2++https://botframework.com/ua) - 200 0 0 13008

2019-09-23 04:08:19 ::1 POST /api/messages - 3978 - ::1 Microsoft-SkypeBotApi+(Microsoft-BotFramework/3.0) - 200 0 0 1431

IIS logs at production:

  2019-09-23 03:15:50 10.3.23.6 OPTIONS /api/messages - 7541 - 10.3.254.81 Mozilla/5.0+(Windows+NT+10.0;+Win64;+x64;+rv:69.0)+Gecko/20100101+Firefox/69.0 405 0 0 78

  2019-09-23 03:23:39 10.3.23.6 POST /api/messages - 7541 - 10.3.254.81 BF-DirectLine+(Microsoft-BotFramework/3.2++https://botframework.com/ua) 200 0 0 5981
1
To clarify, are you using Skype or Skype For Business? If Skype for Business, note that this channel was deprecated on June 30, 2019 in favor of Teams. Users can no longer register bots with Skype for Business currently and won't be able to send messages with them on Oct 31, 2019.mdrichardson
What is your appId? I'll need it to look into this further.mdrichardson
Hi mdrichardson, thanks for response. I am using Skype (not Skype For Business). This is my appId: 40bccb6f-d5e6-4b02-9915-060ebb959fe4Quinn
I can confirm that I experience this when testing your bot, as well. If you go to your App Registration > Authentication > Supported Account Types, is there a green check mark at "Accounts in any organizational directory (Any Azure AD directory - Multitenant) and personal Microsoft accounts (e.g. Skype, Xbox)"mdrichardson
I also see that you're hosting your bot on a custom domain. Do you have a firewall or proxy that might be interfering?mdrichardson

1 Answers

0
votes

The root cause of this issue is my server have not yet enabled TLS 1.2. After I enable TLS 1.2 for this server, every thing work as expected.

This is a requirement for the endpoint: https://blog.botframework.com/2018/11/06/announcement-azure-bot-service-enforcing-transport-layer-security-tls-1-2/