消息构建
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) | 图文卡片(仅群聊) |
