用途
Telegram Automation 是一个通过 Rube MCP(Composio)调用 Telegram 工具包实现自动化的技能。它让用户能够以机器人身份执行发送消息、管理聊天、分享媒体、处理机器人命令等操作,适合需要将 Telegram 集成到自动化流程中的场景。
主要能力
- 发送消息:向指定聊天发送文本消息,支持 HTML 或 MarkdownV2 格式,可静默发送或回复特定消息。
- 发送图片与文档:分享图片或文件,支持添加说明文字。
- 管理聊天:获取聊天详情、管理员列表、成员数量,以及导出邀请链接。
- 编辑与删除消息:修改或删除已发送的消息。
- 转发消息与获取更新:将消息转发到其他聊天,获取机器人最近的更新或聊天历史。
- 管理机器人命令:设置机器人命令菜单,响应内联按钮回调。
使用方式
前置条件
- Rube MCP 必须已连接(RUBE_SEARCH_TOOLS 可用)。
- 通过 RUBE_MANAGE_CONNECTIONS 建立有效的 Telegram 连接(工具包为 telegram)。
- 需要 Telegram 机器人令牌(通过 @BotFather 创建)。
- 始终先调用 RUBE_SEARCH_TOOLS 获取当前工具架构。
设置步骤
- 在客户端配置中添加 https://rube.app/mcp 作为 MCP 服务器,无需 API 密钥。
- 确认 RUBE_SEARCH_TOOLS 有响应,验证 Rube MCP 可用。
- 调用 RUBE_MANAGE_CONNECTIONS,工具包选择 telegram。
- 若连接未激活,按返回的授权链接配置 Telegram 机器人。
- 确认连接状态为 ACTIVE 后再运行工作流。
核心工作流
发送消息:依次调用 TELEGRAM_GET_ME(验证机器人身份)、TELEGRAM_GET_CHAT(可选,获取聊天详情)、TELEGRAM_SEND_MESSAGE(发送消息)。关键参数包括 chat_id、text、parse_mode、disable_notification、reply_to_message_id。注意机器人必须是聊天成员;MarkdownV2 需转义特殊字符;消息上限 4096 字符。
发送图片与文档:调用 TELEGRAM_SEND_PHOTO 或 TELEGRAM_SEND_DOCUMENT。关键参数包括 chat_id、photo/document、caption。说明文字上限 1024 字符;文件上限 50MB;图片会被压缩,如需原图请用 SEND_DOCUMENT。
管理聊天:调用 TELEGRAM_GET_CHAT、TELEGRAM_GET_CHAT_ADMINISTRATORS、TELEGRAM_GET_CHAT_MEMBERS_COUNT、TELEGRAM_EXPORT_CHAT_INVITE_LINK。导出邀请链接需要机器人是管理员;成员数量在大群中可能为近似值。
编辑与删除消息:调用 TELEGRAM_EDIT_MESSAGE 或 TELEGRAM_DELETE_MESSAGE。机器人只能编辑自己的消息;消息只能在发送后 48 小时内删除;有删除权限的群组机器人可删除任意消息。
转发消息与获取更新:调用 TELEGRAM_FORWARD_MESSAGE、TELEGRAM_GET_UPDATES、TELEGRAM_GET_CHAT_HISTORY。转发消息会显示原始发送者;使用 offset 避免重复处理更新。
管理机器人命令:调用 TELEGRAM_SET_MY_COMMANDS 设置命令列表,TELEGRAM_ANSWER_CALLBACK_QUERY 响应内联按钮。命令必须以 / 开头且小写;描述上限 256 字符;回调需在 10 秒内响应;设置命令会替换整个列表。
适用场景
- 自动向 Telegram 群组或频道发送通知、告警或更新。
- 以机器人身份分享图片、文档等媒体内容。
- 管理群组信息、生成邀请链接、统计成员数量。
- 编辑或删除已发送的消息以修正内容。
- 转发消息到其他聊天,或获取机器人更新以触发后续流程。
- 配置机器人命令菜单,提升用户交互体验。
限制
- 机器人必须被添加到群组或频道才能交互;无法主动发起对话,需用户先发起。
- 删除消息、导出邀请链接、管理成员等操作需要管理员权限。
- 速率限制:同一群组每秒 30 条消息,同一用户每分钟 20 条消息;超限返回 429。
- 消息长度限制:文本 4096 字符,说明文字 1024 字符,文件上传 50MB,内联键盘每行 8 个按钮。
- 聊天类型影响可用字段和权限:私聊、群组、超级群组、频道各有不同。
- 获取更新返回有限窗口;聊天历史访问受机器人权限和聊天类型限制。