360 lines
No EOL
19 KiB
HTML
360 lines
No EOL
19 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>0.19: Empowering scripts and Alexa - Home Assistant</title>
|
|
<meta name="author" content="Paulus Schoutsen">
|
|
<meta name="description" content="The new release of Home Assistant includes a lot of upgrades to how we handle scripts and make them available in a wide range of new components inc...">
|
|
|
|
<meta name="viewport" content="width=device-width">
|
|
<link rel="canonical" href="https://home-assistant.io/blog/2016/05/07/empowering-scripts-and-alexa/">
|
|
|
|
<meta property="fb:app_id" content="338291289691179">
|
|
<meta property="og:title" content="0.19: Empowering scripts and Alexa">
|
|
<meta property="og:site_name" content="Home Assistant">
|
|
<meta property="og:url" content="https://home-assistant.io/blog/2016/05/07/empowering-scripts-and-alexa/">
|
|
<meta property="og:type" content="article">
|
|
<meta property="og:description" content="The new release of Home Assistant includes a lot of upgrades to how we handle scripts and make them available in a wide range of new components including automation and alexa.">
|
|
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
|
|
|
|
<meta name="twitter:card" content="summary_large_image">
|
|
<meta name="twitter:site" content="@home_assistant">
|
|
<meta name="twitter:creator" content="@balloob">
|
|
<meta name="twitter:title" content="0.19: Empowering scripts and Alexa">
|
|
<meta name="twitter:description" content="The new release of Home Assistant includes a lot of upgrades to how we handle scripts and make them available in a wide range of new components including automation and alexa.">
|
|
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.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='/demo/favicon-192x192.png'>
|
|
<span>Home Assistant</span>
|
|
</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></li>
|
|
<li><a href='/components/'>Components</a></li>
|
|
<li><a href='/cookbook/'>Examples</a></li>
|
|
<li><a href="/developers/">Developers</a></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="post">
|
|
|
|
<header>
|
|
|
|
<h1 class="title indent">0.19: Empowering scripts and Alexa</h1>
|
|
|
|
|
|
|
|
<div class="meta clearfix">
|
|
<time datetime="2016-05-07T18:06:00+00:00" pubdate data-updated="true"><i class="icon-calendar"></i> May 7, 2016</time>
|
|
<span class="byline author vcard"><i class='icon-user'></i> Paulus Schoutsen</span>
|
|
<span><i class='icon-time'></i> three minutes reading time</span>
|
|
<span>
|
|
<i class="icon-tags"></i>
|
|
<ul class="tags unstyled">
|
|
|
|
|
|
<li><a class='category' href='/blog/categories/release-notes/'>Release-Notes</a></li>
|
|
|
|
|
|
</ul>
|
|
</span>
|
|
|
|
<a class='comments'
|
|
href="#disqus_thread"
|
|
>Comments</a>
|
|
|
|
</div>
|
|
|
|
</header>
|
|
|
|
|
|
<p>This release is big. Until now, our automations and scripts have been very static. Starting today it should all be a bit more dynamic.</p>
|
|
|
|
<p><strong>Scripts</strong> are now available in automations and when responding to Alexa/Amazon Echo. Both of these components will now expose data to be used in script templates (including <code>from_state</code> !). Passing data to script entities is available by passing the data to the script services.</p>
|
|
|
|
<div class="highlighter-coderay"><div class="CodeRay">
|
|
<div class="code"><pre><span class="key">automation</span>:
|
|
<span class="key">trigger</span>:
|
|
<span class="key">platform</span>: <span class="string"><span class="content">mqtt</span></span>
|
|
<span class="key">topic</span>: <span class="string"><span class="content">some/notify/topic</span></span>
|
|
<span class="key">action</span>:
|
|
<span class="key">service</span>: <span class="string"><span class="content">notify.notify</span></span>
|
|
<span class="key">data_template</span>:
|
|
<span class="key">message</span>:
|
|
|
|
<span class="key">automation 2</span>:
|
|
<span class="key">trigger</span>:
|
|
<span class="key">platform</span>: <span class="string"><span class="content">state</span></span>
|
|
<span class="key">entity_id</span>: <span class="string"><span class="content">light.hue</span></span>
|
|
<span class="key">action</span>:
|
|
<span class="key">service</span>: <span class="string"><span class="content">notify.notify</span></span>
|
|
<span class="key">data_template</span>:
|
|
<span class="key">message</span>: <span class="string"><span class="content">is now </span></span>
|
|
</pre></div>
|
|
</div>
|
|
</div>
|
|
|
|
<p><strong>Entity Namespaces</strong> allow you to influence the entity ids for a specific platform. For example you can turn <code>light.living_room</code> into <code>light.holiday_home_living_room</code> with the following config:</p>
|
|
|
|
<div class="highlighter-coderay"><div class="CodeRay">
|
|
<div class="code"><pre><span class="key">light</span>:
|
|
<span class="key">platform</span>: <span class="string"><span class="content">hue</span></span>
|
|
<span class="key">entity_namespace</span>: <span class="string"><span class="content">holiday_home</span></span>
|
|
</pre></div>
|
|
</div>
|
|
</div>
|
|
|
|
<ul>
|
|
<li>Automation: allow <a href="/getting-started/scripts/">script syntax</a> for action (<a href="https://github.com/balloob/">@balloob</a>)</li>
|
|
<li>Automation: expose <a href="/getting-started/automation-templating/#available-trigger-data"><code>trigger</code> variable</a> to script templates (<a href="https://github.com/balloob/">@balloob</a>)</li>
|
|
<li>Script: allow passing variables for script templates in the <a href="/components/script/#passing-parameters-in-service-calls">script service calls</a> (<a href="https://github.com/balloob/">@balloob</a>)</li>
|
|
<li>Alexa/Amazon Echo: allow <a href="/getting-started/scripts/">script syntax</a> for action (<a href="https://github.com/balloob/">@balloob</a>)</li>
|
|
<li>Alexa/Amazon Echo: <a href="/components/alexa/#configuring-home-assistant">expose intent variables</a> to script templates (<a href="https://github.com/balloob/">@balloob</a>)</li>
|
|
<li>Script syntax: <a href="/getting-started/scripts-conditions/">conditions now supported</a> to interrupt execution (<a href="https://github.com/balloob/">@balloob</a>)</li>
|
|
<li>Automation: use <a href="/getting-started/scripts-conditions/">new condition syntax</a> (<a href="https://github.com/balloob/">@balloob</a>)</li>
|
|
<li>Script syntax: two new conditions <a href="/getting-started/scripts-conditions/#and-condition"><code>and</code></a> and <a href="/getting-started/scripts-conditions/#or-condition"><code>or</code></a> to combine conditions (<a href="https://github.com/balloob/">@balloob</a>)</li>
|
|
<li>Any platform: Allow setting <a href="/topics/platform_options/#entity-namespace">entity namespace</a> to prefix entity_ids. (<a href="https://github.com/balloob/">@balloob</a>)</li>
|
|
<li>Switch: <a href="/components/switch.rpi_rf/">Raspberry Pi generic 433 Mhz GPIO adapters</a> now supported (<a href="https://github.com/milaq/">@milaq</a>)</li>
|
|
<li>Z-Wave: use more sane defaults (<a href="https://github.com/danieljkemp/">@danieljkemp</a>)</li>
|
|
<li>Media Player: <a href="/components/media_player.snapcast/">Snapcast</a> now supports picking a source (<a href="https://github.com/happyleavesaoc/">@happyleavesaoc</a>)</li>
|
|
<li>MySensors: major cleanup (<a href="https://github.com/MartinHjelmare/">@MartinHjelmare</a>)</li>
|
|
<li>Binary Sensor: <a href="/components/sensor.command_line/">Command line sensor</a> now supports classes (<a href="https://github.com/fabaff/">@fabaff</a>)</li>
|
|
<li>MQTT: <a href="/components/mqtt/">allow client key authentication</a> (<a href="https://github.com/timharton/">@timharton</a>)</li>
|
|
<li>Sensor: <a href="/components/sensor.forecast/">Forecast.io</a> now supports minutely, hourly and daily summaries (<a href="https://github.com/aceat64/">@aceat64</a>)</li>
|
|
<li>Media Player: <a href="/components/media_player.pioneer/">Pioneer AVR</a> now supported (<a href="https://github.com/kylehendricks/">@kylehendricks</a>)</li>
|
|
<li>Switch: <a href="/components/switch.acer_projector/">Acer Projectors</a> now supported (<a href="https://github.com/deisi/">@deisi</a>)</li>
|
|
<li>New <a href="/components/hvac/">HVAC component</a> added with Z-Wave support (<a href="https://github.com/turbokongen/">@turbokongen</a>)</li>
|
|
<li>Support added for <a href="/components/octoprint/">OctoPrint</a> (<a href="https://github.com/w1ll1am23/">@w1ll1am23</a>)</li>
|
|
<li>Configuration.yaml can now refer to environment variables using <code>!env_var</code> (<a href="https://github.com/bah2830/">@bah2830</a>)</li>
|
|
<li>Lock: <a href="/components/lock.zwave/">Z-Wave</a> now supported (<a href="https://github.com/devdelay/">@devdelay</a>)</li>
|
|
<li>New <a href="/components/dweet/">Dweet component</a> to export data (<a href="https://github.com/fabaff/">@fabaff</a>)</li>
|
|
<li>Media Player now supports stop command + initial kodi support (<a href="https://github.com/hmronline/">@hmronline</a>)</li>
|
|
<li>Zigbee: push updates now supported (<a href="https://github.com/flyte/">@flyte</a>)</li>
|
|
<li>Wink devices with battery level will now show these (<a href="https://github.com/w1ll1am23/">@w1ll1am23</a>)</li>
|
|
<li>Templates: new <a href="/topics/templating/#home-assistant-template-extensions"><code>as_timestamp</code></a> method now available (<a href="https://github.com/srcLurker/">@srcLurker</a>)</li>
|
|
<li>API: Add [<code>/api/discovery_info</code>] with basic instance info (<a href="https://github.com/robbiet480/">@robbiet480</a>)</li>
|
|
<li>Sensor: <a href="/components/sensor.google_travel_time/">Google Maps travel time</a> added (<a href="https://github.com/Danielhiversen/">@Danielhiversen</a>)</li>
|
|
<li>HTTP: Allow adding <a href="/components/http/">CORS headers</a> (<a href="https://github.com/robbiet480/">@robbiet480</a>)</li>
|
|
<li>Sensor: <a href="/components/sensor.fitbit/">Fitbit</a> support added (<a href="https://github.com/robbiet480/">@robbiet480</a>)</li>
|
|
<li>Bug fixes and tweaks by <a href="https://github.com/turbokongen/">@turbokongen</a>, <a href="https://github.com/danieljkemp/">@danieljkemp</a>, <a href="https://github.com/Danielhiversen/">@Danielhiversen</a>, <a href="https://github.com/TheRealLink/">@TheRealLink</a>, <a href="https://github.com/persandstrom/">@persandstrom</a>, <a href="https://github.com/sander76/">@sander76</a>, <a href="https://github.com/fabaff/">@fabaff</a>, <a href="https://github.com/ishults/">@ishults</a>, <a href="https://github.com/Bart274/">@Bart274</a>, <a href="https://github.com/robbiet480/">@robbiet480</a>, <a href="https://github.com/Cinntax/">@Cinntax</a>, <a href="https://github.com/blackdog70/">@blackdog70</a>, <a href="https://github.com/gwendalg/">@gwendalg</a>, <a href="https://github.com/JshWright/">@JshWright</a>, <a href="https://github.com/kylehendricks/">@kylehendricks</a>, <a href="https://github.com/bradsk88/">@bradsk88</a>, <a href="https://github.com/shaftoe/">@shaftoe</a>, <a href="https://github.com/molobrakos/">@molobrakos</a>, <a href="https://github.com/bah2830/">@bah2830</a>, <a href="https://github.com/nkgilley/">@nkgilley</a></li>
|
|
</ul>
|
|
|
|
<h3>Deprecations</h3>
|
|
<ul>
|
|
<li>Conditions in automations should now specify which condition to use with <code>condition:</code> instead of <code>platform:</code>. For example <code>condition: state</code>.</li>
|
|
<li>RFXtrx has a new config format.</li>
|
|
</ul>
|
|
|
|
<p>Old RFXtrx config format:</p>
|
|
|
|
<div class="highlighter-coderay"><div class="CodeRay">
|
|
<div class="code"><pre> <span class="key">devices</span>:
|
|
<span class="key">123efab1</span>:
|
|
<span class="key">name</span>: <span class="string"><span class="content">My DI.0 light device</span></span>
|
|
<span class="key">packetid</span>: <span class="string"><span class="content">1b2200000890efab1213f60</span></span>
|
|
</pre></div>
|
|
</div>
|
|
</div>
|
|
|
|
<p>New RFXtrx config format:</p>
|
|
|
|
<div class="highlighter-coderay"><div class="CodeRay">
|
|
<div class="code"><pre> <span class="key">devices</span>:
|
|
<span class="key">1b2200000890efab1213f60</span>:
|
|
<span class="key">name</span>: <span class="string"><span class="content">My DI.0 light device</span></span>
|
|
</pre></div>
|
|
</div>
|
|
</div>
|
|
</article>
|
|
|
|
|
|
<section id="disqus">
|
|
<h3 class="indent title">Comments</h3>
|
|
<div id="disqus_thread" aria-live="polite"><noscript>Please enable JavaScript to view the <a href="http://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript></div>
|
|
</section>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
|
|
<div class="grid">
|
|
|
|
|
|
<section class="aside-module grid__item one-whole lap-one-half">
|
|
<h1 class="title delta">About Home Assistant</h1>
|
|
<ul class="divided">
|
|
<li>
|
|
Home Assistant is an open-source home automation platform running on Python 3. Track and control all devices at home and automate control.
|
|
</li>
|
|
<li><a href='/getting-started/'>Get started with Home Assistant</a></li>
|
|
<li><a href='/demo/'>Try the online demo</a></li>
|
|
<li><a class="twitter-follow-button" href="https://twitter.com/Home_Assistant">Follow Home Assistant on Twitter</a></li>
|
|
</ul>
|
|
</section>
|
|
<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.async=true;js.src='//platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js,fjs);}}(document, 'script', 'twitter-wjs');</script>
|
|
|
|
|
|
<section class="sharing aside-module grid__item one-whole lap-one-half">
|
|
<h1 class="title delta">Share this post</h1>
|
|
|
|
<a href="//twitter.com/share"
|
|
class="twitter-share-button"
|
|
data-via="home_assistant"
|
|
data-related="home_assistant"
|
|
data-url="https://home-assistant.io/blog/2016/05/07/empowering-scripts-and-alexa/"
|
|
data-counturl="https://home-assistant.io/blog/2016/05/07/empowering-scripts-and-alexa/" >Tweet</a>
|
|
|
|
|
|
<div class="fb-share-button" style='top: -6px;'
|
|
data-href="https://home-assistant.io/blog/2016/05/07/empowering-scripts-and-alexa/"
|
|
data-layout="button_count">
|
|
</div>
|
|
|
|
|
|
<div class="g-plusone" data-size="standard"></div>
|
|
|
|
</section>
|
|
|
|
<script src="https://apis.google.com/js/platform.js" async defer></script>
|
|
<script>
|
|
window.fbAsyncInit = function() {
|
|
FB.init({appId: '338291289691179', xfbml: true, version: 'v2.2'});
|
|
};
|
|
|
|
(function(d, s, id){
|
|
var js, fjs = d.getElementsByTagName(s)[0];
|
|
if (d.getElementById(id)) {return;}
|
|
js = d.createElement(s); js.id = id; js.async = true;
|
|
js.src = "//connect.facebook.net/en_US/sdk.js";
|
|
fjs.parentNode.insertBefore(js, fjs);
|
|
}(document, 'script', 'facebook-jssdk'));
|
|
</script>
|
|
<section id="recent-posts" class="aside-module grid__item one-whole lap-one-half">
|
|
<h1 class="title delta">Recent Posts</h1>
|
|
<ul class="divided">
|
|
|
|
|
|
<li class="post">
|
|
<a href="/blog/2016/07/30/custom-frontend-panels-jupyter-notebooks-directv/">0.25: Custom frontend panels, Jupyter notebooks, DirecTV.</a>
|
|
</li>
|
|
|
|
|
|
|
|
<li class="post">
|
|
<a href="/blog/2016/07/28/esp8266-and-micropython-part1/">ESP8266 and MicroPython - Part 1</a>
|
|
</li>
|
|
|
|
|
|
|
|
<li class="post">
|
|
<a href="/blog/2016/07/23/internet-of-things-data-exploration-with-jupyter-notebooks/">IoT Data Exploration with Jupyter Notebooks</a>
|
|
</li>
|
|
|
|
|
|
|
|
<li class="post">
|
|
<a href="/blog/2016/07/19/visualizing-your-iot-data/">Visualize your IoT data</a>
|
|
</li>
|
|
|
|
|
|
|
|
<li class="post">
|
|
<a href="/blog/2016/07/16/sqlalchemy-knx-join-simplisafe/">0.24: SQLAlchemy, KNX, Join by Joaoapps, and SimpliSafe.</a>
|
|
</li>
|
|
|
|
|
|
</ul>
|
|
</section>
|
|
|
|
|
|
</div>
|
|
</aside>
|
|
|
|
</div>
|
|
</div>
|
|
|
|
<footer>
|
|
<div class="grid-wrapper">
|
|
<div class="grid">
|
|
<div class="grid__item">
|
|
<div class="copyright">
|
|
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
|
|
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
|
|
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
|
|
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
|
|
|
|
<div class="credit">
|
|
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
|
|
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
|
|
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</footer>
|
|
|
|
<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>
|
|
<script>
|
|
var disqus_shortname = 'home-assistant';
|
|
|
|
|
|
// var disqus_developer = 1;
|
|
var disqus_identifier = 'https://home-assistant.io/blog/2016/05/07/empowering-scripts-and-alexa/';
|
|
var disqus_url = 'https://home-assistant.io/blog/2016/05/07/empowering-scripts-and-alexa/';
|
|
var disqus_script = 'embed.js';
|
|
|
|
(function () {
|
|
var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
|
|
dsq.src = '//' + disqus_shortname + '.disqus.com/' + disqus_script;
|
|
(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
|
|
}());
|
|
</script>
|
|
</body>
|
|
</html> |