WebCore

WebCore is the "web Community's own Rule Engine", and is a general rule engine for SmartThings. It works by allowing users to create scripts that are interpreted and executed by SmartThings to allow for complex decision making.

As Assistant Relay exposes the Assistant Service as a REST API, it is possible to call Assistant Relay from a WebCore piston.

Importing a Piston

To make things simple, I have created a default piston that should help get your started. Simply use the import code cg3ry

Webcore
Webcore

Handling Audio Responses

If you use something like cast-api, Sonos or any other network connect speaker, you can now send your Google Assistant audio responses to specific devices. It’s not the same as a broadcast, so it will interrupt whatever is happening but its the best we have at the moment.

In the below example, I am making a request to Assistant to tell me about my day. Assistant Relay saves the audio file and sends a URL to listen to it back in the response.

What you can then do is tell a speaker to play that URL from the response, and it will play the Google Assistant response.

Webcore

You can also play the audio response back using Assistant Relay Cast, by passing your Assistant Relay IP address and the audio response as a remote file to play. For more information, see Casting Media