SmartThings 中文文档 下载 App

SmartThings Routines 深度教程 — IF-THEN 条件组合、延迟、嵌套

Routines 的逻辑内核

SmartThings Routine = IF(触发条件)+ THEN(执行动作)。这是整个 SmartThings 自动化的核心语言。

IF 条件详解

单条件 vs 多条件

一个 Routine 可以有多个 IF 条件,关系由你选:

关系含义示例
All conditions(AND)所有条件同时满足才触发晚上 10 点 且 所有人在家 → 执行 Good night
Any condition(OR)任一条件满足即触发主卧门开 或 门厅运动传感器触发 → 开主卧灯

建议:条件过多(5 个以上 AND)反而容易漏触发,保持 2-3 个为佳。

可用的 IF 条件类型

条件类型具体选项
时间指定时间、每天重复、每周重复、日出、日落、日出前 X 分钟、日落前 X 分钟
Geofencing到家、离家、到达特定地理围栏
设备状态开关变化、数值变化(温度、亮度)、电池电量、传感器触发
手动手动运行按钮、语音命令
存在某人不在家、某设备在线/离线

延迟条件(Grace Period)

可以在 IF 链中插入延迟等待:

IF 冰箱门开启 → +1 分钟延迟 → THEN 推送通知

这 1 分钟就是"给你个缓冲期"——开冰箱拿东西时门开着,不立刻报警;开了 1 分钟不关才触发。对传感器误触发的缓解特别有用。

THEN 动作详解

设备控制类

动作选项
开关设备开/关/切换
调节数值温度、亮度、音量、风速(可设为百分比或绝对数值)
预设场景调用另一个 Routine

通知类

动作说明
推送通知推送到手机,可自定义消息文本
Family Hub 屏幕提示仅三星 Family Hub 冰箱可用
语音播放在三星 TV 或音箱上播放文本

控制流

动作说明
延迟等待在 THEN 动作序列中插入等待时间
发送 SMS给指定手机号发短信(部分地区可用)

嵌套调用

THEN 动作中可以运行另一个 Routine:

IF 晚上 10 点 → THEN 运行 Good night Routine → 推送通知 "Good night 已开启"

注意:手动 Routine 可以被嵌套调用;自动 Routine 不要直接嵌套(容易造成死循环)。

Routine 管理技巧

临时禁用 vs 删除

在 Routine 详情页底部,有一个 Enabled / Disabled 开关:

过年离家时,先把日常 Routines 禁用,避免异常触发。

复制快速创建

在 Routines 列表页长按一个 Routine → 选复制 → 修改几个条件就能快速创建新的。比如 Good morning 复制一份,改成 Good afternoon。

命名规范

给 Routine 起描述性强的名字:

Routines 数量建议

SmartThings 本身不限 Routine 数量,但推荐控制在 200 条以内:

实战例子

例 1:冰箱门未关报警

IF:
  冰箱门传感器 → 开启
  延迟 2 分钟
THEN:
  推送通知 "冰箱门未关,请检查"
  Family Hub 屏幕提示

例 2:雨天提醒关窗

IF:
  气象服务检测到降雨
THEN:
  推送通知 "今天有雨,记得关窗"
  调用 Secure Home Routine(关所有窗、锁门)

例 3:回家自动开空调

IF:
  Geofencing:我到家了
  当前温度 > 30°C
THEN:
  开客厅空调 → 制冷 → 26°C
  开玄关灯

检查 Routine 是否真的在触发

有时候你以为 Routine 在运行,其实条件没满足。排查方法:

  1. SmartThings App → Routines Tab → 找到目标 Routine
  2. 进入详情页 → 查看「最近运行记录」
  3. 看有没有触发日志、触发时间、触发原因

下一篇