Bot integrations
An integration connects a bot to a messaging platform. One bot can have several — the same bot can be reachable on Telegram and by email.
This page is about connecting a bot to a messaging platform. To connect your own account with an outside service so a bot can act as you, see Tool integrations. Different feature, similar name.
Available platforms
| Platform | State |
|---|---|
| Telegram | Available |
| Available | |
| Discord, Slack, others | Not implemented. The platform layer is built to be extended, and no other adapter exists today. |
Discord and Slack are sometimes described as "coming soon". There is no partially-working version of either — nothing to enable, nothing to try.
Adding one
In the admin console, open Bots, select the bot, and add an integration.
What you supply differs more than you might expect:
Telegram — the bot token from BotFather. That token is the credential, and it is per bot.
Email — an address prefix, at most. The mail credentials are deployment-wide environment settings, not per-bot fields. See Email.
Enabling, disabling, removing
An integration can be disabled without being deleted; the bot stops handling messages from that channel and the configuration is kept. Deleting it removes the connection and unregisters the webhook.
Webhooks are managed for you
You never configure a webhook URL by hand. Mesa registers one when an integration is created or changed, checks the existing state first so it does not re-register needlessly, and retries with backoff when the platform rate limits it.
Connecting a channel does not authorize anyone to use it. The chat must also be authorized, and this bot assigned to it. Both checks fail without any message to the user — see Troubleshooting.