Site updated at 2015-07-01 05:57:21 UTC

This commit is contained in:
Paulus Schoutsen 2015-06-30 22:57:21 -07:00
parent 15c089a2af
commit 86dee3fe5a
10 changed files with 221 additions and 130 deletions

View file

@ -4,7 +4,7 @@
<title><![CDATA[Home Assistant]]></title> <title><![CDATA[Home Assistant]]></title>
<link href="https://home-assistant.io/atom.xml" rel="self"/> <link href="https://home-assistant.io/atom.xml" rel="self"/>
<link href="https://home-assistant.io/"/> <link href="https://home-assistant.io/"/>
<updated>2015-06-25T00:06:36-07:00</updated> <updated>2015-06-30T22:57:13-07:00</updated>
<id>https://home-assistant.io/</id> <id>https://home-assistant.io/</id>
<author> <author>
<name><![CDATA[Paulus Schoutsen]]></name> <name><![CDATA[Paulus Schoutsen]]></name>

View file

@ -4,7 +4,7 @@
<title><![CDATA[Category: architecture | Home Assistant]]></title> <title><![CDATA[Category: architecture | Home Assistant]]></title>
<link href="https://home-assistant.io/blog/categories/architecture/atom.xml" rel="self"/> <link href="https://home-assistant.io/blog/categories/architecture/atom.xml" rel="self"/>
<link href="https://home-assistant.io/"/> <link href="https://home-assistant.io/"/>
<updated>2015-06-25T00:06:36-07:00</updated> <updated>2015-06-30T22:57:13-07:00</updated>
<id>https://home-assistant.io/</id> <id>https://home-assistant.io/</id>
<author> <author>
<name><![CDATA[Paulus Schoutsen]]></name> <name><![CDATA[Paulus Schoutsen]]></name>

View file

@ -4,7 +4,7 @@
<title><![CDATA[Category: branding | Home Assistant]]></title> <title><![CDATA[Category: branding | Home Assistant]]></title>
<link href="https://home-assistant.io/blog/categories/branding/atom.xml" rel="self"/> <link href="https://home-assistant.io/blog/categories/branding/atom.xml" rel="self"/>
<link href="https://home-assistant.io/"/> <link href="https://home-assistant.io/"/>
<updated>2015-06-25T00:06:36-07:00</updated> <updated>2015-06-30T22:57:13-07:00</updated>
<id>https://home-assistant.io/</id> <id>https://home-assistant.io/</id>
<author> <author>
<name><![CDATA[Paulus Schoutsen]]></name> <name><![CDATA[Paulus Schoutsen]]></name>

View file

@ -4,7 +4,7 @@
<title><![CDATA[Category: component | Home Assistant]]></title> <title><![CDATA[Category: component | Home Assistant]]></title>
<link href="https://home-assistant.io/blog/categories/component/atom.xml" rel="self"/> <link href="https://home-assistant.io/blog/categories/component/atom.xml" rel="self"/>
<link href="https://home-assistant.io/"/> <link href="https://home-assistant.io/"/>
<updated>2015-06-25T00:06:36-07:00</updated> <updated>2015-06-30T22:57:13-07:00</updated>
<id>https://home-assistant.io/</id> <id>https://home-assistant.io/</id>
<author> <author>
<name><![CDATA[Paulus Schoutsen]]></name> <name><![CDATA[Paulus Schoutsen]]></name>

View file

@ -4,7 +4,7 @@
<title><![CDATA[Category: core | Home Assistant]]></title> <title><![CDATA[Category: core | Home Assistant]]></title>
<link href="https://home-assistant.io/blog/categories/core/atom.xml" rel="self"/> <link href="https://home-assistant.io/blog/categories/core/atom.xml" rel="self"/>
<link href="https://home-assistant.io/"/> <link href="https://home-assistant.io/"/>
<updated>2015-06-25T00:06:36-07:00</updated> <updated>2015-06-30T22:57:13-07:00</updated>
<id>https://home-assistant.io/</id> <id>https://home-assistant.io/</id>
<author> <author>
<name><![CDATA[Paulus Schoutsen]]></name> <name><![CDATA[Paulus Schoutsen]]></name>

View file

@ -4,7 +4,7 @@
<title><![CDATA[Category: frontend | Home Assistant]]></title> <title><![CDATA[Category: frontend | Home Assistant]]></title>
<link href="https://home-assistant.io/blog/categories/frontend/atom.xml" rel="self"/> <link href="https://home-assistant.io/blog/categories/frontend/atom.xml" rel="self"/>
<link href="https://home-assistant.io/"/> <link href="https://home-assistant.io/"/>
<updated>2015-06-25T00:06:36-07:00</updated> <updated>2015-06-30T22:57:13-07:00</updated>
<id>https://home-assistant.io/</id> <id>https://home-assistant.io/</id>
<author> <author>
<name><![CDATA[Paulus Schoutsen]]></name> <name><![CDATA[Paulus Schoutsen]]></name>

View file

@ -4,7 +4,7 @@
<title><![CDATA[Category: release-notes | Home Assistant]]></title> <title><![CDATA[Category: release-notes | Home Assistant]]></title>
<link href="https://home-assistant.io/blog/categories/release-notes/atom.xml" rel="self"/> <link href="https://home-assistant.io/blog/categories/release-notes/atom.xml" rel="self"/>
<link href="https://home-assistant.io/"/> <link href="https://home-assistant.io/"/>
<updated>2015-06-25T00:06:36-07:00</updated> <updated>2015-06-30T22:57:13-07:00</updated>
<id>https://home-assistant.io/</id> <id>https://home-assistant.io/</id>
<author> <author>
<name><![CDATA[Paulus Schoutsen]]></name> <name><![CDATA[Paulus Schoutsen]]></name>

View file

@ -4,7 +4,7 @@
<title><![CDATA[Category: website | Home Assistant]]></title> <title><![CDATA[Category: website | Home Assistant]]></title>
<link href="https://home-assistant.io/blog/categories/website/atom.xml" rel="self"/> <link href="https://home-assistant.io/blog/categories/website/atom.xml" rel="self"/>
<link href="https://home-assistant.io/"/> <link href="https://home-assistant.io/"/>
<updated>2015-06-25T00:06:36-07:00</updated> <updated>2015-06-30T22:57:13-07:00</updated>
<id>https://home-assistant.io/</id> <id>https://home-assistant.io/</id>
<author> <author>
<name><![CDATA[Paulus Schoutsen]]></name> <name><![CDATA[Paulus Schoutsen]]></name>

View file

@ -6279,7 +6279,7 @@ function(t,e){"use strict";function n(t,e){if(Array.isArray(t))return t;if(Symbo
function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function u(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(t.__proto__=e)}function o(t,e){var n=e.pane,r=e.filter,i=void 0===r?null:r;return c.toImmutable({pane:n,filter:i})}function a(t){return _.getInitialState()}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}return function(e,n,r){return n&&t(e.prototype,n),r&&t(e,r),e}}(),c=n(/*! nuclear-js */1),f=n(/*! ../action-types */27),l=r(f),h=function(t){function e(){i(this,e),null!=t&&t.apply(this,arguments)}return u(e,t),s(e,[{key:"getInitialState",value:function(){return c.toImmutable({pane:"states",filter:null})}},{key:"initialize",value:function(){this.on(l["default"].NAVIGATE,o),this.on(l["default"].LOG_OUT,a)}}]),e}(c.Store),_=new h;e["default"]=_,t.exports=e["default"]},/*!********************************************!*\ function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function u(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(t.__proto__=e)}function o(t,e){var n=e.pane,r=e.filter,i=void 0===r?null:r;return c.toImmutable({pane:n,filter:i})}function a(t){return _.getInitialState()}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}return function(e,n,r){return n&&t(e.prototype,n),r&&t(e,r),e}}(),c=n(/*! nuclear-js */1),f=n(/*! ../action-types */27),l=r(f),h=function(t){function e(){i(this,e),null!=t&&t.apply(this,arguments)}return u(e,t),s(e,[{key:"getInitialState",value:function(){return c.toImmutable({pane:"states",filter:null})}},{key:"initialize",value:function(){this.on(l["default"].NAVIGATE,o),this.on(l["default"].LOG_OUT,a)}}]),e}(c.Store),_=new h;e["default"]=_,t.exports=e["default"]},/*!********************************************!*\
!*** ./src/modules/navigation/url-sync.js ***! !*** ./src/modules/navigation/url-sync.js ***!
\********************************************/ \********************************************/
function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}function i(){if("/"===location.pathname){var t=c["default"].evaluate(f.activePane),e=c["default"].evaluate(f.activeFilter),n=_["default"](t,e);history.replaceState({pane:t,filter:e},v,n)}else{var r=p["default"](location.pathname.substr(1)),t=r.pane,e=r.filter;l.navigate(t,e)}}function u(t){var e=t.state,n=e.pane,r=e.filter;l.navigate(n,r)}function o(){g&&(i(),y=c["default"].observe(f.activePage,function(t){var e=p["default"](t);(e.pane!==history.state.pane||e.filter!=history.state.filter)&&history.pushState(e,v,"/"+t)}),window.addEventListener("popstate",u))}function a(){g&&(y&&y(),window.removeEventListener("popstate",u))}Object.defineProperty(e,"__esModule",{value:!0}),e.startSync=o,e.stopSync=a;var s=n(/*! ../../flux */2),c=r(s),f=n(/*! ./getters */29),l=n(/*! ./actions */28),h=n(/*! ./pane-filter-to-page */30),_=r(h),d=n(/*! ./page-to-pane-filter */80),p=r(d),v="Home Assistant",y=void 0,g=history.pushState&&!1},/*!*********************************************!*\ function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}function i(){var t=void 0,e=void 0,n=void 0;if("/"===location.pathname)t=c["default"].evaluate(f.activePane),e=c["default"].evaluate(f.activeFilter),n=_["default"](t,e);else{var r=p["default"](location.pathname.substr(1));t=r.pane,e=r.filter,n=location.pathname,l.navigate(t,e)}history.replaceState({pane:t,filter:e},v,n)}function u(t){var e=t.state,n=e.pane,r=e.filter;l.navigate(n,r)}function o(){g&&(i(),y=c["default"].observe(f.activePage,function(t){var e=p["default"](t);(e.pane!==history.state.pane||e.filter!=history.state.filter)&&history.pushState(e,v,"/"+t)}),window.addEventListener("popstate",u))}function a(){g&&(y&&y(),window.removeEventListener("popstate",u))}Object.defineProperty(e,"__esModule",{value:!0}),e.startSync=o,e.stopSync=a;var s=n(/*! ../../flux */2),c=r(s),f=n(/*! ./getters */29),l=n(/*! ./actions */28),h=n(/*! ./pane-filter-to-page */30),_=r(h),d=n(/*! ./page-to-pane-filter */80),p=r(d),v="Home Assistant",y=void 0,g=history.pushState&&!1},/*!*********************************************!*\
!*** ./src/modules/notification/actions.js ***! !*** ./src/modules/notification/actions.js ***!
\*********************************************/ \*********************************************/
function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}function i(t){o["default"].dispatch(s["default"].NOTIFICATION_CREATED,{message:t})}Object.defineProperty(e,"__esModule",{value:!0}),e.createNotification=i;var u=n(/*! ../../flux */2),o=r(u),a=n(/*! ./action-types */31),s=r(a)},/*!*********************************************!*\ function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}function i(t){o["default"].dispatch(s["default"].NOTIFICATION_CREATED,{message:t})}Object.defineProperty(e,"__esModule",{value:!0}),e.createNotification=i;var u=n(/*! ../../flux */2),o=r(u),a=n(/*! ./action-types */31),s=r(a)},/*!*********************************************!*\
@ -14750,6 +14750,7 @@ document.registerElement('color-picker', { prototype: colorPickerPrototype });
<style is="custom-style"> <style is="custom-style">
:root { :root {
--dark-primary-color: #0288D1; --dark-primary-color: #0288D1;
@ -17710,22 +17711,26 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
}, },
listeners: { listeners: {
'passwordInput.keydown': 'passwordKeyDown', 'keydown': 'passwordKeyDown',
'loginButton.click': 'validatePassword', 'loginButton.click': 'validatePassword',
}, },
// attached: function() { observers: [
// this.focusPassword(); 'validatingChanged(isValidating, isInvalid)',
// }, ],
isValidatingChanged: function(newVal) { validatingChanged: function(isValidating, isInvalid) {
if (!newVal) { if (!isValidating && !isInvalid) {
setTimeout(this.focusPassword.bind(this), 0); this.$.passwordInput.value = '';
} }
}, },
focusPassword: function() { isValidatingChanged: function(newVal) {
if (!newVal) {
this.debounce('focus-password', function() {
this.$.passwordInput.focus(); this.$.passwordInput.focus();
}.bind(this), 1);
}
}, },
passwordKeyDown: function(ev) { passwordKeyDown: function(ev) {
@ -20402,6 +20407,62 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
}); });
})(); })();
</script> </script>
<dom-module id="ha-voice-command-progress" assetpath="components/">
<style>
:host {
display: block;
}
iron-icon {
margin-right: 8px;
}
.interimTranscript {
color: darkgrey;
}
.listening paper-spinner {
float: right;
}
</style>
<template>
<iron-icon icon="av:hearing"></iron-icon>
<span>{{finalTranscript}}</span>
<span class="interimTranscript">[[interimTranscript]]</span>
<paper-spinner active$="[[isTransmitting]]" alt="Sending voice command to Home Assistant"></paper-spinner>
</template>
</dom-module>
<script>
(function(){
var voiceGetters = window.hass.voiceGetters;
Polymer({
is: 'ha-voice-command-progress',
behaviors: [nuclearObserver],
properties: {
isTransmitting: {
type: Boolean,
bindNuclear: voiceGetters.isTransmitting,
},
interimTranscript: {
type: String,
bindNuclear: voiceGetters.extraInterimTranscript,
},
finalTranscript: {
type: String,
bindNuclear: voiceGetters.finalTranscript,
},
},
});
})();
</script>
<dom-module id="partial-states" assetpath="layouts/"> <dom-module id="partial-states" assetpath="layouts/">
<style> <style>
.content-wrapper { .content-wrapper {
@ -20445,9 +20506,7 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
<div class="content-wrapper"> <div class="content-wrapper">
<div class="listening" hidden$="[[!showListenInterface]]" on-click="handleListenClick"> <div class="listening" hidden$="[[!showListenInterface]]" on-click="handleListenClick">
<iron-icon icon="av:hearing"></iron-icon> <span>{{finalTranscript}}</span> <ha-voice-command-progress></ha-voice-command-progress>
<span class="interimTranscript">[[interimTranscript]]</span>
<paper-spinner active$="[[isTransmitting]]" alt="Sending voice command to Home Assistant"></paper-spinner>
</div> </div>
<state-cards states="[[states]]"> <state-cards states="[[states]]">
@ -20521,21 +20580,6 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
bindNuclear: voiceGetters.isListening, bindNuclear: voiceGetters.isListening,
}, },
isTransmitting: {
type: Boolean,
bindNuclear: voiceGetters.isTransmitting,
},
interimTranscript: {
type: String,
bindNuclear: voiceGetters.extraInterimTranscript,
},
finalTranscript: {
type: String,
bindNuclear: voiceGetters.finalTranscript,
},
showListenInterface: { showListenInterface: {
type: Boolean, type: Boolean,
bindNuclear: [ bindNuclear: [
@ -25085,15 +25129,24 @@ paper-ripple {
overflow: hidden; overflow: hidden;
} }
.sidenav paper-menu { /*.sidenav paper-menu {
--paper-menu-color: var(--secondary-text-color); --paper-menu-color: var(--secondary-text-color);
--paper-menu-background-color: #fafafa; --paper-menu-background-color: #fafafa;
}*/
div.menu {
color: var(--secondary-text-color);
background-color: #fafafa;
} }
paper-icon-item { paper-icon-item {
cursor: pointer; cursor: pointer;
} }
paper-icon-item.selected {
font-weight: bold;
}
paper-icon-item.logout { paper-icon-item.logout {
margin-top: 16px; margin-top: 16px;
} }
@ -25120,33 +25173,33 @@ paper-ripple {
<div class="title">Home Assistant</div> <div class="title">Home Assistant</div>
</paper-toolbar> </paper-toolbar>
<paper-menu id="menu" on-iron-select="menuSelect" selectable="[data-panel]" attr-for-selected="data-panel" selected="[[selected]]"> <div class="menu">
<paper-icon-item data-panel="states"> <paper-icon-item on-click="menuClicked" data-panel="states">
<iron-icon item-icon="" icon="apps"></iron-icon> States <iron-icon item-icon="" icon="apps"></iron-icon> States
</paper-icon-item> </paper-icon-item>
<template is="dom-repeat" items="{{possibleFilters}}"> <template is="dom-repeat" items="{{possibleFilters}}">
<paper-icon-item data-panel$="[[filterType(item)]]"> <paper-icon-item on-click="menuClicked" data-panel$="[[filterType(item)]]">
<iron-icon item-icon="" icon="[[filterIcon(item)]]"></iron-icon> <iron-icon item-icon="" icon="[[filterIcon(item)]]"></iron-icon>
<span>[[filterName(item)]]</span> <span>[[filterName(item)]]</span>
</paper-icon-item> </paper-icon-item>
</template> </template>
<template is="dom-if" if="[[hasHistoryComponent]]"> <template is="dom-if" if="[[hasHistoryComponent]]">
<paper-icon-item data-panel="history"> <paper-icon-item on-click="menuClicked" data-panel="history">
<iron-icon item-icon="" icon="assessment"></iron-icon> <iron-icon item-icon="" icon="assessment"></iron-icon>
History History
</paper-icon-item> </paper-icon-item>
</template> </template>
<template is="dom-if" if="[[hasLogbookComponent]]"> <template is="dom-if" if="[[hasLogbookComponent]]">
<paper-icon-item data-panel="logbook"> <paper-icon-item on-click="menuClicked" data-panel="logbook">
<iron-icon item-icon="" icon="list"></iron-icon> <iron-icon item-icon="" icon="list"></iron-icon>
Logbook Logbook
</paper-icon-item> </paper-icon-item>
</template> </template>
<paper-icon-item data-panel="logout" class="logout"> <paper-icon-item on-click="menuClicked" data-panel="logout" class="logout">
<iron-icon item-icon="" icon="exit-to-app"></iron-icon> <iron-icon item-icon="" icon="exit-to-app"></iron-icon>
Log Out Log Out
</paper-icon-item> </paper-icon-item>
@ -25162,7 +25215,8 @@ paper-ripple {
<paper-icon-button icon="settings-ethernet" data-panel="devState" on-click="handleDevClick"></paper-icon-button> <paper-icon-button icon="settings-ethernet" data-panel="devState" on-click="handleDevClick"></paper-icon-button>
<paper-icon-button icon="settings-input-antenna" data-panel="devEvent" on-click="handleDevClick"></paper-icon-button> <paper-icon-button icon="settings-input-antenna" data-panel="devEvent" on-click="handleDevClick"></paper-icon-button>
</div> </div>
</paper-menu>
</div>
</paper-header-panel> </paper-header-panel>
</template> </template>
@ -25185,9 +25239,15 @@ paper-ripple {
behaviors: [nuclearObserver], behaviors: [nuclearObserver],
properties: { properties: {
menuSelected: {
type: String,
// observer: 'menuSelectedChanged',
},
selected: { selected: {
type: String, type: String,
bindNuclear: navigationGetters.activePage, bindNuclear: navigationGetters.activePage,
observer: 'selectedChanged',
}, },
possibleFilters: { possibleFilters: {
@ -25210,14 +25270,46 @@ paper-ripple {
}, },
}, },
menuSelect: function(ev, detail, sender) { // menuSelectedChanged: function(newVal) {
this.selectPanel(ev.target.selected); // if (this.selected !== newVal) {
// this.selectPanel(newVal);
// }
// },
selectedChanged: function(newVal) {
// if (this.menuSelected !== newVal) {
// this.menuSelected = newVal;
// }
var menuItems = this.querySelectorAll('.menu [data-panel]');
for (var i = 0; i < menuItems.length; i++) {
if(menuItems[i].dataset.panel === newVal) {
menuItems[i].classList.add('selected');
} else {
menuItems[i].classList.remove('selected');
}
}
}, },
handleDevClick: function(ev, detail, sender) { menuClicked: function(ev) {
var target = ev.target;
var checks = 5;
// find panel to select
while(checks && !target.dataset.panel) {
target = target.parentElement;
checks--;
}
if (checks) {
this.selectPanel(target.dataset.panel);
}
},
handleDevClick: function(ev) {
// prevent it from highlighting first menu item // prevent it from highlighting first menu item
document.activeElement.blur(); document.activeElement.blur();
this.selectPanel(ev.target.parentElement.dataset.panel); this.menuClicked(ev);
}, },
selectPanel: function(newChoice) { selectPanel: function(newChoice) {
@ -25388,7 +25480,6 @@ paper-ripple {
<script> <script>
(function() { (function() {
var uiActions = window.hass.uiActions; var uiActions = window.hass.uiActions;
var authGetters = window.hass.authGetters;
var syncGetters = window.hass.syncGetters; var syncGetters = window.hass.syncGetters;
var preferences = window.hass.localStoragePreferences; var preferences = window.hass.localStoragePreferences;

View file

@ -82,487 +82,487 @@
</url> </url>
<url> <url>
<loc>https://home-assistant.io/developers/add_new_platform.html</loc> <loc>https://home-assistant.io/developers/add_new_platform.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/getting-started/android.html</loc> <loc>https://home-assistant.io/getting-started/android.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/developers/api.html</loc> <loc>https://home-assistant.io/developers/api.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/developers/architecture.html</loc> <loc>https://home-assistant.io/developers/architecture.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/automation.html</loc> <loc>https://home-assistant.io/components/automation.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/browser.html</loc> <loc>https://home-assistant.io/components/browser.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/getting-started/configuration.html</loc> <loc>https://home-assistant.io/getting-started/configuration.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/configurator.html</loc> <loc>https://home-assistant.io/components/configurator.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/conversation.html</loc> <loc>https://home-assistant.io/components/conversation.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/developers/creating_components.html</loc> <loc>https://home-assistant.io/developers/creating_components.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/developers/credits.html</loc> <loc>https://home-assistant.io/developers/credits.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/device_sun_light_trigger.html</loc> <loc>https://home-assistant.io/components/device_sun_light_trigger.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/device_tracker.ddwrt.html</loc> <loc>https://home-assistant.io/components/device_tracker.ddwrt.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/device_tracker.luci.html</loc> <loc>https://home-assistant.io/components/device_tracker.luci.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/device_tracker.html</loc> <loc>https://home-assistant.io/components/device_tracker.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/device_tracker.netgear.html</loc> <loc>https://home-assistant.io/components/device_tracker.netgear.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/device_tracker.nmap_scanner.html</loc> <loc>https://home-assistant.io/components/device_tracker.nmap_scanner.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/device_tracker.tomato.html</loc> <loc>https://home-assistant.io/components/device_tracker.tomato.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/device_tracker.tplink.html</loc> <loc>https://home-assistant.io/components/device_tracker.tplink.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/discovery.html</loc> <loc>https://home-assistant.io/components/discovery.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/downloader.html</loc> <loc>https://home-assistant.io/components/downloader.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/developers/frontend.html</loc> <loc>https://home-assistant.io/developers/frontend.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/group.html</loc> <loc>https://home-assistant.io/components/group.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/history.html</loc> <loc>https://home-assistant.io/components/history.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/blog/</loc> <loc>https://home-assistant.io/blog/</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/</loc> <loc>https://home-assistant.io/</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>1.0</priority> <priority>1.0</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/blog/archives/</loc> <loc>https://home-assistant.io/blog/archives/</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/developers/</loc> <loc>https://home-assistant.io/developers/</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/</loc> <loc>https://home-assistant.io/components/</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/getting-started/</loc> <loc>https://home-assistant.io/getting-started/</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/isy994.html</loc> <loc>https://home-assistant.io/components/isy994.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/keyboard.html</loc> <loc>https://home-assistant.io/components/keyboard.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/light.hue.html</loc> <loc>https://home-assistant.io/components/light.hue.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/light.limitlessled.html</loc> <loc>https://home-assistant.io/components/light.limitlessled.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/light.html</loc> <loc>https://home-assistant.io/components/light.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/logbook.html</loc> <loc>https://home-assistant.io/components/logbook.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/media_player.cast.html</loc> <loc>https://home-assistant.io/components/media_player.cast.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/media_player.kodi.html</loc> <loc>https://home-assistant.io/components/media_player.kodi.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/media_player.html</loc> <loc>https://home-assistant.io/components/media_player.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/media_player.mpd.html</loc> <loc>https://home-assistant.io/components/media_player.mpd.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/modbus.html</loc> <loc>https://home-assistant.io/components/modbus.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/notify.file.html</loc> <loc>https://home-assistant.io/components/notify.file.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/notify.instapush.html</loc> <loc>https://home-assistant.io/components/notify.instapush.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/notify.html</loc> <loc>https://home-assistant.io/components/notify.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/notify.nma.html</loc> <loc>https://home-assistant.io/components/notify.nma.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/notify.pushbullet.html</loc> <loc>https://home-assistant.io/components/notify.pushbullet.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/notify.pushover.html</loc> <loc>https://home-assistant.io/components/notify.pushover.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/notify.smtp.html</loc> <loc>https://home-assistant.io/components/notify.smtp.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/notify.syslog.html</loc> <loc>https://home-assistant.io/components/notify.syslog.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/notify.xmpp.html</loc> <loc>https://home-assistant.io/components/notify.xmpp.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/developers/python_api.html</loc> <loc>https://home-assistant.io/developers/python_api.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/developers/rest_api.html</loc> <loc>https://home-assistant.io/developers/rest_api.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/scene.html</loc> <loc>https://home-assistant.io/components/scene.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/scheduler.html</loc> <loc>https://home-assistant.io/components/scheduler.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/script.html</loc> <loc>https://home-assistant.io/components/script.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/sensor.bitcoin.html</loc> <loc>https://home-assistant.io/components/sensor.bitcoin.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/sensor.forecast.html</loc> <loc>https://home-assistant.io/components/sensor.forecast.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/sensor.mysensors.html</loc> <loc>https://home-assistant.io/components/sensor.mysensors.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/sensor.openweathermap.html</loc> <loc>https://home-assistant.io/components/sensor.openweathermap.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/sensor.sabnzbd.html</loc> <loc>https://home-assistant.io/components/sensor.sabnzbd.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/sensor.swiss_public_transport.html</loc> <loc>https://home-assistant.io/components/sensor.swiss_public_transport.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/sensor.systemmonitor.html</loc> <loc>https://home-assistant.io/components/sensor.systemmonitor.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/sensor.time_date.html</loc> <loc>https://home-assistant.io/components/sensor.time_date.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/sensor.transmission.html</loc> <loc>https://home-assistant.io/components/sensor.transmission.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/simple_alarm.html</loc> <loc>https://home-assistant.io/components/simple_alarm.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/sun.html</loc> <loc>https://home-assistant.io/components/sun.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/switch.command_switch.html</loc> <loc>https://home-assistant.io/components/switch.command_switch.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/switch.hikvision.html</loc> <loc>https://home-assistant.io/components/switch.hikvision.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/switch.html</loc> <loc>https://home-assistant.io/components/switch.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/switch.transmission.html</loc> <loc>https://home-assistant.io/components/switch.transmission.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/switch.wemo.html</loc> <loc>https://home-assistant.io/components/switch.wemo.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/tellstick.html</loc> <loc>https://home-assistant.io/components/tellstick.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/thermostat.heat_control.html</loc> <loc>https://home-assistant.io/components/thermostat.heat_control.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/thermostat.html</loc> <loc>https://home-assistant.io/components/thermostat.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/thermostat.nest.html</loc> <loc>https://home-assistant.io/components/thermostat.nest.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/getting-started/troubleshooting.html</loc> <loc>https://home-assistant.io/getting-started/troubleshooting.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/vera.html</loc> <loc>https://home-assistant.io/components/vera.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/developers/website.html</loc> <loc>https://home-assistant.io/developers/website.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/wink.html</loc> <loc>https://home-assistant.io/components/wink.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/components/zwave.html</loc> <loc>https://home-assistant.io/components/zwave.html</loc>
<lastmod>2015-06-25T00:06:36-07:00</lastmod> <lastmod>2015-06-30T22:57:13-07:00</lastmod>
<changefreq>weekly</changefreq> <changefreq>weekly</changefreq>
<priority>0.7</priority> <priority>0.7</priority>
</url> </url>
<url> <url>
<loc>https://home-assistant.io/demo/frontend.html</loc> <loc>https://home-assistant.io/demo/frontend.html</loc>
<lastmod>2015-06-25T00:05:08-07:00</lastmod> <lastmod>2015-06-30T22:56:08-07:00</lastmod>
<priority>0.6</priority> <priority>0.6</priority>
</url> </url>
<url> <url>