Skip to content

消息构建

Bngeuit 静态方法覆盖了绝大多数常用消息发送场景。复杂场景通过 Bngeuit.api() 获取原始 BotApi 使用。

Bngeuit 静态方法

群聊文本

java
Bngeuit.sendGroupText(groupOpenid, "你好");                        // 主动发送
Bngeuit.sendGroupText(groupOpenid, "你好", keyboard);              // 带键盘
Bngeuit.replyGroupText(groupOpenid, msgId, msgSeq, "回复");        // 被动回复
Bngeuit.quoteGroupText(groupOpenid, msgId, msgSeq, "引用回复");    // 引用回复

群聊 Markdown

java
Bngeuit.sendGroupMarkdown(groupOpenid, "**加粗**");                // 发送
Bngeuit.sendGroupMarkdown(groupOpenid, "**加粗**", keyboard);      // 带键盘
Bngeuit.replyGroupMarkdown(groupOpenid, msgId, msgSeq, "**回复**");
Bngeuit.quoteGroupMarkdown(groupOpenid, msgId, msgSeq, "**引用**");

群聊富媒体

java
Bngeuit.sendGroupImage(groupOpenid, fileInfo);   // 图片
Bngeuit.sendGroupVideo(groupOpenid, fileInfo);   // 视频
Bngeuit.sendGroupVoice(groupOpenid, fileInfo);   // 语音
Bngeuit.sendGroupFile(groupOpenid, fileInfo);    // 文件

群聊卡片

java
Bngeuit.sendGroupCard(groupOpenid, "标题", "描述", "https://img.png", "https://link");
// jumpUrl 需要 QQ 白名单域名,传 null 可展示不可点击

私聊文本

java
Bngeuit.sendC2CText(openid, "你好");                              // 主动发送
Bngeuit.sendC2CText(openid, "你好", keyboard);                    // 带键盘
Bngeuit.replyC2CText(openid, msgId, msgSeq, "回复");
Bngeuit.quoteC2CText(openid, msgId, msgSeq, "引用回复");

私聊 Markdown

java
Bngeuit.sendC2CMarkdown(openid, "**加粗**");
Bngeuit.sendC2CMarkdown(openid, "**加粗**", keyboard);
Bngeuit.replyC2CMarkdown(openid, msgId, msgSeq, "**回复**");

私聊富媒体

java
Bngeuit.sendC2CImage(openid, fileInfo);
Bngeuit.sendC2CVideo(openid, fileInfo);
Bngeuit.sendC2CVoice(openid, fileInfo);
Bngeuit.sendC2CFile(openid, fileInfo);

其他

java
Bngeuit.sendC2CTyping(openid, 5);                                // "正在输入..."
Bngeuit.deleteGroupMessage(groupOpenid, messageId);               // 撤回群消息
Bngeuit.deleteC2CMessage(openid, messageId);                      // 撤回私聊消息
Bngeuit.respondInteraction(interactionId, responseCode);          // 互动响应

高级场景:使用 BotApi

上传、流式消息等多步操作,通过 Bngeuit.api() 获取原始 API:

java
import cn.org.bukkit.bngeuit.Bngeuit;
import cn.org.bukkit.bngeuit.core.BotApi;
import cn.org.bukkit.bngeuit.dto.message.*;

BotApi api = Bngeuit.api();

// 上传富媒体
UploadResult r = api.uploadGroupFile(
    groupOpenid, FileType.IMAGE, "https://example.com/img.jpg", false);

// 发送
Bngeuit.sendGroupImage(groupOpenid, r.getFileInfo());

// 或手动构建请求
api.sendGroupMessage(GroupMessageRequest.builder()
    .groupOpenid(groupOpenid)
    .msgType(MsgType.MEDIA)
    .media(new MediaInfo(r.getFileInfo()))
    .build());

消息类型

MsgType说明
TEXT (0)普通文本
MARKDOWN (2)Markdown
INPUT_NOTIFY (6)输入状态
MEDIA (7)富媒体
CARD (8)图文卡片(仅群聊)