Telegram¶
In Telegram, although the configuration uses the term channels, they are actually implemented as groups with topics.
Limitations
We use the HTML parser, so links (source, runbook) will not be generated if their format does not comply with standards.
For example, a link that only contains a hostname (like http://localhost:8000) will be ignored.
✅ Workaround: use a valid domain name or an IP address.
Create a bot¶
Follow this instruction. Save the bot token as the TELEGRAM_BOT_TOKEN environment variable (used in section 2.3 here).
Configure group¶
-
Open your group, go to the menu, and click "Manage group":
- enable "Topics"
- optionally, set our logo by clicking the "photo" icon
- click Save
-
Add the bot to your group
-
Promote the bot to administrator, enable "Manage topics"
-
All users from
messenger.admin_usersmust be members of every group listed in therouteblock -
Add users from
messenger.chainsto their respective groups.For simplicity, you can add all users from
messenger.usersto all groups defined in therouteblock -
It is highly recommended to mute group notifications forever to reduce noise
-
Get the group ID (using the
@myidbotbot)- add
@myidbotbot to group - go to the group's "General" topic and send the command:
/getgroupid@myidbot - use the returned group ID in the
messenger.channelsconfiguration block - you can remove
@myidbotafterwards
- add
-
Make sure the IMPulse bot has permission to interact with users. If you see the log warning "user <username> not found in Telegram and will not be notified" - ask the user
<username>to send a message to the bot. This usually resolves the issue.