☰
telegram-automation - SKILL
2026/10/8 8:13:33 网站建设 项目流程

name: telegram-automation
description: “Automate Telegram tasks via Rube MCP (Composio): send messages, manage chats, share photos/documents, and handle bot commands. Always search tools first for current schemas.”
risk: critical
source: community
date_added: “2026-02-27”

通过 Rube MCP 实现 Telegram 自动化

通过 Rube MCP 使用 Composio 的 Telegram 工具包自动化 Telegram 操作。

前置条件

  • Rube MCP 必须已连接(RUBE_SEARCH_TOOLS可用)
  • 通过RUBE_MANAGE_CONNECTIONS使用telegram工具包激活 Telegram 连接
  • 始终先调用RUBE_SEARCH_TOOLS获取当前工具模式
  • 需要 Telegram 机器人令牌(通过 @BotFather 创建)

设置

获取 Rube MCP:在客户端配置中将https://rube.app/mcp添加为 MCP 服务器。无需 API 密钥——只需添加端点即可工作。

  1. 通过确认RUBE_SEARCH_TOOLS有响应来验证 Rube MCP 可用
  2. 使用telegram工具包调用RUBE_MANAGE_CONNECTIONS
  3. 如果连接不是 ACTIVE(活动),按照返回的认证链接配置 Telegram 机器人
  4. 在运行任何工作流之前确认连接状态显示 ACTIVE

核心工作流

1. 发送消息

何时使用:用户想向 Telegram 聊天发送文本消息

工具序列:

  1. TELEGRAM_GET_ME- 验证机器人身份和连接 [前置条件]
  2. TELEGRAM_GET_CHAT- 获取聊天详情并验证访问权限 [可选]
  3. TELEGRAM_SEND_MESSAGE- 发送文本消息 [必需]

关键参数:

  • chat_id:数字聊天 ID 或频道用户名(例如 ‘@channelname’)
  • text:消息文本内容
  • parse_mode:‘HTML’ 或 ‘MarkdownV2’ 用于格式化
  • disable_notification:静默发送,无通知声音
  • reply_to_message_id:要回复的消息 ID

陷阱:

  • 机器人必须是聊天/群组的成员才能发送消息
  • MarkdownV2 需要转义特殊字符:_*[]()~>#+-=|{}.!
  • HTML 模式支持有限标签:<b>、<i>、<code>、<pre>、<a>
  • 消息有 4096 字符限制;较长的内容需要拆分

2. 发送照片和文档

何时使用:用户想在 Telegram 聊天中分享图片或文件

工具序列:

  1. TELEGRAM_SEND_PHOTO- 发送图片 [可选]
  2. TELEGRAM_SEND_DOCUMENT- 发送文件/文档 [可选]

关键参数:

  • chat_id:目标聊天 ID
  • photo:照片 URL 或 file_id(用于 SEND_PHOTO)
  • document:文档 URL 或 file_id(用于 SEND_DOCUMENT)
  • caption:媒体的可选说明文字

陷阱:

  • 照片说明文字有 1024 字符限制
  • 文档说明文字也有 1024 字符限制
  • 通过机器人 API 可发送最大 50MB 的文件
  • 照片会被 Telegram 压缩;发送未压缩图片请使用 SEND_DOCUMENT

3. 管理聊天

何时使用:用户想获取聊天信息或管理聊天设置

工具序列:

  1. TELEGRAM_GET_CHAT- 获取详细的聊天信息 [必需]
  2. TELEGRAM_GET_CHAT_ADMINISTRATORS- 列出聊天管理员 [可选]
  3. TELEGRAM_GET_CHAT_MEMBERS_COUNT- 获取成员数量 [可选]
  4. TELEGRAM_EXPORT_CHAT_INVITE_LINK- 生成邀请链接 [可选]

关键参数:

  • chat_id:目标聊天 ID 或用户名

陷阱:

  • 机器人必须是管理员才能导出邀请链接
  • GET_CHAT 对私聊、群组和频道返回不同的字段
  • 非常大的群组的成员数量可能只是近似值
  • 管理员列表不包含普通成员

4. 编辑和删除消息

何时使用:用户想修改或移除之前发送的消息

工具序列:

  1. TELEGRAM_EDIT_MESSAGE- 编辑已发送的消息 [可选]
  2. TELEGRAM_DELETE_MESSAGE- 删除消息 [可选]

关键参数:

  • chat_id:消息所在的聊天
  • message_id:要编辑或删除的消息 ID
  • text:新的文本内容(用于编辑)

陷阱:

  • 机器人只能编辑自己的消息
  • 消息只能在发送后 48 小时内删除
  • 在群组中,有删除权限的机器人可以删除任何消息
  • 编辑消息会移除其"已编辑"时间戳历史

5. 转发消息和获取更新

何时使用:用户想转发消息或检索最近的更新

工具序列:

  1. TELEGRAM_FORWARD_MESSAGE- 将消息转发到另一个聊天 [可选]
  2. TELEGRAM_GET_UPDATES- 获取最近的机器人更新/消息 [可选]
  3. TELEGRAM_GET_CHAT_HISTORY- 获取聊天消息历史 [可选]

关键参数:

  • from_chat_id:转发的源聊天
  • chat_id:转发的目标聊天
  • message_id:要转发的消息
  • offset:GET_UPDATES 的更新偏移量
  • limit:要检索的更新数量

陷阱:

  • 转发的消息会显示原始发送者归属
  • GET_UPDATES 返回有限的最近更新窗口
  • 聊天历史访问可能受机器人权限和聊天类型限制
  • 使用偏移量避免重复处理同一更新

6. 管理机器人命令

何时使用:用户想设置或更新机器人命令菜单

工具序列:

  1. TELEGRAM_SET_MY_COMMANDS- 设置机器人命令列表 [必需]
  2. TELEGRAM_ANSWER_CALLBACK_QUERY- 响应内联按钮按下 [可选]

关键参数:

  • commands:带command和description的命令对象数组
  • callback_query_id:要响应的回调查询 ID

陷阱:

  • 命令必须以 ‘/’ 开头且为小写
  • 命令描述有 256 字符限制
  • 回调查询必须在 10 秒内响应,否则过期
  • 设置命令会替换整个命令列表

常见模式

聊天 ID 解析

从用户名:

1. 使用 '@username' 格式作为 chat_id(用于公共频道/群组) 2. 对于私聊,需要数字 chat_id 3. 使用用户名调用 GET_CHAT 检索数字 ID

从 GET_UPDATES:

1. 调用 TELEGRAM_GET_UPDATES 2. 从消息对象中提取 chat.id 3. 在后续调用中使用数字 chat_id

消息格式化

  • 使用parse_mode: 'HTML'支持<b>bold</b>、<i>italic</i>、<code>code</code>
  • 使用parse_mode: 'MarkdownV2'支持*bold*、_italic_、`code`
  • 在 MarkdownV2 中转义特殊字符:_ * [ ] ( ) ~ > # + - = | { } . !
  • 无格式的纯文本省略 parse_mode

已知陷阱

机器人权限:

  • 机器人必须被添加到群组/频道才能交互
  • 需要管理员权限的操作:删除消息、导出邀请链接、管理成员
  • 机器人不能发起对话;用户必须先开始对话

速率限制:

  • 同一群组每秒 30 条消息
  • 群组中对同一用户每分钟 20 条消息
  • 批量操作应在调用之间实现延迟
  • 达到限制时 API 返回 429 Too Many Requests

聊天类型:

  • 私聊:与机器人一对一的对话
  • 群组:多用户聊天(必须添加机器人)
  • 超级群组:带管理员功能的增强群组
  • 频道:仅广播(机器人必须是管理员才能发帖)

消息限制:

  • 文本消息:最大 4096 字符
  • 说明文字:最大 1024 字符
  • 文件上传:通过机器人 API 最大 50MB
  • 内联键盘按钮:每行 8 个

快速参考

任务工具名关键参数
验证机器人TELEGRAM_GET_ME(无)
发送消息TELEGRAM_SEND_MESSAGEchat_id、text、parse_mode
发送照片TELEGRAM_SEND_PHOTOchat_id、photo、caption
发送文档TELEGRAM_SEND_DOCUMENTchat_id、document、caption
编辑消息TELEGRAM_EDIT_MESSAGEchat_id、message_id、text
删除消息TELEGRAM_DELETE_MESSAGEchat_id、message_id
转发消息TELEGRAM_FORWARD_MESSAGEchat_id、from_chat_id、message_id
获取聊天信息TELEGRAM_GET_CHATchat_id
获取聊天管理员TELEGRAM_GET_CHAT_ADMINISTRATORSchat_id
获取成员数量TELEGRAM_GET_CHAT_MEMBERS_COUNTchat_id
导出邀请链接TELEGRAM_EXPORT_CHAT_INVITE_LINKchat_id
获取更新TELEGRAM_GET_UPDATESoffset、limit
获取聊天历史TELEGRAM_GET_CHAT_HISTORYchat_id
设置机器人命令TELEGRAM_SET_MY_COMMANDScommands
响应回调TELEGRAM_ANSWER_CALLBACK_QUERYcallback_query_id

何时使用

此技能适用于执行概述中描述的工作流或操作。

局限性

  • 仅在任务明确匹配上述范围时使用此技能。
  • 不要将输出视为环境特定验证、测试或专家审查的替代品。
  • 如果缺少所需的输入、权限、安全边界或成功标准,请停下来询问澄清。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询