MCPcopy Index your code
hub / github.com/Kloping/qqpd-bot-java

github.com/Kloping/qqpd-bot-java @1.5.3-R1

Chat with this repo
repository ↗ · DeepWiki ↗ · release 1.5.3-R1 ↗ · + Follow
814 symbols 2,154 edges 173 files 289 documented · 36%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

qqpd-bot-java

<a href="https://github.com/Kloping/qqpd-bot-java/blob/main/LICENSE"><img src="https://img.shields.io/github/license/Kloping/qqpd-bot-java" alt="License"></a>
<a href="https://github.com/Kloping/qqpd-bot-java/releases"><img src="https://img.shields.io/github/v/release/Kloping/qqpd-bot-java?color=blueviolet&include_prereleases" alt="release"></a>

QQ机器人 Java/JVM/kotlin SDK

非官方 可用于 Java 8+

Java SDK主要基于基础 API (opens new window)封装,提供给用户一种简单、高效的使用方式。

✨ 特性

  • 支持QQ官方频道与Q群消息收发(私域/公域兼容)
  • 开箱即用的消息类型(文本/图片/Markdown/按钮交互)
  • 灵活的事件监听机制(@EventReceiver注解驱动)
  • 多环境支持(沙箱/正式环境一键切换)
  • 完善的HTTP API封装(频道管理、禁言、消息审核等)
  • 支持Java 8+及Kotlin协程环境
  • 支持websocketwebhook方式链接

Maven


<dependency>
    <groupId>io.github.kloping</groupId>
    <artifactId>bot-qqpd-java</artifactId>
    <version>1.5.3-L1</version>
</dependency>

Gradle

implementation 'io.github.kloping:bot-qqpd-java:1.5.3-L1'

AI生成简易文档

使用前提

  1. 到https://q.qq.com/ 申请机器人 获得Bot 开发者ID(appid) 和 机器人令牌(token)

~~2. 发布审核 发布后为公域~~

开发文档 / q群使用说明

使用示例

启动方式

    Starter starter = new Starter("appid","token");
    //如果使用q群 则 new Starter("appid", "token", "secret");
    starter.getConfig().setCode(Intents.PRIVATE_INTENTS.getCode());
    // webhook 链接方式
    //starter.getConfig().setWebhookport(81);
    starter.run();

V1.5.0-Beta7+ 注册监听器主机方式 [荐]

starter.registerListenerHost(new ListenerHost(){
    @EventReceiver
    public void onEvent(MessageEvent event){
        event.send("测试通过");
    }
});

V1.4.6

事件订阅 默认的事件订阅 不会接收消息事件

需要确定自己的机器人是公域还是私域

来确定 需要 设置订阅事件类型

//单事件订阅方式
starter.getConfig().setCode(Intents.GUILD_MESSAGES.getCode());

//多事件订阅方式
starter.getConfig().setCode(Intents.START.and(Intents.GUILD_MESSAGES,Intents.DIRECT_MESSAGE));

// 公域机器人订阅推荐
starter.getConfig().setCode(Intents.PUBLIC_INTENTS.getCode());

// 私域机器人订阅推荐
starter.getConfig().setCode(Intents.PRIVATE_INTENTS.getCode());

导入指引

import io.github.kloping.qqbot.Starter;
import io.github.kloping.qqbot.api.Intents;
import io.github.kloping.qqbot.api.message.MessageChannelReceiveEvent;
import io.github.kloping.qqbot.api.message.MessageDirectReceiveEvent;
import io.github.kloping.qqbot.impl.ListenerHost;

更多使用方式参考查看 test

Extension points exported contracts — how you extend this code

SenderV2 (Interface)
@author github.kloping [9 implementers]
src/main/java/io/github/kloping/qqbot/api/SenderV2.java
AtAble (Interface)
能被at的 @author github.kloping [6 implementers]
src/main/java/io/github/kloping/qqbot/api/AtAble.java
Sender (Interface)
发送者(消息)接口 @author github.kloping [24 implementers]
src/main/java/io/github/kloping/qqbot/api/Sender.java
SendAble (Interface)
@author github.kloping [33 implementers]
src/main/java/io/github/kloping/qqbot/api/SendAble.java
SenderAndCidMidGetter (Interface)
@author github.kloping [12 implementers]
src/main/java/io/github/kloping/qqbot/api/SenderAndCidMidGetter.java

Core symbols most depended-on inside this repo

send
called by 79
src/main/java/io/github/kloping/qqbot/api/Sender.java
getId
called by 70
src/main/java/io/github/kloping/qqbot/api/event/Event.java
append
called by 60
src/main/java/io/github/kloping/qqbot/api/message/Builder.java
getBot
called by 31
src/main/java/io/github/kloping/qqbot/api/event/Event.java
add
called by 30
src/main/java/io/github/kloping/qqbot/entities/ex/BaseKeyVals.java
get
called by 27
src/main/java/io/github/kloping/qqbot/entities/ex/msg/MessageChain.java
setContent
called by 25
src/main/java/io/github/kloping/qqbot/entities/ex/Markdown.java
toString
called by 25
src/main/java/io/github/kloping/qqbot/entities/ex/At.java

Shape

Method 622
Class 134
Interface 54
Enum 4

Languages

Java100%

Modules by API surface

src/main/java/io/github/kloping/qqbot/entities/ex/Keyboard.java31 symbols
src/test/java/test_weather.java29 symbols
src/main/java/io/github/kloping/qqbot/entities/ex/msg/MessageChain.java27 symbols
src/main/java/io/github/kloping/qqbot/impl/message/v2/BaseFriendMessageEvent.java17 symbols
src/main/java/io/github/kloping/qqbot/impl/message/v2/BaseGroupMessageEvent.java15 symbols
src/main/java/io/github/kloping/qqbot/impl/message/BaseMessageEvent.java14 symbols
src/main/java/io/github/kloping/qqbot/entities/qqpd/message/RawMessage.java14 symbols
src/main/java/io/github/kloping/qqbot/Starter.java13 symbols
src/main/java/io/github/kloping/qqbot/entities/qqpd/data/Emoji.java12 symbols
src/main/java/io/github/kloping/qqbot/entities/ex/ChannelData.java11 symbols
src/main/java/io/github/kloping/qqbot/utils/LoggerImpl.java10 symbols
src/main/java/io/github/kloping/qqbot/network/hookauth/HookAuth.java10 symbols

For agents

$ claude mcp add qqpd-bot-java \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page