MS Teams bot no longer receives messages - microsoft-teams

After moving MS Teams bot to another server, it no longer replies to messages. It still successfully sends proactive messages on its own, however responding to messages no longer works. Messaging endpoint stayed the same (only IP changed)...
I watched for network activity when clicking a button in adaptive card (posted by bot) and error 502 is reported with {"errorCode":1008,"message":"Invoke agent action failed with status code: BadGateway"} returned. I'd appreciate any ideas how to sort this out... Thank you.

If the IP / URL of your bot changed you need to make sure to update the messaging endpoint in the bot definition.
If you registered your bot in dev.botframework.com or azure there's a setting "messaging endpoint url" which you need to update and point to the new ip.
If just the IP behind your URL changed, it might be some caching/dns issue on MS Teams end. Did you try to reinstall the bot completely?

Related

What happens to the activity if my end point is not accessible or returns a 500?

I have a Microsoft bot app that can be installed in Teams on a team.
For now, I save the tenant ID + team id in our DB when the app gets installed, via a received activity on our end point.
What happens if my prod is not up at the moment of the installation? (for whatever reason, could be an update or just a technical downtime...)
Is it lost forever? Is it retried?
Same question with a 500 error?
This activity is an example, it could be any other activity. Ex: a user is added/removed, a message has been sent etc...
For OnMembersAddedAsync; unfortunately there is no retry from the Teams side, it fires and forgets.
The information in that Activity will be included in any subsequent send from Teams - so the bot can recover, if the user interacts with the bot again. Messages would just be sent when the bot recovers.
You can find a bit more info on Teams and events here:
How do I send a 1:1 welcome message?

Microsoft Bot send the response twice in Teams

I've used Microsoft bot framework SDKv4, and integrated to Teams channel. It is running well, but giving responses twice.
But, I didn't get the same behavior, while I tested it on Emulator and Web Chat in Azure Portal.
However, I can see below issue, while I ping the bot in web chat and get a response.
Further, I can also see, that its always 'sending' as a status although I got a valid response, and the status later changes to "Send Failed. Retry"
Is the issue related to my teams integration for getting message twice? and how, should I fix it!
Are you using webhooks? If so, having multiple webhooks with same ID could be the reason for double messages. Hope this helps
I made my bot working. It was the issue of MS authentication!
I had a call with MS support person and the root cause appeared to be only the MS authentication. Had to reset app secret and then re-deloyment.
Its weird that, although it was not getting authenticated primarily yet it was returning me the response. This, I still haven't got it!

Sending messages to my bot via Slack gets no response

I have a bot deployed to our Azure subscription. Using the webchat channel, I can interact with the bot using the url:
http://mybotname.azurewebsites.net/
We have added the bot to Slack as an app. We followed all the instructions given by the documentation on how to add a bot into Slack - https://learn.microsoft.com/en-us/azure/bot-service/bot-service-channel-connect-slack?view=azure-bot-service-3.0
When I send a message to the bot in the Slack channel we have created, I get no response. There is not error message, or in fact anything, returned.
Whereabouts can I start looking to see what the problem could be? Suggestions for error logs, traces, etc would be appreciated. I enabled App insights for the Azure Web App which the bot runs under, but nothing comes up as an error, or warning, or anything. I'm a bit lost here, any suggestions would be appreciated.
Note that I was made aware that, for Slack, I may need to tailor the responses in order for Slack to render them e.g. FormFlow define options for string field
I'm not sure how to do that, or even if this is a case that my bot simply isn't working in Slack regardless of how I'd format the responses.

MS bot not working on Skype for Business

I have registered an MS bot on over Skype for business channel, the bot was searchable and responding for few days but no I am getting below error in "Bot Channel registration">channels> issues
"There was an error sending this message to your bot: HTTP status code NotFound".
On SFB I get error
"Error happened in Skype for Business service when reaching bot service".
Bot is hosted over azure in web API working and fine in Web channel, whereas with SFB its not hitting the API endpoint.
Every time I send a message from skype for businesss, I get the same error on bot channel registration.
Environment is a hybrid of Lync 2010 and Skype for business online and after registration bot was searchable and responding to users on SFB online.
What could be the possible reason for this error?
For my situation I realized that if I dont change messaging endpoint area everything goes well.I mean I was adding Microsoft App Id to my endpoint like https://myendpoint/{{MicrosoftAppId}} after bot created .It is because you can have your microsoft app id after you create the bot.What is awkard is that despite messaging endpoint looks an editable area when I change it I am falling into error place where my endpoint is never called[again webchannel works fine , it looks Skype For Business needs some refactoring]. However I found that if I dont change this endpoint url bot works fine for Skype For Business and my endpoint is hit successfully .So keep your messaging endpoint constant and set it only when creating your bot.

Bot framework Unable to use with Skype For Business

I've built a Bot using C#. I tested it using the emulator, web chat, direct line and Skype, and it's working as expected.
I followed the steps to register the bot with skype for business, I waited more than 24 hours to see what's happen.
So far, I can see the Bot as a contact, however, when I try to send a message, the error
"Error happened in Skype for business when reaching bot service. We
saved this conversation. You'll see it soon in the Conversations tab
in Skype for Business and in the Conversation History folder in
Outlook."
Looking for some logs or something, I collected some info, that I'm sharing here.
Analytics from BOT that proves that it's reaching it:
The Log for SFB channel said: "There was an error sending this message to your bot: HTTP status code NotFound"
It's look that the Bot endpoint is not available. When I registered it in SFB, I've been using NGROK (to run agains my machine), but later I've change it to a azure site.
"Old" endpoint is used yet today:
So, all I can guess is that Bot End Point was "registered" at the moment that I made the registration of my Bot in SFB, and now it's not possible to change it.
Does it make sense to anyone of you?
My problem seems to be kind of similar to Bot Framework - An error while sending a message from Skype for Business
Adrián
Ok, I'm sure the problem with the bot was the endpoint registration. I found a powershell script that update the endpoint.
I Opened Windows PowerShell as Administrator and run the ff scripts:
Import-PSSession (New-CsOnlineSession -Credential (Get-Credential))
Set-CsOnlineApplicationEndpoint -Uri sip:username#yourdomain.com
Obviously, I changed username#yourdomain.com with my own.
Then, after waiting 8 hours (or so), I was able to communicate with the bot, using SFB as channel.
Bot running as expected
I hope this can be useful for others.

Resources