当前位置: 首页 > news >正文

java做个qq机器人

前置的条件

机器人是基于mirai框架实现的。根据官方的文档,建议使用openjdk11。
我这里使用的编辑工具是idea2023

在idea中新建一个maven项目,虽然可以使用gradle进行构建,不过我这里由于网络问题没有跑通。
pom.xml

<dependency><groupId>net.mamoe</groupId><artifactId>mirai-core-jvm</artifactId><version>2.15.0</version></dependency>

机器人的启动

这里我们写一个启动类(用junit也行,用main方法也行),来启动我们的机器人。这里我推荐使用二维码登录,使用账号密码登录容易被风控,而且目前qq还有安全监测,用账号密码不是很方便

 // 在 2.15.0 中加入, 使用二维码登录Bot bot = BotFactory.INSTANCE.newBot(qq, BotAuthorization.byQRCode(), configuration -> {configuration.setProtocol(BotConfiguration.MiraiProtocol.ANDROID_WATCH);});bot.login();

登录后,qq里发送消息看到如图的信息,说明启动成功,可以正常接收数据。
在这里插入图片描述
在这里插入图片描述

文字的收发

如上面所说,可以收到信息了,理论上就可以发送信息。

GlobalEventChannel.INSTANCE.subscribeAlways(GroupMessageEvent.class, event->{event.getSubject().sendMessage("hello  world");});

机器人启动后,写入这一段。这段代码会自己监听不同的QQ会话(群聊、私聊),并根据编写的内容做处理,sendMessage,发送的是mirai机器人封装的一个数据包,可以是文字,可以是图片。鉴于这篇文章是一个大概,后续我会把图片的信息、at的信息做一个整理。(也是我目前已经打通的部分。)

http://www.lryc.cn/news/183017.html

相关文章:

  • 前端 | AjaxAxios模块
  • 高效的ProtoBuf
  • 删除SQL记录
  • 数据结构--》探索数据结构中的字符串结构与算法
  • 云安全之等级保护详解
  • VUE状态持久化,储存动态路由
  • 微信小程序代驾系统源码(含未编译前端,二开无忧) v2.5
  • 1797_GNU pdf阅读器evince
  • 网络-跨域解决
  • git提交代码的流程
  • 【SpringBoot】配置文件详解
  • 一文讲懂-五险一金
  • 判断三条边是否构成三角形(Python实现)
  • The directory ‘*‘ or its parent directory is not owned by the current user
  • leetcode做题笔记162. 寻找峰值
  • nginx负载转发源请求http/https:X-Forwarded-Proto及nginx中的转发报头
  • Docker compose插件安装
  • 【数据结构与算法】树、二叉树的概念及结构(详解)
  • 函数指针数组指针(指向函数指针数组的指针)
  • 经典算法-----汉诺塔问题
  • 博客之站项目测试报告
  • k8s晋级之管理容器的计算资源
  • 计算机竞赛 深度学习火车票识别系统
  • 盒子阴影和网页布局
  • Ph.D,一个Permanent head Damage的群体
  • visual studio禁用qt-vsaddin插件更新
  • Docker通过Dockerfile创建Redis、Nginx--详细过程
  • 关于使用 uniapp Vue3 开发分享页面 语法糖 setup 开发获取ref踩坑
  • Springboot+vue的时间管理系统(有报告)。Javaee项目,springboot vue前后端分离项目。
  • 企业如何实时监管员工聊天转账行为