MiraiQQ机器人搭建教程

MiraiQQ机器人搭建教程
搭建Spring Boot项目
-
打开idea,选择新建项目

- 选择Spring Intializr生成器,项目名称、位置自定义,选择Maven构建项目,JDK和Java一定要选17版的,最后点击下一步

- Spring Boot选择3版本以上,勾选Spring Web依赖,点击创建

- 这几个没用的文件或文件夹可以选择删除

-
点击下方链接进入柏码的GitHub项目(如果打不开,记得打开你的魔法工具,俗称梯子🤐)
-
下滑找到 快速上手 ,点击2号指向的链接

- 选择依赖安装

- 复制pom依赖

- 打开刚才创建的项目,选择pom.xml,在
标签里粘贴刚才复制的依赖坐标,点击刷新Maven依赖

- 返回刚才的页面,选择账号登录配置

- 选择密码登录,点击复制配置(第一个是智能手表的登录方式,支持扫码登录,但我的屏幕太小,它输出的二维太大,我扫不上😂)

- 返回项目,点击src->main->resources,一号指向的可以删除,修改二号配置文件的后缀名为yaml

- 右键配置文件,选择重构,选择重命名

- 修改后缀(原因是刚才复制的配置格式是yaml的),点击重构

- 在配置文件里粘贴复制的配置

- 修改配置,username是你的QQ号(最好用小号测试,避免自己大号被封),password是你的QQ密码,login-type是登录类型-密码登录,protocol是协议,(最好还是安卓平板协议,机器人登录后你还可以手机登录,互不影响)(为了避免不必要的错误,注释删除了)

配置外部签名服务器
-
这里暂时跳过第三步,先做第四步,部署外部签名服务器(因为我们选择的是密码登录,还是手表登录简单😥)
-
首先打开VMware Workstation Pro,然后请自行配置一台Linux虚拟机,当然,你搞一台云服务器也是可以的(用云服务器,你就可以把你的项目挂云服务器上长时间跑了😋)
-
点击下面这个链接,首先要是学生才可以,完成下面两个任务,可以白嫖七个月的云服务器
-

-
开启你的Linux虚拟机

- 登录后输入ifconfig查看网络配置

- 为了方便操作,我们在idea终端连接虚拟机

- 输入ssh(空格)用户名@主机地址,回车确认,然后输入yes(没有可以忽略),输入用户密码

- 不知什么原因连接失败了,换个用户(🤡)登录成功

- 下一步就是安装docker容器,请根据自己的Linux虚拟机搜索相应的安装步骤
- 注意安装好后下面第一条指令查看docker是否在运行,没有就执行另一条指令
systemctl status docker
systemctl start docker
- 回到GitHub网站部署外部签名服务器

- 下滑选择一键部署 unidbg-fetch-qsign 服务器,点击复制代码,粘贴到idea终端,回车运行


- 执行下面指令查看运行状况,如图所示就成功了
docker ps

配置外部签名服务器

-
配置 unidbg-fetch-qsign 服务器,选择复制框选部分

- 回到项目,转到 aaplication.yaml 文件,在如图位置粘贴配置并修改 url ,url是你的虚拟机IP地址,端口是配置签名服务器时设置的端口

- 如图所示创建一个监听器,监听好友消息,并打印,代码粘贴在下面,可以抄作业

package com.example.demorobot.listener;
import net.itbaima.robot.event.RobotListener;
import net.itbaima.robot.event.RobotListenerHandler;
import net.itbaima.robot.listener.MessageListener;
import net.mamoe.mirai.event.events.FriendMessageEvent;
@RobotListener
public class TestListener extends MessageListener {
@RobotListenerHandler
public void handleMessage(FriendMessageEvent event) {
String mesage = event.toString();
System.out.println(mesage);
}
}
- 点击运行,这里会卡一会儿,需要从GitHub下载配置文件

- 然后出现一下日志,点击连接跳转浏览器,注意先不要验证!!!

- F12或右键检查打开开发者模式,选择网络,没有找到的话,在+号里找

- 点击开始验证完成验证后,会有如图所示的一个文件,点击选择响应

- 复制ticket的值,注意不要复制引号,注意验证时间过长会导致验证失败,重新运行就行了

- Ctrl+V粘贴刚才复制的内容,回车确认,然后它会让你确认发送验证码到你QQ绑定手机上,输入yes就行

- 输入验证码,回车完成验证

- 这里可以看到,我们刚才编写的监听器已经被注册为Bean了,且项目正常运行

测试阶段
- 用我的大号向机器人发送一条 Hello World!的消息
- 观察控制台输出,可以看到程序已经将我刚刚发送的消息打印在了控制台

结束语
- 到此你已经拥有了一个自己的可以自定义的QQ机器人了
- 更多的自定义功能,请下面参考官网:
- itbaima-study/itbaima-robot-starter: 基于Mirai核心封装的QQ机器人SpringBoot Starter,支持 SpringBoot 3 开箱即用,已集成签名服务客户端,直接配置即可。 (github.com)
- Mirai | mirai (mamoe.net)
- 如果你想让你的机器人跑在云服务器上,可以用Maven打包,然后上传云服务器,服务器也得部署签名服务器和安装Java17

- 注意:签名服务器的默认端口是8080,项目的默认端口也是8080,那么打包上传前要修改项目的端口,url地址也要改为云服务器的IP地址,记得开启云服务器的相应端口

- 忘了说了,这个robot-data是生成的配置和一些本地缓存,如果删除,下次还需重新验证登录(注意:Maven打的jar包里没有这个)


浙公网安备 33010602011771号