本仓库为包含 mirai 与 el-bot 的基础可运行模版。
并在 package.json
中预置了几个简单的脚本。
.
├── LICENSE // AGPL-3.0,你不应该用它进行商业或非法行为
├── README.md
├── bot // 机器人实体,你可以自由编写代码扩展它
│ ├── README.md
│ └── index.js // 主文件
├── el // 配置目录,存放机器人相关的配置(可自行解析 yml 文件)
│ ├── README.md
│ ├── index.js // 所有配置文件(解析 yaml 的逻辑)
│ └── index.yml // 插件配置文件
├── mcl // mirai-console-loader 文件夹
├── nodemon.json // 监听文件变动,自动重启(譬如修改配置时,非常方便)
├── package.json
│ ...
git clone https://github.com/ElpsyCN/el-bot-template your-el-bot
cd your-el-bot
请检查 el-bot 是否为最新版本,模版的依赖更新可能要略微落后。
安装最新版本 el-bot:npm install el-bot@latest
# 安装 pnpm
# npm i -g pnpm
pnpm i
# npm install
由于种种原因,本项目将不再提供安装 mirai 的脚本与方法,你应当具有自行安装与启动 mirai 的能力。
推荐使用官方启动器 mirai-console-loader 自行启动 mirai(v1.0 以上) 与 mirai-api-http 插件(v1.9.0 以上)。
下载 MCL Releases,并解压。
Example:
wget https://github.com/iTXTech/mirai-console-loader/releases/download/v1.0.4/mcl-1.0.4.zip
unzip -o -d mcl mcl-1.0.4.zip
通过 mirai-console-loader 启动 mirai。(您也可以使用其他任意方式,并记得加载 mirai-api-http 插件。)
cd mcl
./mcl
# 添加自动登录
/autoLogin add 114514 yourpassword
下载 mirai-api-http Releases jar 包,放置于 mcl/plugins
文件夹。
配置文件位于 mcl/config/net.mamoe.mirai-api-http/setting.yml
最好自行修改你的 authKey
,否则你的机器人将很可能被 NTR。
cors:
- "*"
host: 0.0.0.0
port: 4859
authKey: el-psy-congroo
enableWebsocket: true
// el/index.ts
export default {
// 你登录的 QQ 号
qq: 12345679,
};
如果您需要上传本地图片语音文件,您需要配置您的 package.json
文件中 mcl.folder
字段为你的 mirai 文件夹相对本项目的路径。
默认值为项目本身目录下的
mcl
文件夹,建议直接将 mcl 启动器置于mcl
文件夹下。
记得新建一个终端,并确保你的 mirai 控制台保持打开与 QQ 已经登录。 检测控制台是否可以正常使用的一个方式是访问
localhost:4859/about
查看是否有信息返回。(如果你修改了端口号,记得替换。)
npm run build
# 构建 ts
npm run bot
# 启动 bot
等价于:
npm run start
# yarn run start
# 开发,将会 watch 修改的文件
npm run dev
此时,你的 QQ 机器人就已经成功运行起来了。并将附带了一些默认的功能。
然后?然后参照 el-bot 文档 自定义吧。
确保你的 QQ 已在 mirai 控制台中登录。
el-bot 将与已启动的 mirai 已登录的 QQ 建立连接。(如连接失败,则每隔三秒,自动重新连接。)
enable
: 是否启用
// el/index.ts
export default {
webhook: {
enable: true,
path: "/webhook",
port: 7777,
secret: "el-psy-congroo",
},
};