通过 Telegram 群组聊天机器人自动删除链接
Telegram 群组中需要删除哪些链接
在设置过滤器之前,请先为成员和管理员确定规则。在 Telegram 中,链接不仅指 https://site.example 这样的文本。成员可以发送不带协议的地址、其他聊天的邀请、短链接、带有伪装地址的可点击文本、照片、视频或文档说明中的链接。
请单独确定指向流媒体平台、社交网络、打赏服务、云盘、作品集、商店和申请表单的链接如何处理。对于主播的聊天,通常禁止宣传他人频道和第三方邀请,但保留日程、剪辑、打赏和团队资源的链接。
机器人是在消息发送之后才收到消息,然后再将其删除。 因此链接可能会在聊天中显示几秒钟。Telegram 不允许机器人预先阻止成员发送消息。
选择过滤方案,而不是一概禁止
完全删除所有链接适用于只有项目团队发布材料的封闭聊天。在公开社区中,这种方案很快就会造成困扰:观众将无法发送时间码、错误报告、剪辑链接或讨论主题所需的相关材料。
更实用的做法是将链接分为几类:允许的域名、来自受信任角色的链接、来自新人的可疑链接以及禁止的邀请。例如,可以删除所有 t.me 邀请、指向他人直播的链接和 URL 缩短服务,但允许指向频道官方资源的链接。
- 严格方案:删除普通成员发送的任何 URL。
- 白名单:仅允许已批准的域名和子域名。
- 角色方案:不检查管理员、版主和服务机器人发送的链接。
- 信誉方案:仅对新账户或可疑账户应用严格过滤。
规则越复杂,需要的测试就越多。过于宽松的方案会放过部分广告,而过于宽泛的方案则会开始删除正常消息。
现成机器人、构建器还是自有逻辑
对于基础管理,可以使用现成的机器人,例如 Combot 或 Rose。这类解决方案通常具有反垃圾信息、词语过滤、新人限制、警告和操作日志。安装前请检查所选机器人是否能够分析链接、媒体说明和已编辑消息。
当标准规则足够时,现成机器人很方便。但例外集合、日志格式和 URL 检查逻辑可能会受到服务设置的限制。这类机器人的命令因版本和界面而异,因此请以其最新帮助文档为准,而不是旧帖子中的随机说明。
自动化构建器适用于简单场景:收到消息、找到 URL、向管理员发送通知。其弱点在于延迟、集成限制以及对第三方平台的依赖。对于活跃聊天,这可能会很明显。
如果需要针对不同主题、角色和链接类型制定单独策略,则需要通过 Telegram Bot API 构建自有机器人。它可以检查 Telegram 实体、存储违规历史并将日志发送到封闭的管理员聊天。为此,你需要负责服务器、更新和令牌安全。
机器人删除消息需要哪些权限
将机器人添加到所需群组,并将其设为具有删除消息权限的管理员。否则,机器人可以识别 URL、将事件写入日志甚至发送警告,但无法删除发布内容。
如果计划进行临时限制、禁止发送消息或在多次违规后封禁,则需要相应权限。对于简单的反链接功能,不需要修改群组资料、任命管理员或管理邀请的权限。
只授予必要的权限。如果机器人获得了对聊天的完全控制权,代码错误、服务漏洞或令牌泄露会更加危险。
检查机器人是否接收成员消息
添加后不要仅限于启动命令。请从没有管理员权限的普通账户发送测试消息。检查带链接的文本、照片说明中的链接以及可点击文本。重要的是要以成员身份进行测试:群主和管理员通常会被排除在外。
对于自有机器人,请检查传入更新。新消息通常出现在 message 字段中,而已发布消息的更改则出现在 edited_message 中。如果机器人在绑定了群组的频道中工作或处理频道发布内容,可能需要单独的更新类型。
隐私模式也会影响机器人接收哪些消息。如果处理程序只能看到命令和对机器人消息的回复,链接过滤器将无法完整工作。更改设置后,请在测试群组中重新检查更新。
检查 Telegram 实体,而不仅仅是文本
在消息中,Telegram 会传递标记实体。对于链接,尤其重要的是 url 和 text_link 实体。前者表示地址本身位于文本中。后者表示地址隐藏在普通词语下:例如,成员发送“看这里”,而跳转却指向广告网站。
如果机器人只检查消息字符串,很容易漏掉 text_link。对于 text_link,需要从实体字段中提取 URL,而不是在可见文本中查找域名。对于媒体说明,请像分析 text 和 entities 一样分析 caption 和 caption_entities。
最小检查逻辑如下:从实体中收集 URL,然后查找 Telegram 未识别为实体的文本地址,规范化域名并将其与规则进行比较。需要删除整条消息及其附件,否则聊天中会留下广告图片或没有说明的文件。
URL 和 Telegram 邀请的正则表达式示例
正则表达式不能替代实体检查,但有助于捕获不带协议的地址和格式不规范的文本。例如,对于普通 URL,可以使用模板:(?i)\b(?:https?://|www\.)[^\s]+。它可以找到带 http、https 和 www 的地址,但看不到 example.com 这种没有前缀的域名。
对于不带协议的域名,可以添加单独检查:(?i)\b[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.(?:com|net|org|ru|io|gg)\b(?:/[^\s]*)?. 区域列表需要根据受众选择。如果只列出几个区域,垃圾信息发送者就可以使用其他区域。如果模板过于宽泛,就会开始将 URL 与技术标识混淆。
Telegram 邀请可以通过单独规则方便地检查:(?i)\b(?:https?://)?(?:t\.me|telegram\.me)/(?:joinchat/|\+|[a-z0-9_]{5,})\b。该规则覆盖公开的 t.me 链接和部分邀请。它不应自动将指向项目官方聊天的链接视为垃圾信息,因此需要将域名和具体允许路径添加到例外中。
不要试图用一个正则表达式堵住所有绕过方式。像 s i t e . com 这样的写法、用“点”字替换点号、Unicode 字符以及包含地址的图片,需要其他方法:反垃圾评分、人工检查或 OCR。过于激进的模板会导致大量误删。
处理说明、转发和文件中的链接
垃圾信息很少仅限于普通文本消息。链接可能出现在照片、视频、GIF、文档、音频或带说明的投票的 caption 中。如果机器人只查看 text 字段,成员只需一个媒体文件就能绕过过滤器。
对于每条传入消息,请检查 text、entities、caption 和 caption_entities。文档名称有时也包含域名或广告文本,但仅因名称就删除文件应谨慎:在工作聊天中,这样很容易丢失所需归档或直播录像。
转发的帖子并不总是包含可见 URL,但可能通过按钮或说明指向第三方频道。普通机器人并不总能以适合过滤的格式获取有关内嵌按钮和转发来源的所有数据。如果转发成为问题,对于新成员,更安全的做法是单独限制转发,或将此类发布内容发送进行人工审核。
堵住通过编辑消息绕过的方式
典型的绕过方式如下:成员发送一条中性短语,等待消息离开管理员关注范围,然后通过编辑添加广告。如果处理程序只响应新消息,链接就会留在群组中。
对于自有机器人,请订阅 edited_message 更新,并运行与 message 相同的检查函数。不要制作单独的简化逻辑:否则过滤器可能会删除新消息中的直接链接,却漏掉编辑后的 text_link 或 caption。
在日志中注明删除发生在编辑之后,并保存原始消息标识符。这将有助于处理投诉:成员编辑旧帖子可能不是为了广告,而是为了修正指向允许资源的链接。

建立域名和路径白名单
白名单最好基于规范化域名构建,而不是基于字符串完全匹配。对于地址 https://clips.example.com/video/123,机器人应将主机 clips.example.com 与路径分开,将其转换为小写并移除服务前缀 www。
主播社区例外列表示例:
- 你的主站及所需子域名;
- 流媒体平台上的频道页面;
- 直播日程和公告页面;
- 项目使用的打赏服务;
- 团队文档、申请表单和任务跟踪器;
- 项目官方 Telegram 链接:聊天或频道的具体 @username;
- 合作伙伴域名,如果规则确实允许发布。
如果只需要某个具体资源,不要将整个大型服务添加到白名单。允许整个域名可能会为他人页面、推荐垃圾信息或同一平台上的钓鱼网站打开通道。在这种情况下,不仅要检查域名,还要检查允许的 URL 路径。
区分受信任角色和普通成员
管理员、版主和通知机器人通常应能无延迟地发布链接。最简单的方案是跳过具有管理员状态的用户。这很方便,但会给每个获得管理员权限的人完全豁免,包括临时助手。
更严格的方案是单独的受信任账户 user ID 列表。当并非所有管理员都应宣传外部资源时,这很有用。团队变更后需要审查列表:被遗忘的前版主 ID 会成为绕过过滤器的通道。
对于新人,可以启用单独模式。例如,删除最近加入成员发送的任何外部链接,而将长期用户的消息发送进行较宽松的检查。这种方法可以削减大规模垃圾信息,但可能会妨碍真实观众立即发送所需材料。
如何区分广告链接和有用链接
单个 URL 本身并不能证明是垃圾信息。请评估消息上下文、域名和作者行为。游戏更新讨论中指向补丁说明的链接,与在任何消息下发送“来我的频道”不同,即使两个地址在技术上都是正确的。
- 链接指向白名单中的域名或讨论主题相关的已知资源。
- URL 周围的文本与当前对话相关,而不是包含模板化的订阅或赚钱号召。
- 成员长期在群组中,发送普通消息,并且没有在多个主题中发布相同文本。
- 域名没有使用可疑的伪装、相似字符以及通过缩短服务进行的重定向链。
- 链接发布在允许的主题中,例如剪辑、申请或技术支持板块。
- 账户在加入聊天后没有连续发送多条包含不同链接的消息。
不应将启发式规则变成自动封禁。新真实观众的信誉可能较低,而知名账户有时会被盗。对于边界情况,更实用的做法是删除消息、将其保存到日志,并提供快速联系管理员的途径。
设置删除链接后的反应
静默删除可以减少噪音,但成员可能会在不了解原因的情况下重复发布。在聊天中发送简短通知或私信可以让规则更透明。不要在通知中发布被删除的 URL:这样机器人自己会再次传播垃圾信息。
合适的通知文本:“链接已被群组规则删除。允许发布主题相关材料和例外列表中的域名。如果消息被误删,请写信给管理员”。最好根据社区规则调整措辞。
违规计数器有助于防止重复刷屏。但不要在第一次触发时就启用自动封禁。首先收集误删统计数据,尤其是在检查不带协议的域名和说明中的链接时。
记录日志并通知管理员
管理日志至少应包含用于分析的数据:聊天 ID、用户 ID、事件发生时的姓名或 username、消息 ID、时间、触发类型和原因。原因可以是“禁止的域名”、“第三方群组邀请”、“URL 缩短服务”、“编辑后的链接”或“新成员的链接”。
最好将被删除的 URL 发送到封闭的管理员聊天,而不是存储在公共日志频道中。如果链接可能有害,不要使其可点击:以文本形式传递域名,或将点号替换为空格并向管理员说明。
有用的管理员通知包括操作和上下文:谁发送了消息、在哪里发布、根据哪条规则删除以及是否为编辑。这样管理员可以快速决定是否将域名添加到白名单、解除对成员的限制或保持规则不变。
误触发时该怎么办
成员需要清晰的投诉途径:私信管理员、群组中的单独主题或反馈表单。不要要求将删除的链接重新发送到公共聊天。最好建议发送域名并解释其用途。
管理员在分析时应检查规则、实体类型和作者状态。如果 URL 是允许的,请将确切域名或路径添加到例外中。如果问题是由于正则表达式过于宽泛引起的,请缩小模板,而不是创建包含数十个随机例外的列表。
不要自动恢复任何被删除的消息。其中可能包含钓鱼链接,而原始上下文已经消失。更安全的做法是请作者在管理员确认后重新发布材料,或将其放置在专门用于链接的主题中。
启动前在测试群组中检查过滤器
创建一个具有相同机器人权限的测试群组,并准备一个普通测试账户。不建议从群主账户进行测试:他可能会作为管理员被排除在过滤器之外。记录结果,以便在更改正则表达式或白名单后不会破坏已经工作的场景。
- 发送带 https、带 www 和不带协议的域名 URL。
- 检查通过 text_link 实体隐藏在可点击文本中的链接。
- 发送指向第三方群组的 t.me 邀请和指向项目允许聊天的链接。
- 将 URL 添加到照片、视频和文档的说明中。
- 编辑一条中性消息并在其中插入禁止的链接。
- 检查来自允许域名的发布内容以及受信任版主发送的消息。
- 确认管理员日志中会收到删除原因,而不会在公共聊天中发布危险链接。
将链接规则添加到群组描述中
简短规则可以减少重复违规和与成员的争议。只需说明广告链接、第三方邀请和短链接会被自动删除,而有用材料可以与管理员协商。
不要在描述中披露过滤器的所有技术细节、正则表达式和信誉检查条件。这些信息有助于垃圾信息发送者寻找绕过方式。对成员来说,更重要的是了解哪些链接允许,以及误删时到哪里求助。
Last Articles
设计和功能有哪些变化 我们更新了网站,让操作更快捷、更便利。主要变化涉及界面、个人中心和订单管理。 通过优化数据库请求,页面加载速度平均提升了三分之一。导航菜单从页眉移到了左侧边栏,最近订单历史也放到了首页——无需每次都进入个人中心查看状态。 深色主题和自适应 新增了带自动模式的深色主题..
Good afternoon, I've collected all the news during this time.: 1. The main news is that prices for twitch viewers have been greatly reduced, while Tw..
1. 使用促销代码 "December2025" 可为我们所有观众享受 15% 折扣2. 在 1 月 1 日前,我们将 配置工具 和最 实惠的观众类别 的基础价格降低了 25%3. 我们的 频道 正在举行 3 个抽奖活动! - 如果您进入我们 购买排行榜 前 100 名,我们将赠送 500..
抽搐服务是 工作稳定,所以我们准备与小队,经销商合作, 服务所有者,机器人所有者和许多其他人。个别条款可以在电报@TiKey_K上与管理员讨论..
我们 已经完全更新了我们的Twitch查看器服务,他们现在是 稳定地工作。 我们只为观众使用高质量的IP地址。细微差别在于多达150名观众的订单。 当总观众数达到200时,它们就会下降.为 例如,如果您订购了140个观众,并且已经拥有100个自己的观众 现场观众,我们的140观众将下..
Hello everyone! Today, we are announcing a new feature—"Twitch Viewer Configurator". Now, you can customize any plan for your Twitch channel. Choo..
Greetings, I have compiled a guide for streamers, which will be very relevant at the moment. Now YouTube and twitch have disabled monetization from vi..
We have finally developed the APINow it will be more convenient for our partner sites to work with us.To update the maximum tariffs for YouTube, an up..
由於合作夥伴服務和推薦計劃非常受歡迎,我們製作了一張合作表。本質很簡單:更多的現場觀眾 - 我們提供更多的廣告。下載或查看計劃條款下載集給合作夥伴(簡介 + 標誌)對於主播來說,有必要在直播上放置徽標+添加網站連結。如果不遵守這些規則,則不會提供支援。如果存在欺詐行為,則終身禁止。有關合作夥伴計劃的..
我们的直播主服务

Dlive

Shopee

Bigo
我们的内容创作者服务







