This action for the Google Assistant provides information about a Google Developer Group.
This app uses Meetup API to get the data of the GDG.
This app uses the i18n-node library to provide responses in several languages. The responses are listed in the locales
directory.
This app uses Cloud Translation API to translate the data from the meetup api, when the user's language does not match the GDG's primary language. Pricing Infomation.
Note: If this is your first Action you published, you'll be added to the Google Assistant Devloper Community Program where it credits the account associated with your Action with up to $200 of Google Cloud services a month (applicable to Cloud Translate fees) - for a full year!
The following values need to be configured in the functions/config.js
file:
gdgId
: unique identifier for the GDG on Meetup (e.g.google-developer-group-san-francisco
forhttps://www.meetup.com/google-developer-group-san-francisco/
)gdgName
: short name for the GDG (e.g.GDG San Francisco
)meetupKey
: Meetup API key retrieved from https://secure.meetup.com/meetup_api/key/appLocal
: GDG's two character language code from https://developers.google.com/actions/localization/languages-locales (e.g.en
)
Do not do projectId
.
- Use this link to get to the Actions on Google Console to add a new project with a name of your choosing and click Create Project.
- Scroll down to the More Options section, and click on the Conversational card.
- On the left navigation menu under BUILD, click on Actions. Click on Add Your First Action and choose your app's language(s).
- Select Custom intent, click BUILD. This will open a Dialogflow console.
- Click CREATE.
- Click on the gear icon to see the project settings.
- Select Export and Import.
- Select Restore from zip. Follow the directions to restore from the
gdg.zip
in this repo. - Click Save.
The following values need to be configured in the functions/config.js
file:
projectId
: Your Project ID
- Select the Cloud Platform project (this should match your Actions on Google project ID). Click Activate.
- Enable billing for your project.
- Enable the Cloud Translation API. Make sure that it matches the Actions on Google project ID (it may take a few seconds).
- Deploy the fulfillment webhook provided in the functions folder using Google Cloud Functions for Firebase:
- Follow the instructions to set up and initialize Firebase SDK for Cloud Functions. Make sure to select the project that you have previously generated in the Actions on Google Console and to reply
N
when asked to overwrite existing files by the Firebase CLI. - Run
firebase deploy --only functions
and take note of the endpoint where the fulfillment webhook has been published. It should look likeFunction URL (gdg): https://${REGION}-${PROJECT}.cloudfunctions.net/gdg
- Follow the instructions to set up and initialize Firebase SDK for Cloud Functions. Make sure to select the project that you have previously generated in the Actions on Google Console and to reply
- Go back to the Dialogflow console and select Fulfillment from the left navigation menu. Enable Webhook, set the value of URL to the
Function URL
from the previous step, then click Save.
- Open the Actions on Google Console, on the left navigation menu next to Overview, click on the gear and select Project settings.
- Under Invite Codes confirm or add
gdgaction
and click SAVE.
- Open Dialogflow's Integrations page, from the left navigation menu and open the Integration Settings menu for Actions on Google.
- Enable Auto-preview changes and Click Test. This will open the Actions on Google simulator.
- Click View to open the Actions on Google simulator.
- Type
Talk to my test app
in the simulator, or sayOK Google, talk to my test app
to any Actions on Google enabled device signed into your developer account.
- In the Actions on Google Console, under SETUP, click on Invocation. Populate the information for each language (the name, ie. GDG San Fransico). Disregard any messaging about matching to the invocation, since we'll add that later, if it does not save, add empty space at the end.
- Under DEPLOY, click on Directory information and populate the information for each language.
- Description Suggested Directory information for descriptions here for all languages
- Images: Follow the GDG Naming and Logo Guides
- Contact details: Provided your email, you do not need to add a company.
- Privacy and Consent: Follow the "Need help creating a Privacy Policy?". This Action does not save any user data. Make sure that you have this verbiage in every language in the same document. You do not need Terms of Service link.
- Additional Information | Catetgory Social & Communication Click Save.
- Under DEPLOY, click on Release and submit the Action for production release.
Share the link to your Action via social media using the #GDGAoG.
For more detailed information on deployment, see the documentation.
See the developer guide and release notes at https://developers.google.com/actions/ for more details.
- Actions on Google documentation: https://developers.google.com/actions/.
- If you find any issues, please open a bug here on GitHub.
- Questions are answered on StackOverflow.
Please read and follow the steps in the CONTRIBUTING.md.
We are looking to translate this Action into all available languages. More information here.
See LICENSE.
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.
Actions on Google Developers Community on Google+ https://g.co/actionsdev.