Skip to content

Instantly share code, notes, and snippets.

@RodrigoExtremoTabares
Created November 16, 2018 08:09
Show Gist options
  • Save RodrigoExtremoTabares/68cc8b97a03fff73136cd316092fa967 to your computer and use it in GitHub Desktop.
Save RodrigoExtremoTabares/68cc8b97a03fff73136cd316092fa967 to your computer and use it in GitHub Desktop.
Alexa issue
/* eslint-disable func-names */
/* eslint-disable no-console */
const Alexa = require('ask-sdk');
const NumberOneHandler = {
canHandle(handlerInput) {
const request = handlerInput.requestEnvelope.request;
return request.type === 'LaunchRequest'
|| (request.type === 'IntentRequest'
&& request.intent.name === 'NumberOneIntent');
},
handle(handlerInput) {
return handlerInput.responseBuilder
.speak("Number One")
.reprompt('Want another?')
.getResponse();
},
};
const NumberTwoHandler = {
canHandle(handlerInput) {
const request = handlerInput.requestEnvelope.request;
return (request.type === 'IntentRequest'
&& request.intent.name === 'NumberTwoIntent');
},
handle(handlerInput) {
return handlerInput.responseBuilder
.speak("Number Two")
.reprompt('Want another?')
.getResponse();
},
};
const HelpHandler = {
canHandle(handlerInput) {
const request = handlerInput.requestEnvelope.request;
return request.type === 'IntentRequest'
&& request.intent.name === 'AMAZON.HelpIntent';
},
handle(handlerInput) {
return handlerInput.responseBuilder
.speak(HELP_MESSAGE)
.reprompt(HELP_REPROMPT)
.getResponse();
},
};
const ExitHandler = {
canHandle(handlerInput) {
const request = handlerInput.requestEnvelope.request;
return request.type === 'IntentRequest'
&& (request.intent.name === 'AMAZON.CancelIntent'
|| request.intent.name === 'AMAZON.StopIntent');
},
handle(handlerInput) {
return handlerInput.responseBuilder
.speak(STOP_MESSAGE)
.getResponse();
},
};
const SessionEndedRequestHandler = {
canHandle(handlerInput) {
const request = handlerInput.requestEnvelope.request;
return request.type === 'SessionEndedRequest';
},
handle(handlerInput) {
console.log(`Session ended with reason: ${handlerInput.requestEnvelope.request.reason}`);
return handlerInput.responseBuilder.getResponse();
},
};
const ErrorHandler = {
canHandle() {
return true;
},
handle(handlerInput, error) {
console.log(`Error handled: ${error.message}`);
return handlerInput.responseBuilder
.speak('Sorry, an error occurred.')
.reprompt('Sorry, an error occurred.')
.getResponse();
},
};
const HELP_MESSAGE = 'You can say tell me a space fact, or, you can say exit... What can I help you with?';
const HELP_REPROMPT = 'What can I help you with?';
const STOP_MESSAGE = 'Goodbye!';
const skillBuilder = Alexa.SkillBuilders.standard();
exports.handler = skillBuilder
.addRequestHandlers(
NumberOneHandler,
NumberTwoHandler,
HelpHandler,
ExitHandler,
SessionEndedRequestHandler
)
.addErrorHandlers(ErrorHandler)
.lambda();
{
"interactionModel": {
"languageModel": {
"invocationName": "probando los fallos",
"intents": [
{
"name": "AMAZON.CancelIntent",
"samples": []
},
{
"name": "AMAZON.HelpIntent",
"samples": []
},
{
"name": "AMAZON.StopIntent",
"samples": []
},
{
"name": "AMAZON.NavigateHomeIntent",
"samples": []
},
{
"name": "NumberOneIntent",
"slots": [],
"samples": [
"el numero uno",
"el uno",
"primero",
"uno",
"one"
]
},
{
"name": "NumberTwoIntent",
"slots": [],
"samples": [
"segundo",
"el numero dos",
"numero dos",
"number two",
"two"
]
}
],
"types": []
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment