| Zusammenfassung | Professioneller Telegram-Bot für automatische Benachrichtigungen über neue Beiträge aus Discourse-Foren mit KI-generierten Zusammenfassungen unter Verwendung von OpenAI GPT-4.1-nano. | |
| Repository-Link | GitHub - DigneZzZ/webhook_tg_bot | |
| Installationsanleitung | README_EN.md |
Webhook Telegram Bot – KI-gestützte Discourse-Benachrichtigungen
Hinweis: Obwohl dies kein traditionelles Discourse-Plugin, sondern ein externer Integrationsdienst ist, konnte ich keine passendere Kategorie finden, um dieses nützliche Werkzeug mit der Discourse-Community zu teilen. Dieser Bot arbeitet neben Ihrem Discourse-Forum, um erweiterte Benachrichtigungsfunktionen bereitzustellen.
Funktionen
Discourse-Integration
-
Verarbeitet Webhooks für Ereignisse zur Erstellung von Themen und Beiträgen
-
Unterstützt alle Arten von Discourse-Inhalten
-
Kombiniert Themen- und Beitragsdaten zu einheitlichen Nachrichten
-
Überprüfung der Webhook-Signatur zur Sicherheit (HMAC-SHA256)
KI-Inhaltsanalyse
-
OpenAI GPT-4.1-nano-Integration für intelligente Beitragszusammenfassungen
-
Kontextbezogene Inhaltsanalyse mit HTML-Bereinigung
-
Spezielle Vorlagen für verschiedene Inhaltstypen
-
Automatische Inhaltsfilterung und -verarbeitung
Erweiterte Telegram-Zustellung
-
Benachrichtigungen an den Haupt-Chat oder spezifische Forenthemen senden
-
Kategoriezuordnung – verschiedene Discourse-Kategorien an verschiedene Telegram-Themen weiterleiten
-
Emoji-Präfixe für Benutzerrollen (
Admin,
Moderator,
Staff usw.) -
Intelligente HTML-Nachrichtenformatierung
Flexible Filterung & Steuerung
-
Bestimmte oder alle Kategorien überwachen
-
Unerwünschte Kategorien mit Prioritätssystem ignorieren
-
Bot-Benutzer blockieren (discobot, chatbot, Systembenutzer)
-
Benachrichtigungen für Premium-Bereiche mit Abonnement-Alarmen
Produktionsreif
-
Docker-Containerisierung mit Health Checks
-
GitHub Actions CI/CD-Pipeline
-
Systemd-Integration für automatischen Start
-
Umfassendes Logging und Monitoring
-
Graceful Shutdown und Fehlerbehandlung
Konfiguration
1. Discourse Webhook-Einrichtung
-
Navigieren Sie zu Admin → API → Webhooks
-
Klicken Sie auf Neuer Webhook
-
Konfigurieren Sie:
Payload URL: https://your-domain.com/webhook
Content Type: application/json
Secret: your_webhook_secret
Welche Ereignisse: Topic Event + Post Event
2. Telegram Bot-Einrichtung
-
Erstellen Sie einen Bot über @BotFather
-
Rufen Sie die Chat-ID für Ihre Gruppe/Ihren Kanal ab
-
Richten Sie optional Forenthemen für die Kategorieroutenführung ein
3. Umgebungskonfiguration
Erstellen Sie eine .env-Datei mit den erforderlichen Einstellungen (vollständige Konfiguration im Repository).
4. Docker-Bereitstellung
# Schnelle Installation
curl -fsSL https://raw.githubusercontent.com/dignezzz/webhook_tg_bot/main/install.sh -o install.sh
chmod +x install.sh
./install.sh install
5. Reverse Proxy-Einrichtung
Für Webhook-Unterstützung auf Ihrer Domain konfigurieren Sie einen Reverse Proxy (nginx/Apache), um Webhook-Anfragen an den Bot-Container an Port 8080 weiterzuleiten.
Beispiel nginx-Konfiguration:
location /webhook {
proxy_pass http://localhost:8080/webhook;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
Einstellungen
| Name | Beschreibung | Standard | Erforderlich |
|---|---|---|---|
TELEGRAM_BOT_TOKEN |
Bot-Token von @BotFather | - | |
TELEGRAM_CHAT_ID |
Zielgruppen-/Kanal-ID | - | |
TELEGRAM_THREAD_ID |
Haupt-Thread-ID (0 = Haupt-Chat) | 0 | |
WEBHOOK_SECRET |
Geheimer Schlüssel für Signaturprüfung | - | |
WEBHOOK_PORT |
Webhook-Server-Port | 8080 | |
WEBHOOK_PATH |
Webhook-Endpunkt-Pfad | /webhook | |
OPENAI_API_KEY |
OpenAI API-Schlüssel für Zusammenfassungen | - | |
OPENAI_MODEL |
Zu verwendendes GPT-Modell | gpt-4.1-nano | |
BASE_URL |
Ihre Discourse-Forum-URL | - | |
MONITORED_CATEGORIES |
Zu überwachende Kategorie-IDs (kommagetrennt) | all | |
IGNORED_CATEGORIES |
Zu ignorierende Kategorie-IDs (kommagetrennt) | none | |
IGNORED_USERS |
Zu ignorierende Benutzer-IDs (kommagetrennt) | none | |
PREMIUM_CATEGORIES |
Premium-Kategorie-IDs (kommagetrennt) | none |
Kategorie-zu-Thread-Zuordnung (Optional):
TELEGRAM_THREAD_ID_1=123456
THREAD_CATEGORIES_1=1,2,3
TELEGRAM_THREAD_ID_2=234567
THREAD_CATEGORIES_2=4,5
Nachrichtenformat-Beispiel
👤 👑 Administrator hat einen neuen Beitrag erstellt: Docker-Konfigurationsanleitung
📋 Autor teilt eine Lösung für das Problem der Docker-Container-Konfiguration und erklärt den Schritt-für-Schritt-Prozess zur Behebung von Datenbankverbindungsfehlern.
🔗 Thema-Link (https://forum.example.com/t/topic/123)
🏷 Tags: #docker, #database, #troubleshooting
💎 Dieser Abschnitt ist nur im Abonnement verfügbar.
Installation & Verwaltung
Der Bot enthält ein Verwaltungs-Skript für einfache Vorgänge:
whtg status # Bot-Status prüfen
whtg start # Bot starten
whtg stop # Bot stoppen
whtg restart # Bot neu starten
whtg logs # Protokolle anzeigen
whtg update # Auf die neueste Version aktualisieren
whtg uninstall # Bot entfernen
Sprachunterstützung
Hinweis: Derzeit sind alle Oberflächennachrichten und Dokumentationen auf Russisch, aber englische Sprachunterstützung wird in naher Zukunft hinzugefügt. Der Bot funktioniert mit jedem Discourse-Forum unabhängig von der Sprache.
Technische Anforderungen
-
Docker und Docker Compose
-
Reverse Proxy (nginx/Apache) für Webhook-Domain-Unterstützung
-
OpenAI API-Schlüssel (optional, für KI-Zusammenfassungen)
-
HTTPS-Zertifikat (empfohlen für die Produktion)
Unterstützung & Beiträge
-
GitHub Repository: GitHub - DigneZzZ/webhook_tg_bot
-
Diskussionen: Community-Diskussionen
Lizenz: MIT-Lizenz