{"id":19811110,"url":"https://github.com/accenture/alexa-pokitdok","last_synced_at":"2025-09-08T11:04:23.612Z","repository":{"id":1665423,"uuid":"43090263","full_name":"Accenture/alexa-pokitdok","owner":"Accenture","description":null,"archived":false,"fork":false,"pushed_at":"2023-01-07T07:22:35.000Z","size":296,"stargazers_count":3,"open_issues_count":5,"forks_count":4,"subscribers_count":11,"default_branch":"master","last_synced_at":"2025-05-01T08:34:48.931Z","etag":null,"topics":["alexa-skill","alexa-skills-kit","amazon-alexa","amazon-echo","amazon-lambda","aws-lambda"],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Accenture.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-09-24T20:05:08.000Z","updated_at":"2021-06-14T20:05:17.000Z","dependencies_parsed_at":"2023-01-11T16:05:23.570Z","dependency_job_id":null,"html_url":"https://github.com/Accenture/alexa-pokitdok","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Accenture/alexa-pokitdok","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Accenture%2Falexa-pokitdok","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Accenture%2Falexa-pokitdok/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Accenture%2Falexa-pokitdok/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Accenture%2Falexa-pokitdok/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Accenture","download_url":"https://codeload.github.com/Accenture/alexa-pokitdok/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Accenture%2Falexa-pokitdok/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274174268,"owners_count":25235203,"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","status":"online","status_checked_at":"2025-09-08T02:00:09.813Z","response_time":121,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["alexa-skill","alexa-skills-kit","amazon-alexa","amazon-echo","amazon-lambda","aws-lambda"],"created_at":"2024-11-12T09:24:47.250Z","updated_at":"2025-09-08T11:04:23.555Z","avatar_url":"https://github.com/Accenture.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"Amazon Echo PokitDok Demo\n===================================\nThis is a demo implementation of an Amazon Alexa application deployed to Amazon's Lambda service which utilizes the [PokitDok](https://pokitdok.com/) API to return valuable information about health care services in your local area via the voice interface of your Amazon Echo.\n\nAmazon provides a great deal of documentation on how to build Echo applications using their SDK. The following two articles were the primary ones referred to, but there are many more. \n\n*  [Alexa Skills Kit - Getting Started Guide](https://developer.amazon.com/appsandservices/solutions/alexa/alexa-skills-kit/getting-started-guide)\n*  [Alexa Skills Kit - Developing an Alexa Skill as a Lambda function](https://developer.amazon.com/public/solutions/alexa/alexa-skills-kit/docs/developing-an-alexa-skill-as-a-lambda-function)\n\nPokitDoc's API is well documented and can be viewed after signing up for a free account at [platform.pokitdok.com](https://platform.pokitdok.com)\n\nPrerequisites\n--------------\n*  An [Amazon Alexa](http://www.amazon.com/Amazon-SK705DI-Echo/dp/B00X4WHP5E) device\n*  An Amazon AWS account with access to Amazon Lambda\n*  An Amazon [developer account](https://developer.amazon.com/)\n*  A PokitDoc [developer account](https://platform.pokitdok.com) with API keys and available credits\n\n\nSetup Instructions\n==================\n\nAmazon Credentials\n-------------------\nIn order to deploy the application to Amazon's Lambda service, you will need to store your credentials in your user's home directory. You can create your Amazon Access Keys within your AWS account by going [here](https://console.aws.amazon.com/iam/home?region=us-east-1#security_credential). \n\nCreate the directory and file to store your credentials...\n\n\t\t$ mkdir ~/.aws\n\t\t$ cd ~/.aws\n\t\t$ touch credentials\n\nAdd the following to the 'credentials' file you created in the previous step\n\n\t\t[default]\n\t\taws_access_key_id = \u003cYOUR_ACCESS_KEY_ID\u003e\n\t\taws_secret_access_key = \u003cYOUR_SECRET_ACCESS_KEY\u003e\n\nExternal API Credentials\n--------------------\nIn order to communicate with PokitDok's and Google Geolocation API you will need API Keys. To populate your own keys, use the following steps:\n\n\t\t$ cd config/\n\t\t$ cp default.example.json default.json\n\nEdit the default.json file in your favorite text edited and populate the API keys.\n\n\t  \"pokitdok\": {\n\t    \"api\": {\n\t      \"clientId\": \"\",\t\t\t\t//Your PokitDok API client ID here\n\t      \"clientSecret\": \"\",\t\t//Your PokitDok API client secret here\n\t      \"apiVersion\": \"v4\"\n\t    }\n\t  },\n\t  \"google-geocoder\" : {\n\t  \t\"api\": {\n\t  \t\t\"key\": \"\"\t\t\t\t\t\t\t//Your Google geocoder API key here\n\t  \t}\n\t  }\n\nTest the Application Locally\n----------------------------\nYou can test the application using the [mocha](http://mochajs.org/) testing framework with the [Chai](chaijs.com/) assertion framework. To test an individual Alexa intent you can do this directly using the mocha framework by using the following steps:\n\nEnsure the mocha framework is installed globally on your machine...\n\n\t\t$ npm install mocha -g\n\nExecute the specific Alexa intent you would like to run...\n\n\t\t$ mocha test/startSession.spec.js\n\nIf you would like to test all the application behaviors, the test suite can be executed from grunt using the following...\n\n\t\t$ grunt test\n\n\nDeploy the Application to AWS Lambda\n------------------------------------\nFirst you will need to create the AWS Lambda function within the [AWS Console](https://console.aws.amazon.com/lambda/home?region=us-east-1#/functions). \n\n1. Click 'Create Lambda function'\n2. Give your function a name and create a new 'Basic execute role' (leave everything else as defaults)\n3. Click 'Create Lambda function'\n4. Select your function name and click 'Actions' and choose 'Add Event Source'\n5. Select 'Alexa Skills Kit' and click 'Submit'\n6. Copy the ARN path to your new Lambda function. It should look like arn:aws:lambda:us-east-1:000000000000:function:myFunctionName\n\nAfter the function is created in AWS, you need to update your Gruntfile.js with the deployment location. Find the following section in your Gruntfile.js and update the ARN path to your path.\n\n    lambda_deploy: {\n     default: {\n       //Update deployment location here\n       arn: 'arn:aws:lambda:us-east-1:00000000000:function:myFunctionName',\n       options: {\n\t        timeout : 3,\n\t        memory: 128\n        }\n      }\n    },\n\nNow that you have the function created in AWS, and your local environment knows where to deploy the code to, you can deploy your package directly to AWS. This is a simple grunt task...\n\n\t\t$ grunt deploy\n\nCreate Alexa Skill and Point it to Lambda\n-----------------------------------------\nYour Node app hosted on AWS Lambda only provides the backend for your new Alexa skill. The front end for Alexa skills is of course speech, and that interface is defined through the Amazon developer portal. \n\n1. Login to the Amazon [developer portal](https://developer.amazon.com/)\n2. Navigate to the 'Alexa' section\n3. Click 'Add a New Skill'\n4. Complete the forms following the instructions provided. \n\nA few notes on how to complete the forms...\n\n*  **Endpoint**:  This will be the same ARN path you copied into your Gruntfile.js\n*  **Intent Schema and Utterances**:  Samples are available in the repository 'skill/' folder\n*  **Testing**:  You will need to ensure your Echo device is associated with the same Amazon account as utilized for your developer account. After you have saved your skill, you should be able to view the skill on your Echo iOS/Android application.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faccenture%2Falexa-pokitdok","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faccenture%2Falexa-pokitdok","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faccenture%2Falexa-pokitdok/lists"}