证券代码:831315|7X24服务热线:400-720-7200

URL回调说明

1. 功能说明。

通过URL回调功能,您可以将故障和恢复的信息发送到您指定的URL上,从而更加灵活的处理各种告警消息。

2. 支持消息类型。

目前仅支持SmartEye监控告警信息。

3. 使用方法。

3.1 在回调URL处填写您指定的回调地址,一般是您服务器上一个用于获取和处理回调信息的文件,需要能够通过公网正常访问。

3.2 在您的服务器上设置回调密钥,这用于确认回调通知是由安畅网络发出的。

3.3 勾选“开启URL回调”并点击“应用”后,URL回调将通过POST方式将告警信息发送至您指定的URL。

4. 编码约定。

4.1 安畅网络发送的消息内容均为UTF-8编码。

4.2 您完成回调过程后需向安畅网络返回结果 HTTP 200 状态,否则认为回调失败。HTTP 相应 body 内容并不关心会直接丢弃。

5. 传递参数。

5.1 URL回调通过POST方式将告警信息发送至您指定的URL。具体参数如下:

参数 类型 必含 释义
uuid string 消息唯一标示
zone string 事件发生区域,可能为空字符串
event_data string 事件内容 Json 串,根据 type 类型不同 内容可能不同
type string 事件类型
rtype string 报警对象资源类型,可能为空
create_time string 事件发生时间 UTC 格式
timestamp integer 消息发送时间戳,用于检测消息是否过期
sign string 签名

6. PHP验签示例代码。

    
        <?php
    $SECRET_KEY = '387a1a3091c29cf7ff253621c347f6df';
    $args = $_POST;
    // 校验必要参数是否存在
    if((!isset($args['sign']))  || (!isset($args['timestamp']))){
        echo "缺少必要参数";
        exit(1);
    }
    // 校验请求是否过期,自定义延迟10分钟以上的消息丢弃
    if($args['timestamp'] < (time() - 10*60)){
        echo "消息已过期";
        exit(1);
    }
    // 获取原始 签名 保存
    $sourceSign = $args['sign'];
    // 移除签名字段
    unset($args['sign']);
    // 所有字段升序排列
    ksort($args);
    // 拼接 URL query string 字符串 (RFC3986 规范)
    $signStr = http_build_query($args, null, '&', PHP_QUERY_RFC3986);
    // 对signstr 进行 sha1 签名
    $sign = hash_hmac('sha1', $signStr, $SECRET_KEY);
    // 对比自签名和服务器发送过来的签名一致
    if($sourceSign == $sign) {
        echo "验签通过";
        // 数据可信赖
    }else{
        echo "签名失败";
        exit(1);
    }
    

温馨提示

反馈会在1个工作日内与您联系(工作时间:周一至周五,9:00-17:30)。紧急问题建议您拨打400-720-7200或提交工单,谢谢!