Skip to content

机器人 ​

以下是 该项目 的介绍。

特性 ​

支持多框架,一套代码多个平台
插件热更新,无需重新卸载安装
全局管理器,简单配置即可上手

协议 ​

回调地址:http://your.domain/app.php?frameId=10000&frameHost=127.0.0.1:1111&key=<frameKey>
frameId 不填默认 2500,frameBotId 手动指定机器人号码,frameHost 为 HTTP 转发回去的 Host

frameId框架平台鉴权HTTPWS
2500小米小爱小爱音箱-✓✗
10000MyPCQQ电脑 QQ白名单 IP✓✗
15000OPQNTQQ-✗✓
20000可爱猫微信 (旧)密钥✓✗
25000可爱猫微信 (新)密钥✓✗
30000飞书飞书密钥✓✗
40000钉钉钉钉密钥✓✗
50000NOKNOKNOKNOK密钥✓✗
60000LiteLoaderQQNT电脑 QQ密钥✓✗
70000QQ 机器人QQ 频道密钥✗✓
75000QQ 机器人QQ 群密钥✗✓
77500QQ 机器人QQ 群自定义签名✓✗
80000王者营地王者营地-✓✗
100000抖音抖音密钥✓✗
90000米游社米游社密钥✓✗
60000go-cqhttp手机 QQ密钥✓✓

回复 ​

- 表示不确定,且很大概率不行,小爱音箱 只有文本

frameType文本图片at_msgreply_msgmarkdown_msg
MyPCQQ✓✓✓✗✗
OPQ✓✓✓✗✗
可爱猫✓本地✓✗✗
可爱猫✓本地✓✗✗
飞书✓✗✓✗✗
钉钉✓✗✗✗✓
NOKNOK 机器人✓✗✓✓✓
LiteLoaderQQNT✓✓✓✓✗
QQ 频道✓✓✓✓✗
QQ 群✓✗✓✗✗
QQ 群自定义✓✓✓✓✓
王者营地✓✗✓✗✗
米游社✓✓✓✓✗
抖音✓✓✓✗✗

配置 ​

密钥 ​

所有带 example. 前缀的都需要自行配置。里面的密钥换成自己的,然后去掉 example. 即可。

app/example.config 內的文件修改完以后复制一份到 app/config
app/database/example.app.sql.php
app/ext_ws/example.qq_guild_ws.js

接收入口鉴权 ​

回调地址携带 key 参数,优先使用 app/config/app.config.json 中的 frameKey,未配置时回退到 app/config/app.config.php 的 APP_KEY 白名单。

ws 网关脚本统一从 app/ext_ws/frame_key.js 读取,优先级:环境变量 BOT_FRAME_KEY > app/config/app.config.json 的 frameKey。

环境变量 ​

所有密钥走环境变量,不入库,示例见 app/example.config/env.example(可作为部署底稿,复制后按需填充):

变量说明
APP_REDIS_HOST/PASS/PORTRedis 连接(默认 127.0.0.1:6379)
BOT_FRAME_KEY接收入口鉴权 key(优先于 frameKey)
BOT_POST_URL接收入口基础地址(默认 bot.91m.top)
BOT_BASE_URL站点基础地址(图片缓存等拼接,默认 bot.91m.top)
BOT_ID/NAME/TOKEN/SECRETws 网关机器人凭据(不配置时回退脚本内配置)
DY_COOKIES/WEB_PROTECT/KEYS抖音桥接登录 Cookie 等(抖音必需)
BRIDGE_HOST/PORT抖音桥接监听地址/端口(默认 127.0.0.1:18100)
AUTH_*第三方 API 密钥(未设置时回退默认值)

redis ​

数据缓存,关键词触发、统计都需要 立即下载。

frameHost ​

HTTP 转发回去的 Host,默认为 127.0.0.1:1111(app/config/app.config.php 中配置)


如需外网访问,建议 服务器端防火墙、安全策略组 放通 8000-8100 端口。

frameGc ​

子频道/群过滤,逗号分隔多个,不填默认全部处理。


NOKNOK 和 QQ 频道 请填 子频道ID,如 123456,789012。

插件 ​

安装其他插件可以参考 demo 插件的说明。


插件通过 git submodule 管理,克隆仓库后需要执行 git submodule update --init --recursive 拉取。建议插件使用 plugin_ 作为前缀,本地文件夹与插件名保持一致。

写在最后 ​

环境密钥配置好以后需要 管理员 向机器人发送 功能 初始化插件,每次增删插件也需要。


只有注册过的命令下次才会调用相关插件,不用每一句话都轮询所有插件了。

注意 ​

文件、路径必须有读写权限,否则 缓存、发图 相关功能受到影响。


如果有两个相似的命令 (比如 一言状态 和 一言 ),建议长的放短的前面,否则调用次数的统计可能会统计到先匹配到的关键词上。

好用的话,请分享一下。拜托拜托,球球你辣 qwq