开发数据订阅任务


数据订阅服务是 EnOS 为提高应用 API 调用效率而推出的一种主动推送服务,推送内容包括资产时序数据、告警引擎数据、资产事件数据和返回结果数据。基于该推送服务,应用获取资产数据无需不停轮询 API,大大提高 API 调用效率和降低 API 使用费用。

数据订阅操作流程图

本文分别介绍在 EnOS Cloud 和 EnOS Edge 创建数据订阅任务的操作流程,大致流程图如下:

_images/data_subscription_process.png

备注

EnOS Cloud 支持多个 OU 订阅,Cloud 每个 OU 下最多可创建 15 个订阅任务。EnOS Edge 仅支持单个 OU 订阅, Edge 每个 App 最多能创建 5 个订阅任务。

创建 EnOS Cloud 订阅任务

具体步骤

  1. 进入 EnOS 管理控制台的 数据订阅 模块,点击 添加订阅 按钮进入订阅配置页面。

    _images/data_subscription_cloud.png
  2. 选择 订阅类型,详见 EnOS Cloud 配置说明

  3. 手动填写或自动生成 订阅 ID,订阅 ID 格式支持英文大小写、下划线、中横线。

  4. 选择 SA 账号 用以 Consumer 鉴权及数据鉴权。每个订阅任务都必须关联一个 SA 账号,当订阅关联的 SA 账号被删除,则该订阅失效。

    备注

    在关联订阅任务前,必须授权 SA 账号以获取资产数据,详见 管理服务账号

  5. 选择 订阅通道

  6. 填写 订阅描述

  7. 选择 订阅客户。根据 SA 账号的客户数据权限(通过应用购买关系建立),可选择需要订阅的客户数据。当客户解除了对 SA 账号的授权,与此 SA 相关的订阅任务会自动解除对该客户数据的订阅。

  8. 配置过滤数据。当订阅配置的模型或测点被删除,订阅配置页面依旧能看到订阅配置信息,但是会提示相关配置项为未知对象。

EnOS Cloud 配置项

数据类型

描述

订阅通道

数据过滤条件

时序数据订阅

订阅资产上送或者计算产生的带时间戳的测点数据,包括资产实时数据和历史数据

  • 实时通道

  • 离线通道

  • 模型条件:选择订阅的模型和测点实时数据

  • 设备标签过滤:添加设备标签,订阅指定设备的实时数据

告警数据订阅

订阅针对实时数据设置一定的告警规则,根据这些告警规则产生的告警数据

  • 基础(2.0 版告警)

  • 高级(3.0 版告警)

  • 模型条件:选择订阅的模型告警数据

  • 设备标签过滤:添加设备标签,订阅指定设备的告警数据

  • 资产树标签过滤:添加资产树标签,订阅指定资产树的告警数据

设备管理系统事件订阅

订阅 EnOS 设备接入服务内部发生的事件,如设备生命周期中的注册、删除、拓扑关系的变更、OTA 升级等事件

事件类型过滤:选择订阅的资产模型、设备资产、逻辑资产、OTA 固件文件、OTA 任务事件类型,以及每种类型中的具体事件

设备事件上报订阅

订阅 EnOS 设备接入服务中设备模型上报的事件信息(包括 Info、Warn、和 Error)

  • 模型条件:选择订阅指定模型上报的事件数据(可选多个模型)

  • 事件类型过滤:选择订阅的事件类型(如不选择,则订阅所有类型的事件数据)

创建 EnOS Edge 订阅任务

具体步骤

  1. 进入 EnOS 管理控制台的 Edge 管理 模块,点击进入Edge 详情 > 数据订阅,点击 添加订阅 按钮进入订阅配置页面。

    _images/data_subscription_edge.png
  2. 选择 订阅类型,详见 EnOS Edge 配置说明

  3. 手动填写或自动生成 订阅 ID,订阅 ID 格式支持英文大小写、下划线、中横线,命名规则还包括:

    • 时序数据订阅 ID:以 DATASVC.SUB. 开头

    • 返回结果订阅ID(设备异步控制):以 DATASVC.CONTROL. 开头

    • 返回结果订阅ID(设备异步设点):以 DATASVC.SET. 开头

  4. 选择 SA 账号 用以 Consumer 鉴权及数据鉴权。每个订阅任务都必须关联一个 SA 账号,当订阅关联的 SA 账号被删除,则该订阅失效。EnOS Edge 的服务账号 (SA) 显示为已在 EnOS Edge 上线的应用对应账号。

    备注

    本步骤前必须授权 SA 账号以获取资产数据,详见 管理服务账号

  5. 选择 订阅通道

  6. 填写 订阅描述

  7. 配置过滤数据。当订阅配置的模型或测点被删除,订阅配置页面依旧能看到订阅配置信息,但是会提示相关配置项为未知对象。

EnOS Edge 配置项

数据类型

描述

订阅通道

数据过滤条件

时序数据订阅

订阅资产上送或者计算产生的带时间戳的测点数据,包括资产实时数据和历史数据

实时通道

  • 模型条件:选择订阅的模型和测点实时数据

  • 设备标签过滤:添加设备标签,订阅指定设备的实时数据

告警数据订阅

订阅针对实时数据设置一定的告警规则,根据这些告警规则产生的告警数据

基础(2.0 版告警)

  • 模型条件:选择订阅的模型告警数据

  • 设备标签过滤:添加设备标签,订阅指定设备的告警数据

  • 资产树标签过滤:添加资产树标签,订阅指定资产树的告警数据

返回结果订阅

订阅控制结果显示了控制或设点命令的执行结果

设备异步控制、设备异步设点

Edge 设备事件订阅

订阅 EnOS Edge 设备内部发生的事件

事件类型过滤:只支持 Edge 发布事件

启动订阅任务

数据订阅任务配置完成后,点击 启动 按钮开启数据订阅任务。数据订阅服务会按照订阅任务配置,对数据进行分发,并写入相应的数据中间件中。

管理订阅任务

编辑订阅任务

数据订阅任务配置完成后,点击 编辑 按钮可以编辑数据订阅任务。配置好订阅任务之后,点击保存,返回至订阅任务列表页面。

删除订阅任务

在订阅列表中,点击 删除订阅 按钮可删除订阅任务。删除订阅任务前,需暂停任务,并且任务删除之后不可恢复。

批量操作(EnOS Edge 特有)

在 EnOS Edge 数据订阅列表页面,点击 批量操作,选择下拉菜单中的相应按钮可以执行批量导出订阅、批量导入订阅和批量删除订阅任务。

备注

建议批量导入前检查 App 总订阅数是否不超过 5 个,否则将报错。