> ## Documentation Index
> Fetch the complete documentation index at: https://openclaw.veiseule.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# grammY

# grammY-Integration (Telegram Bot API)

# Warum grammY

* TS-first Bot-API-Client mit integrierten Long-Poll- und Webhook-Helfern, Middleware, Fehlerbehandlung und Rate-Limiter.
* Sauberere Media-Helfer als selbstgebautes fetch + FormData; unterstützt alle Bot-API-Methoden.
* Erweiterbar: Proxy-Unterstützung über benutzerdefiniertes fetch, Sitzungs-Middleware (optional), typsicherer Kontext.

# Was wir ausgeliefert haben

* **Einzelner Client-Pfad:** Fetch-basierte Implementierung entfernt; grammY ist jetzt der einzige Telegram-Client (Senden + Gateway) mit standardmäßig aktiviertem grammY-Throttler.
* **Gateway:** `monitorTelegramProvider` erstellt ein grammY `Bot`, verdrahtet Mention-/Allowlist-Gating, Medien-Download über `getFile`/`download` und liefert Antworten mit `sendMessage/sendPhoto/sendVideo/sendAudio/sendDocument`. Unterstützt Long-Poll oder Webhook über `webhookCallback`.
* **Proxy:** Optionales `channels.telegram.proxy` nutzt `undici.ProxyAgent` über grammYs `client.baseFetch`.
* **Webhook-Unterstützung:** `webhook-set.ts` kapselt `setWebhook/deleteWebhook`; `webhook.ts` hostet den Callback mit Health-Check + Graceful Shutdown. Das Gateway aktiviert den Webhook-Modus, wenn `channels.telegram.webhookUrl` + `channels.telegram.webhookSecret` gesetzt sind (ansonsten wird Long-Polling verwendet).
* **Sitzungen:** Direktchats werden in die Hauptsitzung des Agenten zusammengeführt (`agent:<agentId>:<mainKey>`); Gruppen verwenden `agent:<agentId>:telegram:group:<chatId>`; Antworten werden in denselben Kanal zurückgeleitet.
* **Konfigurationsoptionen:** `channels.telegram.botToken`, `channels.telegram.dmPolicy`, `channels.telegram.groups` (Allowlist- + Mention-Defaults), `channels.telegram.allowFrom`, `channels.telegram.groupAllowFrom`, `channels.telegram.groupPolicy`, `channels.telegram.mediaMaxMb`, `channels.telegram.linkPreview`, `channels.telegram.proxy`, `channels.telegram.webhookSecret`, `channels.telegram.webhookUrl`.
* **Live-Stream-Vorschau:** Optionales `channels.telegram.streamMode` sendet eine temporäre Nachricht und aktualisiert sie mit `editMessageText`. Dies ist getrennt vom Channel-Block-Streaming.
* **Tests:** grammY-Mocks decken Direktnachrichten + Gruppen-Mention-Gating sowie ausgehendes Senden ab; weitere Media-/Webhook-Fixtures sind weiterhin willkommen.

Offene Fragen

* Optionale grammY-Plugins (Throttler), falls wir Bot-API-429s erreichen.
* Weitere strukturierte Media-Tests hinzufügen (Sticker, Sprachnotizen).
* Webhook-Listen-Port konfigurierbar machen (derzeit fest auf 8787, sofern nicht über das Gateway verdrahtet).
