diff --git a/data/telegram-channels.json b/data/telegram-channels.json index 76c4dc093..3e82094e1 100644 --- a/data/telegram-channels.json +++ b/data/telegram-channels.json @@ -86,7 +86,7 @@ "maxMessages": 25 }, { - "handle": "IranIntl", + "handle": "iranintltv", "label": "Iran International", "topic": "politics", "tier": 2, diff --git a/scripts/ais-relay.cjs b/scripts/ais-relay.cjs index ec39a105e..c2797452b 100644 --- a/scripts/ais-relay.cjs +++ b/scripts/ais-relay.cjs @@ -290,6 +290,12 @@ async function pollTelegramOnce() { const em = e?.message || String(e); telegramState.lastError = `poll ${handle} failed: ${em}`; console.warn('[Relay] Telegram poll error:', telegramState.lastError); + if (/AUTH_KEY_DUPLICATED/.test(em)) { + console.warn('[Relay] Telegram session conflict — destroying client, will reconnect next cycle'); + try { telegramState.client?.disconnect(); } catch {} + telegramState.client = null; + break; + } } }