notice
This is unreleased documentation for Rasa Documentation Main/Unreleased version.
For the latest released documentation, see the latest version (3.x).
Telegram
You first have to create a Telegram bot to get credentials.
Once you have them you can add these to your credentials.yml
.
Getting Credentials
How to get the Telegram credentials: You need to set up a Telegram bot.
To create the bot, go to Bot Father, enter
/newbot
and follow the instructions. The URL that Telegram should send messages to will look likehttp://<host>:<port>/webhooks/telegram/webhook
, replacing the host and port with the appropriate values from your running Rasa server.At the end you should get your
access_token
and the username you set will be yourverify
.If you want to use your bot in a group setting, it's advisable to turn on group privacy mode by entering
/setprivacy
. Then the bot will only listen when a user's message starts with/bot
.
For more information, check out the Telegram HTTP API.
Running on Telegram
Add the Telegram credentials to your credentials.yml
:
Restart your Rasa server to make the new channel endpoint available for Telegram to send messages to.
Handling /start
message
At the beginning of a conversation, the user will press the 'Start' button in Telegram.
This will trigger a message with the content /start to be sent.
Make sure your bot can handle this intro message by designing a specific intent in the nlu training data file.
Then add this start
intent to the domain alongside a story or rule to handle it.
Supported Response Attachments
In addition to standard text:
responses, this channel also supports the following components from the Telegram API:
button
arguments:- button_type: inline | vertical | reply
custom
arguments:- photo
- audio
- document
- sticker
- video
- video_note
- animation
- voice
- media
- latitude, longitude (location)
- latitude, longitude, title, address (venue)
- phone_number
- game_short_name
- action
Examples: