ARTICLE AD BOX
I'm using GramJS (telegram npm package) to listen for new messages in Telegram groups. The NewMessage event handler works perfectly for: Direct messages (DMs),Small groups (< 1000 members),Medium groups (tested up to ~5000 members) However, it completely fails to fire for large supergroups (30k+ members), even though: My account is a member of these groups I can manually fetch messages using client.getMessages() The listener has been running continuously for 2+ days New messages ARE being sent to these groups (verified manually)
I've Verified Account has access: Using client.getDialogs() shows I'm a member of the group with 31,512 members Can read messages: client.getMessages(groupEntity, {limit: 10}) successfully returns recent messages
const { TelegramClient } = require("telegram"); const { StringSession } = require("telegram/sessions"); const { NewMessage } = require("telegram/events"); const apiId = parseInt(process.env.API_ID); const apiHash = process.env.API_HASH; const stringSession = new StringSession(process.env.SESSION_STRING); (async () => { const client = new TelegramClient(stringSession, apiId, apiHash, { connectionRetries: 5, }); await client.start({ onError: (err) => console.log(err), }); console.log("✅ Connected!"); // This event handler NEVER fires for large groups client.addEventHandler(async (event) => { console.log("📨 New message:", event.message.text); // Process message... }, new NewMessage({})); console.log("👂 Listening..."); })();