配置用户消息通知URL
功能介绍
配置用户消息通知URL(增加或者更新用户消息通知URL)。 配置回调 URL 时将通过 HTTP/HTTPS 请求的方式发送一条测试请求给用户服务器,用户服务器需要处理行业视频管理服务的回调请求,并尽快进行应答。
注意事项:
-
回调的方向是行业视频管理服务向用户服务器发起 HTTP/HTTPS POST 请求。HTTP是非加密传输,存在安全风险。为了获得更高的安全性,建议您使用 HTTPS 通道发送请求;
-
行业视频管理服务回调用户服务器的超时时间为 5 秒,且没有重试。如果回调超时,则配置失败。为确保回调成功率,用户服务器应当尽可能加快回调处理速度,例如先发送回调应答,然后再处理具体业务逻辑;
-
确保回调 URL 的 IP 和端口公网可达,以及防火墙策略不限制外网访问,接口应支持application/json格式的数据
-
配置回调 URL 时,云服务端会访问该地址是否可用。访问请求体格式为:
{
"message_id": 1614936351275468803, // int64 或 long 整型
"test": true // boolean 类型
}
- 注意,在配置好回调 URL,还需要给设备开通接入调阅服务和行业数据流服务后,才能接收到告警数据。
- 云服务会对连续出现6次及以上异常状态的回调URL进行熔断处理,触发熔断后,10分钟内将不会向该回调URL推送消息。异常状态包括:超过5秒未响应、HTTP返回码非200等。触发熔断时间内,若用户服务器恢复好,可自行通过调用 配置用户消息通知URL接口 来进行解除。
URI
POST /v1/{user_id}/messages/callback
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
user_id |
是 |
String |
用户ID:由数字组成,长度范围[15,25],获取方式参考获取user ID与下载AK/SK章节 |
请求参数
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
Access-Token |
是 |
String |
用户认证token,从获取用户认证token接口获取 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
callback_url |
是 |
String |
要添加的URL,支持http和https协议,长度在256常规字符以内,不支持中文,长度范围[1,256] |
subscription_type |
是 |
String |
订阅类型字段 枚举值:
|
auth_key |
否 |
string |
鉴权密钥:给客户推送消息时,客户认证时使用,长度范围[6,18],该字段为非必填字段,但建议客户填写,有助于提高可靠性。 认证方式如下: 当配置了auth_key后,回调方会根据 (回调地址+"|"+时间戳+"|"+auth_key)用sha256算法做数字摘要。 在回调时,通过HEAD参数 "X-Ivm-Signature" 传递摘要,"X-Ivm-Timestamp"传递时间戳。设置方通过计算sha256(回调地址+"|"+时间戳+"|"+auth_key)进行认证,可参考告警推送消息体结构 |
响应参数
状态码: 200
参数 |
参数类型 |
描述 |
---|---|---|
callback_url |
String |
支持http/https协议,最大长度为256常规字符 |
create_time |
String |
创建时间 |
subscription_type |
String |
订阅类型字段 枚举值:
|
请求示例
POST /v1/123456789*****/messages/callback { "callback_url" : "http://www.xxxx.xxx/dsfa", "subscription_type":"DEVICE_ALARM", "auth_key":"test123456" }
响应示例
{ "callback_url": "http://www.xxxx.xxx/dsfa", "subscription_type": "DEVICE_ALARM", "create_time": "2021-03-30 14:34:50", }
状态码
请参见状态码
错误码
请参见错误码。