签到插件 (SignIn Plugin)
功能介绍
- 用户发送签到关键词即可进行签到
- 随机获得 3-10 积分奖励
- 每天只能签到一次
- 支持连续签到奖励(每7天额外获得5积分)
- 记录用户昵称和签到历史
- 使用 MySQL 数据库存储
安装步骤
1. 安装依赖
pip install pymysql
2. 创建数据库
执行 database.sql 文件中的 SQL 语句创建数据库表:
-- 在你的 MySQL 数据库中执行
source /path/to/database.sql
3. 配置数据库连接
编辑 config.toml 文件,修改数据库连接信息:
[database]
host = "your_mysql_host"
port = 3306
user = "your_username"
password = "your_password"
database = "your_database_name"
charset = "utf8mb4"
4. 自定义配置(可选)
你可以在 config.toml 中自定义:
- 积分奖励范围 (
min_points,max_points) - 连续签到奖励设置 (
bonus_streak_days,bonus_points) - 签到触发关键词 (
keywords) - 回复消息模板 (
messages)
使用方法
用户在微信中发送以下任意关键词即可签到:
- 签到
- 打卡
- checkin
- sign
功能特性
签到奖励
- 基础积分:3-10 随机积分
- 连续签到奖励:每连续签到7天额外获得5积分
数据记录
- 用户基本信息(wxid、昵称、总积分)
- 签到统计(最后签到日期、连续签到天数、总签到天数)
- 详细签到记录(每次签到的时间、获得积分等)
防重复签到
- 每天只能签到一次
- 自动检测签到状态并提示
数据库表结构
user_signin 表
- 存储用户基本信息和签到统计
- 包含积分、连续签到天数等字段
signin_records 表
- 存储详细的签到历史记录
- 可用于统计分析和历史查询
回复消息示例
签到成功
✅ 签到成功!
🎁 获得积分:7
💰 当前积分:127
🔥 连续签到:5天
连续签到奖励
✅ 签到成功!
🎁 获得积分:8
💰 当前积分:200
🔥 连续签到:7天
🎉 连续签到7天奖励:+5积分!
重复签到
❌ 今天已经签到过了!
💰 当前积分:127
🔥 连续签到:5天
注意事项
- 确保 MySQL 数据库服务正常运行
- 数据库连接信息配置正确
- 插件会自动创建用户记录,无需手动添加
- 连续签到以自然日为准,中断后重新计算
扩展功能
你可以基于此插件扩展更多功能:
- 签到排行榜
- 积分商城
- 签到提醒
- 更复杂的奖励机制
- 群组签到统计