跳至主要內容

任务基础

约 1122 字大约 4 分钟

任务基础

什么是任务?

ThingsCloud 提供了强大的任务功能。您可以将云平台对设备的各类消息指令包装成一键执行的任务,在任务中,支持各种常用的逻辑组件或协议组件。

任务可以手动执行,可以设置多种定时策略,也可以作为规则的操作,还可以开放 API 给应用集成。

使用任务可以实现很多场景,例如:

  • 以特定的间隔时间向设备下发 Modbus 查询消息(例如:0x03 读取保持寄存器),实现传感器数据的定时采集。
  • 根据设备的属性值,自动生成 Modbus 更新消息(例如:0x10 写入多寄存器),下发给设备实现配置更新。
  • 检查设备固件是否需要 OTA 升级,如果需要的话,给设备下发升级固件的命令消息。
  • 每日凌晨定时检查所有设备 OTA 升级信息,并给需要升级的设备推送升级包。
  • 每日定时给设备下发维护性命令消息,命令的参数需要根据设备当前运行状态来计算生成。
  • 每日固定时间打开温室的遮阳帘,但如果当时温度低于10度,则不打开。

这些看似复杂的场景,利用 ThingsCloud 的任务功能,都可以轻松实现,而不需要在应用端编写任何程序。

创建任务

创建任务非常简单,需要了解以下基本概念:

目标设备

目标设备 决定了该任务允许对哪些设备执行。

目标类型分为两种:

  • 设备:可指定一个或多个设备。
  • 设备类型:可指定一个设备类型,设备类型下的所有设备均被包含。

因此,如果只想对某个或某几个设备执行该任务,则选择 设备 作为目标类型;如果希望对设备类型下的所有设备执行同样的任务,则选择 设备类型 作为目标来源。

例如:

  • 我们要对 CO2传感器 设备类型下的所有设备,按 5 分钟的时间间隔下发 Modbus 04 查询消息,那么直接将任务建立在设备类型下,并设置任务执行间隔时间。

任务类型

任务类型目前包括以下几类:

  • 属性下发
  • 命令下发
  • 自定义数据下发

每个类型下有可供选择的任务动作,详细介绍请浏览后续章节。

任务状态

每个任务拥有独立的状态,分为:

  • 已启用:该任务可被执行。
  • 已停用:该任务不可被执行。

以上状态对于任务手动执行或定时执行均有效。

与此同时,任务还可以对每个目标设备单独设置是否关闭 定时运行。例如:一个任务属于设备类型,任务全局状态是 已启用,但是对某个设备可以关闭任务定时运行,如下图:

任务定时设置

任务支持以下几种定时设置:

关闭定时

该任务不启用定时,而通过手动执行,或者规则触发以及 API 调用。

只运行一次

可设置一个时间,该时间到达后,任务会被自动执行一次,然后任务会变为 关闭定时。如下图:

每日重复

设置每日的定时执行时间。如下图:

间隔时间重复

设置时间间隔,任务将按此间隔时间周期性执行。如下图:

任务手动执行

在任务列表或任务详情页,可以手动点击图标来执行任务,如下图:

可以选择任务目标设备,如下图:

  • 所有目标设备:对该任务的所有目标设备执行任务。
  • 指定目标设备:可以指定该任务目标设备中的一个或多个。

任务统计

任务详情页 > 统计,可以查看任务的调用次数统计,这些统计同时也会计入用户的云平台用量统计。

任务日志

任务详情页 > 日志 中开启调试状态,便可以记录每次任务执行的时间和目标设备数。