Skip to content

Telegram Plugin Not Receiving Messages (Polling Mode) #6665

Description

@jorgermp

Telegram Plugin Not Receiving Messages (Polling Mode)

Summary

The Telegram plugin appears as "OK" in openclaw status but does not receive any messages sent to the bot. All configuration parameters are correct (token, user ID, webhook disabled), but messages never reach OpenClaw.

Environment

  • OpenClaw Version: 2026.1.30 (76b5208)
  • OS: Ubuntu 24.04 (Linux kernel 6.8.0-90-generic x64)
  • Node.js: v22.22.0
  • Installation Method: Global npm install
  • Gateway Mode: local (bind: lan, port: 18789)

Configuration

{
  "channels": {
    "telegram": {
      "enabled": true,
      "dmPolicy": "allowlist",
      "botToken": "<REDACTED>",
      "allowFrom": ["<USER_ID>"],
      "groupPolicy": "allowlist",
      "streamMode": "partial"
    }
  },
  "plugins": {
    "entries": {
      "telegram": {
        "enabled": true
      }
    }
  }
}

Steps to Reproduce

  1. Configure Telegram bot with valid token and user ID in allowlist
  2. Enable both channels.telegram.enabled and plugins.entries.telegram.enabled
  3. Start/restart OpenClaw gateway: openclaw gateway restart
  4. Verify bot status: openclaw status shows "Telegram | ON | OK"
  5. Send messages to the bot from the allowed user ID

Expected: Messages should be received and processed by OpenClaw
Actual: No messages are received; bot appears unresponsive

Diagnostic Results

Bot API Verification (all passing ✅)

# Bot identity confirmed
curl "https://api.telegram.org/bot<TOKEN>/getMe"
{
  "ok": true,
  "result": {
    "id": <BOT_ID>,
    "is_bot": true,
    "username": "<BOT_USERNAME>",
    "can_join_groups": true
  }
}

# No webhook configured (polling mode expected)
curl "https://api.telegram.org/bot<TOKEN>/getWebhookInfo"
{
  "ok": true,
  "result": {
    "url": "",
    "pending_update_count": 0
  }
}

# No pending updates (messages not reaching Telegram API)
curl "https://api.telegram.org/bot<TOKEN>/getUpdates"
{
  "ok": true,
  "result": []
}

User Verification

  • Configured User ID: <USER_ID>
  • Actual User ID: <USER_ID> (verified with @userinfobot) ✅
  • Bot conversation initiated: Yes (sent /start) ✅

Gateway Status

openclaw status output:
┌──────────┬─────────┬────────┬──────────────────────┐
│ Channel  │ Status  │ Health │ Details              │
├──────────┼─────────┼────────┼──────────────────────┤
│ Telegram │ ON      │ OK     │ token config · 1/1   │
│ Discord  │ ON      │ OK     │ token config · 1/1   │
└──────────┴─────────┴────────┴──────────────────────┘

Logs

  • No errors in journalctl -u openclaw-gateway
  • No Telegram-related errors in gateway logs
  • Plugin appears to be loaded but not polling

Additional Context

What Works

  • Discord plugin: Fully functional, receives and sends messages correctly
  • Bot API calls: Manual API calls via curl work perfectly
  • Gateway: Running stable, no crashes or restarts

What Doesn't Work

  • Message polling: Bot never fetches updates from Telegram
  • Inbound messages: Zero messages received despite multiple attempts
  • Plugin lifecycle: No visible polling activity in logs

Attempted Solutions (all failed)

  1. ✗ Gateway restart: openclaw gateway restart
  2. ✗ Webhook reset: deleteWebhook?drop_pending_updates=true
  3. ✗ Re-sent /start command to bot
  4. ✗ Multiple message attempts (5+ messages over 5 minutes)
  5. ✗ Verified user ID matches configuration
  6. ✗ Checked for firewall/network issues (none found)

Hypothesis

The Telegram plugin may not be:

  • Initializing the polling loop correctly
  • Registering the message handler
  • Using the correct offset/timeout parameters for long polling

Comparison: Discord plugin works flawlessly with identical network/system setup, suggesting issue is specific to Telegram plugin implementation.

Workaround

Currently disabled Telegram and using Discord exclusively.

Request

Please investigate the Telegram plugin's polling mechanism. The plugin reports "OK" status but appears to be non-functional for message reception in polling mode.


Generated by: OpenClaw TARS instance
Report Date: 2026-02-01
Issue Type: Bug - Channel Plugin

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Fields

    Priority

    None yet

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions