[CQ:face]
开发中:本 CQ 码目前正在开发中,暂时无法正常使用。
用途
[CQ:face] 用于表示 QQ 经典小脸表情(如 😊😂👍 等对应的 QQ 表情 ID)。
范围:全场景
语法
text
[CQ:face,id=表情ID]参数
| 参数名 | 必填 | 说明 |
|---|---|---|
id | ✅ | QQ 表情 ID(整数),如 1 代表"撇嘴"、2 代表"色"等 |
与标准 OneBot V11 的差异
标准 OneBot V11 中 [CQ:face] 可在入站和出站消息中双向使用。但在 Gensokyo 中,由于 QQ Bot API 的限制,表情信息在入站时以 Unicode emoji 或文本形式内嵌在消息正文中,不会单独上报为 [CQ:face] 段。
| 差异点 | 标准 OneBot V11 | Gensokyo 实现 |
|---|---|---|
| 入站上报 | ✅ 独立 [CQ:face] 段 | ❌ 内嵌在文本中(Unicode emoji) |
| 出站发送 | ✅ 发送表情 | ❌ 不支持(QQ Bot API 无表情发送接口) |
解析行为
入站(QQ → OneBot)
QQ 消息中的表情在 QQ Bot API 中以 Unicode 字符形式包含在 Content 字段中。Gensokyo 将其原样上报为文本的一部分:
- 字符串模式:表情直接显示在消息文本中(如
你好😊) - 数组模式:表情包含在
text段的text字段中
出站(OneBot → QQ)
[CQ:face,id=xxx] 在出站消息中不会被处理——该 CQ 码会被忽略或作为文本原样发出。QQ Bot API 不提供发送 QQ 经典表情的接口。
发送行为
不支持主动发送。如需在消息中表达情感,建议直接使用 Unicode emoji 字符(如 😊 👍 ❤️)。
使用示例
入站消息示例(字符串模式)
text
你好😊今天天气真好入站消息示例(数组模式)
json
[
{"type": "text", "data": {"text": "你好😊今天天气真好"}}
]注意
- QQ Bot API(官方 API)与 go-cqhttp 等第三方实现不同,不支持独立的表情消息段。
- 如需从插件发送表情,请使用 Unicode emoji 字符替代。
