Qué es una Alexa Skill custom
A lo largo de este curso vas a construir Mi Agenda, una Alexa Skill custom real que crea recordatorios de voz y recuerda datos entre sesiones — nada de "Hello World". Pero primero, la anatomía: dos piezas separadas que trabajan juntas.
El modelo de interacción
Vive en el skill package y es editable como JSON crudo desde el developer console. Define:
- El invocation name: cómo se llama tu skill al hablar.
- Los intents: acciones que satisfacen un pedido del usuario, cada uno con sample utterances (frases que lo disparan).
- Los slots: argumentos variables dentro de un intent, cada uno con un tipo de slot integrado (prefijo
AMAZON.) o personalizado. - Un dialog model opcional, para conversaciones de varios turnos que completan los slots que faltan.
El backend
Es tu código: recibe una petición JSON y responde con otra petición JSON. Los tres tipos de petición estándar son LaunchRequest (se abrió la skill sin un intent), IntentRequest (se disparó un intent) y SessionEndedRequest (terminó la sesión; tu skill no puede responderle, solo recibe el reason).
La respuesta
Trae un version obligatorio, un objeto response obligatorio y, opcionalmente, sessionAttributes. Dentro de response aparecen outputSpeech (texto o SSML, tope de 8000 caracteres), reprompt (solo si la sesión sigue abierta) y shouldEndSession.
Entender esta separación —modelo de interacción por un lado, backend por el otro— es la base de todo lo que sigue, incluida Mi Agenda.