Telegram Channel Plugin
The Telegram channel plugin is an alert_deliver plugin that sends alert messages to Telegram chats through the Telegram Bot API. It receives Core-rendered messages and adapts them to Telegram transport.
Highlights
- Sends messages with bot token and chat id configuration.
- Supports
plain,HTML, andMarkdownV2parse modes. - Provides disable-notification, protected-content, timeout, retry, and backoff settings.
- Separates bot-token validation from optional test-chat message delivery in health checks.
Before Registration
- Prepare a BotFather-issued bot token and target chat id.
- For groups or supergroups, confirm that the bot can send messages.
- Review escaping rules before enabling formatted parse modes.
Operations Tips
- Bot tokens are sensitive and must not appear in health or action responses.
- Core-rendered plain text is the safest default.
- Telegram does not provide a universal idempotency key; use Core delivery sessions when investigating duplicates.
Operator Views
- Channel settings cover bot token, chat id, parse mode, notification/protected-content options, timeout, and retry policy.
- Telegram has no standalone channel page. Draft diagnostics appear in the registration/edit form and test-result details.
- The form assistant previews the selected chat source, rendered message, parse mode, message length, retry schedule, and rate-limit hints without calling Telegram.
- Connection tests separate bot-token validation from sending a test message to the target chat.
- Delivery results connect Telegram API responses with Core delivery sessions to narrow failure causes.
Delivery Model And Limits
- The plugin converts Core-rendered text into Telegram messages.
HTMLandMarkdownV2parse modes can fail on escaping, so plain text is the most reliable choice for critical operational alerts.- Telegram rate limits and group permissions are downstream-provider policies; check both channel settings and bot permissions.
- Thread/topic routing, interactive buttons, file upload, and bot command workflows are outside the current CE channel scope.
Example Workflows
- If messages do not send, check bot-token validity, chat id, group permissions, and Telegram API error codes.
- If the preview looks correct but no message arrives, run the connection test, then send a synthetic test message to
test_chat_id. - For formatting failures, switch to plain text to confirm delivery, then adjust escaping.
- For duplicate messages, review Core delivery sessions, retry history, and Telegram API timeout behavior together.