v1.18.0 — Telegram operator integration
Telegram operator integration — get pinged, moderate, and query Garrul from Telegram.
Highlights
- Telegram outbound adapter — pick
telegramin/admin/webhooksand store a chat id. Notifications arrive as messages with inline moderation buttons, reusing the existing per-event filter + retry queue. - Interactive moderation — approve / spam / restore / delete / ban author / resolve reports straight from a button tap, through the same audited path as the dashboard (actions are attributed to your linked operator id). Buttons reflect the comment's current status, not the event, so flagging spam sends back a fresh "Not spam" message and vice-versa.
- Slash commands (read-only) —
/queue,/stats,/comment <id>,/user <id>. - Optional daily digest — a once-daily operator summary on the existing
*/15cron.
Notes for upgraders
- Off by default. Nothing changes unless you set
TELEGRAM_BOT_TOKEN. Inbound buttons/commands additionally needTELEGRAM_WEBHOOK_SECRET+ a one-timesetWebhookcall.TELEGRAM_BOT_USERNAME(plain var) enables the one-tap link on/admin/telegram. - New migration
0014_telegram.sql(telegram_links) — additive. Runnpm run migrate(or-- --remotefor prod). - No breaking changes. Existing generic/Slack/Discord webhooks are unaffected.
- Setup guide:
docs/telegram.md.
What's Changed
Full Changelog: v1.17.0...v1.18.0