许多Telegram用户在进行社群运营或营销推广时,会遇到需要向多个群组或大量用户发送相同消息的场景。手动逐群发送不仅效率低下,还容易触发Telegram的发送频率限制,导致账号被临时封禁。Telegram群发机器人正是为了解决这一痛点而生的工具,它能自动完成消息的批量发送,同时控制发送频率以降低风险。但新手在使用时常常面临不知道如何选择机器人、配置参数不当导致发送失败等问题。本文将手把手教你从准备工作到实际发送,完整掌握群发机器人的使用方法。
准备工作:获取机器人Token并了解基础权限
在开始使用任何群发机器人之前,你首先需要拥有一个Telegram机器人,并获取其API Token。大多数群发机器人都是基于Telegram Bot API开发的,因此这是整个操作的基础。
具体操作说明:
1. 打开Telegram,在搜索框中输入 @BotFather,这是Telegram官方的机器人创建工具。
2. 点击进入聊天窗口,输入命令 /newbot并发送。
3. 根据提示为你的机器人设置一个名称(如“MyMassBot”)和一个用户名(必须以 bot结尾,如“MyMassBot_bot”)。
4. 创建成功后,BotFather会返回一段文本,其中包含 API Token,格式类似“123456789:ABCdefGHIjklmNOPqrSTUvwxYZ”。请立即复制并妥善保存这个Token,后续配置群发机器人时需要用到。
5. 同时,确保你的机器人已被添加为目标群组的管理员,否则机器人无法向群组发送消息。如需发送私信,则需用户先主动与机器人对话一次。
注意事项/小提示:
- Token是机器人的唯一凭证,泄露后他人可控制你的机器人,请勿分享到公开场合。
- 创建机器人时,用户名必须唯一且以bot结尾,否则BotFather会提示重新输入。
- 如果忘记Token,可以再次向BotFather发送 /mybots,选择你的机器人,然后点击 API Token查看。
备用方案:
- 如果你使用的是第三方群发机器人(如“@GroupSendBot”等),则无需自己创建机器人,直接按该机器人的指令操作即可。
- 若BotFather无响应,请检查网络连接是否正常,或尝试更换Telegram客户端(如从手机版切换至电脑版)。
选择并部署群发机器人脚本或工具
获取Token后,你需要一个能执行群发功能的程序。对于非技术用户,推荐使用现成的开源脚本或在线服务;对于技术用户,可以选择自行编写Python脚本。
具体操作说明:
1. 使用现成脚本(推荐新手):在GitHub搜索“telegram mass message bot”或“telegram群发机器人”,选择一个Stars较多、更新活跃的项目。例如,搜索“telegram-bot-mass-message”,下载其代码压缩包。
2. 使用在线服务:部分网站提供Telegram群发机器人托管服务,如“@TelepostBot”或“@MassSendBot”。直接添加这些机器人,按提示输入你的机器人Token和目标群组ID即可。
3. 自行编写脚本(适合有编程基础):使用Python的 python-telegram-bot库,编写一个循环发送消息的程序。核心代码示例如下:
`python
from telegram import Bot
bot = Bot(token='YOUR_TOKEN')
chat_ids = ['群组1ID', '群组2ID'] # 替换为目标群组ID列表
for chat_id in chat_ids:
bot.send_message(chat_id=chat_id, text='你的消息内容')
time.sleep(2) # 每次发送后暂停2秒,避免触发限频
`
注意事项/小提示:
- 使用现成脚本时,务必检查代码中是否有恶意后门,建议在安全环境中运行。
- 在线服务通常有发送条数限制,免费版可能每日只能发几十条,付费版可解锁更高额度。
- 自行编写脚本时,必须添加延时(sleep),否则Telegram API会返回“429 Too Many Requests”错误,导致账号被临时封禁。
备用方案:
- 如果GitHub下载慢,可以尝试在Gitee(码云)搜索中文镜像项目。
- 若不想用脚本,也可使用Telegram桌面版配合自动化工具(如AutoHotkey)模拟点击,但稳定性较差,不推荐。
配置目标群组或用户列表
群发机器人需要知道消息要发送到哪里。你需要提供一个包含目标群组ID或用户ID的列表。获取这些ID是新手最容易卡壳的环节。
具体操作说明:
1. 获取群组ID:将你的机器人添加为目标群组的成员,并赋予管理员权限。然后在群组中发送一条任意消息,接着访问以下URL(将YOUR_TOKEN替换为你的Token):
https://api.telegram.org/botYOUR_TOKEN/getUpdates
在返回的JSON数据中,找到 message下的 chat字段,其中的 id即为群组ID(通常以负号开头,如 -1001234567890)。
2. 获取用户ID:让目标用户向你的机器人发送任意消息(如“/start”),然后同样访问上面的 getUpdates接口,在 from字段下找到 id,即用户的唯一数字ID。
3. 整理ID列表:将所有ID按行写入一个文本文件(如 targets.txt),每行一个ID。如果同时需要发送给群组和用户,混合写入即可,但注意群组ID必须包含负号。
注意事项/小提示:
- 群组ID的负号是必不可少的,如果遗漏,消息将无法发送。
getUpdates接口只保留最近24小时内的更新数据,因此请确保在获取ID后尽快使用。- 如果群组是超级群组(Supergroup),ID通常以 -100 开头;普通群组则以 - 开头。
备用方案:
- 使用第三方工具如 @getidsbot获取ID:将机器人拉入群组,发送
/id即可直接返回当前群组的ID。 - 若需获取大量用户ID,可以考虑使用爬虫脚本,但请注意遵守Telegram的使用条款,避免滥用。
设置发送参数并执行群发
所有准备工作就绪后,就可以开始配置发送参数并执行群发了。这一步需要谨慎设置,以避免账号被限制。
具体操作说明:
1. 编辑消息内容:在脚本或工具中,输入你要发送的文本消息。支持Markdown或HTML格式(如加粗、斜体、链接等),但需确保消息格式正确,否则可能发送失败。
2. 设置发送间隔:强烈建议将每次发送的间隔设置为 2-5秒。如果目标数量超过100个,建议将间隔提高到5秒以上。部分高级脚本支持随机间隔(如2-5秒之间随机),更能模拟人工行为。
3. 设置每日发送上限:为防止触发Telegram的全局限流,建议将每日发送总数控制在 500条以内。如果目标超过此数,应分多天发送。
4. 启动发送:运行脚本或点击在线工具的“开始发送”按钮。观察控制台或工具日志,确认消息是否成功送达。成功时通常返回 True或状态码200。
注意事项/小提示:
- 发送过程中如果看到“429 Too Many Requests”错误,立即停止发送,等待至少1小时后再继续。
- 消息内容中不要包含敏感词或频繁出现的链接,否则可能被Telegram服务器自动过滤。
- 如果发送给用户私信,请确保用户之前已与机器人对话过,否则消息会被拦截。
备用方案:
- 如果发送中途中断,可以记录已发送的ID,在脚本中添加断点续传功能,避免重复发送。
- 对于超长消息(超过4096字符),需分多条发送,或使用文件形式发送。
验证发送结果并处理失败项
发送完成后,务必检查哪些消息成功送达、哪些失败,并对失败项进行补救。
具体操作说明:
1. 查看成功日志:大多数脚本或工具会在运行结束后生成一个日志文件,列出成功发送的ID和失败的原因(如“chat not found”或“bot was blocked”)。
2. 手动测试:随机选择几个目标群组或用户,检查是否确实收到了消息。注意,如果群组关闭了通知,消息可能不会弹出提示,但会在聊天列表中显示。
3. 处理失败项:对于因“bot was blocked”失败的ID,说明用户已屏蔽你的机器人,无法补救,建议从列表中移除。对于因“chat not found”失败的ID,可能是群组已解散或ID错误,需重新核对。
4. 重新发送失败项:将失败ID单独整理成一个新列表,调整发送间隔后再次尝试发送。如果连续失败3次以上,建议放弃该目标。
注意事项/小提示:
- 不要重复向已成功发送的目标发送相同消息,这会被视为骚扰,可能导致机器人被举报。
- 如果大量失败(超过30%),请检查你的Token是否有效,或目标列表是否全部正确。
备用方案:
- 使用脚本自动将失败ID保存到单独的文件中,方便后续处理。
- 如果失败原因是“user is deactivated”,则该用户账号已注销,直接删除即可。
常见问题补充
Q:为什么我的机器人发送消息后,群组成员看不到?
A:最常见的原因是机器人未被设为群组管理员。请检查群组管理员列表,确保机器人拥有“发送消息”权限。另外,如果群组开启了“慢速模式”,消息显示可能会有延迟。
Q:发送过程中出现“Flood control exceeded”怎么办?
A:这是Telegram的限频机制。立即停止发送,等待至少1小时。之后将发送间隔调整为5秒以上,并将每日总量控制在200条以内。
Q:我可以使用一个机器人向多个群组发送不同内容吗?
A:可以。你需要在脚本中为每个群组单独指定消息内容,或者使用字典结构(如 {群组ID: 消息内容})来实现差异化发送。
Q:群发机器人会被Telegram封号吗?
A:如果发送频率过高或内容违规(如广告、诈骗信息),账号和机器人都可能被永久封禁。合规使用(低频率、非敏感内容)通常安全,但仍存在风险,建议使用小号操作。
总结:
使用Telegram群发机器人时,核心在于获取有效的Token和目标ID、合理设置发送间隔与每日上限,以及及时处理失败项,从而在高效发送的同时最大程度避免账号风险。