actions-on-google / dialogflow-number-genie-java

Localization sample (using Dialogflow) in Java

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Actions on Google: Number Genie Sample

⚠️ Warning: Conversational Actions will be deprecated on June 13, 2023. For more information, see Conversational Actions Sunset.

This sample demonstrates Actions on Google features for use on Google Assistant, including how to steer conversation in a numeric guessing game through the use of localization (French and English), deep links, fallbacks, contexts, alongside rich responses -- using the Java client library and deployed on App Engine.

This Action uses the i18n-node library to provide responses in both French and English, which are listed in the locales directory. In each function execution, the strings.js setLocale() function is called to set the i18n-node locale based on the user locale in the incoming request. Prompts are then selected by i18n-node from the available languages, defaulting to en if the user's language is unavailable.

⚠️ This code sample was built using Dialogflow. We now recommend using Actions Builder or the Actions SDK to develop, test, and deploy Conversational Actions.

Setup Instructions

Prerequisites

  1. Download & install the Google Cloud SDK
  2. 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

  1. From the Actions on Google Console, New project (this will become your Project ID) > Create Project > under More options > Conversational.
  2. 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.
  3. In Dialogflow, go to Settings ⚙ > Export and Import > Restore from zip.
    • Follow the directions to restore from the agent.zip file in this repo.

App Engine Deployment & Webhook Configuration

  1. 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 ⚙
    • gcloud init
  2. 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.

  1. From the left navigation menu, click 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.

About

Localization sample (using Dialogflow) in Java

License:Apache License 2.0


Languages

Language:Java 100.0%