MyClawTrade

Tactical

Telegram bot not sending messages

No Telegram usually means the process never reached sendMessage, or Telegram rejected the token/chat. It is rarely “Telegram is down.”

Test from the VPS

curl -sS -X POST "https://api.telegram.org/bot<TOKEN>/sendMessage" \
  -d chat_id="<CHAT_ID>" \
  -d text="openclaw ping"

If curl fails, the problem is network or token, not your Python. If curl works but the bot does not, the service is not loading the same env.

Token and chat ID

  1. Token from @BotFather, no spaces. If you /revoke, the old token is dead.
  2. You must /start the bot in that chat before it can message you.
  3. chat_id is a number (or -100… for a group). getUpdates after you send /start.
curl -sS "https://api.telegram.org/bot<TOKEN>/getUpdates"

systemd is a different environment

Outbound 443

ufw should allow outgoing. Do not block 443. Corporate-style DNS filters on a VPS are rare; a typo in the token is common.

Do not

The first message after deploy should be dull: openclaw up. If that does not arrive, do not enable live orders.

Get the full walkthrough

The paid guide includes the source, config template, and deploy script. 50% off: $19.99 (was $39.99). One-time.

Get the ebook — $19.99

Educational product. Trading can lose money. Not financial advice.

Keep reading

How to run an OpenClaw trading bot on a $5 VPSDIY setup Telegram trade alerts from PythonTactical systemd and journalctl for a Python trading botOps errors