Make sure to copy the token that the BotFather gives you. It will look something like this:
110201543:AAHdqTcvCH1vGWJxfSeofSAs0K5PALDsaw
Setup Discourse
In your site settings, paste the token you got earlier into the chat integration telegram access token setting, and save it
Enable the chat_integration_telegram_enabled setting, and save it
Go to the Plugins tab, then Chat Integrations
Go to the Telegram tab
Note: if the Telegram tab is not visible, it means something went wrong when connecting to their API. You should check your site logs, then try again by re-enabling the chat_integration_telegram_enabled setting
Adding a channel
Add your bot to a group chat on telegram (or just start a private chat with it)
You should receive a message like this
If not, try sending a message which starts with /getchatid
Copy the Chat ID. If there’s a minus sign before it, make sure to include it - it’s very important!
Go to your discourse admin panel, Plugins , Chat Integrations , Telegram
Click Add Channel
Enter a name for the channel (this is only displayed in the discourse admin panel, it can be anything)
Paste the Chat ID from earlier into the box, then click Save Channel
To send notifications to a telegram broadcast channel, add the bot as a channel administrator, and then send the message
/getchatid
to obtain the chat ID. Then follow the instructions above to set up on Discourse.
In a broadcast channel you cannot use slash commands to manage rules.
Slash commands
You can use “slash commands” to control rules from Telegram. Check that the chat integration telegram enable slash commands site setting is enabled. Note that this gives anyone who can post in the group chat permission to edit the rules.
To learn how to use them, just send /help (or /help@my-forum-bot if in a group chat) and the bot will send you a help message.
Setting up command auto-complete (not necessary, but makes it much easier to use)
Select your bot, click edit bot, then edit commands
Copy and paste this list of commands in
watch - [category] [tag:name] | notify this channel for new topics and new replies matching rule
follow - [category] [tag:name] | notify this channel for new topics matching rule
mute - [category] [tag:name] | block notifications to this channel for posts matching rule
remove - [rule number] | remove a rule (see /status for numbers)
status - list all rules for this channel
help - display a help message
You should get a success message
Other bot customisations
Talk to the Telegram BotFather to customise the name, description and icon for your bot. You should leave “Group Privacy” enabled, otherwise the bot will try and respond to every single message in a group chat.
Not currently. It is possibly something that could be added (this is how Slack works), but given there is no concept of “organisations” on telegram, we would need to be careful that only public-facing categories are visible.
For per-user stuff you could try the telegram-notifications-plugin
I’ve set it up, and it works with bot itself. However, when I set it up for public channel and try to test, an error “422 No Reason Phrase” occurs.
Could someone help me out?
Hello,
Can you tell me what different Telegram notifications using the discourse-chat-integration plugin and Telegram Notifications Plugin (discourse-telegram-notifications)
I’ve configured everything successfully, except that whenever a new member leaves/adds into the telegram group which has the ‘chat integration bot’ as one of this groups member, I receive this msg in the telegram group:
New rule: /[watch|follow|mute] [category] [tag:name]
(you must specify a rule type and at least one category or tag)
watch – notify this channel for new topics and new replies
follow – notify this channel for new topics
mute – block notifications to this channel
Remove rule: /remove [rule number]
([rule number] can be found by running /status)
List rules: /status
Help: /help
This msg has started irritating every time a member is added or removed into/from the telegram group.
And if I create a telegram broadcast/channel and add the chat integration bot into that, this problem doesn’t arise therein.