From 6bbdf5cd422968d6e08b9c9db0051c5bc7adafd5 Mon Sep 17 00:00:00 2001 From: Kevin Fronczak Date: Wed, 19 Jul 2017 04:56:48 -0400 Subject: [PATCH] Google Wifi documentation (#2984) * Google Wifi documentation * Update sensor.google_wifi.markdown --- .../_components/sensor.google_wifi.markdown | 40 ++++++++++++++++++ .../images/supported_brands/google_wifi.png | Bin 0 -> 19087 bytes 2 files changed, 40 insertions(+) create mode 100644 source/_components/sensor.google_wifi.markdown create mode 100644 source/images/supported_brands/google_wifi.png diff --git a/source/_components/sensor.google_wifi.markdown b/source/_components/sensor.google_wifi.markdown new file mode 100644 index 00000000000..ad628259793 --- /dev/null +++ b/source/_components/sensor.google_wifi.markdown @@ -0,0 +1,40 @@ +--- +layout: page +title: "Google Wifi" +description: "Instructions how to integrate Google Wifi/OnHub routers into Home Assistant." +date: 2017-07-15 21:22 +sidebar: true +comments: false +sharing: true +footer: true +ha_category: System Monitor +logo: google_wifi.png +ha_iot_class: "Local Polling" +ha_release: "0.50" +--- + + +The `google_wifi` sensor platform is displaying the exposed status of a [Google Wifi](https://madeby.google.com/wifi/) (or OnHub) router. + +The sensor is able to report network status, up-time, current IP address, and firmware versions. + +To enable this sensor, add the following lines to your `configuration.yaml` file: + +```yaml +# Example configuration.yaml entry +sensor: + - platform: google_wifi +``` + +Configuration variables: + +- **host** (*Optional*): The address to retreive status from the router. Defaults to `testwifi.here` (other options include `onhub.here` and your router's IP such as `192.168.86.1`). +- **name** (*Optional*): Name to give the Google Wifi sensor. Defaults to `google_wifi`. +- **monitored_conditions** (*Optional*): Defines the data to monitor as sensors. Defaults to all of the listed options below. + - **current_version**: Current firmware version of the router. + - **new_version**: Latest availiable firmware version. If router is up-to-date, this value defaults to `Latest`. + - **uptime**: Days since router has been turned on. + - **last_restart**: Date of last restart. Format is `YYYY-MM-DD HH:mm:SS`. + - **local_ip**: Local public IP address. + - **status**: Reports whether the router is or is not connected to the internet. + diff --git a/source/images/supported_brands/google_wifi.png b/source/images/supported_brands/google_wifi.png new file mode 100644 index 0000000000000000000000000000000000000000..5a6448516688a4edc81c2982d72f1123fd440ef2 GIT binary patch literal 19087 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 E0CvVB+yDRo literal 0 HcmV?d00001