The Google Voice Notification service for Fibaro HC2 controllers, allows you to broadcast notifications from your Fibaro controller to alert users of events or actions, for example announce that someone has opened a door, or that a door is still open after an amount of time.


Please note that this broadcast feature uses the native ChromeCast function of the Google platform, and as such, will stop any currently playing media to make the announcement. Once the announcement has completed, the previously playing media will not restart. This is a limitation of the Google Cast function.


To set this up, please follow the steps below.


1.    On the Settings page of the bridge, enable the service.


2. This will then start up the service, and scan for available Google Assistant devices, when complete the following screen will display.


3. If you receive the message that the required variable does not exist, you will need to follow the instructions to create the variable manually in your Fibaro controller, otherwise skip to step 4.


4. OYou can test the service by going to the newly created Virtual Device, called VoiceAlertXXXX (where XXXX is the last 4 digits of your bridge's serial number), and click the TEST button, this announcement will then broadcast out all your Google Assistant devices.


To specify which devices are enabled for notifications, this can be done from the Settings page, by enabling the discovered devices as required. If you add or remove more Assistant devices, or speaker groups. just click the Re-Scan button to have these found and enabled (or removed if no longer online).

From the settings page, you can also perform a 'Test Announcement' in your selected language. 


You can also change the language by clicking the 'Change Language' button, and select from the following (Italian, Dutch,German,Swedish,Spanish,French,Danish & Norwegian)


Finally, to use the service from your Fibaro controller, just update the variable GHSPEAK, the Virtual device that was created will monitor this variable, and whenever it changes, it will pass thru the text to the notification service to be announced.



You can also call this from LUA code, using the following examples, just change the IP address to that of your bridge, and the text to what you want announced, this will broadcast to the default enabled devices. Please note that different LUA code is required depending if used in a VD or Scene.



Example #1 - When used in Virtual Devices.


local httpSession = Net.FHttp("192.168.1.128",80);

response, status, errorcode = httpSession:GET("/speak/?text=hello");


If you need to direct the announcement to a specific speaker, just append the ID of the speaker using the variable &id=# to the URL, for example.


local httpSession = Net.FHttp("192.168.1.128",80);

response, status, errorcode = httpSession:GET("/speak/?text=hello&id=4");



Example #2 - When used in Scenes.


local http = net.HTTPClient();

http : request('http://192.168.1.128/speak/?text=hello&id=56',  {

    options = {

        method = "GET" },

    success = function(response) fibaro:debug (response.data) end,

    error = function(err) fibaro:debug ("Error:" .. err) end

});