之前有提过,完成了打卡脚本之后,打算做一个Bot方便在QQ上直接接收消息。果然,做懒人才是第一生产力😴
只要接触过二次元应该都对QQbot有一定的了解,比如FF14玩家群里常用的獭獭就包含多种功能(重点是可爱x)。目前而言,Mirai是比较常用的框架,我打算用这个实现。
生态(?)概览
要开始基于已有的SDK做二次开发,我们需要先在本地把环境配好。不过比起create-react-app
和vue-cli
,mirai的配置稍微麻烦一点,并且套娃层数略多,所以整理一下。
如果把社区SDK也包含在内,那么mirai可以被分为3个部分:
- mirai:最核心的功能包含在内,它提供的接口会被mirai-console使用。
- mirai-console:官方提供的一层封装,便于开发者调用。对于大部分SDK,我们会用到其中的mirai-api-http插件来进行交互。
- 社区SDK:社区开发者在mirai-console上再做一层封装,提供API供开发者直接使用,例如消息发送、@群友等操作。
理论上,有了mirai-http-api提供的接口,就可以直接实现我们想要的功能了。不过我为了偷懒,使用了mirai-ts。
环境配置
Java环境
别骂了,平时真没做过Java开发,根本没有环境
对于Mac环境,我选择的是OpenJDK。
sh复制代码
1brew install openjdk@11 2echo 'export PATH="/opt/homebrew/opt/openjdk@11/bin:$PATH"' >> ~/.zshrc # 设为默认路径
记得设为默认路径,否则which java
和which javac
就不会选择openjdk。
mirai安装
由于mirai层层套娃的特质,安装起来略微麻烦,因此我选择使用mirai-console-loader一步到胃。
- 在release页下载最新的zip文件并解压。
sh mcl
运行脚本,此时mcl会帮我们把必需的插件全部安装好,并顺利运行。
此时默认的监听位置是8080端口,curl一下来确认可以正确收到消息。
sh复制代码1curl localhost:8080/about
2# {"code":0,"msg":"","data":{"version":"2.3.3"}}
到这里,前期工作就全部做完了。接下来就是利用SDK,和我的打卡脚本做通信🚌
Comments