关于telegram电报防广告机器人想到的

我不支持把各种外部机器人拉到群里面来, 这样会让群里的信息更容易被抓取.

在给了这些机器人管理权限之后, 很难保证这些机器人会不会作恶.
不知道大家对于 双向聊天机器人livegarm bot 发广告的事件还有没有印象.

对于防广告, 基本上是两个思路.
一个是人机验证.
另一个是对消息内容进行分析是否广告.

人机验证有很多办法. 
做题啊, 回答问题啊, 调用 cloudflare 的人机验证啊, 等等...
我选择的方案是回复文本. 一来是方便自定义, 二来是容易提升回答问题的难度.
如果要做到有意义的随机问题, 也是可以的, 比如, 我的博客最新一期博文的标题是什么
人机验证理论上无法解决 使用真人来做题的情况. 就看你的群组的规模与发广告的人的决心之间的博弈了.

对消息内容分析是否广告, 难度要大得多.
而且我觉得这中间涉及到一个信任问题, 所以我没有实施.
现在有不少人在做, 基于消息内容分析的防广告机器人. 有很多也提供免费的开放使用.
但是我有一些担心,
1. 如果这个防广告机器人 收广告商的钱,  "故意" 漏掉广告? 
2. 如果这个防广告机器人依赖大家提供信息和反馈(广告消息, 非广告消息). 
即使这个防广告机器人本身是中立的. 
2a. 如果有人故意将广告消息报告成正常消息, 让防广告机器人学习并形成判断规则之后, 自己再用同样的模式发广告消息, 就可以躲过防御.
2b. 如果有人故意将正常消息报告成虚假的广告消息, 让防广告机器人学习并形成判断规则之后, 会产生误伤, 故意让防广告机器人的表现变差, 使得群主们不敢用这个机器人.
3. 如果这个广告机器人依赖作者或者一个小团体来提供 广告与非广告的数据来训练, 那么随着广告消息的模式每天都可能发生变化, 这个广告判断库也需要随之及时更新. 这是我无法想象的精力投入. 如果是我的话, 我不会维护这样一个项目.

像这种业余时间, 因兴趣而起的, 非商业的项目.
我在考虑设计为 
大而完美 还是 小而粗糙, 
大一统 / 功能强大  还是  各自独立 / 功能灵活 / 够用就好,
我会选择后者.

我最早实践部署的telegram电报关键字监控机器人, 是别人的项目
该项目设计了机器人自动加入群组, 设计了不同的使用者会在不同的群组里面监控不同的关键字. 该项目设计了数据库. 
该项目总代码量1.3K

今年我在GPT的帮助下, 开发了自己的telegram电报关键字监控机器人
此项目需要使用者自己完成机器人加群的操作.
此项目对于所有的使用者, 关键字列表是同一份.
此项目不使用数据库, 关键字保存在配置文件里面.
此项目对我自己来说, 使用效果和前一个项目是完全一样的.
此项目总代码量0.45K

我自己的telegram电报防广告方案 我分成了2个机器人和4个工具
每个机器人的代码量都不超过0.5K
每个工具的代码量都不超过0.1K


==== update
2025-10-17
防广告机器人 自己在群组内转发广告

这时, 我到这个"防广告机器人" 的频道内看到, 2025-10-16 有这样一条


评论

The Hot3 in Last 7 Days

搭 Docker版 Sub-Store 带 http-meta 实现 集合订阅 测延迟 排序 筛选 生成新订阅 定时任务上传Gist

酒馆SillyTavern 玩英文角色卡 也能以中文输出 设置世界书Lorebooks