Alexa Rain Drop

Purpose:

Upon saying [trigger word] rain drop, the Amazon Echo will reply with drop top. Additionally upon asking her are you bad and boujee, she will recite additional lyrics from the song.

Prerequisites:

  1. Install AWS CLI: http://docs.aws.amazon.com/cli/latest/userguide/installing.html.

  2. Create an access key: http://docs.aws.amazon.com/cli/latest/userguide/installing.html.

  3. The existing AdministratorAccess policy can be used to ensure no permissions issues occur. If the user does not plan to continue using AWS, the access key can and should be revoked/deleted immediately after the last step in case the key gets compromised.

    (To do: Replace this step with more granular permissions).

  4. Create ~/.aws/credentials if it does not exist and fill in the access key and secret.

    [default]
    region = us-east-1
    aws_access_key_id = 
    aws_secret_access_key = 
    

How to Run:

  1. Replace BUCKET_NAME in config.env with a unique bucket name.

  2. Run the create script:

    ./start.sh
    
  3. Create a new Alexa Skill: https://developer.amazon.com/edw/home.html.

  4. Click Add a New Skill.

  5. Add Rain Drop as the name and invocation name.

  6. Create a basic intent schema and sample utterances. Since we don't need to say anything past rain drop, we don't have to fill in any meaningful information.

    {
      "intents": [
        {
          "intent": "SayRainDrop"
        }
      ]
    }
    
    SayRainDrop rain drop
    
  7. Create another skill with Bad and Boujee as the name and are you bad and boujee as the invocation name.

  8. Use the same intent as the previous Rain Drop skill.

  9. Select AWS Lambda ARN (Amazon Resource Name) and North America. Enter the ARN of your Lambda stack, which can be found from the output of:

    aws cloudformation describe-stacks --stack-name AlexaRainDropFunctions
    
  10. All set!

Note to self: Add error handling to start script.