触发器(trigger)

时间(time)触发器
时间触发器在指定的时间触发规则,可以是某个时刻,也可以是某个指定的分钟(小时、秒),或者每隔多少时间。

automation 1:
trigger:
platform: time
# 在每个小时的05分钟触发,比如……9:05,10:05,11:05……
minutes: 5
seconds: 00 automation 2:
trigger:
platform: time
# 在每天的15:32:00触发
at: '15:32:00' automation 3:
trigger:
platform: time
# 当分钟数能被5整除时(也就是每隔5分钟)触发
minutes: '/5'

seconds: 00

事件(event)触发器
事件是HomeAssistant运行的核心机制。事件触发器根据事件类型和事件附加信息进行触发;当配置中未设置事件附加信息时,此类事件发生时,不管事件附加信息是什么,此规则都会被触发。

homeassistant触发器
homeassistant触发器由HomeAssistant的启动或关闭事件触发。

automation:
trigger:
platform: homeassistant
# event的另一个可选值是'shutdown'
event: start

状态(state)触发器
状态触发器在对应实体的状态发生改变时进行触发。如果仅有实体ID,没有“from”、“to”时,这个实体的任何状态变化,或者仅仅是某一属性变化,都会触发规则。

automation:
trigger:
platform: state
entity_id: device_tracker.paulus, device_tracker.anne_therese
# 可选,代表状态变化前的值
from: 'not_home'
# 可选,代表状态变化后的值
to: 'home'

数字状态(numeric_state)触发器
监测实体的状态或者某一属性(数字类型),当相应值从高变低(或者从低变高)越过某个阈值,触发规则。

automation:
trigger:
platform: numeric_state
entity_id: sensor.temperature
# 可选,当没有此配置时,判断的是实体的状态值。
# 此处使用了模板,对这个实体的battery属性进行判断。模板的使用,参见相关章节的介绍。
value_template: '{{ state.attributes.battery }}'
# 如果从低到高越过17,或者从高到低越过25。换句话说,就是从[17,25]之外的范围进入这个范围。
above: 17
below: 25

太阳(sun)触发器
根据太阳的升起或降落进行触发。触发时间是升起(降落)的当时,也可以是升起(降落)前或者后多少时间。

automation:
trigger:
platform: sun
# event的可选值是“sunset”和“sunrise”
event: sunset
# 可选,此处代表太阳下山前45分钟触发
offset: '-00:45:00'

MQTT触发器
在MQTT的broker上,当某一主题上发布了新的消息时触发。当不指定消息内容时,收到这个主题上的任何新的消息都会引起触发。

automation:
trigger:
platform: mqtt
topic: living_room/switch/ac
# 可选。表示当在“living_room/switch/ac”上收到“on”时触发;如果不设置这行,那么在这个主题上收到任何消息都触发。
payload: 'on'

模板(template)触发器
模板依据实体的状态或属性输出对应值,当输出值为“true”时触发规则。
模板样例一:判断实体device_tracker.paulus的状态是否为home
{{ is_state('device_tracker.paulus', 'home') }}
模板样例二:上个样例的另一种表达方式
{% if is_state('device_tracker.paulus', 'home') %}true{% endif %}
模板样例三:判断实体climate.living_room的属性away_mode是否是off
{{ is_state_attr('climate.living_room', 'away_mode', 'off') }}

automation:
trigger:
platform: template
value_template: "{% if is_state('device_tracker.paulus', 'home') %}true{% endif %}"

区域(zone)触发器
当device_tracker域中的实体进入或者离开某一个区域时,触发规则。

automation:
trigger:
platform: zone
entity_id: device_tracker.paulus
zone: zone.home
# event的可选值是enter和leave,代表进入和离开
event: enter

当并列多个触发器时,任何一个触发,规则触发。

automation:
trigger:
# 第一个触发器
- platform: time
minutes: 5
seconds: 00
# 第二个触发器
- platform: sun
event: sunset

Home Assistant-自动化设备的更多相关文章

  1. 进阶篇:4.4)DFA设计指南:面向高速自动化装配设计

    本章目标:更进一步,设计出符合高速自动化装配的零件. 1.前言 中国的人口红利时代正在慢慢地过去,这是事实.同时,机器换人与大自动化的时代也在到来. 在这个时代中,人工成本越来越高,零部件的装配和库存 ...

  2. PCB生产企业自动化立体仓库/智能仓库库系统WMS/WCS解决方案

    PCB生产企业自动化立体仓库/智能仓库库系统WMS/WCS解决方案 自动化立体仓库智能仓储系统WMS/WCS重要性调查 调查1(物流成本占总生产成本比例数据)1979年英国的第一次调查表明,在从原材料 ...

  3. .net全栈开发-c#面向对象与工控自动化分拣上位机

    一.前言 开始做了两年web.期间也整了一段时间winform.后来做了两年工控上位机,也就是做工控这两年发现机器跟面向对象真是如此贴切,也是我从处理数据和流程的思维转变为面向对象思维的开始.这对我后 ...

  4. 谷歌提高Google Assistant中Voice Match的准确性

    谷歌正在提高 Google Assistant 中 Voice Match 的准确性,使其变得更加完善.谷歌表示一旦用户在 Google Assistant 中启用 Voice Match 功能,那么 ...

  5. 什么是英特尔® Edison 模块?

    英特尔® Edison 模块 是一种 SD 卡大小的微型计算芯片,专为构建物联网 (IoT) 和可穿戴计算产品而设计. Edison 模块内含一个高速的双核处理单元.集成 Wi-Fi*.蓝牙* 低能耗 ...

  6. iOS homekit使用说明

    本文由CocoaChina翻译组成员iBenjamin_Go和浅夏@旧时光翻译自苹果开发文档:HomeKit Developer Guide,敬请勘误. 本文档内容包括 第一部分:简介 第二部分:启用 ...

  7. GERBER文件

    GERBER文件 GERBER文件是一种国际标准的光绘格式文件,它包含RS-274-D和RS-274-X两种格式,其中RS-274-D称为基本GERBER格式,并 要同时附带D码文件才能完整描述一张图 ...

  8. Python自动化测试(1)-自动化测试及基本技术手段概述

    生产力概述 在如今以google为首的互联网时代,软件的开发和生产模式都已经发生了变化, 在<参与感>一书提到:某位从微软出来的工程师很困惑,微软在google还有facebook这些公司 ...

  9. 多平台下Modbus通信协议库的设计(一)

    1.背景 1.1.范围 MODBUS 是 OSI 模型第 7 层上的应用层报文传输协议, 它在连接至不同类型总线或网络的设备之间提供客户机/服务器通信. 自从 1979 年出现工业串行链路的事实标准以 ...

  10. 全渠道后端 : RFID在仓储物流中的运用

    核心提示 沃尔玛的业务之所以能够迅速增长,并且成为现在非常著名的公司之一,是因为沃尔玛在节省成本以及在物流配送系统与供应链管理方面取得了巨大的成就. 最后为一个业务展望,从B端工厂提货 到C端交付的系 ...

随机推荐

  1. linux mail操作

    本操作系统邮件由来,crontab定时任务执行推送产生. 1.查看有多少封邮件 & file 2.我们直接键入23935来访问这封mail,看看是否是我们所需要的最新邮件. 3. 退出邮件查看 ...

  2. 《从零开始学习jQuery》:用jQuery操作元素的属性与样式

    元素属性和Dom属性简介 对于下面这样一个标签元素: <img id='img' src="1.jpg" alt='1' class="imgs"> ...

  3. HTML空格符号 nbsp; ensp; emsp; 介绍以及实现中文对齐的方法

    一:不同空格符合的区别   半角的不断行的空白格(推荐使用)    半角的空格    全角的空格 详细的含义:  :这是我们使用最多的空格,也就是按下space键产生的空格.在HTML中,如果你用空格 ...

  4. zTree 节点文字过多处理方法

    zTree setting.view.addDiyDom 方法可以实现自定义控件,指定节点显示内容.因此需要自己实现addDiyDom方法. 如果树节点不显示checkbox ,处理方法为: func ...

  5. 【代码笔记】Web-JavaScript-Javascript对象

    一,效果图. 二,代码. <!DOCTYPE html> <html> <head> <meta charset="utf-8"> ...

  6. Genymotion安卓模拟器和VirtualBox虚拟机安装、配置、测试

    Genymotion安卓模拟器和VirtualBox虚拟机安装.配置.测试(win7_64bit) 目录 1.概述 2.本文用到的工具 3.VirtualBox虚拟机安装 4.Genymotion安卓 ...

  7. Linux Linux下最大文件描述符设置

    Linux下最大文件描述符设置 by:授客 QQ:1033553122 1.   系统可打开最大文件描述符设置 查看系统可打开最大文件描述符 # cat /proc/sys/fs/file-max 6 ...

  8. 微服务扩展新途径:Messaging

    [编者按]服务编排是微服务设置的一个重要方面.本文在利用 ActiveMQ 虚拟话题来实现这一目标的同时,还会提供实用性指导.文章系国内 ITOM 管理平台 OneAPM 编译呈现. 目前,微服务使用 ...

  9. Keras深度学习框架安装及快速入门

    1.下载安装Keras 如果你是安装的Anaconda组合套件,可以直接在Prompt上执行安装命令:pip install keras 注意:最下面为Successfully...表示安装成功! 2 ...

  10. A problem has been detected and windows has been shut down to prevent damage to your computer.他么啥意思?看这里!【蓝屏】

    A problem has been detected and windows has been shut down to prevent damage to your computer.  检测到问 ...