Home / DialogFlow ES / 10 Concepts you should understand before building a Google Assistant app
Actions on Google | DialogFlow ES

10 Concepts you should understand before building a Google Assistant app

Check out my courses Learn Dialogflow ES and Learn Dialogflow CX if you would like to learn Dialogflow in depth. 

Here is a tip to immediately speed up the development of your Actions app – don’t get confused by the terminology 🙂

Here are the things you need to actually understand so you don’t waste your time going in circles.

1 Webhook

Code you write which helps you add business logic to your Dialogflow app


The code you write which helps you integrate a Dialogflow agent into your existing app/channel

3 Actions SDK

Develop an Action app without using Dialogflow. You will specify something called an “Action Package”, which is a JSON file which tells Google Assistant what kind of phrases are handled by the app. You have to build the mapping of the user phrase to an intent (i.e. an action that your app must perform) by using some kind of external NLU service.

4 Request-response cycle

The data being transferred in JSON format from your agent to your webhook, and back

5 Client library

Helper code which takes care of the usual plumbing so you can create Dialogflow integrations (2)

6 Fulfillment library

Helper code which takes care of the usual plumbing so you can create Dialogflow webhooks (1)

7 Actions on Google client library

Helper code which takes care of usual plumbing so you can write a webhook for a Google Assistant app. Yeah, not a very intuitive name 🙂

8 Responses

Types of “rich content” you can display in your Actions app. E.g. Basic Card, Carousel, Suggestion Chips etc.

Example: Basic Card

9 Helper intents

Helps your Actions app receive input from the user. E.g. get the date and time for an appointment. (If you tried to do this yourself, you need to write multiple intents, and learn how to manipulate contexts to handle these inputs. Helper intents allow you to combine these and get the information for you automatically)

10 Trigger the helper via JSON

In the documentation about helpers, you will actually see the following:

What are those tabs?

So here is how it works: you can either use the AoG client library (7) to create the helper intents, or you can also send the corresponding JSON from your webhook response (but you cannot use the AoG client library in that case) to trigger the same helper intent.

Why does this matter?

In case you want to write webhook code in a language of your own choice (and not use NodeJS or Java), you can do so and still write AoG apps. You only need to make sure you send the JSON in the correct format.

Dialogflow JSON vs Actions SDK JSON

OK, why do we need two tabs then? If you decided not to use Dialogflow for building the Assistant app and chose the Actions SDK (3) instead, you will be able to do so but your JSON must be sent from your webhook in a different format.

The BotFlo app gives you many tools which can speed up your Dialogflow bot development

This website contains affiliate links. See the disclosure page for more details. 
"The magic key I needed as a non-programmer"

The custom payload generator was the magic key I needed (as a non-programmer) to build a good demo with rich responses in DialogFlow Messenger. I've only used it for 30 minutes and am thrilled. I've spent hours trying to figure out some of the intricacies of DialogFlow on my own. Over and over, I kept coming back to Aravind's tutorials available on-line. I trust the other functionalities I learn to use in the app will save me additional time and heartburn.

- Kathleen R
Cofounder, gathrHealth
Check out my YouTube courses

Dialogflow CX Beginner Tutorial

Dialogflow ES vs CX using a Decision Tree Bot

Intro to NLU for technical non-programmers

Better Dialogflow ES Bots Using the CTFS Framework

Search the autogenerated transcripts of all my YouTube videos
In this free course, I provide some tips for managing large Dialogflow ES bots without compromising on accuracy.

Similar Posts