Actions on Google – Part 1

Creating apps for the Google Assistant

GOOGLE HOME
Google Home is the latest in a long line of market disrupting products that have come from the path breaking technology company. It is a collection of smart speakers that enable users to use voice commands in order to interact with services through Google’s intelligent personal assistant called
Google Assistant. Google Assistant hosts a large number of services, both within and outside Google that are integrated and synchronized, allowing users to perform a variety of tasks from listening to music, to playing videos or viewing photos on your smart TV, or even receiving news updates entirely
by voice. These devices also have support for home automation, letting users control smart home appliances such as air conditioners and security alarms with their voice. You can even set up multiple such devices across a home to allow synchronized playback of music and complete automation. In
2017, Google even added a special feature that allows the Google Assistant to detect and distinguish between up to six voices.

GOOGLE ASSISTANT & ACTIONS ON GOOGLE
Google Assistant is a virtual personal assistant (VPA) developed by Google that is at the heart of its Google Home product. A VPA can engage in twoway conversations with the user and, much like a real assistant, can carry out a number of tasks for them such as organizing mail, scheduling reminders and many such activities that would otherwise need human intervention.
With “Actions on Google” , a platform for app development, Google allows developers to develop their own services and apps that they can integrate with the Google Assistant and harness its two-way conversational interface for users.
Let us take a look at how an app on the Google Assistant looks like.

APPS ON GOOGLE ASSISTANT
A typical app for the Google Assistant can be broadly broken down into the following three parts:

Actions and Invocation

‘Actions on Google’ defines a way for the users to invoke apps for the Assistant through action-based voice commands such as “book an Uber” or “play a game”. Every app must define at least a main action that lets users invoke it by name. In addition, it can then define additional actions that deep-link into the app through different entry points. An example of a deep-link invocation would be “Ok Google, Ask Stargazer to show me the star map for tomorrow” which, when spoken, should fire an intent to request the star map over the user location for the next day. These deep-link invocations are what make
Actions really interesting.

Conversation
This is the UI of your app and defines how users interact with your app after it’s invoked by Actions on Google. This is further simplified with the use of a platform known as Dialogflow.
Dialogflow is a framework that allows you to quickly prototype and design the flow of conversations for your app with built-in machine learning and natural language understanding, so you don’t have to define an exhaustive grammar. You can also define how to pick up parameters from the user’s input in Dialogflow, making it even easier to understand what the user said. Once you build your conversation
in Dialogflow, you then define how the app responds to the user in a segment called Fulfillment.

Fulfillment
While Dialogflow handles much of the heavy lifting of understanding natural language and parsing the data you need from user input, the conversation with the user will probably require the app to perform some business logic to respond to the user and to complete the task. To do this a web service (called fulfillment) is called. This web service is designed by implementing the Dialogflow webhook, which is a JSON-based protocol that defines a schema for interacting with Google Assistant from an external service.
When users say something, the app receives some text and a set of parameters from that data. Then it uses this data to return a response to move the conversation ahead.
To be continued…

Leave a Comment

Your email address will not be published. Required fields are marked *