Skip to content

mazezen/verify-bot

Repository files navigation

verify-bot

用于 Telegram 加群验证机器人, 采用 Golang 编写. 支持全平台编译运行

① 项目介绍

Telegram(简称:小飞机),全球知名,安全的聊天软件。 由于软件的安全和隐私性,各种加群推广机器人漫天飞.无法时时刻刻做到对入群的成员进行甄别. 处于甄别是否为真人入群,结合Telegram提供的的API,实现一款加群验证的机器人.

本项目为开源项目, 可以直接部署使用.详细的教程在下方.

Telegram Bot Api 文档: https://core.telegram.org/bots/api

② 功能逻辑

1. 监听群消息

  • 监听群消息更新:
    • 新成员加入

2. 验证流程

  1. 新成员加入 -> 设置新成员的临时权限 -> 新成员无法发送消息 (✅)
  2. 发送问题等待新成员验证 (验证问题针对每个入群的成员,别人无法点击验证) (✅)
    • 答题如: 32 + 67 = ? (✅)
  3. 新成员完成验证 (✅)
    • 回复指定答案 (✅)
      • 成功 -> 恢复禁言权限, 允许发言 (✅)
      • 失败 (✅)
        • 重新回答 (✅)
        • 超时未回答问题 -> 踢出群 (❌)
        • 错误次数达到 -> 踢出群 (❌)

③ 使用方式

  1. 创建机器人 @BotFather,拿到Bot Token.配置到config.yaml

  2. 关闭隐私模式:

    • 默认机器人只能收到@提及消息。
    • 要监听新成员加入事件,需要关闭隐私模式(在 BotFather 设置)。
      • /mybots -> 选择目标机器人 -> Bot Setting -> Group Privacy
  3. 创建群的设置为超级群或者公开群

    1. 打开 Telegram,进群社群管理画面
    2. 选择"编辑群信息"
    3. 选择"社群类型"
    4. 给群设置一个公开用户名
    5. 保存您所做的修改,您的群将被Telegram自动升级成超级群。
  4. 将机器人添加到目标群组

    • 给机器人管理员权限

④ 运行

  • 下载代码
$ git clone https://github.com/mazezen/verify-bot.git
  • 编译
$  go build -o verify-bot
  • 执行
$ ./verify-bot

#nohup
nohup ./verify-bot >> run.log 2>&1 &

Docker

# 1. 第一次启动(构建 + 启动)
make docker-compose

# 2. 修改代码后重启
make restart
# 或者简写成:
make docker-compose

# 3. 只查看日志
make logs

# 4. 停止服务
make down

效果

About

Telegram 加群验证机器人

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors