253017feb2
fix zhaoan |
||
---|---|---|
data | ||
worker | ||
.gitignore | ||
exmple.json | ||
LICENSE | ||
main.py | ||
README.md | ||
req.txt | ||
route.py | ||
sample_config.py | ||
test.py | ||
zzcore.py |
XZZ
小智障,一个拓展 go-cqhttp ,快速构建命令式 QQ 机器人的框架.
如何使用
阅读完以下内容后可以参考我的 blog -> 部署一个自己的智障机器人 其中 go-cqhttp 配置文件部分格式可能有点过时,但是不影响理解🙈
安装配置
0.自己安装配置好 go-cqhttp.
XZZ
需要的配置有
- 相对应的上报地址与
go-cqhttp
api 地址 - 上报消息类型为
array
- 上报消息过滤为以下条件
{
"message_type": "group",
"raw_message":{
".regex":"^\/"
},
"user_id":{
".neq": 80000000
}
}
1.clone 本仓库, 填写 config.py
其中 APIURL
为 go-cqhttp 的 api 地址, AUTHORIZATION
为 go-cqhttp 的 access_token
, PORT
和 go-cqhttp 反向 http post 设置的端口保持一致.
2.安装依赖, 启动服务
pip install -r req.txt
python main.py
拓展功能
在 worker
文件夹中添加 python 模块.文件名即受该文件响应的命令.
如果要响应 /ping
命令的话, 文件名应为 ping.py
在该模块实现一个 Ans
类, 此类继承自 zzcore
里的 StdAns
类.
在这个类中你可选的重写以下属性和方法:
AllowGroup
, int 类型的 list, 在此 list 中的群组可以执行此命令.默认为 [], 全部允许.
AllowUser
, int 类型的 list, 在此 list 中的QQ号可以执行此命令.默认为 [], 全部允许.
AllowRole
, string 类型的 list, 在此 list 中的角色可以执行此命令.默认为 [], 全部允许, 可选值为 owner、admin、member , 对应 群主、管理员、群员 三种角色.
GroupNotAllow
、UserNotAllow
、RoleNotAllow
三个字符串, 分别为当用户因为以上三个原因被拒绝使用本命令时的回复, 自己去看默认值吧..
GETMSG()
方法, 该方法应当返回一个字符串, 在此方法中你可以借助以下变量:
self.uid
发起命令的用户的 QQ , int 类型
self.gid
发起命令的群组的群号, int 类型
self.role
发起命令的用户的角色,可能值 'owner'、'admin'、'member'
self.parms
命令详情, string 类型的 list. 看例子
如果用户发送了 /ping xxx 12
那么 self.parms 为 ['ping', 'xxx', '12']
self.raw_msg 详见 example.json