1

I am developing chatbot for Slack using Microsoft Bot Framework. The Web app is hosted on azure. We have few installations.

Everything worked fine before this morning when I saw that new bot just didn't respond (the old one is still working).

We've been experimenting on permissions and auth keys on slack, so I thought that was the reason. But I tried to reinstall the app, bot user, auth keys etc from scratch and it didn't help. My configured endpoint just don't hit.

I think the issue is in communication between Slack and Microsoft Bot Framework, 'cos when I'm testing from chatbot panel's web client everything is working fine. Also, Slack representatives confirmed that there's no problem from their side.

UPDATE: I re-checked all credentials again and seems like it's working, don't know what was the issue. But two side questions still actual:

1) Can I test this channel of communication somehow? Cos when my endpoint didn't hit I can't get any info on what is happening. I have 0 errors on Microsoft Bot Framework web console.

2) Docs on configuring slack channel have changed recently and now it suggesting to add "Subscribe to Bot Events", while everything worked w\o it. Can you elaborate on that? Also, it's not quite clear what is {YourBotHandle} docs referring to in https://slack.botframework.com/api/Events/{YourBotHandle}

Ezequiel Jadib
  • 14,767
  • 2
  • 38
  • 43
Andrey Stepanov
  • 311
  • 2
  • 11

1 Answers1

2

Usually, the Bot Framework Portal is the place to see if any channel is reporting errors with your bot. You can also check https://github.com/Microsoft/BotBuilder/issues just in case there is a general problem with a channel.

Regarding the second question, {YourBotHandle} refers to the handle that you provided at the time of registering your bot, as explained here.

As far as why you need to subscribe to bot events, first I would recommend you to read the documentation about Events on Slack (here), but long story short, this allows the bot to subscribe to events and be notified when those happen instead of having the bot asking Slack if something happened or not.

One way to use the Events API is as an alternative to opening websocket connections to the real time messaging API. Instead of maintaining one or more long-lived connections for each team an application is connected to, you simply set up one or more endpoints on your own servers to receive events atomically in near real-time.

Ezequiel Jadib
  • 14,767
  • 2
  • 38
  • 43
  • 1
    Thank you, all that makes sense. So without event api, ms chatbot is just querying slack frequently to know if there was new events? – Andrey Stepanov Jul 25 '17 at 11:57
  • It seems so; I'm not sure how exactly it will behave, but if you said that it was working without that, then probably it just uses websockets connections. Please upvote ([Why voting is important?](https://stackoverflow.com/help/why-vote)) – Ezequiel Jadib Jul 25 '17 at 12:22