Page tree
Skip to end of metadata
Go to start of metadata

概述

  • 该文档用来描述数据端点与平台通知告警的关系。

通知和告警

  1. 告警一般用在设备的状态发生了异常或者产生了一些需要通知出来的信息,平台需要知道并且按照既定规则将该异常通知到管理者或普通用户那里。

数据端点

  1. 什么是数据端点?

    1. 数据端点是对设备运行状态的一种描述,它支持多种数据格式,如布尔、单字节、短整型、长整形以及字符串等。

    2. 当设备的数据端点发生变化,若设备已经连接到云端,那数据端点的变化将会通过云智易提供的硬件SDK,同步到云端上,以便厂商在云平台查看与收集设备的运行状态的变化。

  2. 数据端点和通知告警有什么关系?
    1. 云智易平台通过监视设备数据端点的变化,配合厂商在管理台设置的告警规则,将设备运行状态转换成为告警信息,通知到厂商预先设置好的目标中,包括邮件、短信、APP上等等。

设置产品数据端点与告警

  1. 厂商需要在云智易企业管理平台注册一个企业账号,登录到管理台,添加一个产品。
  2. 在产品的数据端点设置中,按照产品需求,添加一个或多个数据端点,用于描述和收集产品下设备的运行状态。
    1. 数据端点由“索引”,“类型”,“值”三个要素组成。一个设备可以最多添加200个数据端点,数据端点的索引值不需要按顺序排放,但是数据端点的索引值不能重复。
    2. 数据端点支持布尔、单字节、短整型、长整形、字符串这些类型。以满足设备上报状态的需求。
    3. 设备硬件开发工程师,在设备端开发时,一定要遵守管理台上已经设置好的数据端点的“索引”、“类型”完成数据端点的上报,这样平台才可以正确解析设备的运行状态,完成后续工作。
  3. 当厂商完成数据端点的设置后,便可以在产品的“通知与告警”服务中,添加告警规则。
    1. 告警规则由“告警条件”、“告警内容”、“通知方式”、“可见范围”几个关键属性组成。
      1. 告警条件:指的是当设备的数据端点变化满足到既定条件时,便触发告警或通知。
      2. 告警内容:指的是当告警被触发后,需要通知的具体内容。
      3. 通知方式:支持通知到短信、邮箱、应用内推送和APN推送。
        1. 短信:当告警触发后,通知到企业成员的手机,注意,暂时不支持通知到用户手机。
        2. 邮箱:当告警触发后,通知到企业成员的邮箱,注意,暂时不支持通知到设备用户的邮箱。
        3. 应用程序内推送:当用户的APP订阅了这个设备,当设备触发了告警,告警内容就会通过到所有在线的APP内。不在线的APP通知不到,这时就需要使用到APN推送了。
        4. APN推送:针对不在线的APP如何能够即时收到设备告警,云智易引入了APN(Apple Push Notify Service)。当选中了APN通知,设备告警会推送到对应的iOS APP上,即便APP没有上线, 也能收到告警内容。APN的配置,在后面会进行说明。针对Android APP,由于Android APP具有可以长期驻守后台的便利,Android APP可以直接通过应用程序内推送消息完成告警的功能而不用引入类似APN推送的功能。
  4. 厂商还可以通过管理台的告警服务,查看所有设别的历史告警消息以及告警信息统计信息。

通知、告警和APN

  1. 什么是APN ?
    1. APN:Apple Push Notification Service
  2. 为什么要使用APN ?
    1. 针对iOS程序进入后台就变为离线的特点,为了在APP离线的情况下也可以收到设别告警,平台引入了APN接入的服务。
  3. 配置方法
    1. 厂商进入平台的应用管理服务功能,新建一个iOS应用。
    2. 再对这个应用进行编辑,勾选“启用苹果APN服务”,并且上传APN的P12文件,注意要区分是开发证书还是产品证书。输入秘钥,完成一个APN服务的创建。
  4. APP开发:
    1. APN是需要在APP开发时做绑定的,APP开发人员需要在APP登录到云智易服务器,完成身份认证,并且获取到Access-Token以后,调用注册APN的接口完成APP在这个APN上的注册和绑定动作。

消息模版设置

  1. 云智易的消息通知在通常情况下,会直接将厂商设置好的告警消息或通知直接发送出去。如厂商在一个告警规则中的告警内容设置为“设备上线了”,那么在设备上线的时候,通知服务将会直接把“设备上线了”这个消息通知到所有设定好的目标中。
  2. 为了满足更复杂的消息内容通知需求,云智易提供了消息模板的功能。厂商可以按照一定的消息模板设置,将更复杂,有变量的消息通知到目标上。
  3. 消息模板规则:
    1. 厂商在设置消息内容的时候,需要带上“{value}”参数,其中 “ {value} “ 为需要接口替换的变量;
    2. 具体场景:
      1. 当厂商设置了一个温度端点告警阀值为50度,并且其告警内容设置为“注意!您的设备温度达到了{value}度。”,那么当这个设备的温度端点值达到56度时,推送给用户的告警内容就会是“注意!您的设备温度达到了56度。”
      2. 当厂商设置了一个字符窜的数据端点,设置告警规则为字符串不为空或者大于小于另外一个字符串,并且其告警内容设置为“注意!您的{value}发生了异常。”,那么当这个设备上报的数据端点数据为“一号门磁”,推送给用户的告警内容就会是“注意!您的一号门磁发生了异常。”
      3. 并且针对字符串类型数据端点的告警,平台还支持复杂的模版规则,如下:
        1. 一个字符窜的数据端点,设置告警规则为字符串不为空或者大于小于另外一个字符串,其告警内容设置为“注意!您的{device}被{option}。”。设备上报的字符数据若为如下格式的JSON数据: {"xn”:{“device": “大门门磁”,"option”: “打开”}},那么告警内容就会是: 注意!您的大门门磁被打开。,其中json数据中,“xn” Object为保留关键字,表示里面内容为需要匹配消息模版的。”device”,”option"两个Object Name表示需要将内容替换消息模版中的{device}和{option}。
    3.      设备变量参数:
      1.  “ {device}.{name} ” 设备名称,设备没有名称时显示“null”
      2. “ {device}.{mac} ” 设备Mac地址
      3. “ {device}.{state} ” 设备当前状态,显示“上线”或者“下线”
      4.  “ {device}.{ip} ” 设备当前IP,如没有时显示“null”
      5. “ {device}.{time} ” 告警时间,显示格式为:“ yyyy-MM-dd' 'HH:mm:ss"
      6. "{device}.{value}"指的是触发异常规则上报的数据端点当前值

  • No labels