Un skill est composé de deux grandes parties:
- Le Voice Interaction Model (VIM): c’est là dedans que l’on définit le nom d’invocation, les intentions, les slots, les énonciations etc.
- La logique programmatique: c’est le backend qui va gérer la requête interprétée par le VIM
Quand un utilisateur va émettre sa commande vocale l’intention va être envoyée à Alexa, qui va rediriger sur le skill adéquat, le VIM du skill va analyser l’intention de l’utilisateur en identifiant la méthode voulue, les slots donnés et appeler la couche programmatique par la méthode qui correspond avec les variables déterminées par les slots.
Il est possible pour le VIM d’avoir accès à l’API d’ASK afin d’accéder à des informations supplémentaires comme le nom de l’utilisateur, sa timezone etc.
Il est aussi possible de dicter de manière précise le son renvoyé par nôtre réponse (ton, audio à jouer,…) grâce au SSML (Speech Synthesis Markup Language)