Checkmk Telegram Plus: Smart Alerts, Web Control Center & Telegram Mini App support

Hi everyone,

I want to announce the next big step for Checkmk Telegram Plus: smarter Telegram notifications, less alert noise, and a new mobile-friendly web control center for Checkmk.

For anyone who does not know the project yet: Checkmk Telegram Plus is a Telegram bot for Checkmk. It can send Checkmk alerts to Telegram, query hosts and services, show service details, fetch graphs, trigger rechecks, acknowledge problems and assist with troubleshooting.

GitHub:

Quick install / update:

curl -fsSL https://raw.githubusercontent.com/deexno/checkmk-telegram-plus/refs/heads/main/install.sh | sudo bash

Why this update matters

Monitoring alerts are useful only when they help you understand what matters right now.

In real environments, especially during on-call, alerts can quickly become noisy:

  • duplicate alerts
  • follow-up failures after a root cause
  • flapping services
  • recovery noise
  • alert storms after network or infrastructure outages
  • warnings that are useful, but not urgent enough to wake someone up

This release focuses on exactly that problem: getting the right Checkmk alerts into Telegram, with better context and less noise.

Highlight: Smart Alerts

The most important new feature is Smart Notifications.

With the new notifications_smart mode, Checkmk Telegram Plus can evaluate alerts before sending them.

A Smart Alert can be:

  • sent loud
  • sent silent
  • suppressed

The decision can include:

  • the current Checkmk alert
  • host, service, state transition and plugin output
  • recent notification history
  • Checkmk parent/child dependency context
  • possible duplicate alerts
  • flapping behavior
  • root-cause vs. follow-up symptoms
  • custom user instructions
  • optional OpenAI-based reasoning

The goal is not to hide important incidents. The goal is to reduce noise while still keeping relevant operational signals visible.

Example scenarios:

  • A switch goes down and many dependent hosts alert afterwards.
  • A service flips between OK and CRIT repeatedly.
  • A recovery notification arrives for an alert that was already suppressed.
  • A WARNING should be visible, but not wake anyone up.
  • A new CRITICAL alert on important infrastructure should still go out loud.

The Smart Notification policy can be customized here:

/etc/checkmk-telegram-plus/smart-notification-instructions.txt

It can also be edited from the new web interface.

The main advantage is that the AI evaluates every alert for you and decides whether it should be sent loud, sent silently, or suppressed completely. Instead of spending days fine-tuning notification rules, filters, exceptions, and edge cases, you can let Smart Notifications handle the first layer of alert triage.

And if you still want specific behavior, you do not need to build complex rule chains. You can simply describe your desired policy in the configuration file as plain text, for example: which systems are critical, which alerts should always be loud, which warnings should stay silent, or which duplicate and follow-up alerts should be suppressed.

New mobile-friendly Web Control Center

This update also adds a new web interface for Checkmk Telegram Plus.

It is meant as a compact operational control center, especially useful on mobile devices or for quick checks without opening the full Checkmk UI.

The web UI includes:

  • dashboard with active users, queue size and recent alerts
  • monitoring view for host groups, hosts and services
  • alert log with notification details
  • delivery tracking per Telegram user
  • alert action history
  • user management
  • notification subscription management
  • audit log
  • runtime config editor
  • Smart Notification instruction editor
  • German and English UI
  • responsive mobile layout

By default, the web UI runs on:

http://127.0.0.1:8183

or through your own reverse proxy.

Telegram Mini App style usage

If you expose the web UI through HTTPS, you can also add it to your Telegram bot as a Mini App / Web App button via BotFather.

That means users can open the control center directly inside Telegram.

This makes Telegram a single entry point for:

  • receiving Checkmk alerts
  • checking host and service status
  • reviewing alert history
  • changing notification subscriptions
  • using admin tools
  • opening the mobile web UI without switching apps

Recommended setup:

Telegram
→ HTTPS reverse proxy
→ Checkmk Telegram Plus web UI on port 8183

Alert reminders

Alerts can now include a reminder action.

For example, you can ask the bot to remind you about an alert again in:

  • 30 minutes
  • 60 minutes
  • 1 day

Reminders are persisted, so they survive bot restarts.

Better tracking and auditability

The bot now stores more operational state in SQLite.

This includes:

  • authenticated users
  • admin roles
  • notification subscriptions
  • notification events
  • delivery results
  • reminders
  • audit events

This makes it much easier to answer questions like:

  • Who received this alert?
  • Was the Telegram delivery successful?
  • Who acknowledged this problem?
  • Who requested graphs or AI help?
  • Which Smart Alert decision was made?
  • Which user changed notification settings?

Also included: the v3.4.0 architecture update

Version v3.4.0 was already a major architectural release and laid the foundation for this update.

It introduced the new split architecture:

  • only a minimal Checkmk notification adapter remains inside the Checkmk site
  • the main Telegram application runs outside Checkmk under /opt/checkmk-telegram-plus
  • Python dependencies are installed into a dedicated virtual environment
  • runtime config, state, logs and sockets moved to /etc, /var/lib, /var/log and /run
  • a Checkmk bridge service handles selected Checkmk operations as the site user
  • notifications are handed over through local Unix sockets
  • fallback queues prevent notification loss during temporary service outages
  • graph rendering was improved for different Checkmk versions
  • installer migration and permission handling were reworked
  • secrets are no longer printed during installer config review
  • the Checkmk Python environment is no longer polluted with Telegram/OpenAI/Web dependencies

Release:

The new update builds on top of that foundation with Smart Alerts, the web control center, SQLite storage, reminders and improved alert tracking.

This also makes installations and upgrades much cleaner, especially on systems where Python dependencies inside the Checkmk environment previously caused problems. The project now keeps its external libraries outside the Checkmk site, which reduces dependency conflicts, makes the setup easier to maintain, and improves the overall stability of the integration.

Bug fixes and reliability improvements

Of course, this update also includes many bug fixes and stability improvements. Several issues around service graph rendering, notification handoff, queue handling, permissions and installer behavior have been improved, so the bot should behave more reliably across different Checkmk versions and system setups.

Installation / Update

For new installations and upgrades, run:

curl -fsSL https://raw.githubusercontent.com/deexno/checkmk-telegram-plus/refs/heads/main/install.sh | sudo bash

The installer shows the available releases, keeps existing config values when pressing Enter, migrates older installations and starts the required services.

Project:

If you are using Checkmk and Telegram for notifications, I would be happy if you try it out.

Feedback, ideas and bug reports are very welcome.

Happy monitoring! :laptop::eyes:

2 Likes