diff --git a/sass/custom/_paulus.scss b/sass/custom/_paulus.scss index d564e748b842..bffd10d5d4f0 100644 --- a/sass/custom/_paulus.scss +++ b/sass/custom/_paulus.scss @@ -13,6 +13,7 @@ text-transform: uppercase; white-space: nowrap; display: inline-block; + font-weight: bold; } .front-install { diff --git a/sass/oscailte/homepage/_hero_unit.scss b/sass/oscailte/homepage/_hero_unit.scss index 80b406f13250..ca41c37a5888 100644 --- a/sass/oscailte/homepage/_hero_unit.scss +++ b/sass/oscailte/homepage/_hero_unit.scss @@ -7,7 +7,6 @@ background-size: cover; border-bottom: 1px solid $white; color: $white; - font-weight: bold; margin-top: -2em; margin-bottom: 1.5em; padding: 50px 0; diff --git a/source/_components/browser.markdown b/source/_components/browser.markdown index c7ce25dc61e2..9c5d2385a823 100644 --- a/source/_components/browser.markdown +++ b/source/_components/browser.markdown @@ -7,7 +7,7 @@ sidebar: true comments: false sharing: true footer: true -logo: browser.png +logo: home-assistant.png ha_category: Other --- diff --git a/source/_components/conversation.markdown b/source/_components/conversation.markdown index 458bb044567e..720b6f46be9c 100644 --- a/source/_components/conversation.markdown +++ b/source/_components/conversation.markdown @@ -7,7 +7,7 @@ sidebar: true comments: false sharing: true footer: true -logo: conversation.png +logo: home-assistant.png ha_category: "Voice" --- diff --git a/source/_components/device_tracker.icloud.markdown b/source/_components/device_tracker.icloud.markdown index 169ba7974c02..ecb6c928875a 100644 --- a/source/_components/device_tracker.icloud.markdown +++ b/source/_components/device_tracker.icloud.markdown @@ -14,7 +14,7 @@ ha_category: Presence Detection The `icloud` platform allows you to detect presence using the [iCloud](https://www.icloud.com/) service. iCloud allows users to track their location on iOS devices. -It does require that your device has beend registered with "Find My iPhone". +It does require that your device is registered with "Find My iPhone". To integrate iCloud in Home Assistant, add the following section to your `configuration.yaml` file: diff --git a/source/_components/downloader.markdown b/source/_components/downloader.markdown index b347ad9ca7e5..5b97207786a7 100644 --- a/source/_components/downloader.markdown +++ b/source/_components/downloader.markdown @@ -7,7 +7,7 @@ sidebar: true comments: false sharing: true footer: true -logo: downloader.png +logo: home-assistant.png ha_category: Other --- diff --git a/source/_components/garage_door.wink.markdown b/source/_components/garage_door.wink.markdown index 423ada3af925..091f05845570 100644 --- a/source/_components/garage_door.wink.markdown +++ b/source/_components/garage_door.wink.markdown @@ -14,5 +14,5 @@ ha_category: Garage Door The Wink garage door platform allows you to control your [Wink](http://www.wink.com/) enabled garage door. -The requirement is that you have setup your [Wink hub](/components/light.wink/). +The requirement is that you have setup your [Wink hub](/components/wink/). diff --git a/source/_components/light.lifx.markdown b/source/_components/light.lifx.markdown index 3a5564202800..79ec38d8bd48 100644 --- a/source/_components/light.lifx.markdown +++ b/source/_components/light.lifx.markdown @@ -24,5 +24,5 @@ light: Configuration variables: - **server** (*Optional*): Your server address. Only needed if using more than one network interface. Omit if you are unsure. -- **consumer_secret** (*Optional*): The broadcast address, set to reach all LIFX bulbs. +- **broadcast** (*Optional*): The broadcast address, set to reach all LIFX bulbs. diff --git a/source/_components/light.mysensors.markdown b/source/_components/light.mysensors.markdown index 409c913564e3..620e8dc35934 100644 --- a/source/_components/light.mysensors.markdown +++ b/source/_components/light.mysensors.markdown @@ -2,7 +2,7 @@ layout: page title: "MySensors Light" description: "Instructions how to integrate MySensors lights into Home Assistant." -date: 2016-01-17 15:49 +date: 2016-02-15 17:37 +0100 sidebar: true comments: false sharing: true @@ -13,3 +13,25 @@ featured: false --- Integrates MySensors lights into Home Assistant. See the [main component] for configuration instructions. + +The following actuator types are supported: + +##### MySensors version 1.4 and higher + +S_TYPE | V_TYPE +---------|-------------- +S_LIGHT | V_LIGHT +S_DIMMER | V_DIMMER + +##### MySensors version 1.5 and higher + +S_TYPE | V_TYPE +------------|------------- +S_LIGHT | V_STATUS +S_DIMMER | V_PERCENTAGE +S_RGB_LIGHT | V_RGB + +For more information, visit the [serial api] of MySensors. + +[main component]: /components/mysensors/ +[serial api]: https://www.mysensors.org/download/serial_api_15 diff --git a/source/_components/light.wink.markdown b/source/_components/light.wink.markdown index 3f019b5ca97a..16cbc2346a90 100644 --- a/source/_components/light.wink.markdown +++ b/source/_components/light.wink.markdown @@ -14,4 +14,4 @@ ha_category: Light The wink light platform allows you to use your [Wink](http://www.wink.com/) lights. -The requirement is that you have setup your [Wink hub](/components/light.wink/). +The requirement is that you have setup your [Wink hub](/components/wink/). diff --git a/source/_components/lock.verisure.markdown b/source/_components/lock.verisure.markdown index 185e066f3b33..ab4b04de8de9 100644 --- a/source/_components/lock.verisure.markdown +++ b/source/_components/lock.verisure.markdown @@ -7,7 +7,7 @@ sidebar: true comments: false sharing: true footer: true -logo: wink.png +logo: verisure.png ha_category: Lock --- diff --git a/source/_components/media_player.kodi.markdown b/source/_components/media_player.kodi.markdown index e95acad36311..e18d1e7a823f 100644 --- a/source/_components/media_player.kodi.markdown +++ b/source/_components/media_player.kodi.markdown @@ -21,7 +21,7 @@ To add Kodi to your installation, add the following to your `configuration.yaml` # Example configuration.yaml entry media_player: platform: kodi - host: 192.168.0.123 + host: http://192.168.0.123 port: 8080 name: Kodi user: USERNAME diff --git a/source/_components/media_player.samsungtv.markdown b/source/_components/media_player.samsungtv.markdown index 1c96733e92ce..42cd694b5944 100644 --- a/source/_components/media_player.samsungtv.markdown +++ b/source/_components/media_player.samsungtv.markdown @@ -1,8 +1,8 @@ --- layout: page -title: "Samsung TV" -description: "Instructions how to integrate a Samsung TV in Home Assistant." -date: 2016-02-01 19:00 +title: "Samsung Smart TV" +description: "Instructions on how to integrate a Samsung Smart TV into Home Assistant." +date: 2016-02-13 12:02 sidebar: true comments: false sharing: true @@ -12,14 +12,30 @@ ha_category: Media Player featured: false --- -The `samsungtv` platform allows you to control an [Samsung TV](http://www.samsung.com). +The `samsungtv` platform allows you to control a [Samsung Smart TV](http://www.samsung.com/uk/consumer/tv-audio-video/televisions/). +When the TV is first connected, you will need to accept Home Assistant on the TV to allow communication. -To add an Samsung TV to your installation, add the following to your `configuration.yaml` file: +To add a TV to your installation, add the following to your `configuration.yaml` file: ```yaml # Example configuration.yaml entry media_player: platform: samsungtv + host: 192.168.0.10 + name: Living Room TV ``` +Configuration variables: + +- **host** *Required*: The IP of the Samsung Smart TV, e.g. 192.168.0.10 +- **name** *Optional*: The name you would like to give to the Samsung Smart TV. + + +Currently known supported models: + +- ES5500 +- C7700 + +If your model is not on the list then give it a test, if everything works correctly then add it to the list on [GitHub](https://github.com/balloob/home-assistant.io). +The two letters at the beginning of the model number represent the region, UE is Europe, UN is North America and UA is Asia & Australia. The two numbers following that represent the screen size. If you add your model remember to remove these before adding them to the list. diff --git a/source/_components/media_player.snapcast.markdown b/source/_components/media_player.snapcast.markdown index bb2b8ea4fa06..7dee79e7a070 100644 --- a/source/_components/media_player.snapcast.markdown +++ b/source/_components/media_player.snapcast.markdown @@ -1,7 +1,7 @@ --- layout: page -title: "snapcast" -description: "Instructions how to integrate a snapcast in Home Assistant." +title: "SnapCast" +description: "Instructions on how to integrate SnapCast into Home Assistant." date: 2016-02-01 19:00 sidebar: true comments: false @@ -12,9 +12,9 @@ ha_category: Media Player featured: false --- -The `snapcast` platform allows you to control [Snapcast](https://github.com/badaix/snapcast). +The `snapcast` platform allows you to control [SnapCast](https://github.com/badaix/snapcast) from Home Assistant. -To add Snapcast to your installation, add the following to your `configuration.yaml` file: +To add SnapCast to your installation, add the following to your `configuration.yaml` file: ```yaml # Example configuration.yaml entry diff --git a/source/_components/mysensors.markdown b/source/_components/mysensors.markdown index abb9c28030bc..02335ffbd732 100644 --- a/source/_components/mysensors.markdown +++ b/source/_components/mysensors.markdown @@ -2,7 +2,7 @@ layout: page title: "MySensors" description: "Instructions how to integrate MySensors sensors into Home Assistant." -date: 2015-05-14 21:57 +date: 2016-02-15 17:37 +0100 sidebar: true comments: false sharing: true @@ -12,9 +12,9 @@ ha_category: Hub featured: true --- -The [MySensors](https://www.mysensors.org) project combines Arduino boards with NRF24L01 radio boards to build sensor networks. The component will automatically add all available switches and sensors to Home Assistant. +The [MySensors](https://www.mysensors.org) project combines Arduino boards with NRF24L01 radio boards to build sensor networks. The component will automatically add all available devices to Home Assistant, after [presentation](#presentation) is done. -### Configuration +### {% linkable_title Configuration %} Integrate your Serial MySensors Gateway by adding the following to your `configuration.yaml` file: @@ -40,7 +40,7 @@ Configuration variables: - **persistence** (*Optional*): Enable or disable local persistence of sensor information. If this is disabled, then each sensor will need to send presentation messages after Home Assistant starts. Default is true. - **persistence_file** (*Optional*): Path to a file to save sensor information. The file extension determines the file type. Currently supported file types are 'pickle' and 'json'. - **version** (*Optional*): Specifies the MySensors protocol version to use. Supports 1.4 and 1.5. Default is 1.4. -- **baud_rate** (*Optional*): Specifies baud rate of the connected gateway. +- **baud_rate** (*Optional*): Specifies baud rate of the connected gateway. Default is 115200. If you are using an original Arduino the port will be named `ttyACM*`. The exact number can be determined with the command shown below. @@ -48,7 +48,7 @@ If you are using an original Arduino the port will be named `ttyACM*`. The exact $ ls /dev/ttyACM* ``` -### Presentation +### {% linkable_title Presentation %} Present a MySensors sensor or actuator, by following these steps: diff --git a/source/_components/sensor.neurio_energy.markdown b/source/_components/sensor.neurio_energy.markdown new file mode 100644 index 000000000000..dc872725f38c --- /dev/null +++ b/source/_components/sensor.neurio_energy.markdown @@ -0,0 +1,30 @@ +--- +layout: page +title: "Neurio" +description: "Instructions how to integrate Neurio within Home Assistant." +date: 2016-02-15 21:50 +sidebar: true +comments: false +sharing: true +footer: true +logo: neurio.png +ha_category: Sensor +--- + + +Integrate your [Neurio](http://neur.io/) meter information into Home Assistant. To get an API key and secret, login to your Neurio account at https://my.neur.io/#settings/applications/register and register an application. Note the Homepage URL and Callback URL are optional. + +```yaml +# Example configuration.yaml entry +sensor: + platform: neurio_energy + api_key: API_KEY + api_secret: API_SECRET + sensor_id: "SENSOR_ID" +``` + +Configuration variables: + +- **api_key** (*Required*): The API key for your account/application. +- **api_secret** (*Required*): The API secret for your account/application. +- **sensor_id** (*Optional*): Sensor ID, will be auto-detected but can be set if you have more then one sensor. diff --git a/source/_components/sensor.speedtest.markdown b/source/_components/sensor.speedtest.markdown index 0db32b61a5f4..db0fc4ddd874 100644 --- a/source/_components/sensor.speedtest.markdown +++ b/source/_components/sensor.speedtest.markdown @@ -14,9 +14,9 @@ featured: false The `speedtest` sensor component uses the [Speedtest.net](https://speedtest.net/) web service to measure network bandwidth performance. -By default, it will run every hour on the hour. The user can change the update frequency in the config by defining the minute, hour, and day for speedtest to run. +By default, it will run every hour. The user can change the update frequency in the config by defining the minute, hour, and day for a speedtest to run. -To add speedtest.net sensors to your installation, add the following to your `configuration.yaml` file: +To add a Speedtest.net sensor to your installation, add the following to your `configuration.yaml` file: Once per hour, on the hour (default): @@ -65,11 +65,11 @@ sensor: Configuration variables: - **monitored_conditions** array (*Required*): Sensors to display in the frontend. - - **ping**: Reaction time in ms of your connection–how fast you get a response after you've sent out a request. + - **ping**: Reaction time in ms of your connection, (how fast you get a response after you've sent out a request). - **download**: Download speed in Mbps. - **upload**: Upload speed in Mbps. - **minute** (*Optional*): Specify the minute(s) of the hour to schedule the speedtest. Use a list for multiple entries. Default is 0. - **hour** (*Optional*): Specify the hour(s) of the day to schedule the speedtest. Use a list for multiple entries. Default is None. - **day** (*Optional*): Specify the day(s) of the month to schedule the speedtest. Use a list for multiple entries. Default is None. -This component uses [speetest-cli](https://github.com/sivel/speedtest-cli) to gather network performance data from speedtest.net. Please be aware of the potential [inconsistencies](https://github.com/sivel/speedtest-cli#inconsistency) that this component may display. +This component uses [speetest-cli](https://github.com/sivel/speedtest-cli) to gather network performance data from Speedtest.net. Please be aware of the potential [inconsistencies](https://github.com/sivel/speedtest-cli#inconsistency) that this component may display. diff --git a/source/_components/sensor.time_date.markdown b/source/_components/sensor.time_date.markdown index 2a945fb8b59e..cd58381d6a80 100644 --- a/source/_components/sensor.time_date.markdown +++ b/source/_components/sensor.time_date.markdown @@ -7,6 +7,7 @@ sidebar: true comments: false sharing: true footer: true +logo: home-assistant.png ha_category: Sensor --- diff --git a/source/_components/sensor.wink.markdown b/source/_components/sensor.wink.markdown index f8aa03fa560b..1ff2c385c5f3 100644 --- a/source/_components/sensor.wink.markdown +++ b/source/_components/sensor.wink.markdown @@ -14,5 +14,5 @@ ha_category: Sensor The Wink sensor platform allows you to get data from your [Wink](http://www.wink.com/) sensors. -The requirement is that you have setup your [Wink hub](/components/light.wink/). +The requirement is that you have setup your [Wink hub](/components/wink/). diff --git a/source/_components/sensor.worldclock.markdown b/source/_components/sensor.worldclock.markdown index a438ea034bd0..107692a40ff6 100644 --- a/source/_components/sensor.worldclock.markdown +++ b/source/_components/sensor.worldclock.markdown @@ -7,6 +7,7 @@ sidebar: true comments: false sharing: true footer: true +logo: home-assistant.png ha_category: Sensor --- diff --git a/source/_components/simple_alarm.markdown b/source/_components/simple_alarm.markdown index d0e8f14a98de..8a7667ba7453 100644 --- a/source/_components/simple_alarm.markdown +++ b/source/_components/simple_alarm.markdown @@ -27,6 +27,6 @@ simple_alarm: Configuration variables: -- **known_light** (*Required*): Which light/light group has to flash when a known device comes home. -- **unknown_light** (*Required*): Which light/light group has to flash red when light turns on while no one home. +- **known_light** (*Optional*): Which light/light group has to flash when a known device comes home. +- **unknown_light** (*Optional*): Which light/light group has to flash red when light turns on while no one home. diff --git a/source/_components/sun.markdown b/source/_components/sun.markdown index 81fac12dc5c1..18058bc1421b 100644 --- a/source/_components/sun.markdown +++ b/source/_components/sun.markdown @@ -7,7 +7,7 @@ sidebar: true comments: false sharing: true footer: true -logo: sun.png +logo: home-assistant.png ha_category: Weather --- diff --git a/source/_components/switch.mysensors.markdown b/source/_components/switch.mysensors.markdown index 7b3fb6f1a316..f98e23e7fbd8 100644 --- a/source/_components/switch.mysensors.markdown +++ b/source/_components/switch.mysensors.markdown @@ -2,7 +2,7 @@ layout: page title: "MySensors Switch" description: "Instructions how to integrate MySensors switches into Home Assistant." -date: 2016-01-17 15:49 +date: 2016-02-15 20:49 +0100 sidebar: true comments: false sharing: true @@ -23,14 +23,12 @@ S_TYPE | V_TYPE S_DOOR | V_ARMED S_MOTION | V_ARMED S_SMOKE | V_ARMED -S_LIGHT | V_LIGHT S_LOCK | V_LOCK_STATUS ##### MySensors version 1.5 and higher S_TYPE | V_TYPE -------------|------------------ -S_LIGHT | V_STATUS S_BINARY | V_STATUS, V_LIGHT S_SPRINKLER | V_STATUS S_WATER_LEAK | V_ARMED diff --git a/source/_components/switch.wink.markdown b/source/_components/switch.wink.markdown index 6dda470f2878..7dcb6c379908 100644 --- a/source/_components/switch.wink.markdown +++ b/source/_components/switch.wink.markdown @@ -14,5 +14,5 @@ ha_category: Switch The Wink switch platform allows you to control your [Wink](http://www.wink.com/) switches. -The requirement is that you have setup your [Wink hub](/components/light.wink/). +The requirement is that you have setup your [Wink hub](/components/wink/). diff --git a/source/_components/updater.markdown b/source/_components/updater.markdown index 8f857c780893..980653e0cd9c 100644 --- a/source/_components/updater.markdown +++ b/source/_components/updater.markdown @@ -7,7 +7,7 @@ sidebar: true comments: false sharing: true footer: true -logo: updater.png +logo: home-assistant.png ha_category: Other --- diff --git a/source/_components/verisure.markdown b/source/_components/verisure.markdown index cd1d84f3a319..154b09294237 100644 --- a/source/_components/verisure.markdown +++ b/source/_components/verisure.markdown @@ -17,9 +17,9 @@ Home Assistant has support to integrate your [Verisure](https://www.verisure.com We support: + * Alarm * Smartplugs * Reading from thermometers and hygrometers integrated in various devices - * Reading alarm status * Locks To integrate Verisure with Home Assistant, add the following section to your `configuration.yaml` file: @@ -44,7 +44,7 @@ Configuration variables: - **alarm** (*Optional*): Set to 1 to show alarm, 0 to disable. Default 1. - **hygrometers** (*Optional*): Set to 1 to show hygrometers, 0 to disable. Default 1. - **smartplugs** (*Optional*): Set to 1 to show smartplugs, 0 to disable. Default 1. -- **locls** (*Optional*): Set to 1 to show locks, 0 to disable. Default 1. +- **locks** (*Optional*): Set to 1 to show locks, 0 to disable. Default 1. - **thermometers** (*Optional*): Set to 1 to show thermometers, 0 to disable. Default 1. - **code_digits** (*Optional*): Number of digits in PIN code. Default 4. diff --git a/source/_components/weblink.markdown b/source/_components/weblink.markdown index 5dbcec2d1b41..4d08fc67f6f8 100644 --- a/source/_components/weblink.markdown +++ b/source/_components/weblink.markdown @@ -21,6 +21,14 @@ weblink: entities: - name: Router url: http://192.168.1.1/ + icon: mdi:router-wireless - name: Home Assistant url: https://home-assistant.io ``` +Configuration variables: + +- **name** (*Required*): Text for the link. +- **url** (*Required*): The URL for the link. +- **icon** (*Optional*): Icon for entry. + +Pick an icon that you can find on [materialdesignicons.com](https://materialdesignicons.com/) to use for your input and prefix the name with `mdi:`. For example `mdi:car`, `mdi:ambulance`, or `mdi:motorbike`. diff --git a/source/_cookbook/configuration_yaml_by_greenturtwig.markdown b/source/_cookbook/configuration_yaml_by_greenturtwig.markdown new file mode 100644 index 000000000000..dcb11f84540e --- /dev/null +++ b/source/_cookbook/configuration_yaml_by_greenturtwig.markdown @@ -0,0 +1,13 @@ +--- +layout: page +title: "Configuration.yaml by GreenTurtwig" +description: "" +date: 2016-02-13 13:51 +0700 +sidebar: true +comments: false +sharing: true +footer: true +ha_category: Example configuration.yaml +ha_external_link: https://github.com/GreenTurtwig/personal-home-automation/tree/master/Home%20Assistant +--- + diff --git a/source/_cookbook/python_component_simple_alarm.markdown b/source/_cookbook/python_component_simple_alarm.markdown new file mode 100644 index 000000000000..e014a695f023 --- /dev/null +++ b/source/_cookbook/python_component_simple_alarm.markdown @@ -0,0 +1,124 @@ +--- +layout: page +title: "Flash lights when intruder detected" +description: "Detect intruders by checking if the light is turning on while no one is home." +date: 2016-02-14 0:40 -0800 +sidebar: true +comments: false +sharing: true +footer: true +ha_category: Automation in Python Examples +--- + +This example component will detect intruders. It does so by checking if lights are being turned on while there is no one at home. When this happens it will turn the lights red, flash them for 30 seconds and send a message via [the notifiy component](/components/notify/). It will also flash a specific light when a known person comes home. + +This component depends on the components [device_tracker](/components/device_tracker/) and [light](/components/light/) being setup. + +To set it up, add the following lines to your `configuration.yaml` file: + +```yaml +# Example configuration.yaml entry +simple_alarm: + known_light: light.Bowl + unknown_light: group.living_room +``` + +Configuration variables: + +- **known_light** (*Optional*): Which light/light group has to flash when a known device comes home. +- **unknown_light** (*Optional*): Which light/light group has to flash red when light turns on while no one home. + +Create the file `/custom_components/simple_alarm.py` and copy paste the content below: + +```python +"""Simple alarm component.""" +import logging + +import homeassistant.loader as loader +from homeassistant.components import device_tracker, light, notify +from homeassistant.helpers.event import track_state_change +from homeassistant.const import STATE_ON, STATE_OFF, STATE_HOME, STATE_NOT_HOME + +DOMAIN = "simple_alarm" + +DEPENDENCIES = ['group', 'device_tracker', 'light'] + +# Attribute to tell which light has to flash whem a known person comes home +# If omitted will flash all. +CONF_KNOWN_LIGHT = "known_light" + +# Attribute to tell which light has to flash whem an unknown person comes home +# If omitted will flash all. +CONF_UNKNOWN_LIGHT = "unknown_light" + +# Services to test the alarms +SERVICE_TEST_KNOWN_ALARM = "test_known" +SERVICE_TEST_UNKNOWN_ALARM = "test_unknown" + + +def setup(hass, config): + """ Sets up the simple alarms. """ + logger = logging.getLogger(__name__) + + light_ids = [] + + for conf_key in (CONF_KNOWN_LIGHT, CONF_UNKNOWN_LIGHT): + light_id = config[DOMAIN].get(conf_key, light.ENTITY_ID_ALL_LIGHTS) + + if hass.states.get(light_id) is None: + logger.error( + 'Light id %s could not be found in state machine', light_id) + + return False + + light_ids.append(light_id) + + # pylint: disable=unbalanced-tuple-unpacking + known_light_id, unknown_light_id = light_ids + + if hass.states.get(device_tracker.ENTITY_ID_ALL_DEVICES) is None: + logger.error('No devices are being tracked, cannot setup alarm') + + return False + + def known_alarm(): + """ Fire an alarm if a known person arrives home. """ + light.turn_on(hass, known_light_id, flash=light.FLASH_SHORT) + + def unknown_alarm(): + """ Fire an alarm if the light turns on while no one is home. """ + light.turn_on( + hass, unknown_light_id, + flash=light.FLASH_LONG, rgb_color=[255, 0, 0]) + + # Send a message to the user + notify.send_message( + hass, "The lights just got turned on while no one was home.") + + # Setup services to test the effect + hass.services.register( + DOMAIN, SERVICE_TEST_KNOWN_ALARM, lambda call: known_alarm()) + hass.services.register( + DOMAIN, SERVICE_TEST_UNKNOWN_ALARM, lambda call: unknown_alarm()) + + def unknown_alarm_if_lights_on(entity_id, old_state, new_state): + """ Called when a light has been turned on. """ + if not device_tracker.is_on(hass): + unknown_alarm() + + track_state_change( + hass, light.ENTITY_ID_ALL_LIGHTS, + unknown_alarm_if_lights_on, STATE_OFF, STATE_ON) + + def ring_known_alarm(entity_id, old_state, new_state): + """ Called when a known person comes home. """ + if light.is_on(hass, known_light_id): + known_alarm() + + # Track home coming of each device + track_state_change( + hass, hass.states.entity_ids(device_tracker.DOMAIN), + ring_known_alarm, STATE_NOT_HOME, STATE_HOME) + + return True +``` diff --git a/source/_posts/2016-02-13-speedtest-bloomsky-splunk-and-garage-doors.markdown b/source/_posts/2016-02-13-speedtest-bloomsky-splunk-and-garage-doors.markdown new file mode 100644 index 000000000000..19f9169fb6fa --- /dev/null +++ b/source/_posts/2016-02-13-speedtest-bloomsky-splunk-and-garage-doors.markdown @@ -0,0 +1,116 @@ +--- +layout: post +title: "0.13: Speedtest.net, Bloomsky, Splunk and Garage Doors" +description: "Home Assistant 0.13 brings test coverage to a whopping 90% and adds a whole bunch of new components." +date: 2016-02-12 22:15:00 -0800 +date_formatted: "February 13, 2016" +author: Paulus Schoutsen +author_twitter: balloob +comments: true +categories: Release-Notes +og_image: /images/blog/2016-02-release-13/social-img.png +--- + +The focus of 0.13 was on test coverage, big cheers to [@rmkraus] for his hard work on this. I'm proud to announce that we've hit the 90% test coverage of the core + important components. A big milestone for the project. + +

+ + Examples of the new [input_select] and [weblink] components. +

+ +Not only did we gain a lot of test coverage, we also attracted a lot of new developers that contributed a variety of components and platforms: + + + + - Core: Add service to restart Home Assistant ([@rmkraus]) + - Core: Allow device to report as unavailable ([@MartinHjelmare]) + - Core: Allow overriding polling interval in platforms and [via config][polling-config] ([@balloob]) + - Frontend: support for a [default view] have been added to replace the show all view ([@balloob]) + - Component: Added [apcupsd] component ([@flyte]) + - Component: Added component to log values to [Splunk] ([@miniconfig]) + - Component: Added [garage door] component including [Wink] support ([@xrolfex]) + - Component: Added [input_select] component ([@balloob]) + - Component: Added [proximity] component to track people closest to a location ([@nickwaring], [@Bart274] ) + - Component: Added support for [Bloomsky Weather Station] ([@haraldnagel]) + - Component: Added support for pushing stats to [graphite] ([@kk7ds]) + - Component: Added support for [SCSGate] devices ([@flavio]) + - Component: Added [weblink] component to link to other pages ([@MagnusKnutas]) + - Component: Support for Ubiquiti mFI [sensors][mfi.sensor] and [switchable devices][mfi.switch] added ([@kk7ds]) + - Alarm control panel: Added [Caddx/GE/Interlogix NetworX][nx584] support ([@kk7ds]) + - Camera: [MJPEG] camera's will now show real stream instead of a 2fps stream ([@stjohnjohnson]) + - Camera: Added [Unifi video cameras][unifi] support ([@kk7ds]) + - Device Tracker: [Aruba] platform now uses SSH instead of telnet ([@carlosmgr]) + - History: Show correct graphs for thermostats ([@sdague]) + - Light: Added [MySensors] support ([@MartinHjelmare]) + - Lock: Added [Verisure] support ([@turbokongen]) + - Media Player: Added [Samsung TV] support ([@stefan-jonasson]) + - Media Player: Added [Snapcast] support ([@happyleavesaoc]) + - MQTT: Allow using templates in [publish service][mqtt-publish] ([@flyte]) + - Notify: Added [REST] support ([@Theb-1]) + - Sensor: Added [Speedtest.net] support ([@nkgilley]) + - Switch: Added [template] platform ([@pavoni]) + - Thermostat: Support for [Honeywell] in the US added ([@kk7ds]) + - Z-Wave: Allow [configuring polling][zwave-polling] and [support scenes][zwave-scene] ([@lukas-hetzenecker]) + - Bug fixes and improvements by [@persandstrom], [@fabaff], [@balloob], [@pavoni], [@philipbl], [@MartinHjelmare], [@rmkraus], [@molobrakos], [@lukas-hetzenecker], [@TangoAlpha], [@deisi], [@Danielhiversen], [@roqeer], [@jaharkes] + +[@rmkraus]: https://github.com/rmkraus/ +[@MartinHjelmare]: https://github.com/MartinHjelmare/ +[@balloob]: https://github.com/balloob/ +[@flyte]: https://github.com/flyte/ +[@miniconfig]: https://github.com/miniconfig/ +[@xrolfex]: https://github.com/xrolfex/ +[@nickwaring]: https://github.com/nickwaring/ +[@Bart274]: https://github.com/Bart274/ +[@haraldnagel]: https://github.com/haraldnagel/ +[@kk7ds]: https://github.com/kk7ds/ +[@flavio]: https://github.com/flavio/ +[@MagnusKnutas]: https://github.com/MagnusKnutas/ +[@stjohnjohnson]: https://github.com/stjohnjohnson/ +[@carlosmgr]: https://github.com/carlosmgr/ +[@sdague]: https://github.com/sdague/ +[@turbokongen]: https://github.com/turbokongen/ +[@stefan-jonasson]: https://github.com/stefan-jonasson/ +[@happyleavesaoc]: https://github.com/happyleavesaoc/ +[@Theb-1]: https://github.com/Theb-1/ +[@nkgilley]: https://github.com/nkgilley/ +[@pavoni]: https://github.com/pavoni/ +[@lukas-hetzenecker]: https://github.com/lukas-hetzenecker/ +[@persandstrom]: https://github.com/persandstrom/ +[@fabaff]: https://github.com/fabaff/ +[@philipbl]: https://github.com/philipbl/ +[@molobrakos]: https://github.com/molobrakos/ +[@TangoAlpha]: https://github.com/TangoAlpha/ +[@deisi]: https://github.com/deisi/ +[@Danielhiversen]: https://github.com/Danielhiversen/ +[@roqeer]: https://github.com/roqeer/ +[@jaharkes]: https://github.com/jaharkes/ +[polling-config]: /cookbook/customize_polling_interval/ +[default view]: /components/group/ +[apcupsd]: /components/apcupsd/ +[Splunk]: /components/splunk/ +[garage door]: /components/garage_door/ +[Wink]: /components/garage_door.wink/ +[input_select]: /components/input_select/ +[proximity]: /components/proximity/ +[Bloomsky Weather Station]: /components/bloomsky/ +[graphite]: /components/graphite/ +[SCSGate]: /components/scsgate/ +[weblink]: /components/weblink/ +[mfi.switch]: /components/switch.mfi/ +[mfi.sensor]: /components/sensor.mfi/ +[nx584]: /components/alarm_control_panel.nx584/ +[MJPEG]: /components/camera.mjpeg/ +[unifi]: /components/camera.uvc/ +[Aruba]: /components/device_tracker.aruba/ +[History]: /components/history/ +[MySensors]: /components/light.mysensors/ +[Verisure]: /components/lock.verisure/ +[Speedtest.net]: /components/sensor.speedtest/ +[Samsung TV]: /components/media_player.samsungtv/ +[Snapcast]: /components/media_player.snapcast/ +[mqtt-publish]: /components/mqtt/#publish-service +[REST]: /components/notify.rest/ +[template]: /components/switch.template/ +[Honeywell]: /components/thermostat.honeywell/ +[zwave-polling]: /components/zwave/#configuration +[zwave-scene]: /components/zwave/#events diff --git a/source/developers/index.markdown b/source/developers/index.markdown index dfd5068fd48d..f7d376c7473f 100644 --- a/source/developers/index.markdown +++ b/source/developers/index.markdown @@ -40,7 +40,7 @@ Improvements to Home Assistant should be submitted one feature at a time using G `git checkout -b some-feature` 2. Make the changes you want 3. Test your changes and check for style violations - `./script/test` + `tox` 4. Commit the changes `git add .` `git commit -m "Added some-feature"` @@ -48,6 +48,12 @@ Improvements to Home Assistant should be submitted one feature at a time using G `git push origin HEAD` 6. Follow [these steps](https://help.github.com/articles/creating-a-pull-request/) to create your pull request. +Note that the above requires `tox` to be installed. If you don't have it, do this: + +```bash +$ pip3 install tox +``` + ### {% linkable_title Further reading %} - [Home Assistant Architecture](/developers/architecture/) diff --git a/source/images/blog/2016-02-release-13/input_select__input_boolean__weblink.png b/source/images/blog/2016-02-release-13/input_select__input_boolean__weblink.png new file mode 100644 index 000000000000..1aeab11ee45b Binary files /dev/null and b/source/images/blog/2016-02-release-13/input_select__input_boolean__weblink.png differ diff --git a/source/images/blog/2016-02-release-13/social-img.png b/source/images/blog/2016-02-release-13/social-img.png new file mode 100644 index 000000000000..2b92be9539c2 Binary files /dev/null and b/source/images/blog/2016-02-release-13/social-img.png differ diff --git a/source/images/supported_brands/neurio.png b/source/images/supported_brands/neurio.png new file mode 100644 index 000000000000..5531c7eee42d Binary files /dev/null and b/source/images/supported_brands/neurio.png differ