home-assistant.github.io/source/_components/device_tracker.tomato.markdown
Gregory Dosh 48fbcd8e64 adding device_tracker.tomato https params (#4389)
* adding device_tracker.tomato https params

* converting to newer standard

* removing extra space

* Adding default values

* fixing some misc quoting bugs

* cleaning up optional params

* updating default port param to match ssl choice

* changing verbage
2018-01-24 12:03:10 +01:00

75 lines
No EOL
2.7 KiB
Markdown

---
layout: page
title: "Tomato"
description: "Instructions how to integrate Tomato routers into Home Assistant."
date: 2015-03-23 19:59
sidebar: true
comments: false
sharing: true
footer: true
logo: tomato.png
ha_category: Presence Detection
ha_release: pre 0.7
---
The `tomato` platform requires an extra config variable called `http_id`. The value can be obtained by logging in to the Tomato admin interface and search for `http_id` in the page source code.
Because of a limitation in Tomato's API, this platform will only track wireless devices. If tracking wired devices like a Philips Hue Hub is necessary, it is possible to use another platform like [NMAP](/components/device_tracker.nmap_tracker/).
To use this device tracker in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
device_tracker:
- platform: tomato
host: YOUR_ROUTER_IP_ADDRESS
username: YOUR_ADMIN_USERNAME
password: YOUR_ADMIN_PASSWORD
http_id: YOUR_HTTP_ID
```
{% configuration %}
host:
description: "The IP address or hostname of your router, e.g. `192.168.1.1` or `rt-ac68u`."
required: false
type: string
port:
description: "The port number of your router, e.g. `443`."
required: false
type: int
default: 80/443 (automatically detected)
ssl:
description: "Whether to connect via `https`."
required: false
type: bool
default: false
verify_ssl:
description: "If SSL verification for https resources needs to be turned off (for self-signed certs, etc.) this can take on boolean values `False` or `True` or you can pass a location on the device where a certificate can be used for verification e.g. `/mnt/NAS/router_cert.pem`."
required: false
type: [string, bool]
default: true
username:
description: "The username of an user with administrative privileges, usually *admin*."
required: true
type: string
password:
description: "The password for your given admin account."
required: true
type: string
http_id:
description: "The value can be obtained by logging in to the Tomato admin interface and search for `http_id` in the page source code."
required: true
type: string
{% endconfiguration %}
See the [device tracker component page](/components/device_tracker/) for instructions how to configure the people to be tracked.
A description of the API s available in this [Tomato API](http://paulusschoutsen.nl/blog/2013/10/tomato-api-documentation/) blog post.
SSL Certificate:
Gathering the SSL Certificate of your router can be accomplished with this (or a similar) command:
```bash
openssl s_client -showcerts -connect 172.10.10.1:443 </dev/null 2>/dev/null | openssl x509 -outform PEM > router_cert.pem
```