diff --git a/atom.xml b/atom.xml index 0896303124..be78d6c5d4 100644 --- a/atom.xml +++ b/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Home Assistant]]> - 2017-07-02T14:26:26+00:00 + 2017-07-02T16:20:59+00:00 https://home-assistant.io/ diff --git a/blog/categories/announcements/atom.xml b/blog/categories/announcements/atom.xml index a8aaad9ed5..539459dc72 100644 --- a/blog/categories/announcements/atom.xml +++ b/blog/categories/announcements/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Announcements | Home Assistant]]> - 2017-07-02T14:26:26+00:00 + 2017-07-02T16:20:59+00:00 https://home-assistant.io/ diff --git a/blog/categories/community/atom.xml b/blog/categories/community/atom.xml index 48fa25dd41..08e8e2af60 100644 --- a/blog/categories/community/atom.xml +++ b/blog/categories/community/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Community | Home Assistant]]> - 2017-07-02T14:26:26+00:00 + 2017-07-02T16:20:59+00:00 https://home-assistant.io/ diff --git a/blog/categories/device-tracking/atom.xml b/blog/categories/device-tracking/atom.xml index 562443264c..23a4e7069c 100644 --- a/blog/categories/device-tracking/atom.xml +++ b/blog/categories/device-tracking/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Device-Tracking | Home Assistant]]> - 2017-07-02T14:26:26+00:00 + 2017-07-02T16:20:59+00:00 https://home-assistant.io/ diff --git a/blog/categories/esp8266/atom.xml b/blog/categories/esp8266/atom.xml index e66096245c..f786728784 100644 --- a/blog/categories/esp8266/atom.xml +++ b/blog/categories/esp8266/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: ESP8266 | Home Assistant]]> - 2017-07-02T14:26:26+00:00 + 2017-07-02T16:20:59+00:00 https://home-assistant.io/ diff --git a/blog/categories/how-to/atom.xml b/blog/categories/how-to/atom.xml index 4f647d483b..91b1370855 100644 --- a/blog/categories/how-to/atom.xml +++ b/blog/categories/how-to/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: How-To | Home Assistant]]> - 2017-07-02T14:26:26+00:00 + 2017-07-02T16:20:59+00:00 https://home-assistant.io/ diff --git a/blog/categories/ibeacons/atom.xml b/blog/categories/ibeacons/atom.xml index 3a158b9975..41ba00a2ac 100644 --- a/blog/categories/ibeacons/atom.xml +++ b/blog/categories/ibeacons/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: iBeacons | Home Assistant]]> - 2017-07-02T14:26:26+00:00 + 2017-07-02T16:20:59+00:00 https://home-assistant.io/ diff --git a/blog/categories/internet-of-things/atom.xml b/blog/categories/internet-of-things/atom.xml index 08f6513624..4091372b88 100644 --- a/blog/categories/internet-of-things/atom.xml +++ b/blog/categories/internet-of-things/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Internet-of-Things | Home Assistant]]> - 2017-07-02T14:26:26+00:00 + 2017-07-02T16:20:59+00:00 https://home-assistant.io/ diff --git a/blog/categories/iot-data/atom.xml b/blog/categories/iot-data/atom.xml index 886d6cdb72..075bafa95e 100644 --- a/blog/categories/iot-data/atom.xml +++ b/blog/categories/iot-data/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: IoT-Data | Home Assistant]]> - 2017-07-02T14:26:26+00:00 + 2017-07-02T16:20:59+00:00 https://home-assistant.io/ diff --git a/blog/categories/media/atom.xml b/blog/categories/media/atom.xml index f98518a620..b9cdf98471 100644 --- a/blog/categories/media/atom.xml +++ b/blog/categories/media/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Media | Home Assistant]]> - 2017-07-02T14:26:26+00:00 + 2017-07-02T16:20:59+00:00 https://home-assistant.io/ diff --git a/blog/categories/merchandise/atom.xml b/blog/categories/merchandise/atom.xml index 78271a7e4a..17d0a1fbbe 100644 --- a/blog/categories/merchandise/atom.xml +++ b/blog/categories/merchandise/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Merchandise | Home Assistant]]> - 2017-07-02T14:26:26+00:00 + 2017-07-02T16:20:59+00:00 https://home-assistant.io/ diff --git a/blog/categories/micropython/atom.xml b/blog/categories/micropython/atom.xml index 472f55319f..02cf443228 100644 --- a/blog/categories/micropython/atom.xml +++ b/blog/categories/micropython/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Micropython | Home Assistant]]> - 2017-07-02T14:26:26+00:00 + 2017-07-02T16:20:59+00:00 https://home-assistant.io/ diff --git a/blog/categories/mqtt/atom.xml b/blog/categories/mqtt/atom.xml index 1d7115893b..330af25064 100644 --- a/blog/categories/mqtt/atom.xml +++ b/blog/categories/mqtt/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: MQTT | Home Assistant]]> - 2017-07-02T14:26:26+00:00 + 2017-07-02T16:20:59+00:00 https://home-assistant.io/ diff --git a/blog/categories/organisation/atom.xml b/blog/categories/organisation/atom.xml index b485cad7ef..704c9404a5 100644 --- a/blog/categories/organisation/atom.xml +++ b/blog/categories/organisation/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Organisation | Home Assistant]]> - 2017-07-02T14:26:26+00:00 + 2017-07-02T16:20:59+00:00 https://home-assistant.io/ diff --git a/blog/categories/owntracks/atom.xml b/blog/categories/owntracks/atom.xml index 2e7a10f76a..56774e7caa 100644 --- a/blog/categories/owntracks/atom.xml +++ b/blog/categories/owntracks/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: OwnTracks | Home Assistant]]> - 2017-07-02T14:26:26+00:00 + 2017-07-02T16:20:59+00:00 https://home-assistant.io/ diff --git a/blog/categories/presence-detection/atom.xml b/blog/categories/presence-detection/atom.xml index aefde9617b..fa56b2ee94 100644 --- a/blog/categories/presence-detection/atom.xml +++ b/blog/categories/presence-detection/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Presence-Detection | Home Assistant]]> - 2017-07-02T14:26:26+00:00 + 2017-07-02T16:20:59+00:00 https://home-assistant.io/ diff --git a/blog/categories/public-service-announcement/atom.xml b/blog/categories/public-service-announcement/atom.xml index dad9d83ce0..d1b5851202 100644 --- a/blog/categories/public-service-announcement/atom.xml +++ b/blog/categories/public-service-announcement/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Public-Service-Announcement | Home Assistant]]> - 2017-07-02T14:26:26+00:00 + 2017-07-02T16:20:59+00:00 https://home-assistant.io/ diff --git a/blog/categories/release-notes/atom.xml b/blog/categories/release-notes/atom.xml index 02015c27bf..591cf050d1 100644 --- a/blog/categories/release-notes/atom.xml +++ b/blog/categories/release-notes/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Release-Notes | Home Assistant]]> - 2017-07-02T14:26:26+00:00 + 2017-07-02T16:20:59+00:00 https://home-assistant.io/ diff --git a/blog/categories/survey/atom.xml b/blog/categories/survey/atom.xml index 68bd4a6205..1fd2413003 100644 --- a/blog/categories/survey/atom.xml +++ b/blog/categories/survey/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Survey | Home Assistant]]> - 2017-07-02T14:26:26+00:00 + 2017-07-02T16:20:59+00:00 https://home-assistant.io/ diff --git a/blog/categories/talks/atom.xml b/blog/categories/talks/atom.xml index aef5e58dc4..47d7cd0c39 100644 --- a/blog/categories/talks/atom.xml +++ b/blog/categories/talks/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Talks | Home Assistant]]> - 2017-07-02T14:26:26+00:00 + 2017-07-02T16:20:59+00:00 https://home-assistant.io/ diff --git a/blog/categories/technology/atom.xml b/blog/categories/technology/atom.xml index 8692f6c690..765c0d2029 100644 --- a/blog/categories/technology/atom.xml +++ b/blog/categories/technology/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Technology | Home Assistant]]> - 2017-07-02T14:26:26+00:00 + 2017-07-02T16:20:59+00:00 https://home-assistant.io/ diff --git a/blog/categories/user-stories/atom.xml b/blog/categories/user-stories/atom.xml index 06bc6a66e2..55e315d39b 100644 --- a/blog/categories/user-stories/atom.xml +++ b/blog/categories/user-stories/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: User-Stories | Home Assistant]]> - 2017-07-02T14:26:26+00:00 + 2017-07-02T16:20:59+00:00 https://home-assistant.io/ diff --git a/blog/categories/video/atom.xml b/blog/categories/video/atom.xml index 01df74c996..10cfa81437 100644 --- a/blog/categories/video/atom.xml +++ b/blog/categories/video/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Video | Home Assistant]]> - 2017-07-02T14:26:26+00:00 + 2017-07-02T16:20:59+00:00 https://home-assistant.io/ diff --git a/blog/categories/website/atom.xml b/blog/categories/website/atom.xml index 714cbf8884..a4b983a1e4 100644 --- a/blog/categories/website/atom.xml +++ b/blog/categories/website/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Website | Home Assistant]]> - 2017-07-02T14:26:26+00:00 + 2017-07-02T16:20:59+00:00 https://home-assistant.io/ diff --git a/docs/automation/action/index.html b/docs/automation/action/index.html index 6cea23ddc9..81b1a01e0f 100644 --- a/docs/automation/action/index.html +++ b/docs/automation/action/index.html @@ -287,28 +287,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/automation/condition/index.html b/docs/automation/condition/index.html index 0b495e5f45..366a5ae454 100644 --- a/docs/automation/condition/index.html +++ b/docs/automation/condition/index.html @@ -253,28 +253,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/automation/editor/index.html b/docs/automation/editor/index.html index affe69121f..509f45dea5 100644 --- a/docs/automation/editor/index.html +++ b/docs/automation/editor/index.html @@ -290,28 +290,9 @@ Any comments in the YAML file will be lost when you update an automation via the
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/automation/examples/index.html b/docs/automation/examples/index.html index c755efecb0..dbb75b5e21 100644 --- a/docs/automation/examples/index.html +++ b/docs/automation/examples/index.html @@ -287,28 +287,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/automation/index.html b/docs/automation/index.html index 1c3b076444..bf37961cfd 100644 --- a/docs/automation/index.html +++ b/docs/automation/index.html @@ -287,28 +287,9 @@ As of version 0.42 you have to set an initial state in your automations in order
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/automation/templating/index.html b/docs/automation/templating/index.html index 0366765bd0..44db57895c 100644 --- a/docs/automation/templating/index.html +++ b/docs/automation/templating/index.html @@ -491,28 +491,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/automation/trigger/index.html b/docs/automation/trigger/index.html index 7e9a071f8f..18b3932e5f 100644 --- a/docs/automation/trigger/index.html +++ b/docs/automation/trigger/index.html @@ -391,28 +391,9 @@ With template triggers you can also evaluate attribute changes by using is_state
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/automation/troubleshooting/index.html b/docs/automation/troubleshooting/index.html index 2b76bdd3fd..472b9a992c 100644 --- a/docs/automation/troubleshooting/index.html +++ b/docs/automation/troubleshooting/index.html @@ -240,28 +240,9 @@ INFO [homeassistant.components.automation] Initialized rule Rain is over
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/autostart/index.html b/docs/autostart/index.html index b597379bcf..4728d87322 100644 --- a/docs/autostart/index.html +++ b/docs/autostart/index.html @@ -241,28 +241,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/autostart/init.d/index.html b/docs/autostart/init.d/index.html index 1dfab1ccea..ec7f9355ba 100644 --- a/docs/autostart/init.d/index.html +++ b/docs/autostart/init.d/index.html @@ -342,28 +342,9 @@ esac
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/autostart/macos/index.html b/docs/autostart/macos/index.html index d0b06faaa0..7168fa7a66 100644 --- a/docs/autostart/macos/index.html +++ b/docs/autostart/macos/index.html @@ -247,28 +247,9 @@ Home Assistant has been uninstalled.
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/autostart/synology/index.html b/docs/autostart/synology/index.html index b7c4567560..ff10f81a09 100644 --- a/docs/autostart/synology/index.html +++ b/docs/autostart/synology/index.html @@ -262,28 +262,9 @@ stop on runlevel [06]
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/autostart/systemd/index.html b/docs/autostart/systemd/index.html index 6ad3107cf3..52b8b222c9 100644 --- a/docs/autostart/systemd/index.html +++ b/docs/autostart/systemd/index.html @@ -327,28 +327,9 @@ WantedBy=multi-user.target
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/autostart/upstart/index.html b/docs/autostart/upstart/index.html index 5a5f54f236..7168cfe569 100644 --- a/docs/autostart/upstart/index.html +++ b/docs/autostart/upstart/index.html @@ -351,28 +351,9 @@ esac
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/backend/database/index.html b/docs/backend/database/index.html index c4da76d1eb..9390e8f2f4 100644 --- a/docs/backend/database/index.html +++ b/docs/backend/database/index.html @@ -327,28 +327,9 @@ group.all_switches 8018
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/backend/index.html b/docs/backend/index.html index f407007d0d..f28ac41332 100644 --- a/docs/backend/index.html +++ b/docs/backend/index.html @@ -236,28 +236,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/backend/updater/index.html b/docs/backend/updater/index.html index 8c3a1f9959..34f0b8f13c 100644 --- a/docs/backend/updater/index.html +++ b/docs/backend/updater/index.html @@ -398,28 +398,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/configuration/basic/index.html b/docs/configuration/basic/index.html index a3e1f75abc..5fcb7511fe 100644 --- a/docs/configuration/basic/index.html +++ b/docs/configuration/basic/index.html @@ -265,28 +265,9 @@ If you decide to expose your Home Assistant instance to the internet and forget
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/configuration/customizing-devices/index.html b/docs/configuration/customizing-devices/index.html index 3f3ca2c6c3..2addab13dd 100644 --- a/docs/configuration/customizing-devices/index.html +++ b/docs/configuration/customizing-devices/index.html @@ -314,28 +314,9 @@ New customize information will be applied the next time the state of the entity
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/configuration/devices/index.html b/docs/configuration/devices/index.html index 7db60eacf7..2223e35eaf 100644 --- a/docs/configuration/devices/index.html +++ b/docs/configuration/devices/index.html @@ -279,28 +279,9 @@ Each group consists of a name and a list of entity IDs. Entity IDs can be retrie
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/configuration/events/index.html b/docs/configuration/events/index.html index 9c7439e9f2..ae7ef544cb 100644 --- a/docs/configuration/events/index.html +++ b/docs/configuration/events/index.html @@ -379,28 +379,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/configuration/group_visibility/index.html b/docs/configuration/group_visibility/index.html index cb199e73f0..ebf5e66f34 100644 --- a/docs/configuration/group_visibility/index.html +++ b/docs/configuration/group_visibility/index.html @@ -384,28 +384,9 @@ If you are using docker to run home assistant then the occasion.py script will b
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/configuration/index.html b/docs/configuration/index.html index 4691b6e80c..3a1721aa1c 100644 --- a/docs/configuration/index.html +++ b/docs/configuration/index.html @@ -266,28 +266,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/configuration/packages/index.html b/docs/configuration/packages/index.html index 0e1c9c08e2..6dc478c0a4 100644 --- a/docs/configuration/packages/index.html +++ b/docs/configuration/packages/index.html @@ -298,28 +298,9 @@ See the documentation about for encrypted keyring:
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/configuration/securing/index.html b/docs/configuration/securing/index.html index eddfe4c2cb..1939d83680 100644 --- a/docs/configuration/securing/index.html +++ b/docs/configuration/securing/index.html @@ -249,28 +249,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/configuration/splitting_configuration/index.html b/docs/configuration/splitting_configuration/index.html index bf06f80909..e9bdf97d47 100644 --- a/docs/configuration/splitting_configuration/index.html +++ b/docs/configuration/splitting_configuration/index.html @@ -596,28 +596,9 @@ customize.yaml
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/configuration/state_object/index.html b/docs/configuration/state_object/index.html index 494bbb4ba6..0ea3922011 100644 --- a/docs/configuration/state_object/index.html +++ b/docs/configuration/state_object/index.html @@ -315,28 +315,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/configuration/templating/index.html b/docs/configuration/templating/index.html index a5ae621d5b..599810e44b 100644 --- a/docs/configuration/templating/index.html +++ b/docs/configuration/templating/index.html @@ -448,28 +448,9 @@ Closest to an entity: {{ closest(states.zone.school, 'group.children') }}
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/configuration/troubleshooting/index.html b/docs/configuration/troubleshooting/index.html index e403fc1426..4387dc2d72 100644 --- a/docs/configuration/troubleshooting/index.html +++ b/docs/configuration/troubleshooting/index.html @@ -287,28 +287,9 @@ Whenever you report an issue, be aware that we are volunteers who do not have ac
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/configuration/yaml/index.html b/docs/configuration/yaml/index.html index 9fc2fdd886..2b0e8f8fff 100644 --- a/docs/configuration/yaml/index.html +++ b/docs/configuration/yaml/index.html @@ -274,28 +274,9 @@ The other properties (like name) are specified using mappings. Note that the sec
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/ecosystem/apache/index.html b/docs/ecosystem/apache/index.html index 8f3a510fa2..edc8acf2b9 100644 --- a/docs/ecosystem/apache/index.html +++ b/docs/ecosystem/apache/index.html @@ -316,28 +316,9 @@ In case you are getting occasional HTTP 504 error messages (“Gateway Timeout
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/ecosystem/appdaemon/api/index.html b/docs/ecosystem/appdaemon/api/index.html index 8da4d1fbc7..18f56d69dd 100644 --- a/docs/ecosystem/appdaemon/api/index.html +++ b/docs/ecosystem/appdaemon/api/index.html @@ -1592,28 +1592,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/ecosystem/appdaemon/configuration/index.html b/docs/ecosystem/appdaemon/configuration/index.html index 6cd0086401..bb64e9e4f1 100644 --- a/docs/ecosystem/appdaemon/configuration/index.html +++ b/docs/ecosystem/appdaemon/configuration/index.html @@ -291,28 +291,9 @@ timezone = <timezone>
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/ecosystem/appdaemon/example_apps/index.html b/docs/ecosystem/appdaemon/example_apps/index.html index dfb4f816e4..73a69ed280 100644 --- a/docs/ecosystem/appdaemon/example_apps/index.html +++ b/docs/ecosystem/appdaemon/example_apps/index.html @@ -234,28 +234,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/ecosystem/appdaemon/index.html b/docs/ecosystem/appdaemon/index.html index a257447753..7625efc692 100644 --- a/docs/ecosystem/appdaemon/index.html +++ b/docs/ecosystem/appdaemon/index.html @@ -76,6 +76,87 @@

    AppDaemon is a loosely coupled, multithreaded, sandboxed python execution environment for writing automation apps for Home Assistant.

    +

    Another Take on Automation

    +

    AppDaemon is not meant to replace Home Assistant Automations and Scripts, rather complement them. For a lot of things, automations work well and can be very succinct. However, there is a class of more complex automations for which they become harder to use, and appdeamon then comes into its own. It brings quite a few things to the table:

    +
      +
    • New paradigm - some problems require a procedural and/or iterative approach, and AppDaemon Apps are a much more natural fit for this. Recent enhancements to Home Assistant scripts and templates have made huge strides, but for the most complex scenarios, Apps can do things that Automations can’t
    • +
    • Ease of use - AppDaemon’s API is full of helper functions that make programming as easy and natural as possible. The functions and their operation are as “Pythonic” as possible, experienced Python programmers should feel right at home.
    • +
    • Reuse - write a piece of code once and instantiate it as an app as many times as you need with different parameters e.g. a motion light program that you can use in 5 different places around your home. The code stays the same, you just dynamically add new instances of it in the config file
    • +
    • Dynamic - AppDaemon has been designed from the start to enable the user to make changes without requiring a restart of Home Assistant, thanks to it’s loose coupling. However, it is better than that - the user can make changes to code and AppDaemon will automatically reload the code, figure out which Apps were using it and restart them to use the new code with out the need to restart AppDaemon itself. It is also possible to change parameters for an individual or multiple apps and have them picked up dynamically, and for a final trick, removing or adding apps is also picked up dynamically. Testing cycles become a lot more efficient as a result.
    • +
    • Complex logic - Python’s If/Else constructs are clearer and easier to code for arbitrarily complex nested logic
    • +
    • Durable variables and state - variables can be kept between events to keep track of things like the number of times a motion sensor has been activated, or how long it has been since a door opened
    • +
    • All the power of Python - use any of Python’s libraries, create your own modules, share variables, refactor and re-use code, create a single app to do everything, or multiple apps for individual tasks - nothing is off limits!
    • +
    +

    It is in fact a testament to Home Assistant’s open nature that a component like AppDaemon can be integrated so neatly and closely that it acts in all ways like an extension of the system, not a second class citizen. Part of the strength of Home Assistant’s underlying design is that it makes no assumptions whatever about what it is controlling or reacting to, or reporting state on. This is made achievable in part by the great flexibility of Python as a programming environment for Home Assistant, and carrying that forward has enabled me to use the same philosophy for AppDaemon - it took surprisingly little code to be able to respond to basic events and call services in a completely open ended manner - the bulk of the work after that was adding additonal functions to make things that were already possible easier.

    +

    How it Works

    +

    The best way to show what AppDaemon does is through a few simple examples.

    +

    Sunrise/Sunset Lighting

    +

    Lets start with a simple App to turn a light on every night at sunset and off every morning at sunrise. Every App when first started will have its initialize() function called which gives it a chance to register a callback for AppDaemons’s scheduler for a specific time. In this case we are using run_at_sunrise() and run_at_sunset() to register 2 separate callbacks. The argument 0 is the number of seconds offset from sunrise or sunset and can be negative or positive. For complex intervals it can be convenient to use Python’s datetime.timedelta class for calculations. When sunrise or sunset occurs, the appropriate callback function, sunrise_cb() or sunset_cb() is called which then makes a call to Home Assistant to turn the porch light on or off by activating a scene. The variables args["on_scene"] and args["off_scene"] are passed through from the configuration of this particular App, and the same code could be reused to activate completely different scenes in a different version of the App.

    +
    import homeassistant.appapi as appapi
    +
    +class OutsideLights(appapi.AppDaemon):
    +
    +  def initialize(self):
    +    self.run_at_sunrise(self.sunrise_cb, 0)
    +    self.run_at_sunset(self.sunset_cb, 0)
    +    
    +  def sunrise_cb(self, kwargs):
    +    self.turn_on(self.args["off_scene"])
    +
    +  def sunset_cb(self, kwargs):
    +    self.turn_on(self.args["on_scene"])
    +
    +
    +
    +

    This is also fairly easy to achieve with Home Assistant automations, but we are just getting started.

    +

    Motion Light

    +

    Our next example is to turn on a light when motion is detected and it is dark, and turn it off after a period of time. This time, the initialize() function registers a callback on a state change (of the motion sensor) rather than a specific time. We tell AppDaemon that we are only interested in state changes where the motion detector comes on by adding an additional parameter to the callback registration - new = "on". When the motion is detected, the callack function motion() is called, and we check whether or not the sun has set using a built-in convenience function: sun_down(). Next, we turn the light on with turn_on(), then set a timer using run_in() to turn the light off after 60 seconds, which is another call to the scheduler to execute in a set time from now, which results in AppDaemon calling light_off() 60 seconds later using the turn_off() call to actually turn the light off. This is still pretty simple in code terms:

    +
    import homeassistant.appapi as appapi
    +
    +class FlashyMotionLights(appapi.AppDaemon):
    +
    +  def initialize(self):
    +    self.listen_state(self.motion, "binary_sensor.drive", new = "on")
    +  
    +  def motion(self, entity, attribute, old, new, kwargs):
    +    if self.sun_down():
    +      self.turn_on("light.drive")
    +      self.run_in(self.light_off, 60)
    +  
    +  def light_off(self, kwargs):
    +    self.turn_off("light.drive")
    +
    +
    +

    This is starting to get a little more complex in Home Assistant automations requiring an Automation rule and two separate scripts.

    +

    Now lets extend this with a somewhat artificial example to show something that is simple in AppDaemon but very difficult if not impossible using automations. Lets warn someone inside the house that there has been motion outside by flashing a lamp on and off 10 times. We are reacting to the motion as before by turning on the light and setting a timer to turn it off again, but in addition, we set a 1 second timer to run flash_warning() which when called, toggles the inside light and sets another timer to call itself a second later. To avoid re-triggering forever, it keeps a count of how many times it has been activated and bales out after 10 iterations.

    +
    import homeassistant.appapi as appapi
    +
    +class MotionLights(appapi.AppDaemon):
    +
    +  def initialize(self):
    +    self.listen_state(self.motion, "binary_sensor.drive", new = "on")
    +  
    +  def motion(self, entity, attribute, old, new, kwargs):
    +    if self.self.sun_down():
    +      self.turn_on("light.drive")
    +      self.run_in(self.light_off, 60)
    +      self.flashcount = 0
    +      self.run_in(self.flash_warning, 1)
    +  
    +  def light_off(self, kwargs):
    +    self.turn_off("light.drive")
    +    
    +  def flash_warning(self, kwargs):
    +    self.toggle("light.living_room")
    +    self.flashcount += 1
    +    if self.flashcount < 10:
    +      self.run_in(self.flash_warning, 1)
    +
    +
    +

    Of course if I wanted to make this App or its predecessor reusable I would have provide parameters for the sensor, the light to activate on motion, the warning light and even the number of flashes and delay between flashes.

    +

    In addition, Apps can write to AppDaemon’s logfiles, and there is a system of constraints that allows yout to control when and under what circumstances Apps and callbacks are active to keep the logic clean and simple.

    +

    For full installation instructions, see README.md in the AppDaemon repository.

    +

    There is also full documentation for the API and associated configuration in API.md.

  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/ecosystem/appdaemon/installation/index.html b/docs/ecosystem/appdaemon/installation/index.html index 00883056f0..c4970244c2 100644 --- a/docs/ecosystem/appdaemon/installation/index.html +++ b/docs/ecosystem/appdaemon/installation/index.html @@ -254,28 +254,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/ecosystem/appdaemon/operation/index.html b/docs/ecosystem/appdaemon/operation/index.html index 91a80bd8b3..743a3b47ec 100644 --- a/docs/ecosystem/appdaemon/operation/index.html +++ b/docs/ecosystem/appdaemon/operation/index.html @@ -234,28 +234,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/ecosystem/appdaemon/reboot/index.html b/docs/ecosystem/appdaemon/reboot/index.html index 3430aad756..c5b4aa9386 100644 --- a/docs/ecosystem/appdaemon/reboot/index.html +++ b/docs/ecosystem/appdaemon/reboot/index.html @@ -234,28 +234,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/ecosystem/appdaemon/running/index.html b/docs/ecosystem/appdaemon/running/index.html index 25b82a5173..df5162a9fa 100644 --- a/docs/ecosystem/appdaemon/running/index.html +++ b/docs/ecosystem/appdaemon/running/index.html @@ -296,28 +296,9 @@ optional arguments:
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/ecosystem/appdaemon/tutorial/index.html b/docs/ecosystem/appdaemon/tutorial/index.html index 2fd09029cf..6df0072545 100644 --- a/docs/ecosystem/appdaemon/tutorial/index.html +++ b/docs/ecosystem/appdaemon/tutorial/index.html @@ -327,28 +327,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/ecosystem/appdaemon/updating/index.html b/docs/ecosystem/appdaemon/updating/index.html index 39be7d0a71..dae36c5873 100644 --- a/docs/ecosystem/appdaemon/updating/index.html +++ b/docs/ecosystem/appdaemon/updating/index.html @@ -243,28 +243,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/ecosystem/appdaemon/windows/index.html b/docs/ecosystem/appdaemon/windows/index.html index bea726ff65..adff4e47d4 100644 --- a/docs/ecosystem/appdaemon/windows/index.html +++ b/docs/ecosystem/appdaemon/windows/index.html @@ -241,28 +241,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/ecosystem/backup/backup_dropbox/index.html b/docs/ecosystem/backup/backup_dropbox/index.html index 7e4dbe0496..7bbfa5ec61 100644 --- a/docs/ecosystem/backup/backup_dropbox/index.html +++ b/docs/ecosystem/backup/backup_dropbox/index.html @@ -262,28 +262,9 @@ Add it to your crontab, edit the path/to part.

  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/ecosystem/backup/backup_github/index.html b/docs/ecosystem/backup/backup_github/index.html index 54c7992b38..0f20b47742 100644 --- a/docs/ecosystem/backup/backup_github/index.html +++ b/docs/ecosystem/backup/backup_github/index.html @@ -402,28 +402,9 @@ no changes added to commit (use "git add
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/ecosystem/backup/backup_usb/index.html b/docs/ecosystem/backup/backup_usb/index.html index 1b6f2a9d9c..63a3f3cc6f 100644 --- a/docs/ecosystem/backup/backup_usb/index.html +++ b/docs/ecosystem/backup/backup_usb/index.html @@ -313,28 +313,9 @@ Change below path to where you placed the usb_ba
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/ecosystem/certificates/lets_encrypt/index.html b/docs/ecosystem/certificates/lets_encrypt/index.html index f899e74ded..16d7ff17cf 100644 --- a/docs/ecosystem/certificates/lets_encrypt/index.html +++ b/docs/ecosystem/certificates/lets_encrypt/index.html @@ -646,28 +646,9 @@ Protocol - Both
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/ecosystem/certificates/tls_domain_certificate/index.html b/docs/ecosystem/certificates/tls_domain_certificate/index.html index 8145cf70bb..e89a54ebf5 100644 --- a/docs/ecosystem/certificates/tls_domain_certificate/index.html +++ b/docs/ecosystem/certificates/tls_domain_certificate/index.html @@ -284,28 +284,9 @@ Press Enter to Continue
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/ecosystem/certificates/tls_self_signed_certificate/index.html b/docs/ecosystem/certificates/tls_self_signed_certificate/index.html index f6e2cdb651..076a441695 100644 --- a/docs/ecosystem/certificates/tls_self_signed_certificate/index.html +++ b/docs/ecosystem/certificates/tls_self_signed_certificate/index.html @@ -248,28 +248,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/ecosystem/hadashboard/dash_config/index.html b/docs/ecosystem/hadashboard/dash_config/index.html deleted file mode 100644 index 467858de41..0000000000 --- a/docs/ecosystem/hadashboard/dash_config/index.html +++ /dev/null @@ -1,549 +0,0 @@ - - - - - - - - - Dashboard Configuration - Home Assistant - - - - - - - - - - - - - - - - - - - - - - - -
    -
    -
    -
    - -
    -

    - Dashboard Configuration -

    -
    -
    -

    (All installations)

    -

    Hadashboard is a Dashing application, so make sure to read all the instructions on http://dashing.io to learn how to add widgets to your dashboard, as well as how to create new widgets.

    -

    Make a copy of dashboards/example.erb and call it main.erb, then edit this file to reference the items you want to display and control and to get the layout that you want. Leave the original example.erb intact and unchanged so that you don’t run into problems when trying to update using the git commands mentioned later in “Updating the Dashboard”.

    -

    The basic anatomy of a widget is this:

    -
     	<li data-row="" data-col="1" data-sizex="1" data-sizey="1">
    -      <div data-id="office" data-view="Hadimmer" data-title="Office Lamp"></div>
    -    </li>
    -
    -
    -
      -
    • data-row, data-col: The position of the widget in the grid.
    • -
    • data-sizex, data-sizey: The size of the widget in terms of grid tile.
    • -
    • data-id: The homeassitant entity id without the entity type (e.g. light.office becomes office).
    • -
    • data-view: The type of widget to be used (Haswitch, Hadimmer, Hatemp etc.)
    • -
    • data-icon: The icon displayed on the tile. See http://fontawesome.io for an icon cheatsheet.
    • -
    • data-title: The title to be displayed on the tile.
    • -
    • data-bgcolor (optional) - the background color of the widget.
    • -
    -

    Note that although it is legal in XML terms to split the inner <div> like this:

    -
    <li data-row="" data-col="1" data-sizex="1" data-sizey="1">
    -  <div data-id="office"
    -        data-view="Hadimmer"
    -        data-title="Office Lamp">
    -  </div>
    -</li>
    -
    -
    -

    This may break hapush’s parsing of the file, so keep to the line format first presented.

    -

    Please, refer to the Dashing website for instructions on how to change the grid and tile size, as well as more general instructions about widgets, their properties, and how to create new widgets.

    -

    Supported Widgets

    -

    At this time I have provided support for the following Home Assistant entity types.

    -
      -
    • switch: Widget type Haswitch
    • -
    • lock: Widget type Halock
    • -
    • devicetracker: Widget type Hadevicetracker
    • -
    • light: Widget type Hadimmer
    • -
    • cover: Widget type Hacover
    • -
    • input_boolean: Widget type Hainputboolean
    • -
    • -

      scene: Widget type Hascene

      -
    • -
    • data-ontime (optional): The amount of time the scene icon lights up when pressed, in milliseconds, default 1000.
    • -
    -

    script

    -

    Widget type Hascript

    -

    data-ontime (optional): The amount of time the scene icon lights up when pressed, in milliseconds, default 1000.

    -

    mode

    -

    The Hamode widget alows you to run a script on activation and to link it with a specified input_select so the button will be highlighted for certain values of that input select. The usecase for this is that I maintain an input_select as a flag for the state of the house to simplify other automations. I use scripts to switch between the states, and this feature provides feedback as to the current state by lighting up the appropriate mode button.

    -

    A Hamode widget using this feature will look like this:

    -
    <li data-row="5" data-col="3" data-sizex="2" data-sizey="1">
    -      <div data-id="day" data-view="Hamode" data-title="Good Day" data-icon="sun-o" data-changemode="Day" data-input="house_mode"></div>
    -    </li>
    -
    -
    -
      -
    • data-changemode: The value of the input_select for which this script button will light up
    • -
    • data-input: The input_select entity to use (minus the leading entity type)
    • -
    -

    input_select (read only)

    -

    Widget type Hainputselect

    -

    sensor

    -

    Widget type Hasensor

    -

    Text based output of the value of a particular sensor.

    -

    The Hasensor widget supports an additional paramater data-unit. This allows you to set the unit to whatever you want: Centigrade, %, lux or whatever you need for the sensor in question. For a temperature sensor you will need to explicitly include the degree symbol like this:

    -
    data-unit="&deg;F"
    -
    -
    -

    If omitted, no units will be shown.

    -

    sensor

    -

    Widget type Hameter

    -

    An alternative to the text based Hasensor that works for numeric values only.

    -

    The Hameter widget supports an additional paramater data-unit. This allows you to set the unit to whatever you want: Centigrade, %, lux or whatever you need for the sensor in question. For a temperature sensor you will need to explicitly include the degree symbol like this:

    -
    data-unit="&deg;F"
    -
    -
    -

    If omitted, no units will be shown.

    -

    binary_sensor

    -

    Widget type Habinary

    -

    An icon-based option for generic binary sensors. Useful for things like door contact sensors. In addition to the standard widget parameters, Habinary supports two additional parameters:

    -
      -
    • data-iconon: the icon to display when the sensor state is “on”
    • -
    • data-iconoff: the icon to display when the sensor state if “off”
    • -
    -

    If no icons are specified, the widget defaults to a flat gray line for “off” and a green bullseye for “on”.

    -

    group

    -

    Widget type Hagroup.

    -

    The Hagroup widget uses the homeassistant/turn_on and homeassistant/turn_off API call, so certain functionality will be lost. For example, you will not be able to use control groups of locks or dim lights.

    -

    Alarm Control Panel

    -

    These widgets allow the user to create a working control panel that can be used to control the Manual Alarm Control Panel component (https://home-assistant.io/components/alarm_control_panel.manual). The example dashboard contains an arrangement similar to this:

    -

    - - The Alarm Panel -

    -

    Widget type Haalarmstatus

    -

    The Haalarmstatus widget displays the current status of the alarm_control_panel entity. It will also display the code as it is being entered by the user.

    -

    The data-id must be the same as the alarm_control_panel entity_id in Home Assistant.

    -

    Widget type Haalarmdigit

    -

    The Haalarmdigit widget is used to create the numeric keypad for entering alarm codes.

    -

    data-digit holds the numeric value you wish to enter. The special value of “-“ creates a ‘clear’ button which will wipe the code and return the Haalarmstatus widget display back to the current alarm state.

    -

    data-alarmentity holds the data-id of the Haalarmstatus widget, so that the status widget can be correctly updated. It is mandatory for a ‘clear’ type digit and optional for normal numeric buttons.

    -

    Widget type Haalarmaction

    -

    The Haalarmaction widget creates the arm/disarm/trigger buttons. Bear in mind that alarm triggering does not require a code, so you may not want to put this button near the other buttons in case it is pressed accidentally.

    -

    data-action must contain one of the following: arm_home/arm_away/trigger/disarm.

    -

    weather (requires DarkSky)

    -

    Widget type Haweather.

    -

    In order to use the weather widget you must configure the DarkSky component, and ensure that you configure at least the following monitored conditions in your Home Assistant sensor configuration:

    -
      -
    • temperature
    • -
    • humidity
    • -
    • precip_probability
    • -
    • precip_intensity
    • -
    • wind_speed
    • -
    • pressure
    • -
    • wind_bearing
    • -
    • apparent_temperature
    • -
    • icon
    • -
    -

    The data-id of the Haweather widget must be set to weather or the widget will not work.

    -

    The Hatemp widget supports an additional paramater data-unit. This allows you to set the unit to whatever you want: Centigrade, Fahrenheit or even Kelvin if you prefer. You will need to explicitly include the degree symbol like this:

    -
    data-unit="&deg;F"
    -
    -
    -

    If omitted, no units will be shown.

    -

    News

    -

    Widget type News (contributed by KRiS)

    -

    This is an RSS widget that can be used for displaying travel information, news etc. on the dashboard. The RSS feed will update every 60 minutes. To configure this, first it is necessary to add your desired feeds in homeassistant/lib/ha_conf.rb in the $news_feeds section. By default it comes with 2 sample feeds:

    -
    $news_feeds = {
    -  "Traffic" => "http://api.sr.se/api/rss/traffic/2863",
    -  "News" => "http://feeds.bbci.co.uk/news/rss.xml",
    -}
    -
    -
    -

    You can add as many as you want. The important point is that the key value (e.g. “Traffic” or “News” in the example above is used to tie the feed to your widget in the dashboard file. Here is an example of the Traffic widget that displays the first feed in the list:

    -
    <li data-row="3" data-col="2" data-sizex="2" data-sizey="2">
    -  <div data-id="Traffic" data-view="News" data-title="Traffic" data-interval="30" data-bgcolor="#643EBF">
    -</li>
    -
    -
    -

    The value of thee data-id tag must match the key value in the $news_feeds configuration.

    -
      -
    • data-interval (optional): The time in seconds that each entry in the RSS feed is displayed before the next one is shown, default is 30 seconds.
    • -
    -

    The follwing widget types have been deprecated in favor of the more flexible Hasensor and Hameter widgets. They will be removed in a future release.

    -

    sensor (humidity)

    -

    Widget type Hahumidity.

    -

    sensor (humidity)

    -

    Widget type Hahumiditymeter (contributed by Shiv Chanders)

    -

    This is an alternative to the the text based humidity widget above, it display the humidity as an animated meter from 0 to 100%.

    -

    sensor (luminance)

    -

    Widget type Halux.

    -

    sensor (temperature)

    -

    Widget type Hatemp.

    -

    The Hatemp widget supports an additional paramater data-unit. This allows you to set the unit to whatever you want: Centigrade, Fahrenheit or even Kelvin if you prefer. You will need to explicitly include the degree symbol like this:

    -
    data-unit="&deg;F"
    -
    -
    -

    If omitted, no units will be shown.

    -

    Customizing CSS styles

    -

    If you want to customize the styles of your dashboard and widgets, there are two options:

    -
      -
    1. You can edit the application.scss file (and the individual widget .scss files) directly (not recommended; if you pull down updates from the master repository, your changes might conflict/be overwritten)
    2. -
    3. Create override files (recommended) -
        -
      1. Create a couple of additional files in the assets/stylesheets directory: _application_custom.scss and _variables_custom.scss.
      2. -
      3. Open application.scss and go to the bottom of the file. Uncomment the @import line.
      4. -
      5. Open _variables.scss and go to the bottom of the file. Uncomment the @import line.
      6. -
      7. Write your own SASS styles in _application_custom.scss (for general style customization) and _variables_custom.scss (for colors). You can customize those files without worrying about your changes getting overwritten if you pull down an update. The most you may have to do, if you update, will be to uncomment the @import lines again from steps 2 and 3.
      8. -
      -
    4. -
    -

    Note: The _variables.scss file (and your customizations from _variables_custom.scss) get imported into nearly every widget’s SCSS file, so it is a best practice to define varaibles for colors in _variables.scss or _variables_custom.scss and reference those variables in the widget SCSS.

    -

    Changes and Restarting

    -

    When you make changes to a dashboard, Dashing and hapush will both automatically reload and apply the changes without a need to restart.

    -

    Note: The first time you start Dashing, it can take up to a minute for the initial compilation of the pages to occur. You might get a timeout from your browser. If this occurs, be patient and reload. Subsequent reloads will be a lot quicker.

    -

    Multiple Pages

    -

    It is possible to have multiple pages within a dashboard. To do this, you can add an arbitary number of gridster divisions (you need at least one).

    -
    <div class="gridster"> <!-- Main Panel - PAGE 1 -->
    -  <some widgets>
    -</div
    -<div class="gridster"> <!-- More Stuff - PAGE 2 -->
    -  <more widgets>
    -</div
    -
    -
    -

    The divisions are implicitly numbered from 1 so it is a good idea to comment them. You can then add a widget to switch between pages like so:

    -
    <li data-row="1" data-col="1" data-sizex="1" data-sizey="1">
    -    <div data-id="cpage1" data-view="ChangePage" data-icon="cogs" data-title="Upstairs" data-page="3" data-stagger="false" data-fasttransition="true" data-event-click="onClick"></div>
    -</li>
    -
    -
    -
      -
    • data-page : The name of the page to switch to
    • -
    -

    Multiple Dashboards

    -

    You can also have multiple dashboards, by simply adding a new .erb file to the dashboards directory and navigating to the dashboards via http://<IP address>:3030/dashboard-file-name-without-extension

    -

    For example, if you want to deploy multiple devices, you could have one dashboard per room and still only use one hadashboard app installation.

    -
    -
    - -
    -
    - - - - - - - diff --git a/docs/ecosystem/hadashboard/hapush/index.html b/docs/ecosystem/hadashboard/hapush/index.html deleted file mode 100644 index a1a5db83c3..0000000000 --- a/docs/ecosystem/hadashboard/hapush/index.html +++ /dev/null @@ -1,419 +0,0 @@ - - - - - - - - - HAPush - Home Assistant - - - - - - - - - - - - - - - - - - - - - - - -
    -
    -
    -
    - -
    -

    - HAPush -

    -
    -
    -

    Installing hapush (Manual install only)

    -

    This is not necessary if you are using Docker as it is already installed.

    -

    When you have the dashboard correctly displaying and interacting with Home Assistant you are ready to install the final component - hapush. Without hapush the dashboard would not respond to events that happen outside of the hadashboard system. For instance, if someone uses the Home Assistant interface to turn on a light, or even another App or physical switch, there is no way for the Dashboard to reflect this change. This is where hapush comes in.

    -

    hapush is a python daemon that listens to Home Assistant’s Event Stream and pushes changes back to the dashboard to update it in real time. You may want to create a Virtual Environment for hapush - at the time of writing there is a conflict in the Event Source versions in use between HA and hapush.

    -

    Before running hapush you will need to add some python prerequisites:

    -
    $ sudo pip3 install daemonize
    -$ sudo pip3 install sseclient
    -$ sudo pip3 install configobj
    -
    -
    -

    Some users are reporting errors with InsecureRequestWarning:

    -
    Traceback (most recent call last):
    -  File "./hapush.py", line 21, in <module>
    -    from requests.packages.urllib3.exceptions import InsecureRequestWarning
    -ImportError: cannot import name 'InsecureRequestWarning'
    -
    -
    -

    This can be fixed with:

    -
    $ sudo pip3 install --upgrade requests
    -
    -
    -

    Configuring hapush (all installation methods)

    -

    When you have all the prereqs in place, copy the hapush.cfg.example file to hapush.cfg then edit it to reflect your environment:

    -
    ha_url = "http://192.168.1.10:8123"
    -ha_key = api_key
    -dash_host = "192.168.1.10:3030"
    -dash_dir = "/srv/hass/src/hadashboard/dashboards"
    -logfile = "/etc/hapush/hapush.log"
    -
    -
    -
      -
    • ha_url is a reference to your home assistant installation and must include the correct port number and scheme (http:// or https:// as appropriate)
    • -
    • ha_key should be set to your key if you have one, otherwise it can be removed.
    • -
    • dash_host should be set to the IP address and port of the host you are running Dashing on (no http or https) - this should be the same machine as you are running hapush on.
    • -
    • dash_dir is the path on the machine that stores your dashboards. This will be the subdirectory dashboards relative to the path you cloned hadashboard to. For Docker installs this should be set to /app/dashboards
    • -
    • logfile is the path to where you want hapush to keep its logs. When run from the command line this is not used - log messages come out on the terminal. When running as a daemon this is where the log information will go. In the example above I created a directory specifically for hapush to run from, although there is no reason you can’t keep it in the hapush subdirectory of the cloned repository. For Docker installs this should be set to /app/hapush/hapush.log
    • -
    -

    Running hapush

    -

    For a manual installation you can then run hapush from the command-line as follows:

    -
    $ ./hapush.py hapush.cfg
    -
    -
    -

    For Docker installs, hapush will be started automatically when you run the startup command.

    -

    If all is well, you should start to see hapush responding to events as they occur. For a docker installation you should see these messages in hapush/hapush.log.

    -
    2016-06-19 10:05:59,693 INFO Reading dashboard: /srv/hass/src/hadashboard/dashboards/main.erb
    -2016-06-19 10:06:12,362 INFO switch.wendy_bedside -> state = on, brightness = 50
    -2016-06-19 10:06:13,334 INFO switch.andrew_bedside -> state = on, brightness = 50
    -2016-06-19 10:06:13,910 INFO script.night -> Night
    -2016-06-19 10:06:13,935 INFO script.night_quiet -> Night
    -2016-06-19 10:06:13,959 INFO script.day -> Night
    -2016-06-19 10:06:13,984 INFO script.evening -> Night
    -2016-06-19 10:06:14,008 INFO input_select.house_mode -> Night
    -2016-06-19 10:06:14,038 INFO script.morning -> Night
    -2016-06-19 10:06:21,624 INFO script.night -> Day
    -2016-06-19 10:06:21,649 INFO script.night_quiet -> Day
    -2016-06-19 10:06:21,674 INFO script.day -> Day
    -2016-06-19 10:06:21,698 INFO script.evening -> Day
    -2016-06-19 10:06:21,724 INFO input_select.house_mode -> Day
    -2016-06-19 10:06:21,748 INFO script.morning -> Day
    -2016-06-19 10:06:31,084 INFO switch.andrew_bedside -> state = off, brightness = 30
    -2016-06-19 10:06:32,501 INFO switch.wendy_bedside -> state = off, brightness = 30
    -2016-06-19 10:06:52,280 INFO sensor.side_multisensor_luminance_25 -> 871.0
    -2016-06-19 10:07:50,574 INFO sensor.side_temp_corrected -> 70.7
    -2016-06-19 10:07:51,478 INFO sensor.side_multisensor_relative_humidity_25 -> 52.0
    -
    -
    -
    -
    - -
    -
    - - - - - - - diff --git a/docs/ecosystem/hadashboard/index.html b/docs/ecosystem/hadashboard/index.html index 19605ac705..c92749f5fb 100644 --- a/docs/ecosystem/hadashboard/index.html +++ b/docs/ecosystem/hadashboard/index.html @@ -75,12 +75,28 @@
    -

    HADashboard is a dashboard for Home Assistant that is intended to be wall mounted, and is optimized for distance viewing.

    +

    HADashboard is a modular, skinnable dashboard for Home Assistant that is intended to be wall mounted, and is optimized for distance viewing.

    - - Sample Dashboard + + Default Theme

    -

    HADashboard was originally created by the excellent work of FlorianZ for use with the SmartThings Home Automation system, with notable contributions from the SmartThings Community. I would also like to acknowledge contributions made by zipriddy. This is my port of hadashboard to Home Assistant.

    +

    + + Obsidian Theme +

    +

    + + Zen Theme +

    +

    + + Simply Red Theme +

    +

    + + Glassic Theme +

    +

    For full installation instructions see DASHBOARD.md in the AppDaemon Repository.

  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/ecosystem/hadashboard/installation/index.html b/docs/ecosystem/hadashboard/installation/index.html deleted file mode 100644 index cb0c00f67e..0000000000 --- a/docs/ecosystem/hadashboard/installation/index.html +++ /dev/null @@ -1,449 +0,0 @@ - - - - - - - - - Installation - Home Assistant - - - - - - - - - - - - - - - - - - - - - - - -
    -
    -
    -
    - -
    -

    - Installation -

    -
    -
    -

    Installation can be performed using Docker (Contributed by marijngiesen) or manually if Docker doesn’t work for you. We also have a Raspberry Pi version of Docker contributed by snizzleorg.

    -

    Using Docker (Non Raspian)

    -

    Assuming you already have Docker installed, installation is fairly easy.

    -

    Clone the Repository

    -

    Clone the hadashboard repository to the current local directory on your machine.

    -
    $ git clone https://github.com/home-assistant/hadashboard.git
    -
    -
    -

    Change your working directory to the repository root. Moving forward, we will be working from this directory.

    -
    $ cd hadashboard
    -
    -
    -

    Build the docker image

    -
    $ docker build -t hadashboard .
    -
    -
    -

    When the build completes, you can run the dashboard with the following command for unix based systems:

    -
    $ docker run --name="hadashboard" -d -v <path_to_hadashboard>/dashboards:/app/dashboards -v <path_to_hadashboard>/lib/ha_conf.rb:/app/lib/ha_conf.rb -v <path_to_hadashboard>/hapush:/app/hapush --net=host hadashboard
    -
    -
    -

    If you are running docker on windows you should not use the --net command and explicitly specify the port, also for security reason --net=host should not be used so the following can also be used in unix. This will also set the process to start when the docker process starts so you do not have to worry about reboots. To map the volumes make sure you have ticked the shred drives in the settings. In this example I am using c:\hadashboard as the location where the git clone was done and mapping to port 3030 on the host.

    -
    docker run --restart=always --name="hadashboard" -p 3030:3030 -d -v C:/hadashboard/dashboards:/app/dashboards -v C:/hadashboard/lib/ha_conf.rb:/app/lib/ha_conf.rb -v C:/hadashboard/hapush:/app/hapush hadashboard 
    -
    -
    -

    This will use all of the same configuration files as specified below in the configuration sections, although you will need to make a few changes to the hapush configuration to match the docker’s filesystem, detailed below.

    -

    By default, the docker instance should pick up your timezone but if you want to explicitly set it you can add an environment variable for your specific zone as follows:

    -
     -e "TZ=Europe/Amsterdam"
    -
    -
    -

    Docker on Raspberry Pi

    -

    Raspberry Pi needs to use a different Docker build file so the build command is slightly different:

    -
    $ sudo docker build -f Docker-raspi/Dockerfile -t hadashboard .
    -
    -
    -

    Apart from that the other steps are identical. Running Docker is pretty slow even on a PI3, be prepared for it to take an hour or two to build all of the extensions and install everything.

    -

    Manual Installation

    -

    Clone the Repository

    -

    Clone the hadashboard repository to the current local directory on your machine.

    -
    $ git clone https://github.com/home-assistant/hadashboard.git
    -
    -
    -

    Change your working directory to the repository root. Moving forward, we will be working from this directory.

    -
    $ cd hadashboard
    -
    -
    -

    2. Install Dashing and prerequirments

    -

    Essentially, you want to make sure that you have Ruby installed on your local machine.

    -

    For Debian based distribution do:

    -
    $ sudo apt-get install rubygems
    -
    -
    -

    Then, install the Dashing gem:

    -
    $ gem install dashing
    -
    -
    -

    From your repository root, make sure that all dependencies are available. On some systems you may also need to install bundler:

    -
    $ gem install bundler
    -
    -
    -

    When installed run it:

    -
    $ bundle
    -
    -
    -

    Bundle will now install all the ruby prerequirements for running dashing. Prerequirements will vary across different machines. So far users have reported requirements for some additional installs to allow the bundle to complete succesfully:

    -
      -
    • ruby-dev - sudo apt-get install ruby-dev
    • -
    • node-js - sudo apt-get install nodejs
    • -
    • libsqlite3-dev - sudo apt-get install libsqlite3-dev
    • -
    • execjs gem - gem install execjs
    • -
    -

    You will need to research what works on your particular architecture and also bear in mind that version numbers may change over time.

    -

    This is currently running on various versions of Ruby and there are no strong dependencies however your mileage may vary.

    -

    Updating configuration (Manual and Docker)

    -

    Next, in the ./lib directory, copy the ha_conf.rb.example file to ha_conf.rb and edit its settings to reflect your installation, pointing to the machine Home Assistant is running on and adding your API key.

    -
    $ha_url = "http://192.168.1.10:8123"
    -$ha_apikey = "your key"
    -
    -
    -
      -
    • $ha_url is a reference to your Home Assistant installation and must include the correct port number and scheme (http:// or https:// as appropriate)
    • -
    • $ha_apikey should be set to your key if you have one, otherwise it can remain blank.
    • -
    -

    The file also contains example newsfeeds for the News widget:

    -
    $news_feeds = {
    -  "Traffic" => "http://api.sr.se/api/rss/traffic/2863",
    -  "News" => "http://feeds.bbci.co.uk/news/rss.xml",
    -}
    -
    -
    -

    You can leave these alone for now or if you prefer customize them as described in the News widget section.

    -

    When you are done, you can start a local webserver like this or if you are on docker it should start when you start the container.

    -
    $ dashing start
    -
    -
    -

    Point your browser to http://localhost:3030 to access the hadashboard on your local machine, and you should see the supplied default dashboard. If you want to access it remotely ensure you have opened any required firewall rules.

    -

    If the page never finishes loading and shows up all white, edit the dashboard config to match your own setup, instructions in the next step.

    -
    -
    - -
    -
    - - - - - - - diff --git a/docs/ecosystem/hadashboard/reboot/index.html b/docs/ecosystem/hadashboard/reboot/index.html deleted file mode 100644 index 563b58f640..0000000000 --- a/docs/ecosystem/hadashboard/reboot/index.html +++ /dev/null @@ -1,356 +0,0 @@ - - - - - - - - - Reboot - Home Assistant - - - - - - - - - - - - - - - - - - - - - - - -
    -
    -
    -
    - -
    -

    - Reboot -

    -
    -
    -

    To run Dashing and hapush at reboot, checkout out the sample init scripts in the ./init directory. These have been tested on a Raspberry Pi - your mileage may vary on other systems.

    -

    Instructions for automatically starting a Docker installation can be found here.

    -

    For Docker you may also want to use docker-compose - there is a sample compose file in the ./init directory.

    -
    -
    - -
    -
    - - - - - - - diff --git a/docs/ecosystem/hadashboard/updating/index.html b/docs/ecosystem/hadashboard/updating/index.html deleted file mode 100644 index f846a21861..0000000000 --- a/docs/ecosystem/hadashboard/updating/index.html +++ /dev/null @@ -1,362 +0,0 @@ - - - - - - - - - Updating HADashboard - Home Assistant - - - - - - - - - - - - - - - - - - - - - - - -
    -
    -
    -
    - -
    -

    - Updating HADashboard -

    -
    -
    -

    To update the dashboard after new code has been released, just run the following command to update your copy:

    -
    $ git pull origin
    -
    -
    -

    For some releases you may also need to rerun the bundle command:

    -
    $ bundle
    -
    -
    -

    For Docker users, you will also need to rerun the Docker build process.

    -
    -
    - -
    -
    - - - - - - - diff --git a/docs/ecosystem/hass-configurator/index.html b/docs/ecosystem/hass-configurator/index.html index 4a5b148e0d..afd26b1ed4 100644 --- a/docs/ecosystem/hass-configurator/index.html +++ b/docs/ecosystem/hass-configurator/index.html @@ -334,28 +334,9 @@ To resume the screen session, log in to your machine and execute ios.conf
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/ecosystem/ios/notifications/privacy_security_rate_limits/index.html b/docs/ecosystem/ios/notifications/privacy_security_rate_limits/index.html index aa48b67421..581f0308ac 100644 --- a/docs/ecosystem/ios/notifications/privacy_security_rate_limits/index.html +++ b/docs/ecosystem/ios/notifications/privacy_security_rate_limits/index.html @@ -239,28 +239,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/ecosystem/ios/notifications/requesting_location_updates/index.html b/docs/ecosystem/ios/notifications/requesting_location_updates/index.html index 42023c384c..fb294ca0c6 100644 --- a/docs/ecosystem/ios/notifications/requesting_location_updates/index.html +++ b/docs/ecosystem/ios/notifications/requesting_location_updates/index.html @@ -248,28 +248,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/ecosystem/ios/notifications/sounds/index.html b/docs/ecosystem/ios/notifications/sounds/index.html index a58a594cc7..e23d06cb07 100644 --- a/docs/ecosystem/ios/notifications/sounds/index.html +++ b/docs/ecosystem/ios/notifications/sounds/index.html @@ -403,28 +403,9 @@ US-EN-Morgan-Freeman-Wife-Is-Arriving.wav
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/ecosystem/nginx/index.html b/docs/ecosystem/nginx/index.html index c157c33fc7..c28bf7aaa0 100644 --- a/docs/ecosystem/nginx/index.html +++ b/docs/ecosystem/nginx/index.html @@ -329,28 +329,9 @@ server {
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/ecosystem/nginx_subdomain/index.html b/docs/ecosystem/nginx_subdomain/index.html index c762adcab2..5d05422d3e 100644 --- a/docs/ecosystem/nginx_subdomain/index.html +++ b/docs/ecosystem/nginx_subdomain/index.html @@ -322,28 +322,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/ecosystem/notebooks/api/index.html b/docs/ecosystem/notebooks/api/index.html index caa5c30013..380e55e2d9 100644 --- a/docs/ecosystem/notebooks/api/index.html +++ b/docs/ecosystem/notebooks/api/index.html @@ -234,28 +234,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/ecosystem/notebooks/database/index.html b/docs/ecosystem/notebooks/database/index.html index 1636f0e75e..4201af5533 100644 --- a/docs/ecosystem/notebooks/database/index.html +++ b/docs/ecosystem/notebooks/database/index.html @@ -234,28 +234,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/ecosystem/notebooks/graph/index.html b/docs/ecosystem/notebooks/graph/index.html index c79aedcf38..cbbc3599e6 100644 --- a/docs/ecosystem/notebooks/graph/index.html +++ b/docs/ecosystem/notebooks/graph/index.html @@ -234,28 +234,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/ecosystem/notebooks/index.html b/docs/ecosystem/notebooks/index.html index d06e546f56..f63ce05948 100644 --- a/docs/ecosystem/notebooks/index.html +++ b/docs/ecosystem/notebooks/index.html @@ -239,28 +239,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/ecosystem/notebooks/installation/index.html b/docs/ecosystem/notebooks/installation/index.html index 3e084f8493..e9596698b9 100644 --- a/docs/ecosystem/notebooks/installation/index.html +++ b/docs/ecosystem/notebooks/installation/index.html @@ -259,28 +259,9 @@ Certain notebooks hosted in the done: 1 IP address (1 host up
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/hassbian/common-tasks/index.html b/docs/hassbian/common-tasks/index.html index c9d14980d5..8e7b49f483 100644 --- a/docs/hassbian/common-tasks/index.html +++ b/docs/hassbian/common-tasks/index.html @@ -320,28 +320,9 @@ Log in as the pi account and execute the
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/hassbian/customization/index.html b/docs/hassbian/customization/index.html index 44deb65c69..65e2527e18 100644 --- a/docs/hassbian/customization/index.html +++ b/docs/hassbian/customization/index.html @@ -246,28 +246,9 @@ For more information about this tool have a look at the
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/hassbian/upgrading/index.html b/docs/hassbian/upgrading/index.html index 383f4c1eae..a46a500319 100644 --- a/docs/hassbian/upgrading/index.html +++ b/docs/hassbian/upgrading/index.html @@ -249,28 +249,9 @@ Log in as the pi account and execute the
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/index.html b/docs/index.html index 4dd428f791..d1557d898c 100644 --- a/docs/index.html +++ b/docs/index.html @@ -274,28 +274,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/installation/archlinux/index.html b/docs/installation/archlinux/index.html index 3a01d17544..0e3d96ef73 100644 --- a/docs/installation/archlinux/index.html +++ b/docs/installation/archlinux/index.html @@ -247,28 +247,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/installation/armbian/index.html b/docs/installation/armbian/index.html index 6a2e8dafd6..cf6c7b90c8 100644 --- a/docs/installation/armbian/index.html +++ b/docs/installation/armbian/index.html @@ -255,28 +255,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/installation/centos/index.html b/docs/installation/centos/index.html index ecf1a6ea1f..a0ff1327d7 100644 --- a/docs/installation/centos/index.html +++ b/docs/installation/centos/index.html @@ -271,28 +271,9 @@ WantedBy=multi-user.target
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/installation/docker/index.html b/docs/installation/docker/index.html index bcb1c6c25c..ba2ee527fe 100644 --- a/docs/installation/docker/index.html +++ b/docs/installation/docker/index.html @@ -287,28 +287,9 @@ netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=8123 conne
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/installation/fedora/index.html b/docs/installation/fedora/index.html index e5775afc60..10241c2c46 100644 --- a/docs/installation/fedora/index.html +++ b/docs/installation/fedora/index.html @@ -258,28 +258,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/installation/freenas/index.html b/docs/installation/freenas/index.html index 027d92c12d..ff982e00a1 100644 --- a/docs/installation/freenas/index.html +++ b/docs/installation/freenas/index.html @@ -259,28 +259,9 @@ USB Z-wave sticks may give dmesg warnings
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/installation/index.html b/docs/installation/index.html index 0f976c69b9..c1566a5042 100644 --- a/docs/installation/index.html +++ b/docs/installation/index.html @@ -316,28 +316,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/installation/macos/index.html b/docs/installation/macos/index.html index d3b9ba1afc..ff20bc74ef 100644 --- a/docs/installation/macos/index.html +++ b/docs/installation/macos/index.html @@ -240,28 +240,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/installation/python/index.html b/docs/installation/python/index.html index 9dd2b2e855..e8ffa52ed1 100644 --- a/docs/installation/python/index.html +++ b/docs/installation/python/index.html @@ -250,28 +250,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/installation/raspberry-pi-all-in-one/index.html b/docs/installation/raspberry-pi-all-in-one/index.html index dcf497c207..882696ee3c 100644 --- a/docs/installation/raspberry-pi-all-in-one/index.html +++ b/docs/installation/raspberry-pi-all-in-one/index.html @@ -333,28 +333,9 @@ Don’t check the USB box regardless of using a USB based device.
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/installation/raspberry-pi/index.html b/docs/installation/raspberry-pi/index.html index a9021bdfbc..8331e2c632 100644 --- a/docs/installation/raspberry-pi/index.html +++ b/docs/installation/raspberry-pi/index.html @@ -279,28 +279,9 @@ Since this account is only for running Home Assistant the extra arguments of
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/installation/synology/index.html b/docs/installation/synology/index.html index 73addd59af..501d1eb9f6 100644 --- a/docs/installation/synology/index.html +++ b/docs/installation/synology/index.html @@ -434,28 +434,9 @@ That’s it… you’re all set to go

  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/installation/troubleshooting/index.html b/docs/installation/troubleshooting/index.html index 4856537e7d..511867633a 100644 --- a/docs/installation/troubleshooting/index.html +++ b/docs/installation/troubleshooting/index.html @@ -275,28 +275,9 @@ chrome -> settings -> site settings -> storage -> search for your UR
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/installation/updating/index.html b/docs/installation/updating/index.html index e368b0cc26..cef3dd1f17 100644 --- a/docs/installation/updating/index.html +++ b/docs/installation/updating/index.html @@ -258,28 +258,9 @@ To avoid permission errors, the upgrade must be run as the same user as the inst
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/installation/vagrant/index.html b/docs/installation/vagrant/index.html index dc07afbf97..dbe649bc31 100644 --- a/docs/installation/vagrant/index.html +++ b/docs/installation/vagrant/index.html @@ -291,28 +291,9 @@ This command will only restart the Home Assistant process inside the Vagrant VM,
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/installation/virtualenv/index.html b/docs/installation/virtualenv/index.html index 8f0099ebc4..db14746b6d 100644 --- a/docs/installation/virtualenv/index.html +++ b/docs/installation/virtualenv/index.html @@ -292,28 +292,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/installation/windows/index.html b/docs/installation/windows/index.html index 2345b68fda..78510ddace 100644 --- a/docs/installation/windows/index.html +++ b/docs/installation/windows/index.html @@ -244,28 +244,9 @@ The Microsoft Windows platform is not a primary target to install home Assistant
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/mqtt/birth_will/index.html b/docs/mqtt/birth_will/index.html index 37383aa16b..340989dd9e 100644 --- a/docs/mqtt/birth_will/index.html +++ b/docs/mqtt/birth_will/index.html @@ -264,28 +264,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/mqtt/broker/index.html b/docs/mqtt/broker/index.html index 670bf88ebe..ec98f42699 100644 --- a/docs/mqtt/broker/index.html +++ b/docs/mqtt/broker/index.html @@ -361,28 +361,9 @@ Home Assistant will automatically load the correct certificate if you connect to
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/mqtt/certificate/index.html b/docs/mqtt/certificate/index.html index 57f834397a..086ffddd9b 100644 --- a/docs/mqtt/certificate/index.html +++ b/docs/mqtt/certificate/index.html @@ -246,28 +246,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/mqtt/discovery/index.html b/docs/mqtt/discovery/index.html index fc75121a59..e3edf7dcf0 100644 --- a/docs/mqtt/discovery/index.html +++ b/docs/mqtt/discovery/index.html @@ -294,28 +294,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/mqtt/index.html b/docs/mqtt/index.html index 4a04b48844..0c743c5a20 100644 --- a/docs/mqtt/index.html +++ b/docs/mqtt/index.html @@ -251,28 +251,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/mqtt/logging/index.html b/docs/mqtt/logging/index.html index 643d6ca7c6..8cc1a5d441 100644 --- a/docs/mqtt/logging/index.html +++ b/docs/mqtt/logging/index.html @@ -241,28 +241,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/mqtt/processing_json/index.html b/docs/mqtt/processing_json/index.html index 2cfe9537dc..928c827bdd 100644 --- a/docs/mqtt/processing_json/index.html +++ b/docs/mqtt/processing_json/index.html @@ -269,28 +269,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/mqtt/service/index.html b/docs/mqtt/service/index.html index db1d9bbb9a..96028b5593 100644 --- a/docs/mqtt/service/index.html +++ b/docs/mqtt/service/index.html @@ -246,28 +246,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/mqtt/testing/index.html b/docs/mqtt/testing/index.html index 2757b610f0..5fc49b78c0 100644 --- a/docs/mqtt/testing/index.html +++ b/docs/mqtt/testing/index.html @@ -265,28 +265,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/scripts/conditions/index.html b/docs/scripts/conditions/index.html index c1e8eee5f3..1b82fb335a 100644 --- a/docs/scripts/conditions/index.html +++ b/docs/scripts/conditions/index.html @@ -362,28 +362,9 @@ Time condition windows can span across the midnight threshold. In the example ab
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/scripts/index.html b/docs/scripts/index.html index 423c1efd2d..c57bc579dc 100644 --- a/docs/scripts/index.html +++ b/docs/scripts/index.html @@ -305,28 +305,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/scripts/service-calls/index.html b/docs/scripts/service-calls/index.html index 7b2a0439f7..829be0c2c1 100644 --- a/docs/scripts/service-calls/index.html +++ b/docs/scripts/service-calls/index.html @@ -285,28 +285,9 @@ Service Data: {
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/tools/dev-tools/index.html b/docs/tools/dev-tools/index.html index 6577f53249..d88db70edc 100644 --- a/docs/tools/dev-tools/index.html +++ b/docs/tools/dev-tools/index.html @@ -274,28 +274,9 @@ Screenshot of Home Assistant’s Developer Tools.
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/tools/hass/index.html b/docs/tools/hass/index.html index ec13718018..38e4ea4f37 100644 --- a/docs/tools/hass/index.html +++ b/docs/tools/hass/index.html @@ -263,28 +263,9 @@ optional arguments:
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/tools/index.html b/docs/tools/index.html index c73c749d8e..f5946088d1 100644 --- a/docs/tools/index.html +++ b/docs/tools/index.html @@ -234,28 +234,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/tools/scripts/index.html b/docs/tools/scripts/index.html index 229abef73a..98f211525d 100644 --- a/docs/tools/scripts/index.html +++ b/docs/tools/scripts/index.html @@ -261,28 +261,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/z-wave/controllers/index.html b/docs/z-wave/controllers/index.html index 3bc1e3ac3a..ef29b3c742 100644 --- a/docs/z-wave/controllers/index.html +++ b/docs/z-wave/controllers/index.html @@ -286,28 +286,9 @@ Upon first run, the zwave component will
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/z-wave/device-specific/index.html b/docs/z-wave/device-specific/index.html index 86dae80112..48ab7df595 100644 --- a/docs/z-wave/device-specific/index.html +++ b/docs/z-wave/device-specific/index.html @@ -327,28 +327,9 @@ Make sure you copy the newly saved zwcfg_[home_i
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/z-wave/index.html b/docs/z-wave/index.html index a9c3bc7dc4..7d789cf94b 100644 --- a/docs/z-wave/index.html +++ b/docs/z-wave/index.html @@ -470,28 +470,9 @@ Depending on what’s plugged into your USB ports, the name found above may chan
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/docs/z-wave/settings/index.html b/docs/z-wave/settings/index.html index afa980734e..1b20674efb 100644 --- a/docs/z-wave/settings/index.html +++ b/docs/z-wave/settings/index.html @@ -245,28 +245,9 @@
  • AppDaemon -
  • HADashboard -
  • Notebooks diff --git a/ecosystem/hadashboard/dash_config/index.html b/ecosystem/hadashboard/dash_config/index.html deleted file mode 100644 index 2b750101f1..0000000000 --- a/ecosystem/hadashboard/dash_config/index.html +++ /dev/null @@ -1,10 +0,0 @@ - - - -Redirecting… - - -

    Redirecting…

    -Click here if you are not redirected. - - diff --git a/ecosystem/hadashboard/hapush/index.html b/ecosystem/hadashboard/hapush/index.html deleted file mode 100644 index 319d29f2c4..0000000000 --- a/ecosystem/hadashboard/hapush/index.html +++ /dev/null @@ -1,10 +0,0 @@ - - - -Redirecting… - - -

    Redirecting…

    -Click here if you are not redirected. - - diff --git a/ecosystem/hadashboard/installation/index.html b/ecosystem/hadashboard/installation/index.html deleted file mode 100644 index 5769944589..0000000000 --- a/ecosystem/hadashboard/installation/index.html +++ /dev/null @@ -1,10 +0,0 @@ - - - -Redirecting… - - -

    Redirecting…

    -Click here if you are not redirected. - - diff --git a/ecosystem/hadashboard/reboot/index.html b/ecosystem/hadashboard/reboot/index.html deleted file mode 100644 index 7c42aa18d1..0000000000 --- a/ecosystem/hadashboard/reboot/index.html +++ /dev/null @@ -1,10 +0,0 @@ - - - -Redirecting… - - -

    Redirecting…

    -Click here if you are not redirected. - - diff --git a/ecosystem/hadashboard/updating/index.html b/ecosystem/hadashboard/updating/index.html deleted file mode 100644 index d303a5fb10..0000000000 --- a/ecosystem/hadashboard/updating/index.html +++ /dev/null @@ -1,10 +0,0 @@ - - - -Redirecting… - - -

    Redirecting…

    -Click here if you are not redirected. - - diff --git a/images/hadashboard/dash.png b/images/hadashboard/dash.png deleted file mode 100755 index 5f5a4c3d54..0000000000 Binary files a/images/hadashboard/dash.png and /dev/null differ diff --git a/images/hadashboard/dash1.png b/images/hadashboard/dash1.png new file mode 100755 index 0000000000..4d64b37cd0 Binary files /dev/null and b/images/hadashboard/dash1.png differ diff --git a/images/hadashboard/dash2.png b/images/hadashboard/dash2.png new file mode 100755 index 0000000000..300af6bbd2 Binary files /dev/null and b/images/hadashboard/dash2.png differ diff --git a/images/hadashboard/dash3.png b/images/hadashboard/dash3.png new file mode 100755 index 0000000000..94c9c395be Binary files /dev/null and b/images/hadashboard/dash3.png differ diff --git a/images/hadashboard/dash4.png b/images/hadashboard/dash4.png new file mode 100755 index 0000000000..5ff6489a02 Binary files /dev/null and b/images/hadashboard/dash4.png differ diff --git a/images/hadashboard/dash5.png b/images/hadashboard/dash5.png new file mode 100755 index 0000000000..c66001ec2c Binary files /dev/null and b/images/hadashboard/dash5.png differ diff --git a/sitemap.xml b/sitemap.xml index 1a5148e5cf..80dbb88069 100644 --- a/sitemap.xml +++ b/sitemap.xml @@ -3613,21 +3613,6 @@ https://home-assistant.io/docs/ecosystem/hadashboard/ -https://home-assistant.io/docs/ecosystem/hadashboard/dash_config/ - - -https://home-assistant.io/docs/ecosystem/hadashboard/hapush/ - - -https://home-assistant.io/docs/ecosystem/hadashboard/installation/ - - -https://home-assistant.io/docs/ecosystem/hadashboard/reboot/ - - -https://home-assistant.io/docs/ecosystem/hadashboard/updating/ - - https://home-assistant.io/docs/ecosystem/hass-configurator/ @@ -3689,62 +3674,62 @@ https://home-assistant.io/demo/frontend.html -2017-07-02T14:25:33+00:00 +2017-07-02T16:19:17+00:00 https://home-assistant.io/demo/index.html -2017-07-02T14:25:33+00:00 +2017-07-02T16:19:17+00:00 https://home-assistant.io/demo/panels/ha-panel-dev-event.html -2017-07-02T14:25:33+00:00 +2017-07-02T16:19:17+00:00 https://home-assistant.io/demo/panels/ha-panel-dev-info.html -2017-07-02T14:25:33+00:00 +2017-07-02T16:19:17+00:00 https://home-assistant.io/demo/panels/ha-panel-dev-service.html -2017-07-02T14:25:33+00:00 +2017-07-02T16:19:17+00:00 https://home-assistant.io/demo/panels/ha-panel-dev-state.html -2017-07-02T14:25:33+00:00 +2017-07-02T16:19:17+00:00 https://home-assistant.io/demo/panels/ha-panel-dev-template.html -2017-07-02T14:25:33+00:00 +2017-07-02T16:19:17+00:00 https://home-assistant.io/demo/panels/ha-panel-history.html -2017-07-02T14:25:33+00:00 +2017-07-02T16:19:17+00:00 https://home-assistant.io/demo/panels/ha-panel-iframe.html -2017-07-02T14:25:33+00:00 +2017-07-02T16:19:17+00:00 https://home-assistant.io/demo/panels/ha-panel-logbook.html -2017-07-02T14:25:33+00:00 +2017-07-02T16:19:17+00:00 https://home-assistant.io/demo/panels/ha-panel-map.html -2017-07-02T14:25:33+00:00 +2017-07-02T16:19:17+00:00 https://home-assistant.io/googlef4f3693c209fe788.html -2017-07-02T14:25:33+00:00 +2017-07-02T16:19:17+00:00 https://home-assistant.io/static/fonts/roboto/DESCRIPTION.en_us.html -2017-07-02T14:25:34+00:00 +2017-07-02T16:19:18+00:00 https://home-assistant.io/static/fonts/robotomono/DESCRIPTION.en_us.html -2017-07-02T14:25:34+00:00 +2017-07-02T16:19:18+00:00 https://home-assistant.io/static/mdi-demo.html -2017-07-02T14:25:34+00:00 +2017-07-02T16:19:18+00:00