名称: telegram-create-bot
描述: 通过 Telegram Bot API 构建和管理机器人。创建机器人、发送消息、处理 Webhook、管理群组和频道。
主页: https://core.telegram.org/bots/api
元数据: {"clawdbot":{"emoji":"🤖","requires":{"bins":["jq","curl"],"env":["TELEGRAM_BOT_TOKEN"]}}}
直接在 OpenClaw 中构建和管理 Telegram 机器人。
/newbot 并按提示创建你的机器人。123456789:ABCdefGHIjklMNOpqrsTUVwxyz)。bash
export TELEGRAM_BOT_TOKEN="你的机器人令牌"所有请求均发送至以下地址:
https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/方法名称
curl -s "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/getMe" | jq
curl -s "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/getMyCommands" | jq
curl -s -X POST "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/setMyCommands" \
-H "Content-Type: application/json" \
-d '{
"commands": [
{"command": "start", "description": "启动机器人"},
{"command": "help", "description": "显示帮助信息"},
{"command": "settings", "description": "机器人设置"}
]
}' | jq
curl -s -X POST "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/sendMessage" \
-H "Content-Type: application/json" \
-d '{
"chat_id": "聊天ID",
"text": "来自 Clawdbot 的问候!",
"parse_mode": "HTML"
}' | jq
curl -s -X POST "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/sendMessage" \
-H "Content-Type: application/json" \
-d '{
"chat_id": "聊天ID",
"text": "请选择一个选项:",
"reply_markup": {
"inline_keyboard": [
[{"text": "选项一", "callback_data": "opt1"}, {"text": "选项二", "callback_data": "opt2"}],
[{"text": "访问网站", "url": "https://example.com"}]
]
}
}' | jq
curl -s -X POST "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/sendMessage" \
-H "Content-Type: application/json" \
-d '{
"chat_id": "聊天ID",
"text": "请从键盘中选择:",
"reply_markup": {
"keyboard": [
[{"text": "按钮一"}, {"text": "按钮二"}],
[{"text": "发送位置", "request_location": true}]
],
"resize_keyboard": true,
"one_time_keyboard": true
}
}' | jq
curl -s -X POST "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/sendPhoto" \
-F "chat_id=聊天ID" \
-F "photo=@/图片/路径/image.jpg" \
-F "caption=图片说明" | jq
curl -s -X POST "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/sendPhoto" \
-H "Content-Type: application/json" \
-d '{
"chat_id": "聊天ID",
"photo": "https://example.com/image.jpg",
"caption": "来自 URL 的图片"
}' | jq
curl -s -X POST "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/sendDocument" \
-F "chat_id=聊天ID" \
-F "document=@/文件/路径/file.pdf" \
-F "caption=这是您的文档" | jq
curl -s -X POST "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/sendLocation" \
-H "Content-Type: application/json" \
-d '{
"chat_id": "聊天ID",
"latitude": 40.7128,
"longitude": -74.0060
}' | jq
curl -s "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/getUpdates" | jq
curl -s "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/getUpdates?offset=更新ID" | jq
curl -s "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/getUpdates?timeout=30" | jq
curl -s -X POST "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/setWebhook" \
-H "Content-Type: application/json" \
-d '{
"url": "https://你的服务器.com/webhook",
"allowed_updates": ["message", "callback_query"]
}' | jq
curl -s "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/getWebhookInfo" | jq
curl -s -X POST "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/deleteWebhook" | jq
curl -s "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/getChat?chat_id=聊天ID" | jq
curl -s "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/getChatMemberCount?chat_id=聊天ID" | jq
curl -s "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/getChatAdministrators?chat_id=聊天ID" | jq
curl -s -X POST "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/banChatMember" \
-H "Content-Type: application/json" \
-d '{
"chat_id": "聊天ID",
"user_id": 用户ID
}' | jq
curl -s -X POST "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/unbanChatMember" \
-H "Content-Type: application/json" \
-d '{
"chat_id": "聊天ID",
"user_id": 用户ID,
"only_if_banned": true
}' | jq
curl -s -X POST "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/editMessageText" \
-H "Content-Type: application/json" \
-d '{
"chat_id": "聊天ID",
"message_id": 消息ID,
"text": "更新后的消息文本"
}' | jq
curl -s -X POST "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/deleteMessage" \
-H "Content-Type: application/json" \
-d '{
"chat_id": "聊天ID",
"message_id": 消息ID
}' | jq
curl -s -X POST "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/pinChatMessage" \
-H "Content-Type: application/json" \
-d '{
"chat_id": "聊天ID",
"message_id": 消息ID
}' | jq
curl -s -X POST "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/forwardMessage" \
-H "Content-Type: application/json" \
-d '{
"chat_id": "目标聊天ID",
"from_chat_id": "来源聊天ID",
"message_id": 消息ID
}' | jq
curl -s -X POST "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/answerCallbackQuery" \
-H "Content-Type: application/json" \
-d '{
"callback_query_id": "回调查询ID",
"text": "按钮已点击!",
"show_alert": false
}' | jq
HTML、Markdown、MarkdownV2。/start 命令。<b>粗体</b>
<i>斜体</i>
<u>下划线</u>
<s>删除线</s>
<code>行内代码</code>
<pre>代码块</pre>
<a href="https://example.com">链接</a>
<tg-spoiler>剧透</tg-spoiler>
#!/bin/bash
OFFSET=0
while true; do
UPDATES=$(curl -s "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/getUpdates?offset=$OFFSET&timeout=30")
for UPDATE in $(echo "$UPDATES" | jq -c '.result[]'); do
UPDATE_ID=$(echo "$UPDATE" | jq '.update_id')
CHAT_ID=$(echo "$UPDATE" | jq '.message.chat.id')
TEXT=$(echo "$UPDATE" | jq -r '.message.text')
if [ "$TEXT" != "null" ]; then
curl -s -X POST "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/sendMessage" \
-H "Content-Type: application/json" \
-d "{\"chat_id\": $CHAT_ID, \"text\": \"您说:$TEXT\"}"
fi
OFFSET=$((UPDATE_ID + 1))
done
done
# 1. 向您的机器人发送一条消息
# 2. 运行以下命令查看您的聊天 ID:
curl -s "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/getUpdates" | jq '.result[-1].message.chat.id'
# 使用 @频道名 或频道 ID(以 -100 开头)
curl -s -X POST "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/sendMessage" \
-H "Content-Type: application/json" \
-d '{
"chat_id": "@你的频道名",
"text": "频道公告!"
}' | jq