Skip to content

Kernel-SU/ksugmbot

Repository files navigation

KernelSU 加群验证机器人

这是一个 Telegram 加群验证机器人,用于 KernelSU 群组的入群审核。用户需要完成在线考试后才能加入群组。

功能特性

  • 🔐 基于 XXTEA 加密算法的密码验证
  • 🌍 支持多语言(中文/英文)
  • 📝 在线考试系统集成
  • 🚀 使用 Rust 编写,高性能、内存安全
  • 💾 LRU 缓存机制,最多保存 128 个加群请求

工作流程

  1. 用户申请加入群组
  2. 机器人生成随机密码并使用 XXTEA 加密
  3. 发送加密后的密码给用户,引导用户访问考试网站
  4. 用户完成考试后获得解密的密码
  5. 用户使用 /join <密码> 命令提交密码
  6. 机器人验证密码并批准加群请求

环境要求

  • Rust 1.70+
  • Telegram Bot Token

快速开始

1. 克隆项目

git clone <repository-url>
cd DeviceTokenService

2. 配置环境变量

复制 .env.example.env 并填写配置:

cp .env.example .env

编辑 .env 文件:

# Telegram Bot Token(从 @BotFather 获取)
TELEGRAM_TOKEN=your_bot_token_here

# 加密密钥(用于 XXTEA 加密)
SECRET=your_secret_key_here

3. 编译运行

# 开发模式
cargo run

# 生产模式
cargo build --release
./target/release/ksugmbot

4. 使用 Docker

docker-compose up -d

使用说明

用户命令

  • /join <密码> - 提交密码以加入群组

管理员操作

  1. 在 Telegram 中创建一个 Bot(通过 @BotFather)
  2. 将 Bot Token 配置到 .env 文件
  3. 将 Bot 添加到群组,并授予管理员权限(需要"邀请用户"权限)
  4. 启动机器人程序

项目结构

src/
├── main.rs        # 主入口
├── config.rs      # 配置管理
├── bot/           # Telegram Bot 处理逻辑
│   └── mod.rs
├── xxtea.rs       # XXTEA 加密算法实现
└── i18n.rs        # 多语言支持

技术栈

许可证

本项目基于原 ksugmbot 项目移植而来。

贡献

欢迎提交 Issue 和 Pull Request!

About

A telegram bot to handle group join request

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •