Markdown fixes

This commit is contained in:
Paulus Schoutsen 2015-10-28 23:00:29 -07:00
parent 08d65ba714
commit 47eae9077e
52 changed files with 247 additions and 406 deletions

View file

@ -12,10 +12,7 @@ ha_category: Alarm
---
This platform enables the possibility to control an MQTT alarm. The alarm will only change state after
receiving the a new state from `state_topic`. If these messages are published with RETAIN flag, the MQTT
alarm will receive an instant state update after subscription and will start with correct state. Otherwise,
the initial state will be `unknown`.
This platform enables the possibility to control an MQTT alarm. The alarm will only change state after receiving the a new state from `state_topic`. If these messages are published with RETAIN flag, the MQTT alarm will receive an instant state update after subscription and will start with correct state. Otherwise, the initial state will be `unknown`.
```yaml
# Example configuration.yaml entry

View file

@ -35,7 +35,7 @@ Configuration variables:
- **port** (*Required*): The port where your board is connected to your Home Assistant host. If you are using an original Arduino the port will be named `ttyACM*`. The exact number can be determined with `ls /dev/ttyACM*`.
```bash
ls /dev/ttyACM*
$ ls /dev/ttyACM*
```
If that is not working, check your `dmesg` or `journalctl -f` output. Keep in mind that Arduino clones are often using a different name for the port (e.g. `/dev/ttyUSB*`).

View file

@ -10,12 +10,9 @@ footer: true
ha_category: Automation
---
This page will go into more detail about the various options the `automation` component offers. If
you haven't yet, read the [getting started page on automation](/getting-started/automation/).
This page will go into more detail about the various options the `automation` component offers. If you haven't yet, read the [getting started page on automation](/getting-started/automation/).
A configuration section of an automation requires a `trigger` and an `action` section. `condition` and
`condition_type` are optional. To keep this page compact, all following sections will not show the
full configuration but only the relevant part.
A configuration section of an automation requires a `trigger` and an `action` section. `condition` and `condition_type` are optional. To keep this page compact, all following sections will not show the full configuration but only the relevant part.
```yaml
# Example of entry in configuration.yaml
@ -77,13 +74,10 @@ automation:
## {% linkable_title Triggers %}
Triggers are what starts the processing of an automation rule. It is possible to specify multiple
triggers for the same rule. Once a trigger starts, Home Assistant will validate the conditions, if any,
and call the action.
Triggers are what starts the processing of an automation rule. It is possible to specify multiple triggers for the same rule. Once a trigger starts, Home Assistant will validate the conditions, if any, and call the action.
#### {% linkable_title Event trigger %}
Triggers when an event is being processed. Events are the raw building blocks of Home Assistant.
You can match events on just the event name or also require specific event data to be present.
Triggers when an event is being processed. Events are the raw building blocks of Home Assistant. You can match events on just the event name or also require specific event data to be present.
```yaml
automation:
@ -96,8 +90,7 @@ automation:
```
#### {% linkable_title MQTT trigger %}
Triggers when a specific message is received on given topic. Optionally can match on the payload
being sent over the topic.
Triggers when a specific message is received on given topic. Optionally can match on the payload being sent over the topic.
```yaml
automation:
@ -109,8 +102,7 @@ automation:
```
#### {% linkable_title Numeric state trigger %}
On state change of a specified entity, attempts to parse the state as a number and triggers if value
is above and/or below a threshold.
On state change of a specified entity, attempts to parse the state as a number and triggers if value is above and/or below a threshold.
```yaml
automation:
@ -123,6 +115,7 @@ automation:
```
#### {% linkable_title State trigger %}
Triggers when the state of an entity changes. If only entity_id given will match all state changes.
```yaml
@ -136,13 +129,11 @@ automation:
```
<p class='note warning'>
Use quotes around your values for <code>from</code> and <code>to</code> to avoid the YAML parser
interpreting some values as booleans.
Use quotes around your values for `from` and `to` to avoid the YAML parser interpreting values as booleans.
</p>
#### {% linkable_title Sun trigger %}
Trigger when the sun is setting or rising. An optional time offset can be given to have it trigger for
example 45 minutes before sunset, when dusk is setting in.
Trigger when the sun is setting or rising. An optional time offset can be given to have it trigger for example 45 minutes before sunset, when dusk is setting in.
```yaml
automation:
@ -155,10 +146,8 @@ automation:
```
#### {% linkable_title Time trigger %}
Time can be triggered in many ways. The most common is to specify `after` and trigger at a specific
point in time each day. Alternatively, you can also match if the hour, minute or second of the current
time has a specific value. For example, by only setting minutes in the config to 5 it will trigger every
hour when it is 5 minutes past whole. You cannot use `after` together with hour, minute or second.
Time can be triggered in many ways. The most common is to specify `after` and trigger at a specific point in time each day. Alternatively, you can also match if the hour, minute or second of the current time has a specific value. For example, by only setting minutes in the config to 5 it will trigger every hour when it is 5 minutes past whole. You cannot use `after` together with hour, minute or second.
```yaml
automation:
@ -176,16 +165,13 @@ automation:
- sun
```
You can use `weekday` to limit the trigger times to speific days as well (also available in conditions).
Valid values for `weekday` are (`sun`, `mon`, `tue`, `wed`, `thu`, `fri` & `sat`)
You can use `weekday` to limit the trigger times to speific days as well (also available in conditions). Valid values for `weekday` are (`sun`, `mon`, `tue`, `wed`, `thu`, `fri` & `sat`)
The above example will trigger on Saturday and Sunday every hour on the 5 (2:05, 3:05, 4:05, etc).
#### {% linkable_title Zone trigger %}
Zone triggers can trigger when an entity is entering or leaving the zone. For zone automation to work,
you need to have setup a device tracker platform that supports reporting GPS coordinates. Currently
this is limited to the [OwnTracks platform](/components/device_tracker.owntracks/).
Zone triggers can trigger when an entity is entering or leaving the zone. For zone automation to work, you need to have setup a device tracker platform that supports reporting GPS coordinates. Currently this is limited to the [OwnTracks platform](/components/device_tracker.owntracks/).
```yaml
automation:
@ -199,15 +185,9 @@ automation:
## {% linkable_title Conditions %}
Conditions are an optional part of an automation rule and be used to prevent an action from happening
when triggered. Conditions look very familiar to triggers but are very different. A trigger will look
at events happening at the system while a condition only looks at how the system looks right now.
A trigger can observe that a switch is being turned on. A condition can only see if a switch is on
or off.
Conditions are an optional part of an automation rule and be used to prevent an action from happening when triggered. Conditions look very familiar to triggers but are very different. A trigger will look at events happening at the system while a condition only looks at how the system looks right now. A trigger can observe that a switch is being turned on. A condition can only see if a switch is on or off.
An automation rule can have mulitiple triggers. By default the action will only fire if all conditions
pass. An optional key `condition_type: 'or'` can be set on the automation rule to fire action if any
condition matches. In the example below, the automation would trigger if the time is before 05:00 _OR_ after 20:00.
An automation rule can have mulitiple triggers. By default the action will only fire if all conditions pass. An optional key `condition_type: 'or'` can be set on the automation rule to fire action if any condition matches. In the example below, the automation would trigger if the time is before 05:00 _OR_ after 20:00.
```yaml
automation:
@ -219,16 +199,16 @@ automation:
after: '20:00'
```
If your triggers and conditions are exactly the same, you can use a shortcut to specify conditions.
In this case, triggers that are not valid conditions will be ignored.
If your triggers and conditions are exactly the same, you can use a shortcut to specify conditions. In this case, triggers that are not valid conditions will be ignored.
```yaml
automation:
condition: use_trigger_values
```
#### {% linkable_title Numeric state condition %}
Attempts to parse the state of specified entity as a number and triggers if value is above and/or
below a threshold.
Attempts to parse the state of specified entity as a number and triggers if value is above and/or below a threshold.
```yaml
automation:
@ -241,6 +221,7 @@ automation:
```
#### {% linkable_title State condition %}
Tests if an entity is a specified state.
```yaml
@ -252,8 +233,8 @@ automation:
```
#### {% linkable_title Time condition %}
The time condition can test if it is after a specified time, before a specified time or if it is a
certain day of the week
The time condition can test if it is after a specified time, before a specified time or if it is a certain day of the week
```yaml
automation:
@ -268,12 +249,11 @@ automation:
- fri
```
Valid values for `weekday` are (sun, mon, tue, wed, thu, fri & sat)
Valid values for `weekday` are (`sun`, `mon`, `tue`, `wed`, `thu`, `fri` & `sat`)
#### {% linkable_title Zone condition %}
Zone conditions test if an entity is in a certain zone. For zone automation to work,
you need to have setup a device tracker platform that supports reporting GPS coordinates. Currently
this is limited to the [OwnTracks platform](/components/device_tracker.owntracks/).
Zone conditions test if an entity is in a certain zone. For zone automation to work, you need to have setup a device tracker platform that supports reporting GPS coordinates. Currently this is limited to the [OwnTracks platform](/components/device_tracker.owntracks/).
```yaml
automation:
@ -285,8 +265,7 @@ automation:
## {% linkable_title Actions %}
When an automation rule fires, it calls a service. For this service you can specify an entity id it
should apply to and optional service parameters (to specify for example the brightness).
When an automation rule fires, it calls a service. For this service you can specify an entity id it should apply to and optional service parameters (to specify for example the brightness).
```yaml
automation:
@ -310,23 +289,19 @@ automation:
message: Something just happened, better take a look!
```
If you want to specify multiple services to be called or include a delay, have a look at the
[script component](/components/script/). If you want to describe how certain entities should look,
check out the [scene component](/components/scene/).
If you want to specify multiple services to be called or include a delay, have a look at the [script component](/components/script/). If you want to describe how certain entities should look, check out the [scene component](/components/scene/).
## {% linkable_title Troubleshooting %}
You can verify that your automation rules are being initialized correctly by watching both the realtime
logs and also the logbook. The realtime logs will show the rules being initialized (once for each trigger):
You can verify that your automation rules are being initialized correctly by watching both the realtime logs and also the logbook. The realtime logs will show the rules being initialized (once for each trigger):
```bash
```plain
INFO [homeassistant.components.automation] Initialized rule Rainy Day
INFO [homeassistant.components.automation] Initialized rule Rainy Day
INFO [homeassistant.components.automation] Initialized rule Rainy Day
INFO [homeassistant.components.automation] Initialized rule Rain is over
```
The Logbook component will show a line entry when an automation is triggered. You can look at the
previous entry to determine which trigger in the rule triggered the event.
The Logbook component will show a line entry when an automation is triggered. You can look at the previous entry to determine which trigger in the rule triggered the event.
![Logbook example](/images/components/automation/logbook.png)

View file

@ -15,7 +15,8 @@ The browser component provides a service to open urls in the default browser on
To load this component, add the following lines to your `configuration.yaml`:
```
```yaml
# Example configuration.yaml entry
browser:
```

View file

@ -16,6 +16,7 @@ This component allows you to integrate any IP camera into Home Assistant. It sup
Home Assistant will serve the images via its server, making it possible to view your IP camera's while outside of your network.
As part of the basic support the following features will be provided:
- MJPEG video streaming
- Saving a snapshot
- Recording(JPEG frame capture)

View file

@ -20,6 +20,6 @@ The configurator component allows components to request information from the use
- Input fields can be defined with a description, and optional type
- It will trigger a callback when the button is pressed
The Hue component in [the demo](/demo) and Plex are implemented using the configurator. See [the source of the demo component](https://github.com/balloob/home-assistant/blob/master/homeassistant/components/demo.py#L72) for a simple example.
The Hue component in [the demo](/demo) and Plex are implemented using the configurator. See [the source of the demo component](https://github.com/balloob/home-assistant/blob/master/homeassistant/components/demo.py#L132) for a simple example.
See [the source](https://github.com/balloob/home-assistant/blob/master/homeassistant/components/configurator.py#L39) for more details on how to use the configurator component.

View file

@ -15,7 +15,8 @@ The conversation component can process sentences into commands for Home Assistan
To enable the conversion option in your installation, add the following to your `configuration.yaml` file:
```
```yaml
# Example configuration.yaml entry
conversation:
```

View file

@ -12,8 +12,7 @@ ha_category: Presence Detection
---
This platform allows you to detect presence by monitoring an MQTT topic for new locations. To use this
platform, you specify a unique topic for each device.
This platform allows you to detect presence by monitoring an MQTT topic for new locations. To use this platform, you specify a unique topic for each device.
```yaml
# Example configuration.yaml entry

View file

@ -12,12 +12,9 @@ featured: true
---
As an alternative to the router-based device tracking, it is possible to directly scan the network
for devices by using Nmap. The IP addresses to scan can be specified in any format that Nmap understands,
including the network-prefix notation (`192.168.1.1/24`) and the range notation (`192.168.1.1-255`).
As an alternative to the router-based device tracking, it is possible to directly scan the network for devices by using Nmap. The IP addresses to scan can be specified in any format that Nmap understands, including the network-prefix notation (`192.168.1.1/24`) and the range notation (`192.168.1.1-255`).
If you're on Debian or Ubuntu, you might have to install the packages for arp and nmap. Do so by
running `apt-get install net-tools nmap`.
If you're on Debian or Ubuntu, you might have to install the packages for arp and nmap. Do so by running `apt-get install net-tools nmap`.
```yaml
# Example configuration.yaml entry
@ -27,8 +24,6 @@ device_tracker:
home_interval: 10
```
`home_interval` is an optional value set in minutes. This will be the number of minutes nmap will not
scan this device, assuming it is home, in order to preserve the device battery.
`home_interval` is an optional value set in minutes. This will be the number of minutes nmap will not scan this device, assuming it is home, in order to preserve the device battery.
See the [device tracker component page](/components/device_tracker/) for instructions how to
configure the people to be tracked.
See the [device tracker component page](/components/device_tracker/) for instructions how to configure the people to be tracked.

View file

@ -13,12 +13,9 @@ featured: true
---
This platform allows you to detect presence using [Owntracks](http://owntracks.org/). OwnTracks allows
users to track their location on Android and iOS phones and publish it to an MQTT broker. This platform
will connect to the broker and monitor for new locations.
This platform allows you to detect presence using [Owntracks](http://owntracks.org/). OwnTracks allows users to track their location on Android and iOS phones and publish it to an MQTT broker. This platform will connect to the broker and monitor for new locations.
This component requires [the MQTT component](/components/mqtt/) to be set up and works very well
together with [the zone component](/components/zone/).
This component requires [the MQTT component](/components/mqtt/) to be set up and works very well together with [the zone component](/components/zone/).
To integrate Owntracks in Home Assistant, add the following section to your `configuration.yaml` file:

View file

@ -11,11 +11,9 @@ logo: manything.png
ha_category: Camera
---
[Manything](https://manything.com) is a smart app that turns your iPhone, iPod, or iPad into a wifi
camera for monitoring your home, your pets, anything! Comes with live streaming, motion activated alerts, cloud video recording, and more.
[Manything](https://manything.com) is a smart app that turns your iPhone, iPod, or iPad into a wifi camera for monitoring your home, your pets, anything! Comes with live streaming, motion activated alerts, cloud video recording, and more.
To get manything support, HA will use IFTTT's [Maker Channel](https://ifttt.com/maker) and the [ManyThing Channel](https://ifttt.com/manything).
Use the [IFTTT Setup instructions](/components/ifttt/) to activate the IFTTT Platform.
To get manything support, HA will use IFTTT's [Maker Channel](https://ifttt.com/maker) and the [ManyThing Channel](https://ifttt.com/manything). Use the [IFTTT Setup instructions](/components/ifttt/) to activate the IFTTT Platform.
After setting up IFTTT, Maker Channel and ManyThing Channel, you can use the following examples to configure Home Assistant.
@ -62,7 +60,7 @@ automation:
<p class='img'>
<img src='/images/components/ifttt/IFTTT_manything_trigger.png' />
You need to setup a unique trigger for each event you sent to IFTTT.
For ManyThing support, you need to set up an <code>on</code> and <code>off</code> event.
For ManyThing support, you need to set up an `on` and `off` event.
</p>
### {% linkable_title Testing your trigger %}

View file

@ -12,10 +12,7 @@ ha_category: Automation
featured: true
---
[IFTTT](https://ifttt.com) is a web service that allows users to create chains of simple conditional
statements, so called "recipes". With the ifttt component you can trigger recipes through the "maker"
channel. See the [announcement blog post](/blog/2015/09/13/home-assistant-meets-ifttt/) for examples
how to use it.
[IFTTT](https://ifttt.com) is a web service that allows users to create chains of simple conditional statements, so called "recipes". With the IFTTT component you can trigger recipes through the "maker" channel. See the [announcement blog post](/blog/2015/09/13/home-assistant-meets-ifttt/) for examples how to use it.
```yaml
# Example configuration.yaml entry
@ -60,10 +57,7 @@ You need to setup a unique trigger for each event you sent to IFTTT.
### {% linkable_title Sending events from IFTTT to Home Assistant %}
To be able to receive events from IFTTT, your Home Assistant instance needs to be accessible from
the web. This can be achieved by forwarding port 8123 from your router to the device running Home
Assistant. If your ISP is giving you a new IP address from time to time, consider using
[DuckDNS][duck-dns].
To be able to receive events from IFTTT, your Home Assistant instance needs to be accessible from the web. This can be achieved by forwarding port 8123 from your router to the device running Home Assistant. If your ISP is giving you a new IP address from time to time, consider using [DuckDNS][duck-dns].
[duck-dns]: https://duckdns.org
@ -72,6 +66,7 @@ Assistant. If your ISP is giving you a new IP address from time to time, conside
</p>
### {% linkable_title Additional Channel Examples %}
Additional examples of using IFTTT channels can be found below.
Channel | Description

View file

@ -22,7 +22,7 @@ The `keyboard` component simulates key presses on the host machine. It currently
To load this component, add the following lines to your `configuration.yaml`:
```
```yaml
keyboard:
```
@ -30,8 +30,8 @@ keyboard:
You may need to install platform-specific [dependencies for PyUserInput](https://github.com/SavinaRoja/PyUserInput#dependencies) in order to use the keyboard component. In most cases this can be done by running:
```
pip3 install [package name]
```bash
$ pip3 install [package name]
```
#### {% linkable_title Windows %}

View file

@ -10,10 +10,7 @@ footer: true
ha_category: "History"
---
<img src='/images/screenshots/logbook.png' style='margin-left:10px; float: right;' height="100" />
The logbook component provides a different perspective on the history of your house by showing all
the changes that happened to your house in reverse chronological order.
[See the demo for a live example](/demo/).
<img src='/images/screenshots/logbook.png' style='margin-left:10px; float: right;' height="100" /> The logbook component provides a different perspective on the history of your house by showing all the changes that happened to your house in reverse chronological order. [See the demo for a live example](/demo/).
To enable the logbook in your installation, add the following to your `configuration.yaml` file:

View file

@ -13,11 +13,9 @@ featured: true
---
The Plex platform allows you to connect a [Plex Media Server](https://plex.tv) to Home Assistant. It will allow you to control media playback and see the current playing item.
The preferred way to setup the Plex platform is by enabling the the [the discovery component]({{site_root}}/components/discovery/) and requires GDM to be enabled.
If local authentication is enabled or multiple users are defined, HASS requires an authentication token to be entered in the webinterface. See <A TARGET="_new" HREF=https://support.plex.tv/hc/en-us/articles/204059436>Finding your account token / X-Plex-Token</A>.
The Plex platform allows you to connect a [Plex Media Server](https://plex.tv) to Home Assistant. It will allow you to control media playback and see the current playing item. The preferred way to setup the Plex platform is by enabling the the [the discovery component](/components/discovery/) and requires GDM to be enabled.
If local authentication is enabled or multiple users are defined, HASS requires an authentication token to be entered in the webinterface. See [Finding your account token / X-Plex-Token](https://support.plex.tv/hc/en-us/articles/204059436).
If you want to enable the plex platform directly, add the following lines to your `configuration.yaml`:
@ -27,14 +25,14 @@ media_player:
- platform: plex
```
You may also need to create the file `plex.conf`.
You may also need to create the file `plex.conf`.
```
{'IP_ADDRESS:PORT': {'token': 'TOKEN'}}
```json
{"<IP_ADDRESS>:<PORT>": {"token": "<TOKEN>"}}
```
- **IP_ADDRESS** *Required*: IP address of the Plex Media Server
- **PORT** *required*: Default is 32400
- **TOKEN** *Optional*: Only is authentication is required. Set to `None` (without quotes) otherwise.
- `<IP_ADDRESS>` *Required*: IP address of the Plex Media Server
- `<PORT>` *required*: Default is 32400
- `<TOKEN>` *Optional*: Only is authentication is required. Set to `None` (without quotes) otherwise.
At this moment, the Plex platform only supports one Plex Media Server.

View file

@ -18,6 +18,7 @@ To add modbus to your installation, add the following to your `configuration.yam
For a network connection:
```yaml
#Modbus TCP
modbus:
type: tcp

View file

@ -40,14 +40,11 @@ Configuration variables:
## {% linkable_title Picking a broker %}
The MQTT component needs you to run an MQTT broker for Home Assistant to connect to.
There are three options, each with various degrees of ease of setup and privacy.
The MQTT component needs you to run an MQTT broker for Home Assistant to connect to. There are three options, each with various degrees of ease of setup and privacy.
#### {% linkable_title Run your own %}
Most private option but requires a bit more work. There are two free and open-source brokers to pick
from: [Mosquitto](http://mosquitto.org/) and [Mosca](http://www.mosca.io/).
Most private option but requires a bit more work. There are two free and open-source brokers to pick from: [Mosquitto](http://mosquitto.org/) and [Mosca](http://www.mosca.io/).
```yaml
# Example configuration.yaml entry
@ -62,9 +59,7 @@ mqtt:
#### {% linkable_title Public MQTT %}
The Mosquitto project runs a [public broker](http://test.mosquitto.org). Easiest to setup but there
is 0 privacy as all messages are public. Use this only for testing purposes and not for real tracking
of your devices.
The Mosquitto project runs a [public broker](http://test.mosquitto.org). Easiest to setup but there is 0 privacy as all messages are public. Use this only for testing purposes and not for real tracking of your devices.
```yaml
mqtt:
@ -80,9 +75,7 @@ mqtt:
#### {% linkable_title CloudMQTT %}
[CloudMQTT](https://www.cloudmqtt.com) is a hosted private MQTT instance that is free up to 10
connected devices. This is enough to get started with for example
[OwnTracks](/components/device_tracker.owntracks/) and give you a taste of what is possible.
[CloudMQTT](https://www.cloudmqtt.com) is a hosted private MQTT instance that is free up to 10 connected devices. This is enough to get started with for example [OwnTracks](/components/device_tracker.owntracks/) and give you a taste of what is possible.
<p class='note'>
Home Assistant is not affiliated with CloudMQTT nor will receive any kickbacks.
@ -97,17 +90,17 @@ Home Assistant is not affiliated with CloudMQTT nor will receive any kickbacks.
a. Under manage users, fill in username, password and click add
b. Under ACLs, select user, topic `#`, check 'read access' and 'write access'
5. Copy the instance info to your configuration.yaml:
```yaml
mqtt:
broker: <Server>
port: <SSL Port>
username: <User>
password: <Password>
mqtt:
broker: <Server>
port: <SSL Port>
username: <User>
password: <Password>
```
<p class='note'>
Home Assistant will automatically load the correct certificate if you connect to an encrypted channel
of CloudMQTT (port range 20 000 - 30 000).
Home Assistant will automatically load the correct certificate if you connect to an encrypted channel of CloudMQTT (port range 20 000 - 30 000).
</p>
## {% linkable_title Building on top of MQTT %}
@ -118,14 +111,14 @@ of CloudMQTT (port range 20 000 - 30 000).
- [OwnTracks Device Tracker](/components/device_tracker.owntracks/)
- [MQTT automation rule](/components/automation/#mqtt-based-automation)
- [MQTT alarm](/components/alarm_control_panel.mqtt/)
- Integrating it into a component. See the [MQTT example component](https://github.com/balloob/home-assistant/blob/dev/config/custom_components/mqtt_example.py) how to do this.
- Integrating it into own component. See the [MQTT example component](https://github.com/balloob/home-assistant/blob/dev/config/custom_components/mqtt_example.py) how to do this.
## {% linkable_title Testing your setup %}
For debugging purposes `mosquitto` is shipping commandline tools to send and recieve MQTT messages. For sending test messages to a broker running on localhost:
```bash
mosquitto_pub -h 127.0.0.1 -t home-assistant/switch/1/on -m "Switch is ON"
$ mosquitto_pub -h 127.0.0.1 -t home-assistant/switch/1/on -m "Switch is ON"
```
Another way to send MQTT messages by hand is to use the "Developer Tools" in the Frontend. Choose "Call Service" and then `mqtt/mqtt_send` under "Available Services". Enter something similar to the example below into the "Service Data" field.
@ -146,5 +139,5 @@ The message should appear on the bus:
For reading all messages sent on the topic `home-assistant` to a broker running on localhost:
```bash
mosquitto_sub -h 127.0.0.1 -v -t "home-assistant/#"
$ mosquitto_sub -h 127.0.0.1 -v -t "home-assistant/#"
```

View file

@ -32,9 +32,9 @@ Configuration variables:
- **user_key** (*Required*): To retrieve this value log into your account at https://pushover.net
This is a quote from the pushover website regarding free/open source apps:
> "If you are creating a client-side library, application, or open source project that will be redistributed and installed by end-users, you may want to require each of your users to register their own application rather than including your own API token with the software."
<blockquote>
If you are creating a client-side library, application, or open source project that will be redistributed and installed by end-users, you may want to require each of your users to register their own application rather than including your own API token with the software.
</blockquote>
When setting up the application you can use this [icon](https://home-assistant.io/images/favicon-192x192.png).
For more automation examples, see the [getting started with automation page]({{site_root}}/components/automation/).

View file

@ -10,25 +10,14 @@ footer: true
ha_category: Organization
---
A user can create scenes that capture the states you want certain entities to be. For example a scene
can contain that light A should be turned on and light B should be bright red.
A user can create scenes that capture the states you want certain entities to be. For example a scene can contain that light A should be turned on and light B should be bright red.
A scene is active if all states of the scene match the actual states. An optional `fuzzy_match` option
can be given to allow entities to match if attributes are not exact but are in range of the preferred
state.
If a scene is manually activated it will store the previous state of the entities. These will be
restored when the state is deactivated manually. If one of the enties that are being tracked change
state on its own, the old state will not be restored when it is being deactivated.
Scenes can be activated using the service `scene.turn_on` and deactivated using the service `scene.turn_off`.
Scenes can be activated using the service `scene.turn_on`.
```yaml
# Example configuration.yaml entry
scene:
- name: Romantic
# Optional, allow fuzzy matching number atttributes to check if scene is on
fuzzy_match: 0.2
entities:
light.tv_back_light: on
light.ceiling:

View file

@ -10,8 +10,7 @@ footer: true
ha_category: Automation
---
The script component allows users to create a sequence of service calls and delays. Scripts can be
started using the service `script/turn_on` and interrupted using the service `script/turn_off`.
The script component allows users to create a sequence of service calls and delays. Scripts can be started using the service `script/turn_on` and interrupted using the service `script/turn_off`.
```yaml
# Example configuration.yaml entry

View file

@ -43,7 +43,7 @@ In this section you find some real life examples of how to use this sensor.
There are several ways to get the temperature of your hard drive. A simple solution is to use [hddtemp](https://savannah.nongnu.org/projects/hddtemp/).
```bash
hddtemp -n /dev/sda
$ hddtemp -n /dev/sda
```
To use those information, the entry for a sensor in the `configuration.yaml` file will look like this.
@ -59,8 +59,7 @@ sensor:
### {% linkable_title CPU temperature %}
Thanks to the [`proc`](https://en.wikipedia.org/wiki/Procfs) file system, various details about a system can be retrieved. Here the CPU temperature
is of interest. Add something similar to your `configuration.yaml` file:
Thanks to the [`proc`](https://en.wikipedia.org/wiki/Procfs) file system, various details about a system can be retrieved. Here the CPU temperature is of interest. Add something similar to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
@ -79,15 +78,14 @@ The example is doing the same as the [aREST sensor](/components/sensor.arest/) b
The one-line script to retrieve a value is shown below. Of course would it be possible to use this directly in the `configuration.yaml` file but need extra care about the quotation marks.
```python
python3 -c "import requests; print(requests.get('http://10.0.0.48/analog/2').json()['return_value'])"
```bash
$ python3 -c "import requests; print(requests.get('http://10.0.0.48/analog/2').json()['return_value'])"
```
The script (saved as `arest-value.py`) that is used looks like the example below.
```python
#!/usr/bin/python3
#
from requests import get
response = get('http://10.0.0.48/analog/2')
print(response.json()['return_value'])

View file

@ -14,7 +14,7 @@ featured: true
The forecast platform uses the [Forecast.io](https://forecast.io/) web service as a source for meteorological data for your location. The location is based on the Longitude and Latitude cooridinates configured in `configuration.yaml`. The cooridinates are auto detected but to take advantage of the hyper-local weather reported by forecast.io, you can refine them down to your exact home address. GPS cooridinates can be found by using Google Maps and clicking on your home.
You need an API key which is free but requires a [registration](https://developer.forecast.io/register). You can make 1000 requests per day. This means that you could create approximately every 1.4 minute one.
You need an API key which is free but requires a [registration](https://developer.forecast.io/register). You can make 1000 requests per day. This means that you could create one approximately every 1.4 minutes.
To add Forecast.io to your installation, add the following to your `configuration.yaml` file:
@ -45,7 +45,7 @@ sensor:
Configuration variables:
- **api_key** (*Required*): Your API key for http://forecast.io/.
- **api_key** (*Required*): Your API key for http://forecast.io/.
- **monitored_conditions** array (*Required*): Conditions to display in the frontend.
- **summary**: A human-readable text summary.
- **precip_type**: The type of precipitation occurring.
@ -59,7 +59,7 @@ Configuration variables:
- **pressure**: The sea-level air pressure in millibars.
- **visibility**: The average visibility.
- **ozone**: The columnar density of total atmospheric ozone in Dobson.
- **units** (*Optional*): Specify the unit system. Default to `si` or `us` based on the temperature preference in Home Assistant. Other options are auto, us, si, ca, and uk2.
- **units** (*Optional*): Specify the unit system. Default to `si` or `us` based on the temperature preference in Home Assistant. Other options are `auto`, `us`, `si`, `ca`, and `uk2`.
`auto` will let forecast.io decide the unit system based on location.
Details about the API are available in the [Forecast.io documentation](https://developer.forecast.io/docs/v2).

View file

@ -35,6 +35,6 @@ Configuration variables:
If you are using an original Arduino the port will be named `ttyACM*`. The exact number can be determined with the command shown below.
```bash
ls /dev/ttyACM*
$ ls /dev/ttyACM*
```

View file

@ -10,9 +10,7 @@ footer: true
ha_category: Automation
---
This component can expose regular shell commands as services. Services can be called from a script
or in automation.
This component can expose regular shell commands as services. Services can be called from a script or in automation.
```yaml
# Example configuration.yaml entry

View file

@ -10,9 +10,7 @@ footer: true
ha_category: Weather
---
The `sun` component will use your current location to track if the sun is above or below the horizon.
The sun can be used within automation as [a trigger with an optional offset to simulate dawn/dusk][automation-trigger].
The sun component will use your current location to track if the sun is above or below the horizon.The sun can be used within automation as [a trigger with an optional offset to simulate dawn/dusk][automation-trigger].
[automation-trigger]: /components/automation/#sun-trigger

View file

@ -38,7 +38,7 @@ In this section you find some real life examples of how to use this switch.
### {% linkable_title aREST device %}
The example below is doing the same as the [aREST switch](/components/switch.arest/). The commandline tool `[curl](http://curl.haxx.se/)` is used to toogle a pin which is controllable through REST.
The example below is doing the same as the [aREST switch](/components/switch.arest/). The commandline tool [`curl`](http://curl.haxx.se/) is used to toogle a pin which is controllable through REST.
```yaml
# Example configuration.yaml entry

View file

@ -12,11 +12,9 @@ ha_category: Switch
---
In an ideal scenario, the MQTT device will have a state topic to publish state changes. If these messages are published with RETAIN flag, the MQTT switch will receive an instant state update after subscription and will
start with correct state. Otherwise, the initial state of the switch will be false/off.
In an ideal scenario, the MQTT device will have a state topic to publish state changes. If these messages are published with RETAIN flag, the MQTT switch will receive an instant state update after subscription and will start with correct state. Otherwise, the initial state of the switch will be false/off.
When a state topic is not available, the switch will work in optimistic mode. In this mode, the switch will immediately change state after every command. Otherwise, the switch will wait for state confirmation from device
(message from `state_topic`).
When a state topic is not available, the switch will work in optimistic mode. In this mode, the switch will immediately change state after every command. Otherwise, the switch will wait for state confirmation from device (message from `state_topic`).
Optimistic mode can be forced, even if state topic is available. Try to enable it, if experiencing incorrect switch operation.
@ -44,5 +42,5 @@ Configuration variables:
- **optimistic** (*Optional*): Flag that defines if switch works in optimistic mode. Default is true if no state topic defined, else false.
<p class='note warning'>
Make sure that your topics match exact. <code>some-topic/</code> and <code>some-topic</code> are different topics.
Make sure that your topics match exact. `some-topic/` and `some-topic` are different topics.
</p>

View file

@ -12,8 +12,7 @@ ha_category: Hub
---
The tellstick component integrates [TellStick](http://www.telldus.se/products/tellstick) devices into Home Assistant. This integration allows users to add switches, lights, and sensors which are communicating with 433 Mhz. There are couple of vendors (Capidi
Elro, Intertechno, Nexa, Proove, Sartano, and Viking) how are selling products which works with TellStick. For more details, please check the TellStick [compatibility list](http://telldus.se/products/compability).
The tellstick component integrates [TellStick](http://www.telldus.se/products/tellstick) devices into Home Assistant. This integration allows users to add switches, lights, and sensors which are communicating with 433 Mhz. There are couple of vendors (Capidi Elro, Intertechno, Nexa, Proove, Sartano, and Viking) how are selling products which works with TellStick. For more details, please check the TellStick [compatibility list](http://telldus.se/products/compability).
To get started, add the devices to your `configuration.yaml` file.
@ -28,6 +27,5 @@ sensor:
# All dimmers will be picked up as lights.
light:
platform: tellstick
```

View file

@ -12,14 +12,15 @@ ha_category: Hub
featured: true
---
[Wink](http://www.wink.com/) is a home automation hub that can control a whole wide range of devices on the market. Or, as they say in their own words:
<blockquote>Wink offers one, quick and simple way to connect people with the products they rely on every day in their home.</blockquote>
<blockquote>
Wink offers one, quick and simple way to connect people with the products they rely on every day in their home.
</blockquote>
Home Assistant integrates the Wink hub and allows you to get the status and control connected switches, lights and sensors.
To get started with the Wink API, you will first need to get yourself an API access token. Because it is very difficult right now to get access to their API, John McLaughlin has created the form below to get you one.
To get started with the Wink API, you will first need to get yourself an API access token. Because it is very difficult right now to get access to their API, John McLaughlin has created the form below to get you one.
<iframe src="https://winkbearertoken.appspot.com"
style='width: 100%; height: 200px; border: 0; margin: 0 auto 15px; border-left: 2px solid #049cdb; padding-left: 15px;'></iframe>
@ -38,5 +39,5 @@ Configuration variables:
This will connect to the Wink hub and automatically set up any lights, switches and sensors that it finds.
<p class='note'>
The Wink hub can only be accessed via the cloud. This means it requires an active internet connection and you will experience delays when controlling devices (~3s) and getting an updated device state (~15s).
The Wink hub can only be accessed via the cloud. This means it requires an active internet connection and you will experience delays when controlling devices (~3s) and getting an updated device state (~15s).
</p>

View file

@ -10,10 +10,7 @@ footer: true
ha_category: Organization
---
Zones allow you to specify certain regions on earth (for now). When a device tracker sees a device
to be within a zone, the state will take the name from the zone. Zones can also be used as a
[trigger](/components/automation/#zone-trigger) or [condition](/components/automation/#zone-condition)
inside automation setups.
Zones allow you to specify certain regions on earth (for now). When a device tracker sees a device to be within a zone, the state will take the name from the zone. Zones can also be used as a [trigger](/components/automation/#zone-trigger) or [condition](/components/automation/#zone-condition) inside automation setups.
Zones support the usual method to specify multiple zones, use keys `zone:`, `zone 2:` etc.
@ -44,18 +41,12 @@ zone 3:
#### {% linkable_title Home zone %}
If no configuration is given, the zone component will create a zone for home. This zone will use
location given in the `configuration.yaml` file and have a radius of 100 meters. To override this,
create a zone configuration and name it 'Home'.
If no configuration is given, the zone component will create a zone for home. This zone will use location given in the `configuration.yaml` file and have a radius of 100 meters. To override this, create a zone configuration and name it 'Home'.
#### {% linkable_title Icons %}
It is preferred to pick an icon to use for your zone. By default, Home Assistant includes most of the
[material icons](https://www.google.com/design/icons/). See [the source][icon-source] for a specific list which
categories are included.
It is preferred to pick an icon to use for your zone. By default, Home Assistant includes most of the [material icons](https://www.google.com/design/icons/). See [the source][icon-source] for a specific list which categories are included.
For all but the action category you will need to prefix the icon name with its category. For example
`social:people` or `av:radio`. For the action category, you will not need to do this, examples are
`home`, `work,`, `group-work` and `shopping-cart`.
For all but the action category you will need to prefix the icon name with its category. For example `social:people` or `av:radio`. For the action category, you will not need to do this, examples are `home`, `work,`, `group-work` and `shopping-cart`.
[icon-source]: https://github.com/balloob/home-assistant-polymer/blob/master/src/resources/home-assistant-icons.html#L3

View file

@ -19,9 +19,9 @@ To allow Home Assistant to talk to your Z-Wave USB stick you will have to compil
Please make sure you have the correct dependencies installed:
```
apt-get install cython3 libudev-dev python-sphinx python3-setuptools
pip3 install "cython<0.23"
```bash
$ apt-get install cython3 libudev-dev python-sphinx python3-setuptools
$ pip3 install "cython<0.23"
```
As an alternative, the Home Assistant docker image has support for Z-Wave built-in.
@ -36,6 +36,8 @@ Configuration variables:
- **usb_path** (*Required*): The port where your device is connected to your Home Assistant host.
To find the path of your Z-Wave stick, run:
```bash
ls /dev/ttyUSB*
$ ls /dev/ttyUSB*
```