All Projects → go-cqhttp → java

go-cqhttp / java

Licence: MIT License
基于 go-cqhttp 和 java 的 qq 机器人

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to java

Shiro
基于OneBot协议的QQ机器人快速开发框架
Stars: ✭ 78 (-39.06%)
Mutual labels:  qqbot, cqhttp, go-cqhttp
Go-Mirai-Client
基于MiraiGo的客户端,使用反向 websocket 收发私聊、群聊消息,消息格式类似onebot。支持多账号,很稳定
Stars: ✭ 90 (-29.69%)
Mutual labels:  qqbot, cqhttp
ProtobufBot
QQ机器人框架 ProtobufBot 整体介绍。看README
Stars: ✭ 45 (-64.84%)
Mutual labels:  qqbot, cqhttp
splatoon2-qqbot
主要用于 Splatoon2 群的机器人
Stars: ✭ 40 (-68.75%)
Mutual labels:  qqbot, cqhttp
OneBot-YaYa
✨ OneBot(原CQHTTP) 多平台的实现
Stars: ✭ 108 (-15.62%)
Mutual labels:  qqbot, cqhttp
mai-bot
Based on nonebot, a common bot framework for maimai.
Stars: ✭ 157 (+22.66%)
Mutual labels:  qqbot, go-cqhttp
Coolq Http Api
为 酷Q 提供通过 HTTP 或 WebSocket 接收事件和调用 API 的能力
Stars: ✭ 1,787 (+1296.09%)
Mutual labels:  qqbot, cqhttp
onebot
OneBot:统一的聊天机器人应用接口标准
Stars: ✭ 1,113 (+769.53%)
Mutual labels:  qqbot, cqhttp
GreenOnions
一个Mirai的QQ机器人, 实现了搜图, RSS订阅转发, 根据PixivID下载原图, 翻译, setu等功能
Stars: ✭ 109 (-14.84%)
Mutual labels:  qqbot, cqhttp
nonebot-plugin
一些 NoneBot 即开即用、良好兼容的插件——自定义表情包、早晚安、Vtuber今日运势等
Stars: ✭ 101 (-21.09%)
Mutual labels:  qqbot, cqhttp
coolq-php-sdk
coolq-php-sdk
Stars: ✭ 23 (-82.03%)
Mutual labels:  qqbot, cqhttp
zhamao-framework
协程、高性能、灵活的聊天机器人 & Web 开发框架(炸毛框架)
Stars: ✭ 99 (-22.66%)
Mutual labels:  qqbot, cqhttp
bilibili-helper
mirai-console 插件开发计划
Stars: ✭ 88 (-31.25%)
Mutual labels:  qqbot
MShell
一个Mirai机器人插件,用来连接QQ聊天窗口和系统Shell
Stars: ✭ 23 (-82.03%)
Mutual labels:  qqbot
OPQBot-GroupManager
OPQBot 群管理机器人
Stars: ✭ 25 (-80.47%)
Mutual labels:  qqbot
CoolQBot
基于 NoneBot2 的聊天机器人
Stars: ✭ 62 (-51.56%)
Mutual labels:  qqbot
arknights-helper
mirai-console 插件开发计划
Stars: ✭ 26 (-79.69%)
Mutual labels:  qqbot
MiraiCQ
用C/C++,易语言写QQ机器人,兼容酷Q插件,支持Linux(通过Wine)
Stars: ✭ 55 (-57.03%)
Mutual labels:  qqbot
Application
一个可自定义的,基于Graia和Mirai的集群管、功能、娱乐为一体的QQ插件式机器人
Stars: ✭ 55 (-57.03%)
Mutual labels:  qqbot
mirai-rulateday-dice
利用Mirai框架的Mirai-Console开发TRPG骰子插件模板。目前集成了大部分的常用指令,并在此基础上实现更多的跑团体系优化指令。例如COC7技能详细查询、DND5e技能列表查询、DND5e怪物图鉴等。目前处于测试阶段。
Stars: ✭ 55 (-57.03%)
Mutual labels:  qqbot

go-cqhttp/java

基于 go-cqhttp 和 java 的 qq 机器人

使用前

  • https://github.com/Mrs4s/go-cqhttp/releases 下载对应平台的可执行文件, 放到 go-cqhttp 目录中

  • 运行 go-cqhttp/下载的文件, 根据提示填写 QQ 号和密码等信息, 参考文档 https://docs.go-cqhttp.org/guide/quick_start.html

  • 根据文档将go-cqhttp的上报方式修改为Array

  • clone并执行mvn clean install

  • 创建你的springboot项目并引用依赖

    <dependency>
        <groupId>com.zhuangxv</groupId>
        <artifactId>bot-core</artifactId>
        <version>1.0.0</version>
    </dependency>
  • 在启动类上加注解@EnableBot

配置

在resources目录下新建application.yml,如果您熟悉spring,可根据自己需求自行编写配置.

bot:
  botName: #bot名字(保证唯一)
  websocketUrl: #go-cqhttp配置中的正向websocket地址(如ws://127.0.0.1:6700)
  accessToken: #go-cqhttp配置中的access_token

开始使用

  • 创建一个SpringBoot项目
  • 创建一个类并加入spring管理(可以在类上加@Service注解,注意配置扫描包路径)
  • 创建一个方法,并在该方法上增加事件注解即可监听该事件(事件注解用法见下方)

事件注解用法

所有事件注解的参数都是限制该注解是否生效的依据,当全部满足时才会调用该注解所对应的方法,不同事件可注入的对象不同,具体见下方。


@GroupMessageHandler

收到群消息时执行该方法

注解参数列表

  • regex 正则表达式,该值不为默认值时,将验证消息是否匹配
  • groupIds 验证收到消息的群号是否为当前值的内容,默认为0即不限制
  • excludeGroupIds 验证收到消息的群号是否非当前值的内容,默认为0即不限制
  • senderIds 验证收到消息的人是否为当前值的内容,默认为0即不限制
  • excludeSenderIds 验证收到消息的人是否非当前值的内容,默认为0即不限制
  • isAt 验证是否被艾特,默认为false

可注入到方法中的属性

  • Group 该消息所对应群的实例
  • Member 该消息发送者所对应的群成员实例
  • MessageChain 该消息的消息链形式
  • String 该消息的字符串形式
  • Integer/int 该消息的id

@FriendMessageHander

收到好友私聊消息时执行该方法

注解参数列表

  • regex 正则表达式,该值不为默认值时,将验证消息是否匹配
  • senderIds 验证收到消息的人是否为当前值的内容,默认为0即不限制
  • excludeSenderIds 验证收到消息的人是否非当前值的内容,默认为0即不限制

可注入到方法中的属性

  • Friend 该消息发送者所对应的好友实例
  • MessageChain 该消息的消息链形式
  • String 该消息的字符串形式
  • Integer/int 该消息的id

@TempMessageHandler

收到临时会话时执行该方法

注解参数列表

  • regex 正则表达式,该值不为默认值时,将验证消息是否匹配
  • senderIds 验证收到消息的人是否为当前值的内容,默认为0即不限制
  • excludeSenderIds 验证收到消息的人是否非当前值的内容,默认为0即不限制

可注入到方法中的属性

  • TempFriend 该消息发送者所对应的好友实例
  • MessageChain 该消息的消息链形式
  • String 该消息的字符串形式
  • Integer/int 该消息的id

@GroupRecallHandler

有群消息撤回时执行该方法

注解参数列表

  • groupIds 验证撤回消息的群号是否为当前值的内容,默认为0即不限制
  • excludeGroupIds 验证撤回消息的群号是否非当前值的内容,默认为0即不限制
  • senderIds 验证撤回消息的操作人是否为当前值的内容,默认为0即不限制
  • excludeSenderIds 验证撤回消息的操作人是否非当前值的内容,默认为0即不限制

可注入到方法中的属性

  • Group 被撤回的消息所在的群实例
  • MessageChain 被撤回的消息的消息链形式
  • String 被撤回的消息的字符串形式
  • Integer/int 被撤回的消息id
  • RecallMessage 包含撤回该消息的操作人以及被撤回消息的发送人id
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].