Chat bots
Ask a project for work from Telegram, Slack, Discord or WhatsApp. Each request becomes a task, and the bot answers in the same thread.
Connect a bot
- Create the bot on its platform:
- Telegram: message @BotFather, send
/newbotand copy the token. To use it in groups, also send/setprivacyand choose Disable, so it sees messages that mention it. - Slack: create an app with the bot scopes
app_mentions:read,chat:writeandim:history, allow messages under App Home → Messages Tab, install it, and copy its Signing secret and Bot token (xoxb-…). - Discord: create an application and copy its Application ID, Public key and Bot token. Invite the bot to your server with the
botandapplications.commandsscopes. - WhatsApp: in a Meta app with a WhatsApp Business number, copy the Phone number ID, App secret and an Access token.
- Telegram: message @BotFather, send
- In tavya, open the project's Settings → Events, choose + Chat bot, paste them and Connect. Keep Start a task for each message on.
- Slack and WhatsApp only: paste the URL tavya shows into your app. For Slack it goes under Event Subscriptions → Request URL, with the bot events
app_mentionandmessage.im. For WhatsApp, paste the Callback URL and Verify token under WhatsApp → Configuration. Telegram and Discord are set up for you.
Who can ask
A task started from chat works with the authority of whoever connected the bot, and anyone who finds a bot can message it. So a bot takes requests only from people you allow, and nobody at first.
Message the bot yourself. It answers that you are not allowed yet, and you appear under the bot's Who can ask in Settings → Events. Choose Allow. Anyone else who asks shows up there too, with what they asked. Anyone lets in everyone who can message the bot, e.g. a private Slack workspace.
Ask
- Telegram: message the bot directly, or mention
@yourbotin a group (or reply to one of its messages). - Slack: mention
@yourbotin a channel, or message it directly. - Discord:
/tavya request: what you want done. - WhatsApp: message the number.
The bot answers On it with a link to the task. It writes again when the task needs your input, is ready for review, is done, fails or is cancelled. Reply in the same thread to answer its questions or add to the request; a new message starts a new task. Reviewing and approving the work happens in tavya.