{"id":13799604,"url":"https://github.com/actions-on-google/dialogflow-name-psychic-nodejs","last_synced_at":"2025-05-13T08:31:37.946Z","repository":{"id":85096664,"uuid":"75954275","full_name":"actions-on-google/dialogflow-name-psychic-nodejs","owner":"actions-on-google","description":"Permissions and Google Maps Static API sample (using Dialogflow) in Node.js","archived":false,"fork":false,"pushed_at":"2019-10-17T21:19:49.000Z","size":99,"stargazers_count":47,"open_issues_count":0,"forks_count":29,"subscribers_count":12,"default_branch":"master","last_synced_at":"2025-01-21T17:24:52.904Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/actions-on-google.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2016-12-08T16:15:42.000Z","updated_at":"2024-12-11T09:55:47.000Z","dependencies_parsed_at":null,"dependency_job_id":"cb803681-148d-453a-9f08-0e21a35036f8","html_url":"https://github.com/actions-on-google/dialogflow-name-psychic-nodejs","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/actions-on-google%2Fdialogflow-name-psychic-nodejs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/actions-on-google%2Fdialogflow-name-psychic-nodejs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/actions-on-google%2Fdialogflow-name-psychic-nodejs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/actions-on-google%2Fdialogflow-name-psychic-nodejs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/actions-on-google","download_url":"https://codeload.github.com/actions-on-google/dialogflow-name-psychic-nodejs/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253903777,"owners_count":21981749,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-04T00:01:04.379Z","updated_at":"2025-05-13T08:31:37.661Z","avatar_url":"https://github.com/actions-on-google.png","language":"JavaScript","funding_links":[],"categories":["Open source code"],"sub_categories":[],"readme":"# Actions on Google: Name Psychic Sample\n\nThis sample demonstrates Actions on Google features for use on Google Assistant including permission requests for [user information](https://developers.google.com/assistant/conversational/helpers#user_information), [surface transfer capabilities](https://developers.google.com/assistant/conversational/surface-capabilities#multi-surface_conversations), user storage, SSML, unrecognized deep link fallbacks, and Google Maps Static API -- using the [Node.js client library](https://github.com/actions-on-google/actions-on-google-nodejs) and deployed on [Cloud Functions for Firebase](https://firebase.google.com/docs/functions/).\n\nNote that if the user is not [verified](https://developers.google.com/assistant/conversational/save-data#determining_and_handling_user_verification_status), their information will\nnever be saved across conversations and they will encounter a guest flow (requesting permission) each time.\n\n### Enable Billing\n**Required for running this sample**\n\nThis 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](https://firebase.google.com/pricing/), also called Pay as you go.\n\n## Setup Instructions\n### Prerequisites\n1. Node.js and NPM\n    + We recommend installing using [NVM](https://github.com/creationix/nvm)\n1. Install the [Firebase CLI](https://developers.google.com/assistant/actions/dialogflow/deploy-fulfillment)\n    + We recommend using version 6.5.0, `npm install -g firebase-tools@6.5.0`\n    + Run `firebase login` with your Google account\n\n### Configuration\n#### Actions Console\n1. From the [Actions on Google Console](https://console.actions.google.com/), New project (this will become your *Project ID*) \u003e **Create project** \u003e under **More options** \u003e **Conversational**\n1. From the top menu under **Develop** \u003e **Actions** (left nav) \u003e **Add your first action** \u003e **BUILD** (this will bring you to the Dialogflow console) \u003e Select language and time zone \u003e **CREATE**.\n1. In the Dialogflow console, go to **Settings** ⚙ \u003e **Export and Import** \u003e **Restore from zip** using the `agent.zip` in this sample's directory.\n\n#### Cloud Platform Console\n1. From the [Dialogflow console](https://console.dialogflow.com) \u003e go to **Settings** ⚙ and under the `General` tab \u003e go the `Project Id` link, which will take you to the **Google Cloud Platform** console\n1. In the Cloud console, go to **Menu ☰** \u003e **APIs \u0026 Services** \u003e **Library**\n1. Select select **Maps Static API** \u003e **Enable**\n1. Under **Menu ☰** \u003e **APIs \u0026 Services** \u003e **Credentials** \u003e **Create Credentials** \u003e **API Key** and copy the key.\n\n#### Firebase Deployment\n1. On your local machine, in the `functions` directory, run `npm install`\n1. Run `firebase deploy --project {PROJECT_ID}`, replace `{PROJECT_ID}` to deploy the function\n1. Run `firebase functions:config:set maps.key={API_KEY} --project {PROJECT_ID}`, replace `{API_KEY}` with the generated API key from earlier and redeploy the function.\n    + To find your **Project ID**: In [Dialogflow console](https://console.dialogflow.com/) under **Settings** ⚙ \u003e **General** tab \u003e **Project ID**.\n1. Return to the [Dialogflow Console](https://console.dialogflow.com) \u003e select **Fulfillment** \u003e **Enable** Webhook \u003e Set **URL** to the **Function URL** that was returned after the deploy command \u003e **SAVE**.\n    ```\n    Function URL (dialogflowFirebaseFulfillment): https://${REGION}-${PROJECT_ID}.cloudfunctions.net/dialogflowFirebaseFulfillment\n    ```\n1. From the left navigation menu, select **Integrations** \u003e **Integration Settings** under Google Assistant \u003e Enable **Auto-preview changes** \u003e  **Test** to open the Actions on Google simulator then say or type `Talk to my test app`.\n\n### Running this Sample\n+ 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”.\n+ You can also use the Actions on Google Console simulator to test most features and preview on-device behavior.\n\n## References \u0026 Issues\n+ Questions? Go to [StackOverflow](https://stackoverflow.com/questions/tagged/actions-on-google), [Assistant Developer Community on Reddit](https://www.reddit.com/r/GoogleAssistantDev/) or [Support](https://developers.google.com/assistant/support).\n+ For bugs, please report an issue on Github.\n+ Actions on Google [Documentation](https://developers.google.com/assistant)\n+ Actions on Google [Codelabs](https://codelabs.developers.google.com/?cat=Assistant)\n+ [Webhook Boilerplate Template](https://github.com/actions-on-google/dialogflow-webhook-boilerplate-nodejs) for Actions on Google\n+ To learn more about [Google Maps Static API Billing](https://developers.google.com/maps/documentation/maps-static/usage-and-billing).\n\n## Make Contributions\nPlease read and follow the steps in the [CONTRIBUTING.md](CONTRIBUTING.md).\n\n## License\nSee [LICENSE](LICENSE).\n\n## Terms\nYour 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](https://developers.google.com/terms/).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Factions-on-google%2Fdialogflow-name-psychic-nodejs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Factions-on-google%2Fdialogflow-name-psychic-nodejs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Factions-on-google%2Fdialogflow-name-psychic-nodejs/lists"}