跳到主要内容

规则引擎

规则引擎是一种开发自动化业务逻辑的可视化编程方式,可以通过设备或时间维度的条件触发,实现设备的自动控制及触发告警。

创建场景规则

进入 Neptune云平台 - 管理平台 ,从左侧菜单栏点击 规则引擎 - 场景规则 。在页面列表右上角点击 创建规则

编辑基本信息

规则信息

规则名称:设置具体规则的名称。

规则分组:设置该规则所属的分组,默认为根分组。详细的分组设置见分组管理

规则描述:为规则添加描述(选填)。

适用范围

适配方式:确定本规则生效的设备范围,可选 设备类型设备分组指定设备

选择适配方式后,根据下级选项提示继续选择对应设备类型、分组、单个设备。

温馨提示

若通过 设备类型 的方式划定规则适用范围时,可继续选择 设备分组 (即该设备类型下的设备分组)。如不选择分组,则默认为该设备类型下所有设备。

设备分组注意事项

设备分组的设备生效范围为该分组及其下一级分组的设备,不包含跨二级及以上分支分组的设备。

编辑触发条件

触发条件包含以下三种选项:

触发条件描述
数据驱动设置设备上发数据条件规则,当设备上发数据满足条件时,执行相关动作;
定时触发设置定时周期规则,当满足定时周期规则时,执行相关动作;
设备上下线设置当设备上线或下线时,执行相关动作。

数据驱动

数据驱动下可使用 栏位编辑器公式编辑器 两种方式。

注意

从栏位编辑器切换到 公式编辑器 时,支持把栏位表单内容无缝转换为判断表达式,但反之无法转换。


栏位编辑器

  1. 选择栏位条件触发关系:可选 满足任意条件满足所有条件
    • 满足任意条件:指满足栏位编辑器中设定的任意一个条件即可触发,对应逻辑门中的 或门
    • 满足所有条件:指满足栏位编辑器中设定的全部条件方可触发,对应逻辑门中的 与门
  2. 选择数据栏位:根据 适用范围 中选定的设备范围,系统将获取对应的数据栏位以供选择。
  3. 操作符、值:根据数据定义类型,选择判断操作符和输入/选择值:
数据定义可选操作符输入或选择值
数字等于(=)不等于(!=)大于(>)大于等于(>=)小于(<)小于等于(<=)输入数值
普通文本等于(=)不等于(!=)包含(string.contains)不包含(!string.contains)输入文本值
布尔类型等于(=)不等于(!=)选择 真(true)假(false)
枚举等于(=)不等于(!=)包含(string.contains)不包含(!string.contains)输入文本值
  1. 添加数据栏位:点击栏位编辑器表格下方 +新增条件 可新增一行栏位判断表单。
  2. 删除数据栏位:点击栏位编辑器对应行 删除 可删除对应一行的栏位判断。
  3. 点击 切换为公式编辑器 可切换到公式编辑器页面。

公式编辑器

  • 可直接输入或选择 数据ID操作符
  • 公式编辑器的触发效果与栏位编辑器的触发效果相当,且能实现更复杂的表达式触发效果。

定时触发

定时触发下可使用 简易定义高级定时 两种。

简易定时

  1. 选择定时的循环周期,可选 周一周日
  2. 选择定时触发的时间,可选 00:0023:59

高级定时

基于6位数值的Cron表达式,实现任意时间粒度触发。

Cron表达式字段从左到右表示的时间粒度分别为:秒、分、小时、天(日)、月、星期。

设置方式:

  • 可通过选择各个时间粒度的表单设置定时周期,系统将相关设置转换成Cron表达式。
  • 可直接在Cron表达式文本框中直接输入表达式,表达式格式规范如下:
字段允许值允许的特殊字符
0-59, - * /
0-59, - * /
小时0-23, - * /
日期1-31, - * ? / L W C
月份1-12 或者 JAN-DEC, - * /
星期1-7 或者 SUN-SAT, - * ? / L C #
  • 点击 反解析 按钮按钮可输出预览该Cron表达式最近5条定时触发时间。

Cron表达式示例:

Cron表达式示例说明
*/10 * * * * ?每隔10秒执行一次
0 */5 * * * ?每隔5分钟执行一次
0 2,22,32 * * * ?在2分、22分、32分执行一次
0 0 4-8 * * ?每天4-8点整点执行一次
0 0 2 * * ?每天凌晨2点执行一次
0 0 2 1 * ?每月1号凌晨2点执行一次

设备上下线

  • 根据适配方式指定的设备范围,该范围内的设备上线、下线时触发规则。
  • 可选设备上线设备下线

编辑执行动作

触发事件发生后,系统将根据用户设定的执行动作向数据下发数据或发出消息通知。

执行动作下可选两种执行方式:数据下发状态提醒,支持两种执行动作同时并行。

不可定时触发状态提醒

当触发条件选择为 定时触发 时,执行动作中的 状态提醒 不可用。

数据下发

当满足触发条件时,云平台自动向设备下发数据。

  1. 根据基础信息中设定的设备类型或指定设备,下拉框中选择一个数据栏位。

  2. 根据数据定义的类型,输入或选择下发值。

数据定义输入或选择值
数字输入数值
普通文本输入文本值
布尔类型选择 真(true)假(false)
枚举输入文本值

状态提醒

设备满足触发条件时,云平台将推送 系统提醒邮件消息 告知用户设备状态。

  1. 提示状态:当设备满足触发条件时,推送到消息中心及邮件推送的状态分类,可选 通知异常报警
  1. 提示机制:可选 仅首次推送,直至恢复提醒沉默时间
    • 仅首次推送,直至恢复:当设备上发数据触发结果为 true 时,云平台执行首次判定的事件,直至该设备触发结果为 false
    • 提醒沉默时间:当设备上发数据触发结果为 true 时,云平台执行首次判定的事件,若经过用户设定的沉默时间后该状态仍为 true 时,云平台再次执行下发数据或状态提醒。
  1. 提示内容:可选 系统提醒邮件提醒
    • 系统提醒:设备触发条件后,云平台消息中心将产生提醒内容,该提醒内容团队内所有用户可见。
    • 邮件提醒:设备触发条件后,云平台根据设定的 提醒团队群组 查找团队用户,根据团队用户注册或绑定的邮箱地址发送邮件提醒;或直接输入邮箱地址通知。
  1. 提示正文:输入推送提醒内容。
  1. 联动提示内容:提示内容除 提示正文触发栏位及其触发值 外,用户可设定一个关联的 数据栏位 作为关联提醒内容,接收消息时连同关联的数据栏位数据一同展示。
  1. 邮件推送目标:当选中 邮件提醒 时,可选择 推送到指定邮箱推送到团队用户邮箱
    • 推送到指定邮箱:可直接输入目标推送的邮箱地址,输入多个邮箱时支持用 英文逗号 "," 隔开。
    • 推送到团队用户邮箱:支持选择云平台内 团队管理 - 权限管理 内的角色。触发条件时,云平台向该角色下的团队成员发送邮件提醒。
团队成员绑定邮箱

使用推送到团队用户邮箱时,如团队成员未绑定邮箱,将无法收到邮箱消息。

团队成员可在 个人信息 中绑定邮箱(详细见 基本操作 - 修改个人信息 )。

启用场景规则

  • 创建规则完成后,该规则默认为未启用状态,请在对应规则右侧操作列点击 启用 以让规则生效。
  • 点击 停止 可停止规则生效。

管理规则

复制规则

支持复制规则以实现快速建立并设置多个相似规则。

在复制目标规则行点击 更多 - 复制 即可复制该规则。复制的规则默认为未启动状态。

分组管理

规则引擎列表左侧为树状分组管理。支持对规则进行信息分组管理。

创建分组

  1. 点击选中一个分组;
  2. 在选中的分组点击 ➕ 按钮创建子分组。
  3. 输入分组名称 ,单击空白处回车键 完成创建子分组。

编辑分组名称

  1. 点击选中一个分组;
  2. 在选中的分组点击 更多 - 编辑 按钮。
  3. 输入分组名称 单击空白处回车键 完成编辑分组名称。

删除分组

  1. 点击选中一个分组;
  2. 在选中的分组点击 更多 - 删除 按钮,弹出提示点击确定完成删除分组操作。
注意

删除分组后,该分组下的规则将转移到默认分组。

删除规则

在目标规则行点击 更多 - 删除 即可删除该规则。

执行日志

规则启动后,当云平台触发事件并执行相关动作时,云平台将生成一条执行动作日志。

执行日志可在管理平台左侧菜单栏 规则引擎 - 执行日志 中查询。