机器人渠道用于管理企业推送的各个渠道,方便与企业联系。为了多渠道为企业发送告警信息和审批通知,Quick BI新增推送消息的渠道,您可以根据需要配置接收消息的外部端口,测试连通后,推送消息将发送至您配置的外部端口中。本文为您介绍如何配置自定义渠道。
新建自定义渠道
登录Quick BI控制台。
在Quick BI产品首页,按照下图指引,进入新建自定义渠道页面。
在新建自定义渠道对话框,配置以下参数。
参数
描述
名称
输入自定义渠道名称。
推送地址
输入目标自定义渠道的接口地址,用于接收信息的推送。
设置的接口地址必须支持
POST
请求方式。请求添加密钥
输入目标自定义渠道的加签密钥,用于对请求进行验签。
您可以手动输入密钥,或者单击自动生成密钥,自动生成密钥并填入Quick BI中。
业务方需要对收到的内容进行验签处理,详细请参见附:外部系统接收与验签方式。
单击保存并测试。
保存成功后,您可以在机器人渠道列表中,看到新创建的自定义渠道。
接收订阅时启动并配置自定义渠道
创建订阅时,您可以在配置告警方式的自定义渠道中,添加新创建的自定义渠道。
在Quick BI首页,按照下图指引,进入指标监控页面。
在创建订阅任务时,接收方式选择自定义渠道,可以在接收渠道里看到创建的自定义渠道。
详情请参见创建订阅任务。
订阅推送到自定义渠道的消息格式如下:
{ "schema":"1.0", "header":{ "organizationId":"b5fb3d10xx", # 所属组织ID "eventId":"bc679418-9e7xx", # 事件唯一ID "createTime":"1705398011696", "eventType":"SUBSCRIBE" # 事件类型,订阅;通过该字段,判断业务逻辑 }, "event":{ "createTime":"1705397830000", "customParams":"{\"param\":\"this is a test\"}", # 订阅中,自定义参数。JSON格式,key结构。 "customReceiveUsers":[ # 自定义收件人。 { "nick":"张三", # 昵称 "accountId":"cQUPAaY81L", # Quick BI中保存的三方账号ID "accountType":4, # 账号类型. "userId":"053da9" # Quick BI userId } ], "worksInfo":{ # 报表相关信息 "components":[ # 组件信息 { "componentId":"123", "componentName":"交叉表", "componentType":4 } ], "worksId":"0458e831-0250-486", # 报表ID "worksName":"排行榜", # 报表名称 "worksType":"PAGE", "workspaceName":"李四资源包导入", # 所属空间名称 "workspaceId":"3e60ee7f-a99f-4231-913", # 所属空间ID "worksUrl":"https://baidu.com/xxxx" # 报表的预览地址 }, "subscribeId":"73a1d0b2420", # 订阅任务ID "ownerId":"fec0741443204", # 订阅任务owner "title":"自定义webhook推送渠道", # 订阅任务标题 "subject":"自定义", # 订阅任务的标题。 "content":{ # 订阅任务文本 "head":"<p style=\";\">自定义webhook推送渠道</p>", "tail":"<p style=\";\">自定义webhook推送渠道</p>" }, "snapshot":{ "images":[ # 截图附件 { "name":"2467699471858258259-1.jpeg", "url":"https://qbi-dev.cn-shanghai.aliyuncs.com/xxxx" } ], "pdfs":[ # PDF附件 { "name":"2467699471858258259-1.pdf", "url":"https://qbi-dev.cn-shanghai.aliyuncs.com/xxxx" } ], "excels":[ # excel附件 { "name":"2467699471858258259-1.xlsx", "url":"https://qbi-dev.cn-shanghai.aliyuncs.com/xxxx" } ] } } }
接收告警时启动并配置自定义渠道
监控指标时,您可以在配置告警方式的自定义渠道中,添加新创建的自定义渠道。
在Quick BI首页,按照下图指引,进入指标监控页面。
在监控告警设置对话框,当告警方式选择自定义渠道时,可以在自定义渠道中看到新创建的自定义渠道。
详情请参见配置监控告警。
监控告警推送到自定义渠道的消息格式如下:
{ "reason":"price(求和)大于0", # 告警原因 "metricName":"线图-mysql", # 维度名称 "checkTime":1705398660000, # 触发时间 "value2":"0", # 规则阈值 "value1":"707033.66", # 监控值 "dimValueMap":{ # 维度组合值 }, "monitorName":"线图-mysql", # 告警名称 "reportUrl":"https://quickbi.aliyun-inc.com/", # 报表的链接地址 "dashboardName":"监控告警-全用例2" # 报表名称 }
在填报任务下发中配置自定义渠道
在配置数据填报的填报任务下发时选择自定义渠道。
填报任务下发推送到自定义渠道的消息格式如下
{ "deadlineTime": "2024-07-26 20:00:00", #填报截止时间 "taskUrl": "https://bi.aliyun.com/xxx", #填报链接 "taskTitle": "填报任务名称", #填报任务名称 "sendTime": "2024-07-04 19:19:20", #填报任务下发时间 "dashboardName": "王五的填报" #报表名称 }
在对外审批电子流中配置自定义渠道
组织管理员可以外部审批渠道中,选择新创建的自定义渠道。
在配置管理页面,按照下图指引,新建自定义渠道。
在协同配置页面,按照下图指引,启用自定义审批渠道。
此时,用户申请Quick BI的资源权限时,自定义渠道也能收到申请通知。
Quick BI审批,推送到自定义渠道的消息格式如下:
{ "authPointsValue":3, # 权限点。1:查看 2:导出 3:查看+ 导出 4:编辑(写) "resourceId":"b8b5392b-bb44-4bd8-8f63-0e9642787e8d", # 申请权限资源ID "resourceName":"首屏20个组件(移动端8个首屏)", # 报表资源名称 "approverId":"e52b777a1dde4bfb94f91e18128bcfb0", # 审批人UID "roleId":0, "applyReason":"123123", # 申请理由 "applicantName":"Gartner_demo", # 申请人昵称 "gmtCreate":1705399339000, "approverName":"批量导入_225706", # 审批人昵称 "expireDate":1708077734000, # 权限有效期限 "workspaceName":"性能报告测评空间", # 空间名称 "applicantId":"e9a40c524ef8471faefbd", # 申请人UID "applicationId":"b31c8cf5-aa31-42f7-927a-da3cb2feefd4", # 审批ID "resourceType":"dashboard" # 资源类型 }
附:外部系统接收与验签方式
实际应用时,Quick BI以POST
的方式进行内容推送,并在请求中添加如下内容,用户系统接收到推送的内容后,可根据实际需要对比sign
的值进行验签处理。
请求头:
X-TaskId,即任务ID,用户可以使用该ID唯一确认1次任务请求,可以进行重复性校验(即进行重复过滤)或者在出现异常时提供给Quick BI业务人员进行问题定位。
请求参数:
timestamp
:时间戳nonce
:随机串sign
:验签信息
上述请求参数,主要出于安全考虑,当用户系统接收时可以进行防重放和防篡改的校验。具体签名的生成方式如下:
sign = SHA256.digest(timestamp + nonce + token)
其中,token
的值为创建时生成的请求添加密钥,业务接收方需要校验生成的sign
是否与预期一致。