触发器
约 2796 字大约 9 分钟
触发器
触发器是自动化的"导火索",它定义了什么时候启动自动化执行。
通俗理解
就像产线上的传感器,当检测到"温度超标"(触发器)时,启动后续的处理流程。
触发器类型
ThingsCloud 支持多种触发器类型,满足不同的自动化需求。
| 触发器类型 | 用途 | 典型场景 |
|---|---|---|
| 手动触发 | 人工点击执行 | 测试、临时操作 |
| 定时触发 | 按固定时间执行 | 每天定时开关灯 |
| 绝对时间 | 指定具体日期时间 | 一次性预约任务 |
| 间隔触发 | 每隔固定时间执行 | 周期性数据采集 |
| 日出日落 | 根据当地日出日落 | 日落开灯、日出关灯 |
| 设备属性变化 | 属性满足条件时 | 温度超标、湿度异常 |
| 设备事件 | 设备上报事件时 | 门被打开、按钮按下 |
| 告警状态变化 | 告警状态改变时 | 告警产生/恢复联动 |
手动触发
手动触发是最简单的触发方式,只有当您主动点击"执行"按钮时才会触发。
配置说明
| 配置项 | 说明 |
|---|---|
| 触发器类型 | 选择"手动触发" |
| 额外配置 | 无需配置 |
适用场景
- 测试自动化是否正常工作
- 临时性的手动操作
- 需要人工确认后才执行的操作
使用方式
创建包含手动触发器的自动化后:
- 在自动化列表页,点击卡片上的【执行】按钮
- 或进入自动化详情页,在触发器区域点击【执行】按钮
定时触发
定时触发器允许您按照固定的时间周期执行自动化。
配置说明
| 配置项 | 选项 | 说明 |
|---|---|---|
| 重复类型 | 每日 | 每天固定时间执行 |
| 每周 | 选择一周中的某几天执行 | |
| 每月 | 选择每月的某几天执行 | |
| 仅一次 | 只在指定时间执行一次 | |
| 时间点 | 如 08:00 | 24 小时制,可添加多个时间点 |
配置示例
| 需求 | 重复类型 | 时间点 |
|---|---|---|
| 每天早上8点执行 | 每日 | 08:00 |
| 每天早晚各执行一次 | 每日 | 08:00, 18:00 |
| 每个工作日上午9点执行 | 每周(周一至周五) | 09:00 |
| 每月1号凌晨执行 | 每月(1日) | 00:00 |
提示
定时触发器使用项目时区设置,如需修改时区请前往项目设置。
绝对时间
绝对时间触发器允许您在指定的具体日期和时间执行自动化,适合一次性任务。
配置说明
| 配置项 | 说明 |
|---|---|
| 日期时间 | 添加具体的日期和时间,可添加多个 |
配置示例
| 需求 | 日期时间 |
|---|---|
| 2026年3月15日下午2点执行 | 2026-03-15 14:00 |
| 多个特定时间执行 | 2026-03-15 14:00, 2026-03-20 09:00 |
适用场景
- 一次性预约任务
- 特定日期的提醒或操作
- 计划性的设备维护
间隔触发
间隔触发器允许您按照固定的时间间隔执行自动化。
配置说明
| 配置项 | 选项 | 说明 |
|---|---|---|
| 间隔单位 | 分钟 | 按分钟间隔 |
| 小时 | 按小时间隔 | |
| 间隔数值 | 如 5 | 每隔多少单位时间执行 |
配置示例
| 需求 | 单位 | 数值 |
|---|---|---|
| 每 5 分钟执行一次 | 分钟 | 5 |
| 每 30 分钟执行一次 | 分钟 | 30 |
| 每 2 小时执行一次 | 小时 | 2 |
适用场景
- 周期性数据采集
- 心跳检测
- 定期状态检查
日出日落
日出日落触发器根据您设置的地理位置,自动计算当地的日出日落时间来触发自动化。
配置说明
| 配置项 | 选项 | 说明 |
|---|---|---|
| 类型 | 日出 | 日出时触发 |
| 日落 | 日落时触发 | |
| 偏移时间 | 如 提前 30 分钟 | 在日出/日落前或后执行 |
| 位置 | 地图选点 | 用于计算当地日出日落时间 |
| 重复 | 每日/每周/每月 | 重复规则 |
配置示例
| 需求 | 类型 | 偏移 |
|---|---|---|
| 日落时开灯 | 日落 | 无偏移 |
| 日落前 30 分钟开灯 | 日落 | 提前 30 分钟 |
| 日出后 1 小时关夜灯 | 日出 | 延后 1 小时 |
关于位置设置
为什么需要设置位置?
- 日出日落时间因地理位置(经纬度)而异
- 系统需要根据您设置的地点经纬度,计算当地的日出日落时间
- 不同城市的日出日落时间可能相差很大
如何设置位置?
- 点击【编辑位置】按钮
- 在地图上点击选择地点,或输入地点名称
- 系统会自动获取该地点的纬度和经度
- 保存位置
设备属性变化
设备属性变化触发器是最常用的触发器之一,当设备属性满足设定的条件时触发自动化。
配置说明
| 配置项 | 说明 | 示例 |
|---|---|---|
| 选择设备 | 选择要监听的设备 | 温湿度传感器1 |
| 选择属性 | 选择要监听的属性 | 温度 |
| 操作符 | 判断条件 | 见下表 |
| 阈值 | 比较的数值 | 30 |
操作符说明
数值型属性
| 操作符 | 含义 | 示例 |
|---|---|---|
| 大于(>) | 属性值 > 阈值 | 温度 > 30°C |
| 大于等于(≥) | 属性值 ≥ 阈值 | 电量 ≥ 20% |
| 小于(<) | 属性值 < 阈值 | 湿度 < 40% |
| 小于等于(≤) | 属性值 ≤ 阈值 | 温度 ≤ 0°C |
| 等于(=) | 属性值 = 阈值 | 计数 = 100 |
| 不等于(≠) | 属性值 ≠ 阈值 | 错误码 ≠ 0 |
| 在范围内 | 最小值 ≤ 属性值 ≤ 最大值 | 温度在20-26度之间 |
| 不在范围内 | 属性值 < 最小值 或 > 最大值 | 温度不在舒适范围 |
| 发生变化 | 属性值有变化 | 温度发生变化 |
| 增加 | 数值增加 | 用水量增加 |
| 减少 | 数值减少 | 电量减少 |
| 向上穿越 | 从小于阈值变为大于阈值 | 温度从低于 30 度变为高于 30 度 |
| 向下穿越 | 从大于阈值变为小于阈值 | 温度从高于 30 度变为低于 30 度 |
布尔型属性
| 操作符 | 含义 | 示例 |
|---|---|---|
| 布尔等于 | 布尔值等于 | 开关 = ON |
字符串型属性
| 操作符 | 含义 | 示例 |
|---|---|---|
| 字符串等于 | 文本完全匹配 | 状态 = "运行中" |
| 字符串包含 | 文本包含某内容 | 消息包含"告警" |
时间判断
| 操作符 | 含义 | 示例 |
|---|---|---|
| 不活跃时间大于 | 超过指定时间没有数据 | 设备 5 分钟没有上报数据 |
高级配置
限制属性变化类型
开启此选项后,只有指定类型的属性变化才会触发自动化:
| 类型 | 说明 | 适用场景 |
|---|---|---|
| 属性上报 | 设备主动上报数据到平台 | 监测传感器数据变化 |
| 属性下发 | 从平台下发命令到设备 | 监测控制命令是否下发 |
| 云端更新 | 在控制台或 API 修改属性值 | 监测人工操作或第三方系统更新 |
使用建议
一般情况下保持关闭(默认),监听所有类型的属性变化。如需区分数据来源,可选择特定类型。
持续时间
开启此选项后,属性条件需要持续满足指定时间才会触发自动化,而不是一满足就立即触发。
| 配置项 | 说明 |
|---|---|
| 时间单位 | 秒 或 分钟 |
| 持续时间 | 条件需要持续的时长 |
使用场景:
- 温度报警:温度超过阈值持续 5 分钟才报警(避免瞬时波动误报)
- 设备离线确认:设备无数据持续 10 分钟才判定离线(避免网络抖动)
配置示例
| 场景 | 配置 |
|---|---|
| 温度超标报警(立即) | 设备:温湿度传感器,属性:温度,操作符:大于,阈值:30 |
| 温度超标报警(持续 5 分钟后) | 同上 + 持续时间:开启,单位:分钟,填:5 |
| 仅监测设备上报的温度 | 同上 + 限制属性变化类型:开启,选:属性上报 |
| 门被打开时触发 | 设备:门磁传感器,属性:门状态,操作符:布尔等于,值:ON |
设备事件
设备事件触发器在设备上报特定事件时触发自动化。
配置说明
| 配置项 | 说明 |
|---|---|
| 选择设备 | 选择要监听的设备 |
| 选择事件 | 选择要监听的事件 |
什么是设备事件?
设备事件是设备主动向平台上报的离散事件,与持续变化的属性不同:
- 属性:持续状态(如温度值、开关状态)
- 事件:一次性发生(如门被打开、按钮被按下)
配置示例
| 场景 | 设备 | 选择事件 |
|---|---|---|
| 门被打开时报警 | 门磁传感器 | 门打开 |
| 紧急按钮被按下 | 紧急按钮 | 按钮按下 |
| 检测到烟雾 | 烟雾传感器 | 烟雾报警 |
注意
设备事件需要在设备类型管理中预先定义。如果设备类型的事件列表为空,说明该设备类型不支持事件上报。
告警状态变化
告警状态变化触发器在告警规则状态发生变化时触发自动化。
配置说明
| 配置项 | 说明 |
|---|---|
| 选择设备 | 选择已配置告警规则的目标设备 |
| 选择告警规则 | 选择要监听的告警规则 |
| 状态变化类型 | 正常→告警中 或 告警中→正常 |
状态变化类型
| 变化类型 | 说明 | 示例 |
|---|---|---|
| 正常 → 告警中 | 告警规则从正常状态变为告警状态 | 温度从正常变为超标 |
| 告警中 → 正常 | 告警规则从告警状态恢复正常 | 温度恢复正常、设备重新上线 |
配置示例
| 场景 | 设备 | 告警规则 | 状态变化 |
|---|---|---|---|
| 温度超标时发邮件 | 温湿度传感器 | 温度超标告警 | 正常 → 告警中 |
| 设备恢复后执行检查 | 目标设备 | 设备离线告警 | 告警中 → 正常 |
| 安防告警时联动 | 安防主机 | 入侵检测告警 | 正常 → 告警中 |
与"告警规则状态"条件的区别
- 触发器:当告警状态"变化"时触发一次
- 条件:检查告警当前"处于"某状态
记忆技巧
"告警产生时发邮件"用触发器;"只在告警中才执行"用条件。
多个触发器
一个自动化可以设置多个触发器,它们之间是**"或"(OR)**的关系。
说明
任意一个触发器满足都会触发执行。
示例
设置两个触发器:
- 定时触发:每天 8:00
- 设备属性变化:温度超过 30 度
效果:每天 8 点会执行,温度超过 30 度时也会执行。
下一步
了解触发器后,您可以继续学习: