跳到主要内容

如何将会话状态推至外部系统

如果用户处于活跃状态(可以理解为有触发HAP系统接口调用),在配置了接收地址的情况下,每2分钟会向其推送一次,推送内容包含HAP系统的账号Id,如何需要获取对应第三方用户Id,可参考 https://www.showdoc.com.cn/mingdao/7237672824191664

  1. 在服务器中创建配置文件 appextensions.json

    如:/data/mingdao/script/volume/wwwapi/appextensions.json

    {
    "AppSettings": {
    "SessionWebhookUrl": "接收推送信息的 API 地址", // 必填,如:https://api.domain.com/hooks/NjA0NzdjMDNjMGFjMTE3ZGUwMjRjN2Nl
    "SessionWebhookHeaders": {} // 请求头自定义参数,可选
    }
    }
  2. 消息体规范

    HAP 通过 POST 方式,以 application/json 格式向 SessionWebhookUrl 发送 JSON 数据,消息体格式如下:

    {
    "accountId": "HAP 账号Id"
    }
  3. 挂载配置文件

    修改微服务应用对应的 docker-compose.yamlvolumes 中增加:

    - ./volume/wwwapi/appextensions.json:/usr/local/MDPrivateDeployment/wwwapi/appextensions.json
  4. 重启 HAP 微服务应用