An open API service indexing awesome lists of open source software.

https://github.com/codfrm/qqbot-official

官方的qqbot https://bot.q.qq.com/wiki/develop/api/
https://github.com/codfrm/qqbot-official

Last synced: about 1 month ago
JSON representation

官方的qqbot https://bot.q.qq.com/wiki/develop/api/

Awesome Lists containing this project

README

        

## QQ频道机器人

> 有很多自用的功能,也有一个简单的机器人命令框架,自用功能可以直接编译然后配置好配置文件就可使用

### 命令框架

参考gin的设计,实现命令框架

```go
// init
cmd := command.NewCommand(me, api)
// 只会响应管理员艾特me的消息
cg := cmd.Group(command.AtMe(), middleware.Admin)
cg.Match("警告", p.punish)
cg.Match("移除警告", p.remove)

// 匹配艾特命令+摇色子
cmd.AtMeMatch("摇色子|摇骰子", func (ctx *command.Context) {
ctx.ReplyText(fmt.Sprintf("%v", rand.Int31n(6)+1))
})
```

### 机器人

#### 机器人命令

> 以下是本仓库的机器人命令,语料配置可以查看:[语料配置模版.csv](./docs/语料配置模版.csv)

| 命令 | 返回 | 备注 |
|----------------------------|-------------------|--------------------------------|
| 警告 | 管理员警告用户 | 需要艾特并且是管理员权限才会触发 |
| 我的信息 | 返回用户信息、警告等级、用户组选择 | 警告成员无法获得用户信息 |
| 摇色子/摇骰子 | 回复1-6 | |
| 早睡打卡 | 打卡成功 | 晚上11点前才能打卡,配合早起打卡使用 |
| 早起打卡 | 打卡成功 | 早上8点前并且需要前一天有早睡打卡记录,成功增加积分 |
| 打卡耻辱榜 | 成员信息 | 返回未达成条件的打卡人员 |
| 打卡 | 打卡成功 | 增加积分 |
| 早八人打卡 | 打卡成功 | 8点前打卡 |
| 单词分享打卡 | 打卡成功 | 分享单词卡片进行打卡 |
| 设置打卡频道 [功能] | 设置成功 | 由频道主设置打卡频道 功能:学习、早起 |
| 设置通知频道 [功能] [时间] [标题] [文案] | 设置成功 | 由频道主设置通知频道 功能:学习、早起 时间为cron表达式 |

#### 配置和启动

将目录下的`config.yaml.example`复制粘贴一份`config.yaml`并修改其中的配置,然后直接启动编译好的二进制程序即可

#### 资源文件

机器人所使用的资源文件放在`./assets`目录下方

| 文件 | 作用 |
|------------------|-----------|
| images/sleep.jpg | 用于晚睡打卡的图片 |
| images/getup.jpg |用于早起打卡的图片|

### 机器人申请

机器人的申请方式请看:[QQ机器人](https://bot.q.qq.com/wiki/)

#### 常见问题

> 很多申请的东西和新更新的咨询需要加入`QQ机器人官方频道`获取

* [完善信息时测试频道ID如何获取](https://github.com/CodFrm/qqbot-official/issues/1)
* 主动推送消息限制:公域每日2条,私域每日100条(可能变化)