feat: secrets-guardian refonte, supervisor + scripts brain-watch/notify, monitoring Telegram

This commit is contained in:
2026-03-14 08:41:09 +01:00
parent 9a2ed607de
commit 65ded4cc9d
9 changed files with 871 additions and 1 deletions

42
scripts/get-telegram-chatid.sh Executable file
View File

@@ -0,0 +1,42 @@
#!/bin/bash
# get-telegram-chatid.sh — Récupère le chat_id Telegram et l'écrit dans MYSECRETS
# NE JAMAIS afficher la valeur dans le terminal — écriture directe dans MYSECRETS
#
# Prérequis : avoir envoyé /start au bot sur Telegram
set -euo pipefail
MYSECRETS="${BRAIN_ROOT:-$HOME/Dev/Docs}/MYSECRETS"
TOKEN=$(grep '^BRAIN_TELEGRAM_TOKEN=' "$MYSECRETS" | cut -d= -f2-)
if [[ -z "$TOKEN" ]]; then
echo "ERREUR : BRAIN_TELEGRAM_TOKEN vide dans MYSECRETS" >&2
exit 1
fi
# Récupérer le chat_id sans l'afficher
RESPONSE=$(curl -s "https://api.telegram.org/bot${TOKEN}/getUpdates")
CHAT_ID=$(echo "$RESPONSE" | python3 -c "
import sys, json
data = json.load(sys.stdin)
results = data.get('result', [])
if not results:
print('NONE')
else:
print(results[-1].get('message', {}).get('chat', {}).get('id', 'NONE'))
" 2>/dev/null)
if [[ "$CHAT_ID" == "NONE" || -z "$CHAT_ID" ]]; then
echo "Aucun message reçu. Envoie /start au bot sur Telegram puis relance ce script." >&2
exit 1
fi
# Écrire dans MYSECRETS sans afficher la valeur
if grep -q '^BRAIN_TELEGRAM_CHAT_ID=' "$MYSECRETS"; then
sed -i "s/^BRAIN_TELEGRAM_CHAT_ID=.*/BRAIN_TELEGRAM_CHAT_ID=${CHAT_ID}/" "$MYSECRETS"
else
echo "BRAIN_TELEGRAM_CHAT_ID=${CHAT_ID}" >> "$MYSECRETS"
fi
echo "✅ BRAIN_TELEGRAM_CHAT_ID enregistré dans MYSECRETS — valeur non affichée"