Setting up Google Actions for Assistant

just faceroll over the keyboard, delete all symbols and its ready to go :smiley:

@clintos that’s how I got mine paired, I did a small testing and it seemed to be working but because I still have emulated_hue installed everything was considered a clone and only worked if I gave it an alias within the app.

On hass.io I only copied the default configuration, adjusted the project_id, client_id and accesss_token and let exposed_domains switch, light, group as it was

gacions I downloaded on my laptop since I only use it to upload the json file

@plonka2000 I use Hass.io and don’t use the Google Assistant addon, I own a real Google Assistant.

Also, I don’t want to run any local voice services, just via a Google Home or Android device separately.

Is the add-on installation suitable for this?
I had a look at the docs and it seems like its for much more, needing sound devices configured…

Can you advise if there is a path to using this for only external devices?

Thanks.

@Sthope thanks for responding.
Do you have any specifics about how you got yours running in hass.io?
I downloaded the gactions executable into a folder in my /config and ran it from there. It seems to work, doesnt complain.
I set up the URL in a project.json file (The URL in the project.json needs /auth at the end also?) per the docs.

Am I missing something?

I don’t get it then… Here is my config:

google_assistant:
  project_id: *my project id from dev console*
  client_id: *20 char alphanumeric string*
  access_token: *80 char alphanumeric string*
  exposed_domains:
    - light
    - switch

Since my app is now linked, why wont it update either?

No the URL in project.json it is like “https://plonka2000.duckdns.org:8123/api/google_assistant

@timmo001 I think said few posts above that it doesn’t update automatically you have to remove and add it again on Google Home app

So, I’ve noticed youre using DuckDNS as an example, direct to HA using a keychain file directly in your configuration.yaml.

I’m using nginx+letsencrypt locally to front Home Assistant, which works very well, but that means that the HA instance is running HTTP behind the HTTPS nginx+letsencrypt.

So the URL I use is something like “https://home.myowndomain.com/api/google_assistant
Works great for everything I’ve used it for, so I’m not sure nginx is the problem, but its possible.

I’m rebuilding the app project from scratch again and rebuilding to see what may change.

OK, that’s fair enough.

I think I’ve fixed it. So, I did the usual debug process of commenting all non-essential components and found that I had an unnamed switch listed on the frontend. So I removed some of the yaml files for switches and that seemed to have fixed it. I now have lights and switches working through google assistant.

Odd that was the cause of my pain a switch with no name, not causing any errors… I can now add more domains without issue. I just need to re-link every time I add a device which isn’t the greatest of issues but hopefully will be fixed in a later version. Great work on this component, it seems to be somewhat faster and a lot better than seeing all my switches act as lights :+1:

1 Like

Using the addon and dialogflow you can do many other things the component can’t still do, for example you can ask the temperature at home if you have a temperature sensor. And if you say “Ok google” to your phone and to the HASSIO device, only one of them will answer to you, because the other one knows the first one is answering.

try unlik and link again

you can do this now??

yes with Api.AI component https://home-assistant.io/components/apiai/

Hey thanks everyone!

I got it working on Android for now! :grin:

I think as @timmo001 said, I also probably have some devices not listing correctly now.

I can see in now in my HA Log many of these entries when pulling in my device lists:

WARNING (MainThread) [homeassistant.components.google_assistant.smart_home] aliases must be a list
WARNING (MainThread) [homeassistant.components.google_assistant.smart_home] aliases must be a list
WARNING (MainThread) [homeassistant.components.google_assistant.smart_home] aliases must be a list
WARNING (MainThread) [homeassistant.components.google_assistant.smart_home] aliases must be a list
WARNING (MainThread) [homeassistant.components.google_assistant.http] No mapping for script domain
WARNING (MainThread) [homeassistant.components.google_assistant.http] No mapping for script domain
WARNING (MainThread) [homeassistant.components.google_assistant.http] No mapping for script domain
WARNING (MainThread) [homeassistant.components.google_assistant.http] No mapping for script domain

I guess I’ll need to go through my customize and add aliases for everything.
Currently I have 78 devices listed.

yes, I can do that, but not both at the same time. I’m having some problems with authorizations, credentials and stuff… only one of the two works. I’m not sure it’s possible

1 Like

@plonka2000 you can ignore that alias message (and it’s fixed on my branch). Then the no mapping message is because the released version doesn’t have script support (in progress).

Was the reverse proxy your issue?

Is there a github PR or page with updates as to what is currently support and what will be?

@PhilK Thanks, that’s good to know!

Is there currently a known understanding of what support there is, as I see groups listed but I I can’t seem to interact with (switch group on/off) via Google Assistant also. I’d really like script and automation support in future.

I guess I’ll need to duplicate my groups to rooms in GA, and add a few aliases for now.

@mdleal no, the proxy wasnt the issue, its still working great.
If you’re interested you can find out how I did it with hass.io over here.

Ok, I did it. You can use the addon and the component at the same time but you have to create two projects in https://console.actions.google.com
You’ll use one for the component and one for the addon. :slight_smile:

can you tell me the steps (just basic instructions)?

Basically you have to follow the instructions on the two pages:



Just don’t try to use the same client id for both of them like I was trying to do.
On how to use dialogflow (previously known as api.ai) you could begin following the examples here:
1 Like

do I need to install gactions cli on my raspberry or in my windows?