Actions on Google: Name Psychic Sample
This sample demonstrates Actions on Google features for use on Google Assistant including permission requests for user information, surface transfer capabilities, user storage, SSML, unrecognized deep link fallbacks, and Google Maps Static API -- -- using the Java client library and deployed on App Engine.
Note that if the user is not verified, their information will
never be saved across conversations and they will encounter a guest flow (requesting permission) each time.
Enable Billing
Required for running this sample
This sample uses Firebase Cloud Functions to make an HTTP request to Google Maps Static API. If you plan to run the sample, you will need to temporarily upgrade to a Firebase plan that allows for outbound networking, such as the Blaze Plan, also called Pay as you go.
Setup Instructions
Prerequisites
- Download & install the Google Cloud SDK
- Gradle with App Engine Plugin
- Run
gcloud auth application-default login
with your Gooogle account - Install and update the App Engine component,
gcloud components install app-engine-java
- Update other components,
gcloud components update
Configuration
Actions Console
- From the Actions on Google Console, New project (this will become your Project ID) > Create project > under More options > Conversational.
- From the top menu under Develop > Actions (left nav) > Add your first action > BUILD (this will bring you to the Dialogflow console) > Select language and time zone > CREATE.
- In Dialogflow, go to Settings ⚙ > Export and Import > Restore from zip.
- Follow the directions to restore from the
agent.zip
file in this repo.
Cloud Platform Console
- Obtain an API key through Google Cloud Platform console under your Project ID, Menu ☰ > APIs & Services > Credentials > Create Credentials > API key
- Replace
<YOUR_MAPS_KEY_HERE>
in src/main/resources/config.properties
with the API key.
App Engine Deployment & Webhook Configuration
When a new project is created using the Actions Console, it also creates a Google Cloud project in the background.
- Configure the gcloud CLI and set your Google Cloud project to the name of your Actions on Google Project ID, which you can find from the Actions on Google console under Settings ⚙
- Deploy to App Engine using Gradle:
gradle appengineDeploy
OR- From within IntelliJ, open the Gradle tray and run the appEngineDeploy task.
Dialogflow Console
Return to the Dialogflow Console, from the left navigation menu under Fulfillment > Enable Webhook, set the value of URL to https://${YOUR_PROJECT_ID}.appspot.com
> Save.
- From the left navigation menu, select Integrations > Integration Settings under Google Assistant > Enable Auto-preview changes > Test to open the Actions on Google simulator then say or type
Talk to my test app
.
Running this Sample
- You can test your Action on any Google Assistant-enabled device on which the Assistant is signed into the same account used to create this project. Just say or type, “OK Google, talk to my test app”.
- You can also use the Actions on Google Console simulator to test most features and preview on-device behavior.
References & Issues
Make Contributions
Please read and follow the steps in the CONTRIBUTING.md.
License
See LICENSE.
Terms
Your use of this sample is subject to, and by using or downloading the sample files you agree to comply with, the Google APIs Terms of Service.