Skip to content

HuHoBot Websocket 协议-事件

回执消息

  • 服务器会向客户端发送回执消息,用于部分交互
  • 收到的packId需要与向服务端发送回去的packId相同,否则不会生效
  • 在下文中会有回执消息的提示来告诉你这是否是一个回执消息

下发配置(sendConfig)

  • 消息类型(type): "sendConfig"
  • 说明:服务器向客户端下发配置
  • 事件Body
    {
        "serverId":"", // 服务器ID
        "hashKey":"", // 密钥(请将此密钥保存至配置文件中,用于下一次握手时使用)
    }
    
  • 回执消息:
  • 注:下发完成后请自行重新连接并握手

握手反馈(shaked)

  • 消息类型(type): "shaked"
  • 说明:客户端向服务器反馈握手情况
  • 事件Body

    {
        "code": 0, // 状态码(见下文解读)
        "msg": "", // 状态信息
    }
    

    • 状态码解读

      状态码 状态
      1 握手成功
      2 带有附加消息的握手成功
      3 客户端密钥(hashKey)不匹配
      4 客户端版本(version)不匹配
      5 BotClient尚未连接,等待握手成功
      6 等待绑定
      其他 根据状态信息决定
  • 回执消息:

聊天信息(chat)

  • 消息类型(type): "chat"
  • 说明:聊天信息发送至服务器
  • 事件body
    {
        "nick":"", //发送者昵称
        "msg":"", //发送的消息
    }
    
  • 回执消息:

添加白名单(add)

  • 消息类型(type): "add"
  • 说明:为玩家添加白名单
  • 事件body
    {
        "xboxid":"", //玩家名
    }
    
  • 回执消息:

删除白名单(delete)

  • 消息类型(type): "delete"
  • 说明:为玩家删除白名单
  • 事件body
    {
        "xboxid":"", //玩家名
    }
    
  • 回执消息:

执行命令(cmd)

  • 消息类型(type): "cmd"
  • 说明:向控制台发送命令
  • 事件body
    {
        "cmd":"", //命令
    }
    
  • 回执消息:

查询白名单(queryList)

  • 消息类型(type): "queryList"
  • 说明:查询服务器内白名单文件
  • 事件body
    {
        "key":"", //查询关键词
        "page": 0 //页码
    }
    
  • 注: 传入的包体可能是key或者page两者其一,需要自行判断并做出选择
  • 回执消息:

查询在线玩家(queryOnline)

服务端命令关闭连接(shutdown)

  • 消息类型(type): "shutdown"
  • 说明:服务端命令客户端关闭连接
  • 事件body
    {
        "msg":"" //原因
    }
    
  • 回执消息:

执行自定义命令(run)

  • 消息类型(type): "run"
  • 说明:使用/执行执行自定义命令
  • 事件body
    {
        "key": "关键字",
        "runParams": [
            "参数1",
            "参数2"
        ],
        "author": {
            "qlogoUrl": "用户头像URL",
            "bindNick": "绑定昵称",
            "openId": "用户OpenID"
        },
        "group": {
            "openId": "群组OpenID"
        }
    }
    
  • 回执消息:

管理员执行自定义命令(runAdmin)

  • 消息类型(type): "runAdmin"
  • 说明:使用/管理员执行执行自定义命令
  • 事件body
    {
        "key": "关键字",
        "runParams": [
            "参数1",
            "参数2"
        ],
        "author": {
            "qlogoUrl": "用户头像URL",
            "bindNick": "绑定昵称",
            "openId": "用户OpenID"
        },
        "group": {
            "openId": "群组OpenID"
        }
    }
    
  • 回执消息:

  • 若使用与上文执行自定义命令(run)同样的代码,请注意判断权限问题

心跳包返回(heart)

  • 消息类型(type): "heart"
  • 说明:心跳包返回
  • 事件body
    {}
    
  • 回执消息:

绑定请求(bindRequest)

  • 消息类型(type): "bindRequest"
  • 说明:绑定请求
  • 事件body
    {
        "bindCode":"", // 绑定码
    }
    
  • 回执消息: