跳至主要內容

消息格式

大约 1 分钟

提示

在后续的文档中,我们将提供 CQ 码和消息段两种格式的消息示例,以便于您更好地理解。

CQ 码

CQ 码是一种特殊的文本格式,用于在消息中插入表情、图片、音乐、语音、视频、网页等内容。

格式

这是一个 CQ 码的基本格式:

[CQ:action,param1=value1,param2=value2]

CQ 码中内容含义如下:

  • action:动作,指示要进行的操作,如发送图片、音乐等。
  • param:对应动作需要的参数,如 qqfile 等。
  • value:参数所对应的值,如 AT 的 QQ 号。

示例

例如,要 AT 一个 QQ 号为 123456 的用户,可以这样写:

[CQ:at,qq=123456] Hello!

他会被解析为:

@小明 Hello!

转义

CQ 码由 [] 并以 , 分隔的多个部分组成,因此如果要在 CQ 码中使用这些字符,需要进行转义。

原字符转义字符
&&
[[
]]
,,

消息段

消息段是新一代的消息格式,采用 JSON 格式。

格式

消息段是一个 JSON 对象,以下是一个消息段的基本格式:

{
  "type": "text", // 消息段类型
  "data": {
    // 消息段数据/参数
    "text": "Hello!"
  }
}

示例

例如,要 AT 一个 QQ 号为 123456 的用户,可以这样写:

{
  "type": "at",
  "data": {
    "qq": 123456
  }
}

他会被解析为:

@小明

组合

消息段可以组合在一起,形成一个消息。

[
  {
    "type": "at",
    "data": {
      "qq": 123456
    }
  },
  {
    "type": "text",
    "data": {
      "text": " Hello!"
    }
  }
]

以上消息段会被解析为:

@小明 Hello!