Summary
The Telegram channel plugin stops receiving messages after ~8 minutes when the long-polling connection times out. The plugin does not auto-reconnect, requiring manual gateway restarts to restore functionality.
Steps to reproduce
- Configure OpenClaw with Telegram channel enabled (long-polling mode, not webhooks)
- Start the gateway and send a test message (verify bot responds)
- Wait ~8-10 minutes without interaction
- Send another message to the bot
- Observe that the bot does not respond
- Check
openclaw status - shows Telegram as "OK"
- Check Telegram API
getWebhookInfo endpoint - pending_update_count will be > 0
Expected behavior
The Telegram plugin should automatically reconnect when the long-polling connection times out, maintaining continuous message delivery without manual intervention.
Actual behavior
- Long-polling connection times out after ~500 seconds (~8.3 minutes)
- Plugin does not reconnect
- Messages queue on Telegram's side (visible as pending updates)
openclaw status shows channel as "OK" (API is reachable, but polling loop is dead)
- Bot remains unresponsive until gateway is manually restarted
Environment
- OpenClaw version:
2026.1.30
- OS:
macOS (likely affects all platforms)
- Install method:
pnpm (global install)
Logs or screenshots
No error logs are generated when polling stops. The connection silently dies without logging a failure.
After adding retry policy to config:
{
"channels": {
"telegram": {
"retry": {
"attempts": 5,
"minDelayMs": 1000,
"maxDelayMs": 10000,
"jitter": 0.3
}
}
}
}
Result: 23+ hours continuous operation, zero timeouts, zero restarts required.
Proposed Fix
Make retry policy the default for Telegram channel configuration. This converts a hard failure (polling dies, manual restart needed) into a self-healing transient failure (exponential backoff reconnection).
Suggested Default Config
{
"channels": {
"telegram": {
"retry": {
"attempts": 5,
"minDelayMs": 1000,
"maxDelayMs": 10000,
"jitter": 0.3
}
}
}
}
This would make the Telegram integration production-ready out of the box without requiring users to implement external health monitoring scripts.
Summary
The Telegram channel plugin stops receiving messages after ~8 minutes when the long-polling connection times out. The plugin does not auto-reconnect, requiring manual gateway restarts to restore functionality.
Steps to reproduce
openclaw status- shows Telegram as "OK"getWebhookInfoendpoint -pending_update_countwill be > 0Expected behavior
The Telegram plugin should automatically reconnect when the long-polling connection times out, maintaining continuous message delivery without manual intervention.
Actual behavior
openclaw statusshows channel as "OK" (API is reachable, but polling loop is dead)Environment
2026.1.30macOS(likely affects all platforms)pnpm(global install)Logs or screenshots
No error logs are generated when polling stops. The connection silently dies without logging a failure.
After adding retry policy to config:
{ "channels": { "telegram": { "retry": { "attempts": 5, "minDelayMs": 1000, "maxDelayMs": 10000, "jitter": 0.3 } } } }Result: 23+ hours continuous operation, zero timeouts, zero restarts required.
Proposed Fix
Make retry policy the default for Telegram channel configuration. This converts a hard failure (polling dies, manual restart needed) into a self-healing transient failure (exponential backoff reconnection).
Suggested Default Config
{ "channels": { "telegram": { "retry": { "attempts": 5, "minDelayMs": 1000, "maxDelayMs": 10000, "jitter": 0.3 } } } }This would make the Telegram integration production-ready out of the box without requiring users to implement external health monitoring scripts.