Git Product home page Git Product logo

deeheber / pittsburghese-translator-alexa-skill Goto Github PK

View Code? Open in Web Editor NEW
1.0 2.0 0.0 70 KB

Pittsburghese translator skill for Alexa enabled devices

Home Page: https://www.amazon.com/dp/B0787M1125/ref=sr_1_13?s=digital-skills&ie=UTF8&qid=1513400727&sr=1-13&keywords=pittsburgh

License: MIT License

JavaScript 100.00%
alexa-skill pittsburgh translator aws-lambda pittsburghese-translator-skill yinzer western-pa steelers skills hey-yinz

pittsburghese-translator-alexa-skill's Introduction

Hi. I'm Danielle Heberling. Welcome to my tiny corner of GitHub. ๐Ÿ‘‹๐Ÿป

About Me ๐Ÿ˜Ž

  • Current tech interests: Serverless, Cloud Computing, Infrastructure as Code (IaC), TypeScript
  • AWS Serverless Hero, #believeInServerless Champion
  • Speaking
  • Current day job: improving electronic medical record software
  • Some former day jobs: AAPL, SQSP, Tech Support, K-8 Music Teacher

Latest Blog Posts ๐Ÿš€

pittsburghese-translator-alexa-skill's People

Contributors

deeheber avatar

Stargazers

 avatar

Watchers

 avatar  avatar

pittsburghese-translator-alexa-skill's Issues

Update Welcome Message

Make welcome message smarter to not go through all of the instructions if the user has recently logged in.

Got the idea from this post.

Migrate Literal Slot to a Custom Slot Type

Looks like Amazon attempted to deprecate this slot type, so in order to future proof this if they want to try to do that again...move over to a custom slot type instead for grabbing the phrase to translate.

Directions here

Add Phrase Fallback Value

Not seeing it a ton, but have noticed this error a few times in the Lambda logs. Looks like we need to fallback to empty String if the phrase is undefined.

{
    "errorMessage": "Cannot read property 'split' of undefined",
    "errorType": "TypeError",
    "stackTrace": [
        "module.exports (/var/task/util/translator.js:2:24)",
        "Object.Translate (/var/task/index.js:46:24)",
        "emitNone (events.js:106:13)",
        "AlexaRequestEmitter.emit (events.js:208:7)",
        "Object.TranslateIntent (/var/task/index.js:42:10)",
        "emitNone (events.js:106:13)",
        "AlexaRequestEmitter.emit (events.js:208:7)",
        "AlexaRequestEmitter.EmitEvent (/var/task/node_modules/alexa-sdk/lib/alexa.js:216:10)",
        "AlexaRequestEmitter.ValidateRequest (/var/task/node_modules/alexa-sdk/lib/alexa.js:181:23)",
        "AlexaRequestEmitter.HandleLambdaEvent (/var/task/node_modules/alexa-sdk/lib/alexa.js:126:25)"
    ]
}

Better Handling for Slow Down and Repeat Intents

Currently whenever a the lastTranslation session attribute is not set, it defaults to something like "I don't have a translation to repeat."

Improve this to state that there isn't a translation and launch something similar to the HelpIntent to provide better guidance to users as to what they can do.

Make skill cheaper to run

  1. Use a CF parameter instead of referencing the parameter store
  2. Add TTL to DDB items
  3. Use ARM Lambda (might not make it cheaper, but worth a try)

Store Translations in Dynamo DB

Explore what storing the translation in dynamo DB looks like to see if it might be a better option than a global variable in the index.js file.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.