grammY-integration (Telegram Bot API)
Varför grammY
- TS-först Bot API-klient med inbyggda hjälpare för long-poll + webhook, middleware, felhantering och hastighetsbegränsare.
- Renare mediehjälpare än att handrulla fetch + FormData; stödjer alla Bot API-metoder.
- Utbyggbar: proxystöd via anpassad fetch, sessions-middleware (valfritt), typsäker kontext.
Vad vi levererade
- En enda klientväg: fetch-baserad implementation borttagen; grammY är nu den enda Telegram-klienten (skicka + Gateway (nätverksgateway)) med grammY:s throttler aktiverad som standard.
- Gateway:
monitorTelegramProviderbygger en grammatiskBot, trådar nämner/tillåten lista gating, medianedladdning viagetFile/download, och levererar svar medsendMessage/sendPhoto/sendVideo/sendAudio/sendDocument. Stöder lång-undersökning eller webhook viawebhookCallback. - Proxy: valfri
channels.telegram.proxyanvänderundici.ProxyAgentvia grammY:sclient.baseFetch. - Webhook stöd:
webhook-set.tswrapssetWebhook/deleteWebhook;webhook.tsär värd callback med hälsa + graciös avstängning. Gateway aktiverar webhook-läge närchannels.telegram.webhookUrl+channels.telegram.webhookSecretär inställda (annars långpoller). - Sessioner: direktchattar kollapsar till agentens huvudsession (
agent:<agentId>:<mainKey>); grupper använderagent:<agentId>:telegram:group:<chatId>; svar routas tillbaka till samma kanal. - Konfig-knappar:
channels.telegram.botToken,channels.telegram.dmPolicy,channels.telegram.groups(tillåtelselista + standard för nämningar),channels.telegram.allowFrom,channels.telegram.groupAllowFrom,channels.telegram.groupPolicy,channels.telegram.mediaMaxMb,channels.telegram.linkPreview,channels.telegram.proxy,channels.telegram.webhookSecret,channels.telegram.webhookUrl. - Förhandsvisning av liveflöde: valfri
channels.telegram.streamModeskickar ett tillfälligt meddelande och uppdaterar det mededitMessageText. Detta är skilt från kanalblockets strömning. - Tester: grammY-mockar täcker DM + gruppnämnings-gating och utgående sändning; fler fixturer för media/webhook välkomnas.
- Valfria grammY-plugins (throttler) om vi stöter på Bot API 429:or.
- Lägg till mer strukturerade medietester (klistermärken, röstmeddelanden).
- Gör webhookens lyssningsport konfigurerbar (för närvarande låst till 8787 om den inte kopplas via gatewayn).