- Merged upstream

- Added some improvements to the google assistant howto
This commit is contained in:
Luca Adrian Lindhorst 2018-03-17 16:01:20 +01:00
commit 19ed7ddea1
134 changed files with 4211 additions and 339 deletions

View file

@ -41,7 +41,6 @@ google_assistant:
aliases:
- bright lights
- entry lights
type: light
light.living_room:
expose: false
room: living room
@ -68,7 +67,7 @@ agent_user_id:
required: false
type: string
api_key:
description: An API Key generated for the project from [Google Console](https://console.cloud.google.com/apis/api/homegraph.googleapis.com/overview) which allows you to update devices without unlinking and relinking an account (see setup below). If not provided then the request_sync service is not exposed.
description: An API Key generated for the project from [Google Console](https://console.cloud.google.com/apis/api/homegraph.googleapis.com/overview) which allows you to update devices without unlinking and relinking an account (see step 9 below). If not provided then the `google_assistant.request_sync` service is not exposed. It is recommended to set up this configuration key as it also allows the usage of the following command, "Ok Google, sync my devices". Once you have setup this componenet you will need to call this service (or command) each time you add a new device that you wish to control via the Google Assistant integration.
required: false
type: string
expose_by_default:
@ -102,10 +101,6 @@ entity_config:
description: Aliases that can also be used to refer to this entity
required: false
type: list
type:
description: Override how Google Assistant interprets the domain of the entity. For example, set to `light` for a switch entity to have it be handled as a light.
required: false
type: string
room:
description: Allows for associating this device to a Room in Google Assistant. This is currently non-functional, but will be enabled in the near future.
required: false
@ -115,15 +110,16 @@ entity_config:
### {% linkable_title Available domains %}
Currently, the following domains are available to be used with Google Assistant, listed with their default types:
- group = switch (on/off)
- scene = scene (on)
- script = scene (on)
- switch = switch (on/off)
- fan = switch (on/off)
- light = light (on/off/brightness/rgb color/color temp)
- cover = switch (on/off/set position (brightness) )
- media_player = switch (on/off/set volume (brightness) )
- climate = thermostat (temperature setting)
- group (on/off)
- input boolean (on/off)
- scene (on)
- script (on)
- switch (on/off)
- fan (on/off)
- light (on/off/brightness/rgb color/color temp)
- cover (on/off/set position (via set brightness))
- media_player (on/off/set volume (via set brightness))
- climate (temperature setting)
It's very important that you use very long strings for `client_id` and `access_token`. Those are essentially the credentials to your Home Assistant instance. You can generate them with the following command:
@ -139,7 +135,7 @@ If you're not using Linux, you can use sites such as [this one](https://www.brow
a. Add/Import project
b. Click on `BUILD` on the `Smart home` card
c. Type in your home assistant url: `https://[YOUR HOME ASSISTANT URL:PORT]/api/google_assistant`, replace the `[YOUR HOME ASSISTANT URL:PORT]` with the domain / ip address and the port under which your Home Assistant is reachable.
d. Click `Done`
d. Click `Done`. Then click on `Overview`, which will lead you to the app details screen.
2. You'll need to fill out most of the information on that page, but none of it really matters since you won't be addressing the App directly, only through the Smart Home functionality built into Google Assistant.
3. The final item on that page `Account linking` is required for your app to interact with Home Assistant.
a. Grant type: `Implicit`
@ -159,7 +155,7 @@ If you're not using Linux, you can use sites such as [this one](https://www.brow
9. If you want to use the `google_assistant.request_sync` service, to update devices without unlinking and relinking, in Home Assistant, then enable Homegraph API for your project:
a. Go to the [cloud console](https://console.cloud.google.com/apis/api/homegraph.googleapis.com/overview)
b. Select your project and click Enable Homegraph API
c. Go to Credentials and select API Key from Create Credentials
c. Go to Credentials, which you can find on the left navigation bar under the key icon, and select API Key from Create Credentials
d. Note down the generated API Key and use this in the configuration
### {% linkable_title Troubleshooting the request_sync service %}