openclaw - 💡(How to fix) Fix Telegram plugin reports "connected" without actually polling (false positive) [3 comments, 4 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
openclaw/openclaw#74299Fetched 2026-04-30 06:25:55
View on GitHub
Comments
3
Participants
4
Timeline
8
Reactions
2
Timeline (top)
commented ×3cross-referenced ×2closed ×1mentioned ×1

After a VPS migration, the OpenClaw gateway logs showed:

[telegram] Telegram bot connected (polling enabled)

However, the bot was not actually polling or receiving messages. Gateway appeared healthy, but Telegram integration was silently non-functional.

Error Message

  • Caused unnecessary debugging time (assumed config error, not plugin state mismatch)

Root Cause

Root Cause Hypothesis

Fix Action

Workaround

After gateway start, verify Telegram integration with:

# Option A: Send a test message to the bot
echo "Test message" | openclaw message send --channel telegram --target <chat_id>

# Option B: Check webhook status
curl -s "https://api.telegram.org/bot$(grep TELEGRAM_BOT_TOKEN ~/.openclaw/.env | cut -d= -f2)/getWebhookInfo" | jq '.result.url'
# Should be empty for polling, or a valid URL for webhook mode

Code Example

[telegram] Telegram bot connected (polling enabled)

---

curl -s "https://api.telegram.org/bot<TOKEN>/getWebhookInfo" | jq

---

# Option A: Send a test message to the bot
echo "Test message" | openclaw message send --channel telegram --target <chat_id>

# Option B: Check webhook status
curl -s "https://api.telegram.org/bot$(grep TELEGRAM_BOT_TOKEN ~/.openclaw/.env | cut -d= -f2)/getWebhookInfo" | jq '.result.url'
# Should be empty for polling, or a valid URL for webhook mode
RAW_BUFFERClick to expand / collapse

Telegram plugin reports "connected" without polling (false positive)

Environment

  • OpenClaw Version: 2026.4.25–2026.4.26
  • Channel: Telegram
  • OS: Ubuntu 24.04 / 26.04 LTS

Summary

After a VPS migration, the OpenClaw gateway logs showed:

[telegram] Telegram bot connected (polling enabled)

However, the bot was not actually polling or receiving messages. Gateway appeared healthy, but Telegram integration was silently non-functional.

Steps to Reproduce

  1. Migrate OpenClaw to a new environment
  2. Start gateway with Telegram plugin enabled
  3. Observe logs: [telegram] Telegram bot connected
  4. Send a message to the bot in Telegram → no response
  5. Check getWebhookInfo via Telegram API:
    curl -s "https://api.telegram.org/bot<TOKEN>/getWebhookInfo" | jq
    Returns: "url": "" (no webhook), "has_custom_certificate": false

Root Cause Hypothesis

The Telegram plugin may report "connected" status based on:

  • Successful bot token validation (API key works)
  • Plugin initialization success

But not based on actual polling activity or webhook status.

Expected Behavior

Gateway logs should reflect actual Telegram integration state:

  • "Telegram bot connected (polling active)" only when getUpdates is running
  • "Telegram bot connected (webhook active)" only when webhook URL is set
  • "Telegram bot initialized (not polling)" when token is valid but polling is disabled/failed

Actual Behavior

False positive: logs say "connected" but bot is non-functional.

Impact

  • During a BLUE/GREEN migration, GREEN appeared healthy but wasn't receiving Telegram messages
  • Discovery only happened during end-to-end testing (~1h after cutover attempt)
  • Caused unnecessary debugging time (assumed config error, not plugin state mismatch)

Workaround

After gateway start, verify Telegram integration with:

# Option A: Send a test message to the bot
echo "Test message" | openclaw message send --channel telegram --target <chat_id>

# Option B: Check webhook status
curl -s "https://api.telegram.org/bot$(grep TELEGRAM_BOT_TOKEN ~/.openclaw/.env | cut -d= -f2)/getWebhookInfo" | jq '.result.url'
# Should be empty for polling, or a valid URL for webhook mode

Request

  1. Add a diagnostic check in openclaw doctor to verify Telegram polling/webhook state
  2. Update Telegram plugin logs to differentiate "initialized" vs "polling active"
  3. Consider adding a heartbeat test message (e.g., send a message to self on startup to confirm bidirectional communication)

Evidence: Production incident during VPS migration (2026-04-28), documented in docs/dr/migration-lessons-2026-04-28.md

extent analysis

TL;DR

The Telegram plugin's "connected" status may not accurately reflect its actual polling or webhook state, requiring additional verification steps to ensure proper functionality.

Guidance

  • Verify the Telegram integration after gateway start using the provided workaround commands to check for actual polling or webhook activity.
  • Use openclaw message send or curl with the Telegram API to test the bot's responsiveness and webhook status.
  • Consider implementing a diagnostic check in openclaw doctor to automatically verify the Telegram polling/webhook state.
  • Update the Telegram plugin logs to clearly differentiate between "initialized" and "polling active" states for better monitoring.

Example

# Verify webhook status
curl -s "https://api.telegram.org/bot$(grep TELEGRAM_BOT_TOKEN ~/.openclaw/.env | cut -d= -f2)/getWebhookInfo" | jq '.result.url'

Notes

The provided workaround and diagnostic checks should help identify and mitigate the issue, but a permanent fix may require updates to the Telegram plugin and openclaw doctor tool.

Recommendation

Apply the workaround by verifying the Telegram integration after gateway start and consider implementing the suggested diagnostic check in openclaw doctor to improve the monitoring and reliability of the Telegram plugin.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

openclaw - 💡(How to fix) Fix Telegram plugin reports "connected" without actually polling (false positive) [3 comments, 4 participants]