Skip to content
On this page

事件订阅详述 ​

事件订阅是系统可以将软件中的消息或其他事件(加入、退出群事件和关注、取关机器人事件)推送到你的服务器中,你的服务器可以根据对应的消息或者事件做出相应的反应。
推送是通过HTTP协议以POST请求的方式推送JSON格式的数据

使用场景

  • 你希望能对用户输入的内容做出相应反应时,比如当用户输入1+1=,你可以在服务器端收到这条消息,然后计算出结果,再通过消息发送接口告诉用户计算结果

事件列表 ​

事件名称介绍取值状态
普通消息事件普通消息message.receive.normal可用
指令消息事件指令消息message.receive.instruction可用
关注机器人事件关注机器人事件bot.followed可用
取消关注机器人事件取消关注机器人事件bot.unfollowed可用
加入群事件用户加入群事件group.join可用
退出群事件用户退出群事件group.leave可用
按钮事件消息中按钮点击事件button.report.inline可用

消息事件 ​

数据内容 ​

字段类型说明
versionstring事件内容版本号
headerHeader对象包括事件的基础信息
eventEvent对象包括事件的内容。注意:Event对象的结构会在不同的eventType下发生变化

Header对象 ​

字段类型说明
eventIdstring事件ID,全局唯一
eventTimeint事件产生的时间,毫秒13位时间戳
eventTypestring事件类型

Event对象 ​

字段类型说明
senderSender对象发送者的信息
messageMessage对象消息内容

Sender对象 ​

字段类型说明
senderIdstring发送者ID,给用户回复消息需要该字段
senderTypestring发送者用户类型,取值:user
senderUserLevelstring发送者级别,取值:owner、administrator、member、unknown
senderNicknamestring发送者昵称

Chat对象 ​

字段类型说明
chatIdstring聊天对象ID
chatTypestring聊天对象类型,取值: bot、group

Message对象 ​

字段类型说明
msgIdstring消息ID,全局唯一
parentIdstring引用消息时的父消息ID
sendTimeint消息发送时间,毫秒13位时间戳
chatIdstring当前聊天的对象ID
单聊消息,chatId即对方用户ID
群聊消息,chatId即群ID
机器人消息,chatId即机器人ID
chatTypestring当前聊天的对象类型
group 群聊
bot 机器人
contentTypestring当前消息类型
text 文本消息
image 图片消息
markdown Markdown消息
file 文件消息
contentstring消息正文,注意为字符串类型
instructionIdint废弃勿用 指令ID,可用来区分用户发送的指令
instructionNamestring废弃勿用 指令名称,可用来区分用户发送的指令
commandIdint指令ID,可用来区分用户发送的指令
commandNamestring指令名称,可用来区分用户发送的指令

消息JSON结构体示例 ​

json
{
  "version": "1.0",
  "header": {
    "eventId": "xxxxx",
    "eventTime": 1647735644000,
    "eventType": "xxxxxx"
  },
  "event": {
    "sender": {
      "senderId": "xxxxx",
      "senderType": "user",
      "senderUserLevel": "member",
      "senderNickname": "昵称"
    },
    "chat": {
      "chatId": "xxxxx",
      "chatType": "group"
    },
    "message": {
      "msgId": "xxxxxx",
      "parentId": "xxxx",
      "sendTime": 1647735644000,
      "chatId": "xxxxxxxx",
      "chatType": "group",
      "contentType": "text",
      "content": {
        "text": "早上好"
      },
      "commandId": 98,
      "commandName": "计算器"
    }
  }
}