507 lines
No EOL
30 KiB
HTML
507 lines
No EOL
30 KiB
HTML
<!doctype html>
|
|
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
|
|
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
|
|
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
|
|
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
|
|
|
|
|
|
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
|
<title>Automation - Home Assistant</title>
|
|
<meta name="author" content="Paulus Schoutsen">
|
|
|
|
<meta name="description" content="Instructions how to setup automation within Home Assistant.">
|
|
|
|
<meta name="viewport" content="width=device-width">
|
|
<link rel="canonical" href="https://home-assistant.io">
|
|
|
|
<meta property="fb:app_id" content="338291289691179">
|
|
<meta property="og:title" content="Automation">
|
|
<meta property="og:site_name" content="Home Assistant">
|
|
<meta property="og:url" content="https://home-assistant.io/components/automation.html/">
|
|
<meta property="og:type" content="website">
|
|
<meta property="og:description" content="Instructions how to setup automation within Home Assistant.">
|
|
<meta property="og:image" content="https://home-assistant.io/images/home-assistant-logo-2164x2164.png">
|
|
|
|
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
|
|
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
|
|
<link rel='shortcut icon' href='/images/favicon.ico' />
|
|
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
|
|
</head>
|
|
|
|
|
|
<body >
|
|
|
|
<header>
|
|
<div class="grid-wrapper">
|
|
<div class="grid">
|
|
|
|
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
|
|
<a href="/" class="site-title">
|
|
<img width='40' src='/images/favicon-192x192.png'> Home Assistant
|
|
</a>
|
|
</div>
|
|
|
|
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
|
|
<nav>
|
|
<input type="checkbox" id="toggle">
|
|
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
|
|
<ul class="menu pull-right">
|
|
<li>
|
|
<a href="/getting-started/">Getting started</a>
|
|
<ul>
|
|
<li><a href='/getting-started/'>Installing Home Assistant</a></li>
|
|
<li><a href='/getting-started/configuration.html'>Configuration basics</a></li>
|
|
<li><a href='/getting-started/devices.html'>Adding devices</a></li>
|
|
<li><a href='/getting-started/automation.html'>Automation</a></li>
|
|
<li><a href='/components/'>Component overview</a></li>
|
|
</ul>
|
|
</li>
|
|
<li>
|
|
<a href="/developers/">Developers</a>
|
|
<ul>
|
|
<li><a href="/developers/architecture.html">Architecture</a></li>
|
|
<li><a href="/developers/frontend.html">Frontend development</a></li>
|
|
<li><a href="/developers/creating_components.html">
|
|
Creating components
|
|
</a></li>
|
|
<li><a href="/developers/add_new_platform.html">
|
|
Adding platform support
|
|
</a></li>
|
|
<li><a href="/developers/api.html">API</a></li>
|
|
<li><a href="/developers/credits.html">Credits</a></li>
|
|
</ul>
|
|
</li>
|
|
<li><a href="/blog/">Blog</a></li>
|
|
<li><a href="/help/">Need help?</a></li>
|
|
</ul>
|
|
|
|
</nav>
|
|
</div>
|
|
|
|
|
|
</div>
|
|
</div>
|
|
</header>
|
|
|
|
|
|
|
|
<div class="grid-wrapper">
|
|
<div class="grid grid-center">
|
|
|
|
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
|
|
|
|
|
|
<article class="page">
|
|
|
|
|
|
<header>
|
|
<h1 class="title indent">
|
|
Automation
|
|
</h1>
|
|
</header>
|
|
<hr class="divider">
|
|
|
|
|
|
<p>This page will go into more detail about the various options the <code>automation</code> component offers. If
|
|
you haven’t yet, read the <a href="/getting-started/automation.html">getting started page on automation</a>.</p>
|
|
|
|
<p>A configuration section of an automation requires a <code>trigger</code> and an <code>action</code> section. <code>condition</code> and
|
|
<code>condition_type</code> are optional. To keep this page compact, all following sections will not show the
|
|
full configuration but only the relevant part.</p>
|
|
|
|
<figure class='code'><figcaption><span></span></figcaption><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
|
|
<span class='line-number'>2</span>
|
|
<span class='line-number'>3</span>
|
|
<span class='line-number'>4</span>
|
|
<span class='line-number'>5</span>
|
|
<span class='line-number'>6</span>
|
|
<span class='line-number'>7</span>
|
|
<span class='line-number'>8</span>
|
|
<span class='line-number'>9</span>
|
|
<span class='line-number'>10</span>
|
|
<span class='line-number'>11</span>
|
|
<span class='line-number'>12</span>
|
|
<span class='line-number'>13</span>
|
|
<span class='line-number'>14</span>
|
|
<span class='line-number'>15</span>
|
|
<span class='line-number'>16</span>
|
|
<span class='line-number'>17</span>
|
|
<span class='line-number'>18</span>
|
|
<span class='line-number'>19</span>
|
|
<span class='line-number'>20</span>
|
|
</pre></td><td class='code'><pre><code class='yaml'><span class='line'><span class="c1"># Example of a full entry in configuration.yaml</span>
|
|
</span><span class='line'><span class="l-Scalar-Plain">automation</span><span class="p-Indicator">:</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">alias</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">Light on in the evening</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">trigger</span><span class="p-Indicator">:</span>
|
|
</span><span class='line'> <span class="p-Indicator">-</span> <span class="l-Scalar-Plain">platform</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">sun</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">event</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">sunset</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">offset</span><span class="p-Indicator">:</span> <span class="s">"-01:00:00"</span>
|
|
</span><span class='line'> <span class="p-Indicator">-</span> <span class="l-Scalar-Plain">platform</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">state</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">entity_id</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">group.all_devices</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">state</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">home</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">condition</span><span class="p-Indicator">:</span>
|
|
</span><span class='line'> <span class="p-Indicator">-</span> <span class="l-Scalar-Plain">platform</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">state</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">entity_id</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">group.all_devices</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">state</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">home</span>
|
|
</span><span class='line'> <span class="p-Indicator">-</span> <span class="l-Scalar-Plain">platform</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">time</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">after</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">16:00:00</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">before</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">23:00:00</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">action</span><span class="p-Indicator">:</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">service</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">homeassistant.turn_on</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">entity_id</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">group.living_room</span>
|
|
</span></code></pre></td></tr></table></div></figure>
|
|
|
|
|
|
|
|
|
|
<p class='note'>
|
|
All configuration entries have to be sequential. If you have <code>automation:</code>, <code>automation 2:</code> and <code>automation 4:</code> then the last one will not be processed.
|
|
</p>
|
|
|
|
|
|
<ul>
|
|
<li><a href="#conditions">Jump to conditions</a></li>
|
|
<li><a href="#actions">Jump to actions</a></li>
|
|
</ul>
|
|
|
|
|
|
<h3><a class='title-link' name='triggers' href='#triggers'></a> Triggers</h3>
|
|
|
|
<p>Triggers are what starts the processing of an automation rule. It is possible to specify multiple
|
|
triggers for the same rule. Once a trigger starts, Home Assistant will validate the conditions, if any,
|
|
and call the action.</p>
|
|
|
|
<h4><a class='title-link' name='event-trigger' href='#event-trigger'></a> Event trigger</h4>
|
|
|
|
<p>Triggers when an event is being processed. Events are the raw building blocks of Home Assistant.
|
|
You can match events on just the event name or also require specific event data to be present.</p>
|
|
|
|
<figure class='code'><figcaption><span></span></figcaption><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
|
|
<span class='line-number'>2</span>
|
|
<span class='line-number'>3</span>
|
|
<span class='line-number'>4</span>
|
|
<span class='line-number'>5</span>
|
|
<span class='line-number'>6</span>
|
|
<span class='line-number'>7</span>
|
|
</pre></td><td class='code'><pre><code class='yaml'><span class='line'><span class="l-Scalar-Plain">automation</span><span class="p-Indicator">:</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">trigger</span><span class="p-Indicator">:</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">platform</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">event</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">event_type</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">MY_CUSTOM_EVENT</span>
|
|
</span><span class='line'> <span class="c1"># optional</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">event_data</span><span class="p-Indicator">:</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">mood</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">happy</span>
|
|
</span></code></pre></td></tr></table></div></figure>
|
|
|
|
|
|
<h4><a class='title-link' name='mqtt-trigger' href='#mqtt-trigger'></a> MQTT trigger</h4>
|
|
|
|
<p>Triggers when a specific message is received on given topic. Optionally can match on the payload
|
|
being sent over the topic.</p>
|
|
|
|
<figure class='code'><figcaption><span></span></figcaption><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
|
|
<span class='line-number'>2</span>
|
|
<span class='line-number'>3</span>
|
|
<span class='line-number'>4</span>
|
|
<span class='line-number'>5</span>
|
|
<span class='line-number'>6</span>
|
|
</pre></td><td class='code'><pre><code class='yaml'><span class='line'><span class="l-Scalar-Plain">automation</span><span class="p-Indicator">:</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">trigger</span><span class="p-Indicator">:</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">platform</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">mqtt</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">topic</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">living_room/switch/ac</span>
|
|
</span><span class='line'> <span class="c1"># Optional</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">payload</span><span class="p-Indicator">:</span> <span class="s">'on'</span>
|
|
</span></code></pre></td></tr></table></div></figure>
|
|
|
|
|
|
<h4><a class='title-link' name='numeric-state-trigger' href='#numeric-state-trigger'></a> Numeric state trigger</h4>
|
|
|
|
<p>On state change of a specified entity, attempts to parse the state as a number and triggers if value is above and/or below a threshold.</p>
|
|
|
|
<figure class='code'><figcaption><span></span></figcaption><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
|
|
<span class='line-number'>2</span>
|
|
<span class='line-number'>3</span>
|
|
<span class='line-number'>4</span>
|
|
<span class='line-number'>5</span>
|
|
<span class='line-number'>6</span>
|
|
<span class='line-number'>7</span>
|
|
</pre></td><td class='code'><pre><code class='yaml'><span class='line'><span class="l-Scalar-Plain">automation</span><span class="p-Indicator">:</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">trigger</span><span class="p-Indicator">:</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">platform</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">numeric_state</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">entity_id</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">sensor.temperature</span>
|
|
</span><span class='line'> <span class="c1"># At least one of the following required</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">above</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">17</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">below</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">25</span>
|
|
</span></code></pre></td></tr></table></div></figure>
|
|
|
|
|
|
<h4><a class='title-link' name='state-trigger' href='#state-trigger'></a> State trigger</h4>
|
|
|
|
<p>Triggers when the state of an entity changes. If only entity_id given will match all state changes.</p>
|
|
|
|
<figure class='code'><figcaption><span></span></figcaption><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
|
|
<span class='line-number'>2</span>
|
|
<span class='line-number'>3</span>
|
|
<span class='line-number'>4</span>
|
|
<span class='line-number'>5</span>
|
|
<span class='line-number'>6</span>
|
|
<span class='line-number'>7</span>
|
|
</pre></td><td class='code'><pre><code class='yaml'><span class='line'><span class="l-Scalar-Plain">automation</span><span class="p-Indicator">:</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">trigger</span><span class="p-Indicator">:</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">platform</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">state</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">entity_id</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">device_tracker.paulus</span>
|
|
</span><span class='line'> <span class="c1"># Optional</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">from</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">not_home</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">to</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">home</span>
|
|
</span></code></pre></td></tr></table></div></figure>
|
|
|
|
|
|
|
|
|
|
<p class='note'>
|
|
Use quotes around your values for <code>state_from</code> and <code>state_to</code> to avoid the YAML parser interpreting some values as booleans.
|
|
</p>
|
|
|
|
|
|
<h4><a class='title-link' name='sun-trigger' href='#sun-trigger'></a> Sun trigger</h4>
|
|
|
|
<p>Triggers based on sunrise and sunset, both with an optional offset.</p>
|
|
|
|
<figure class='code'><figcaption><span></span></figcaption><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
|
|
<span class='line-number'>2</span>
|
|
<span class='line-number'>3</span>
|
|
<span class='line-number'>4</span>
|
|
<span class='line-number'>5</span>
|
|
<span class='line-number'>6</span>
|
|
<span class='line-number'>7</span>
|
|
</pre></td><td class='code'><pre><code class='yaml'><span class='line'><span class="l-Scalar-Plain">automation</span><span class="p-Indicator">:</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">trigger</span><span class="p-Indicator">:</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">platform</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">sun</span>
|
|
</span><span class='line'> <span class="c1"># Possible values: sunset, sunrise</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">event</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">sunset</span>
|
|
</span><span class='line'> <span class="c1"># Optional time offset</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">offset</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">-00:45:00</span>
|
|
</span></code></pre></td></tr></table></div></figure>
|
|
|
|
|
|
<h4><a class='title-link' name='time-trigger' href='#time-trigger'></a> Time trigger</h4>
|
|
|
|
<p>Time can be triggered in many ways. The most common is to specify <code>after</code> and trigger at a specific
|
|
point in time each day. Alternatively, you can also match if the hour, minute or second of the current
|
|
time has a specifc value. For example, by only setting minutes in the config to 5 it will trigger every
|
|
hour when it is 5 minutes past whole.</p>
|
|
|
|
<figure class='code'><figcaption><span></span></figcaption><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
|
|
<span class='line-number'>2</span>
|
|
<span class='line-number'>3</span>
|
|
<span class='line-number'>4</span>
|
|
<span class='line-number'>5</span>
|
|
<span class='line-number'>6</span>
|
|
<span class='line-number'>7</span>
|
|
<span class='line-number'>8</span>
|
|
<span class='line-number'>9</span>
|
|
<span class='line-number'>10</span>
|
|
</pre></td><td class='code'><pre><code class='yaml'><span class='line'><span class="l-Scalar-Plain">automation</span><span class="p-Indicator">:</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">trigger</span><span class="p-Indicator">:</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">platform</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">time</span>
|
|
</span><span class='line'> <span class="c1"># All following are optional.</span>
|
|
</span><span class='line'> <span class="c1"># When 'after' is used, you cannot also match on hour, minute, seconds.</span>
|
|
</span><span class='line'> <span class="c1"># Military time format.</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">after</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">15:32:00</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">hours</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">10</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">minutes</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">5</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">seconds</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">0</span>
|
|
</span></code></pre></td></tr></table></div></figure>
|
|
|
|
|
|
<h3><a class='title-link' name='conditions' href='#conditions'></a> Conditions</h3>
|
|
|
|
<p>Conditions are an optional part of an automation rule and be used to prevent an action from happening
|
|
when triggered. Conditions look very familiar to triggers but are very different. A trigger will look
|
|
at events happening at the system while a condition only looks at how the system looks right now.
|
|
A trigger can observe that a switch is being turned on. A condition can only see if a switch is on
|
|
or off.</p>
|
|
|
|
<p>An automation rule can have mulitiple triggers. By default the action will only fire if all conditions
|
|
pass. An optional key <code>condition_type: 'or'</code> can be set on the automation rule to fire action if any
|
|
condition matches.</p>
|
|
|
|
<figure class='code'><figcaption><span></span></figcaption><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
|
|
<span class='line-number'>2</span>
|
|
</pre></td><td class='code'><pre><code class='yaml'><span class='line'><span class="l-Scalar-Plain">automation</span><span class="p-Indicator">:</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">condition_type</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">or</span>
|
|
</span></code></pre></td></tr></table></div></figure>
|
|
|
|
|
|
<p>If your triggers and conditions are exactly the same, you can use a shortcut to specify conditions.
|
|
In this case, triggers that are not valid conditions will be ignored.</p>
|
|
|
|
<figure class='code'><figcaption><span></span></figcaption><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
|
|
<span class='line-number'>2</span>
|
|
</pre></td><td class='code'><pre><code class='yaml'><span class='line'><span class="l-Scalar-Plain">automation</span><span class="p-Indicator">:</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">condition</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">use_trigger_values</span>
|
|
</span></code></pre></td></tr></table></div></figure>
|
|
|
|
|
|
<h4><a class='title-link' name='numeric-state-condition' href='#numeric-state-condition'></a> Numeric state condition</h4>
|
|
|
|
<p>Attempts to parse the state of specified entity as a number and triggers if value is above and/or
|
|
below a threshold.</p>
|
|
|
|
<figure class='code'><figcaption><span></span></figcaption><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
|
|
<span class='line-number'>2</span>
|
|
<span class='line-number'>3</span>
|
|
<span class='line-number'>4</span>
|
|
<span class='line-number'>5</span>
|
|
<span class='line-number'>6</span>
|
|
<span class='line-number'>7</span>
|
|
</pre></td><td class='code'><pre><code class='yaml'><span class='line'><span class="l-Scalar-Plain">automation</span><span class="p-Indicator">:</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">condition</span><span class="p-Indicator">:</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">platform</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">numeric_state</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">entity_id</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">sensor.temperature</span>
|
|
</span><span class='line'> <span class="c1"># At least one of the following required</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">above</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">17</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">below</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">25</span>
|
|
</span></code></pre></td></tr></table></div></figure>
|
|
|
|
|
|
<h4><a class='title-link' name='state-condition' href='#state-condition'></a> State condition</h4>
|
|
|
|
<p>Tests if an entity is a specified state.</p>
|
|
|
|
<figure class='code'><figcaption><span></span></figcaption><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
|
|
<span class='line-number'>2</span>
|
|
<span class='line-number'>3</span>
|
|
<span class='line-number'>4</span>
|
|
<span class='line-number'>5</span>
|
|
</pre></td><td class='code'><pre><code class='yaml'><span class='line'><span class="l-Scalar-Plain">automation</span><span class="p-Indicator">:</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">condition</span><span class="p-Indicator">:</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">platform</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">state</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">entity_id</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">device_tracker.paulus</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">state</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">not_home</span>
|
|
</span></code></pre></td></tr></table></div></figure>
|
|
|
|
|
|
<h4><a class='title-link' name='time-condition' href='#time-condition'></a> Time condition</h4>
|
|
|
|
<p>The time condition can test if it is after a specified time, before a specified time or if it is a
|
|
certain day of the week.</p>
|
|
|
|
<figure class='code'><figcaption><span></span></figcaption><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
|
|
<span class='line-number'>2</span>
|
|
<span class='line-number'>3</span>
|
|
<span class='line-number'>4</span>
|
|
<span class='line-number'>5</span>
|
|
<span class='line-number'>6</span>
|
|
<span class='line-number'>7</span>
|
|
<span class='line-number'>8</span>
|
|
<span class='line-number'>9</span>
|
|
<span class='line-number'>10</span>
|
|
</pre></td><td class='code'><pre><code class='yaml'><span class='line'><span class="l-Scalar-Plain">automation</span><span class="p-Indicator">:</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">condition</span><span class="p-Indicator">:</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">platform</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">time</span>
|
|
</span><span class='line'> <span class="c1"># At least one of the following is required.</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">after</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">15:00:00</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">before</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">23:00:00</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">weekday</span><span class="p-Indicator">:</span>
|
|
</span><span class='line'> <span class="p-Indicator">-</span> <span class="l-Scalar-Plain">mon</span>
|
|
</span><span class='line'> <span class="p-Indicator">-</span> <span class="l-Scalar-Plain">wed</span>
|
|
</span><span class='line'> <span class="p-Indicator">-</span> <span class="l-Scalar-Plain">fri</span>
|
|
</span></code></pre></td></tr></table></div></figure>
|
|
|
|
|
|
<h3><a class='title-link' name='actions' href='#actions'></a> Actions</h3>
|
|
|
|
<p>When an automation rule fires, it calls a service. For this service you can specify an entity id it
|
|
should apply to and optional service parameters (to specify for example the brightness).</p>
|
|
|
|
<figure class='code'><figcaption><span></span></figcaption><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
|
|
<span class='line-number'>2</span>
|
|
<span class='line-number'>3</span>
|
|
<span class='line-number'>4</span>
|
|
<span class='line-number'>5</span>
|
|
<span class='line-number'>6</span>
|
|
<span class='line-number'>7</span>
|
|
<span class='line-number'>8</span>
|
|
<span class='line-number'>9</span>
|
|
<span class='line-number'>10</span>
|
|
</pre></td><td class='code'><pre><code class='yaml'><span class='line'><span class="l-Scalar-Plain">automation</span><span class="p-Indicator">:</span>
|
|
</span><span class='line'> <span class="c1"># Change the light in the kitchen and living room to 150 brightness and color red.</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">action</span><span class="p-Indicator">:</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">service</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">homeassistant.turn_on</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">entity_id</span><span class="p-Indicator">:</span>
|
|
</span><span class='line'> <span class="p-Indicator">-</span> <span class="l-Scalar-Plain">light.kitchen</span>
|
|
</span><span class='line'> <span class="p-Indicator">-</span> <span class="l-Scalar-Plain">light.living_room</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">data</span><span class="p-Indicator">:</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">brightness</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">150</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">rgb_color</span><span class="p-Indicator">:</span> <span class="p-Indicator">[</span><span class="nv">255</span><span class="p-Indicator">,</span> <span class="nv">0</span><span class="p-Indicator">,</span> <span class="nv">0</span><span class="p-Indicator">]</span>
|
|
</span></code></pre></td></tr></table></div></figure>
|
|
|
|
|
|
|
|
|
|
<figure class='code'><figcaption><span></span></figcaption><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
|
|
<span class='line-number'>2</span>
|
|
<span class='line-number'>3</span>
|
|
<span class='line-number'>4</span>
|
|
<span class='line-number'>5</span>
|
|
<span class='line-number'>6</span>
|
|
</pre></td><td class='code'><pre><code class='yaml'><span class='line'><span class="l-Scalar-Plain">automation</span><span class="p-Indicator">:</span>
|
|
</span><span class='line'> <span class="c1"># Notify me on my mobile phone of an event</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">action</span><span class="p-Indicator">:</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">service</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">notify.notify</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">data</span><span class="p-Indicator">:</span>
|
|
</span><span class='line'> <span class="l-Scalar-Plain">message</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">Something just happened, better take a look!</span>
|
|
</span></code></pre></td></tr></table></div></figure>
|
|
|
|
|
|
<p>If you want to specify multiple services to be called or include a delay, have a look at the
|
|
<a href="/components/script.html">script component</a>. If you want to describe how certain entities should look,
|
|
check out the <a href="/components/scene.html">scene component</a>.</p>
|
|
|
|
|
|
</article>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|
|
</div>
|
|
|
|
<footer>
|
|
<div class="grid-wrapper">
|
|
<div class="grid">
|
|
<div class="grid__item">
|
|
<p class="copyright">
|
|
<span class="credit">Powered by <a href="http://octopress.org">Octopress</a>, <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>. Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.</span>
|
|
</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
</footer>
|
|
|
|
<!--[if lt IE 7]>
|
|
<p class="chromeframe">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> or <a href="http://www.google.com/chromeframe/?redirect=true">activate Google Chrome Frame</a> to improve your experience.</p>
|
|
<![endif]-->
|
|
|
|
|
|
|
|
|
|
<script>
|
|
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
|
|
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
|
|
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
|
|
s.parentNode.insertBefore(g,s)}(document,'script'));
|
|
</script>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</body>
|
|
</html> |