eptm_dashboard/docs/06-telegram.md

2.1 KiB

Notifications Telegram

L'application peut envoyer des notifications sur les résultats des tâches planifiées et des opérations manuelles importantes.

Configuration

La configuration vit dans data/auth.yaml (section dédiée) ou via variables d'environnement :

telegram:
  bot_token: "1234567890:AABBCC..."
  chat_id: "-4992234358"

bot_token s'obtient en parlant à @BotFather sur Telegram :

  1. /newbot
  2. Choisir un nom et un identifiant
  3. Récupérer le token

chat_id se récupère :

  • Pour un chat 1-1 : envoyer un message au bot puis appeler l'API https://api.telegram.org/bot<TOKEN>/getUpdates. L'ID est dans result[].message.chat.id.
  • Pour un groupe : ajouter le bot au groupe, envoyer un message, puis même API. L'ID des groupes commence par -.

Niveaux de notification

Normal

Message court, une ligne :

✅ Sync nocturne — terminée
   12 classes, 247 nouvelles absences, 0 erreur

Détaillé

Avec breakdown par classe et détails des orphelines :

✅ Sync nocturne — terminée

Absences :
  • 1MAB1: 23 nouv / 5 modif / 2 pending / 1 suppr
  • 2EM1:  18 nouv / 12 modif / 0 pending / 0 suppr
  ...

Orphelines supprimées :
  • Dupont Marc — 12.03.2026 P3
  ...

Pendings ignorés (sans force) : 4

Chat ID par tâche

Chaque tâche cron peut surcharger le chat_id global avec son propre notify_chat_id. Utile pour router certaines notifs vers un canal admin et d'autres vers un canal utilisateurs.

Ce qui est notifié manuellement

Pas grand-chose pour l'instant — Telegram est principalement réservé aux résultats des tâches cron. Les opérations manuelles (sync, push) émettent uniquement des toasts dans l'app.

Diagnostic

  • "Bouton Tester Telegram" répond une erreur 401 : token invalide ou révoqué.
  • "Erreur 400 Bad Request" : chat_id incorrect ou bot pas membre du groupe.
  • Notification jamais reçue : vérifier que le bot a bien été ajouté au groupe et qu'il y a au moins un message envoyé (sinon Telegram bloque).