mirai QQ机器人最详细教程 [附Q群消息转发例程] |
您所在的位置:网站首页 › qq群机器人制作教程手机 › mirai QQ机器人最详细教程 [附Q群消息转发例程] |
转载请注明出处,Thanks♪(・ω・)ノ 先上大家最感兴趣的效果图: 1、QQ群消息互转发 ![]() 2、类似Qmsg的消息推送 ![]() https://github.com/mamoe/mirai/blob/dev/docs/UserManual.md 这里使用的是“纯控制台版本” 1、先去下载安装脚本 https://github.com/iTXTech/mcl-installer/releases 这里下的是Linux版本,你也可以选其他的 2、上传到服务器,并给上执行权限(可以放到一个新建文件夹里面方便管理) sudo chmod +x mcl-installer-752c228-linux-amd643、然后执行安装 ./mcl-installer-752c228-linux-amd644、然后可以一路回车,保持默认项即可,等待安装完成。如果报错就多试几次。(嫌麻烦的,java自己另外装也行,这里就选择N,推荐!!看第5步后面部分) ![]() 5、如果上面安装了java, 则要添加java环境变量 sudo vim ~/.bashrc最后添加 export JAVA_HOME=/home//mcl/java export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/bin然后激活和测试下 source ~/.bashrc java -version![]() 上面的我没成功,所以选择自己另外单独装Java(推荐)。装完也不用配置环境,都已经自动配完了~ # 32位的就在最后加上 :i386 sudo apt install openjdk-11-jre-headless # 或者直接装jdk sudo apt-get install default-jdk卸载jdk也方便 sudo apt-get remove openjdk*6、安装插件。Mirai 官方提供两个插件: chat-command: 允许在聊天环境通过以 "/" 起始的消息执行指令mirai-api-http:提供 HTTP 支持,允许使用其他编程语言的插件./mcl --update-package net.mamoe:chat-command --channel stable --type plugin ./mcl --update-package net.mamoe:mirai-api-http --channel stable-v2 --type plugin对于mirai-api-http,还需要: 编辑config/net.mamoe.mirai-api-http/setting.yml配置文件 (没有则自行创建)启动MCL ./mcl如果手动安装则启动 mirai-console(不建议)记录日志中出现的authKeysetting.yml模板 ## 配置文件中的值,全为默认值 ## 启用的 adapter, 内置有 http, ws, reverse-ws, webhook adapters: - http - ws ## 是否开启认证流程, 若为 true 则建立连接时需要验证 verifyKey ## 建议公网连接时开启 enableVerify: true verifyKey: 1234567890 ## 开启一些调式信息 debug: false ## 是否开启单 session 模式, 若为 true,则自动创建 session 绑定 console 中登录的 bot ## 开启后,接口中任何 sessionKey 不需要传递参数 ## 若 console 中有多个 bot 登录,则行为未定义 ## 确保 console 中只有一个 bot 登陆时启用 singleMode: false ## 历史消息的缓存大小 ## 同时,也是 http adapter 的消息队列容量 cacheSize: 4096 ## adapter 的单独配置,键名与 adapters 项配置相同 adapterSettings: ## 详情看 http adapter 使用说明 配置 http: host: localhost port: 8080 cors: ["*"] ## 详情看 websocket adapter 使用说明 配置 ws: host: localhost port: 8080 reservedSyncId: -1更具体的内容,可到插件仓库查看(一般开个http就够用了): GitHub - project-mirai/mirai-api-http: Mirai HTTP API (console) plugin 7、运行mcl。第一次运行 mcl时会初始化运行环境。 ./mcl![]() 如果遇到报错,可以尝试 ./mcl --update-package net.mamoe:mirai-core-all --channel nightly如果还报错,建议先检查Java版本是否正确,之前我在这卡了好久,后来卸载重装java11就好了。 如果报错类似'double kotlin.time.DurationKt.toDuration(int, java.util.concurrent.TimeUnit)',不知道是不是最新版的bug,可以: 先用指令禁掉自动更新脚本, mcl -d updater然后修改下config.json文件,参考如下: { "js_optimization_level": -1, "mirai_repo": "https://gitee.com/peratx/mirai-repo/raw/master", "maven_repo": [ "https://maven.aliyun.com/repository/public" ], "packages": [ { "id": "net.mamoe:mirai-console", "channel": "stable", "version": "2.6.7", "type": "libs", "versionLocked": true }, { "id": "net.mamoe:mirai-console-terminal", "channel": "stable", "version": "2.6.7", "type": "libs", "versionLocked": true }, { "id": "net.mamoe:mirai-core-all", "channel": "beta", "version": "", "type": "libs", "versionLocked": false }, { "id": "org.itxtech:mcl-addon", "channel": "c122", "version": "", "type": "plugins", "versionLocked": false } ], "disabled_scripts": [], "proxy": "", "log_level": 1, "script_props": {} }![]() 安装搞定!! 使用以下指令都在通过“./mcl”启动后输入执行。 更多mcl内置命令解释可看: https://github.com/mamoe/mirai-console/blob/master/docs/BuiltInCommands.md#mirai-console---builtin-commands 查看帮助/help![]() ![]() 此时可能会需要手机验证,注意这个链接只在QQ浏览器或者手机QQ内可以打开,所以可以发到手机上去打开认证: ![]() ![]() 这里可以设置不同的protocol,就可以设定为不同平台登录,好处是这样就可以一个账号多处登录。有: configKey 可选值 protocol ANDROID_PHONE / ANDROID_PAD / ANDROID_WATCH /autoLogin setConfig qq号 protocol ANDROID_WATCH删除自动登录qq/autoLogin remove qq号基础使用到这里ok啦~ Python编程控制这里用到了mirai-api-http插件,上面装了,没装的回过去看下。 具体的详细内容可看官网: GitHub - project-mirai/mirai-api-http: Mirai HTTP API (console) pluginMirai HTTP API (console) plugin. Contribute to project-mirai/mirai-api-http development by creating an account on GitHub.https://github.com/project-mirai/mirai-api-http 在线文档 mirai https://docs.mirai.mamoe.net/mirai-api-http/ 开始使用 编辑config/net.mamoe.mirai-api-http/setting.yml配置文件 (没有则自行创建)启动MCL ./mcl如果手动安装则启动 mirai-console(不建议)记录日志中出现的authKey## 配置文件中的值,全为默认值 ## 启用的 adapter, 内置有 http, ws, reverse-ws, webhook adapters: - http - ws ## 是否开启认证流程, 若为 true 则建立连接时需要验证 verifyKey ## 建议公网连接时开启 enableVerify: true verifyKey: 1234567890 ## 开启一些调式信息 debug: false ## 是否开启单 session 模式, 若为 true,则自动创建 session 绑定 console 中登录的 bot ## 开启后,接口中任何 sessionKey 不需要传递参数 ## 若 console 中有多个 bot 登录,则行为未定义 ## 确保 console 中只有一个 bot 登陆时启用 singleMode: false ## 历史消息的缓存大小 ## 同时,也是 http adapter 的消息队列容量 cacheSize: 4096 ## adapter 的单独配置,键名与 adapters 项配置相同 adapterSettings: ## 详情看 http adapter 使用说明 配置 http: host: localhost port: 8080 cors: ["*"] ## 详情看 websocket adapter 使用说明 配置 ws: host: localhost port: 8080 reservedSyncId: -1目前上面我们只用http就可以了,其他的后面用到再说。 接下来主要看文档这个部分: Http Adapter | mirai https://docs.mirai.mamoe.net/mirai-api-http/adapter/HttpAdapter.html下面以“QQ群消息转发为例”,提供测试例程,效果: ![]() Python代码见: mirai QQ机器人最详细教程 - 小锋学长生活大爆炸mirai QQ机器人最详细教程 http://xfxuezhang.cn/index.php/archives/246/ |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |