This plugin allows you to :
It can work in 2 ways :
Cloud mode requires a subscription to voice services (3 months offered when purchasing the plugin). You can manage your subscription here
Whatever mode you use, you MUST ABSOLUTELY have your Jeedom accessible in HTTPS (the plugin does not work in HTTP)
The plugin does not support equipment with dual functions (2 output as certain zwave Fibaro module). You absolutely have to go through 2 virtual ones to break it down.
It is important to do the following steps in the order listed !!!
If you have an error message telling you that your user password or not is not correct you must :
- check that Google Home is active on the market
- if this is the case, be sure of your identifiers (attention you must respect upper / lower case) ?
- if this is the case change your password on the market and on the configuration of the voice assistant service (market profiles page tab my services) have it saved
After installing the plugin, simply go to the configuration of the plugin, select the Cloud mode then click on “Send” (this will send the connection information to the plugin API on the market)
Then in Jeedom in Communication / Google Smarthome you must click on save to send your initial configuration, you need at least one device in OK (otherwise when connecting Google Home <-> Jeedom you will get an error)
Then on the Google home application you have to go to the first tab click on Add (the +) :
Then configure a device :
On “Works with Google” :
Then in the list with the search button (magnifying glass at the top right), search for “Jeedom Smarthome” and click on it :
Enter your market identifiers (well those market not those of your Jeedom).
In plugin -> communication -> Google Smarthome you can configure your different equipment (see chapter Configuration of the plugin)
To switch from standalone mode to cloud mode you must :
- in the plugin go to cloud then save
- wait 24h
- in the Google home application you must dissociate testsmarthome (your standalone application)
- in Communication / Google Smarthome click on save to send your initial configuration
- Link Jeedom Smarthome in Google Home
Any modification to the configuration of the equipment sent to Google Home (addition of equipment, deletion of equipment, change of a generic order type) necessarily requires going to Plugin -> Communication -> Googme Smarthome then save
Google modifying (very) often the interface we do not have the human resources to redo all the captures each time. There can therefore be big differences between the captures and the reality
If you have used cloud mode you should not do this part !!! Go directly to the chapter “Plugin configuration”
Standalone mode is a “scam” because it makes you create an application at Google in development mode which allows synchronization only for 3 days after activation of test mode. So when adding or modifying equipment, reactivate the test mode every 3 days to be able to synchronize. Attention we are talking about a modification of the configuration if you do not add or modify equipment there is nothing to do the application will work without time limit
Since the application is a dev application on the Google side, they can cut it, delete it or change the rules at any time. In this case Jeedom cannot be held responsible in the event of a malfunction.
For the application (s) to work, it is essential that your jeedom is in https with a valid certificate (if you have a service pack, DNS access is there for that)
As a reminder, the plugin allows you to :
There are therefore 2 applications listed on Google : one for the Google Smarthome part and one for the interaction part (you can of course do only one of the 2)
Come on here then click on “Add / import project”
Give a name to the project change the default language and region and validate :
Select “Home control” :
Click on “Smarthome” :
Click on “Name your Smart Home action” :
Put “smarthome test” and validate (Save button at the top right) :
Then on the left click on “Actions” :
Then “Add your first action” :
We will have to give here the url to arrive from Jeedom. To get it it’s very simple, in Jeedom you have to go to the plugin management page, choose the “Standalone” mode (and save in passing), the url is the one called “Fulfillment URL”
Then go to “Account linking” (left menu) :
Select “No, I only want to allow account creation on my website” and do “Next” :
Select “OAuth” then “Authorization code” and do “Next” :
Then fill in the 4 fields according to the plugin configuration page, then click “Next” :
The fields are :
- client ID first
- then the secret client
- then “Authorization URL” (be careful to take the one from the “Smarthome” section”)
- then “Token URL” (be careful to take the one from the “Smarthome” section”)
There is nothing to do simply “Next” :
Write “Toto” then do “Save” :
Now configure the homegraph API key, for that go here, then right click on “Library” :
If you don’t have a project you need to create one
And look for “Homegraph” :
Click on homegraphapi then activate the API and click on manage :
Click on identifier on the left :
Then on “Identifiers of APIs and services” :
Click on “Create identifiers” then on “API key” :
Copy the API key generated and paste it on the Google Smarthome plugin management page in “Google API Homegraph”
Last step to give Jeedom the project id to manage the connection, go here then click on your project. Recuperez l’url de la forme “https://console.actions.google.com / u / 0 / project / myproject-31023 / overview “, the project id is between project / and / overview, in the example here it is” myproject-31023 “, copy this id on the management page the Google Smarthome plugin in “Smarthome Project ID”.
Here you can now click on the left on “Action” :
Then on test :
Then you need on a smartphone android (must not work on an iphone) connect to your Jeedom by the external url of it. Then go to the home application then “configure or add” then “Configure a device” and finally click on “Works with Google” and add your service created above (it starts with [test])
JWT allows you to automatically report any change in the status of an item of equipment sent to Google, which therefore allows you to have the status more quickly when you request it from Google Home or the Google Home app. It is not compulsory to configure it however if you check the box “Go back to the state” it is absolutely necessary to have done so for it to work.
To make the configuration you need
On your Jeedom, go to Plugin -> Communication -> Google Smarthome and in the equipment section select the equipment to be transmitted to Google as well as the type of equipment.
The plugin is based on the generic Jeedom types of commands to control your home automation. It is therefore very important to configure these correctly.
For the “camera” type you must absolutely configure the URL of the stream (we tested only the RTSP) so that it works. Note that camera support is currently in beta and consumes a lot of resources
On equipment you can configure :
The types of equipment are important this allows Google to react according to the sentences you say.
Jeedom support for “beta” types not yet documented at Google so that may or may not work depending on updates at google
The thermostat type is only fully supported through equipment coming from the thermostat plugin, otherwise the management of the modes may not work
You can also create scenes in the scene tab, with input and output actions.
To start a scenario just say “Active #nom du scénario#” or “Disable #nom du scénario#
When saving Jeedom will automatically request synchronization with Google. Attention in standalone mode if you have an error (type “Requested entity was not found”) try to reactivate the test of the application (here) then click again on the connection button on the page the plugin configuration page. Also check the configuration (especially the oauth part) of your google application (sometimes the fields are cleared by Google)
All you have to do is assign the equipment to the rooms in the Google Home app
I can’t make the association in cloud mode ?
We must verify that :
- you are fine in https (if you have a service pack, use jeeodm DNS these are secure by default)
- you have activated Google assistant on the market (profile page, tab my services then configuration in the voice assistant section)
- you have subscribed to the voice services subscription and it is still valid (necessary from 01/06/2019). This can be seen on your market profiles page, tab my services
- it is necessary in plugin -> communication -> Google Smarthome select “transmit” equipment and set the type and finally save
- use your market credentials well
During the association I have an error (but not on a problem of password / username)
If you have an error during the association with Jeedom it probably comes from the fact that you did not add / transmit equipment before making the association. To correct go to Plugins -> Communication -> Alexa then ticked at least one piece of equipment to transmit and save (check that the piece of equipment is in OK, if it is in NOK click on the NOK to see why or ask about generic type in jeedom). Then redo the association
What are the possible orders ?
Voice commands (as well as returns) are managed only by Google, here is the Documentation
The assistant asks me to assign the parts but I don’t know what the equipment corresponds to.
Yes the assistant does not display the real name of the equipment, just the nickname. You must therefore quit the assistant and return to the home control home page. By clicking on the equipment you will have its name you can then assign it to a room
Why do you need to assign parts to each piece of equipment ?
Because Google doesn’t allow you to do it through the API so you absolutely must do it manually.
I get the error message “OpenSSL unable to sign data”
You have to check the “Push the state” box (in the advanced configuration, green button with the notched wheel) without doing the JWT configuration
I get the error message “Cant find resource 404” when saving
So no worries everything is saved, it’s just automatic synchronization that is not done. To make it say “Synchronize my devices” to your assistant. To try to correct this concern : go to the next page here. On this page you will see the list of all projects even those invisible on the google actions page. Delete all unused projects. Then redo the tutorial from the step configure the API key Homegraph (activation, generation of key, then dissociate jeedom from your google account and redo the link)
You have a link error or Unable to update the parameter, check your connection in cloud mode
It is necessary in jeedom, on the plugin to add equipment, save and redo the association of Jeedom Smarthome in the Google Home application
I get the error “Apparently Jeedom Smart Home is unavailable at the moment.” or “Sorry I can’t connect to Jeedom Smart Home.”
Try to un-associate / re-associate the Google smarthome app. Be careful to take the official application and not a [TEST] application if you have used standalone mode before.
When adding equipment I have NOK
Just click on the NOK a window will tell you the generic type to have on the equipment controls for it to work
Changing the speed on a fan does not work
After analysis Google does not send an order during an action on speed. We must therefore wait for Google to correct