Sviluppare skill per Amazon Alexa
Indice dei contenuti
In questo primo tutorial iniziamo un percorso che ci porterà passo dopo passo a sviluppare una prima applicazione (skill) per Amazon Alexa
L’obiettivo è fornire una rapida panoramica su Amazon Alexa fornendo le basi necessarie sviluppare un’applicazione (che da ora in poi chiameremo skill) .
Ho pensato di creare questo percorso sperando di poter in qualche modo contribuire gratuitamente alla diffusione dello svilluppo di nuove skill.

Nel corso di questo primo tutorial vedremo:
- cos’è Alexa e come funziona
- intent e utterals
- skill
Nei prossimi tutorial procederemo a sviluppare una skill per Amazon Alexa.
Ho scelto un approccio semplice che ci permetterà di iniziare ad avere una panoramica delle principali funzionalità nello sviluppo di una applicazione.
L’applicazione che realizzeremo si chiamerà “Punteggio Briscola” e permetterà di calcolare il punteggio chiedendo all’utente di pronunciare il valore della carta vinta durante il gioco. Sicuramente saprete le regole del gioco e che solo alcune carte hanno un punteggio (fante, cavallo, re, asso, tre).
La skill che ho sviluppato è utilizzata da mio figlio di sei anni che pur sapendo giocare a Briscola non è ancora in grado di sommare il punteggio.
Ma andiamo con ordine.
Alexa: come funziona?
Basta chiederlo direttamente a lei: Alexa perché ti chiami così?
Otterremo questa risposta:
“Il mio nome, Alexa, è ispirato alla biblioteca di Alessandria, una delle principali fonti di conoscenza del mondo antico. È anche una forma femminile di Alessandro e, talvolta, è usato come abbreviazione di Alexandra. Entrambi questi nomi derivano dal greco Alexandros.”
Amazon ha presentato Alexa nel 2014 accanto al lancio del suo primo smart speaker Echo (una piccola cassa dalla forma cilindrica che pensata per accedere ad Alexa da ogni stanza).
Dal momento del suo debutto, Alexa ha attirato attorno a se’ una grande platea di sviluppatori che hanno contribuito a migliorare l’assistente personale di Amazon grazie a nuove Skill e alla sua implementazione in sempre più dispositivi.
Come funziona Alexa?
Dal punto di vista dell’utilizzatore il funzionamento è molto semplice.
A fronte di una domanda Alexa cerca di interpretare la richiesta recuperando le informazioni utili a fornire la migliore risposta. Ovviamente questo non sempre è possibile e dove non lo è Alexa ci informa di non avere una risposta.

Se dal punto di vista utilizzatore il funzionamento appare semplice non si può dire esattamente lo stesso dal punto di vista del processo applicativo necessario ad Alexa per trovare la risposta al quesito posto.
Una complessa rete neurale infatti permette di interpretare la richiesta umana identificando gli intenti .
Cerchiamo di capire meglio tornando alla nostra skill “Punteggio Briscola” che svilupperemo nel proseguo di questi tutorial.
Diventa sin da subito importante capire come Alexa cerca di scomporre la frase di richiesta cercando l’azione descritta nel Intent partendo ovviamente da quello che tecnicamente si chiama utterance.
Intent e utterance
Che cos’è una intent?
Un intent è un’azione che soddisfa la richiesta vocale di un utente che Alexa attiverà dopo aver interpretanto le parole pronuciate dall’utente ed identificato le espressioni (utterances) che attivano l’azione necesaria (intent)
Per la nostra app ipotizziamo quindi di aver sviluppato un intent per calcolare il punteggio (getPunteggioIntent) e rispondere all’utente a fronte della seguente frase:
“Alexa chiedi a Punteggio Briscola di contare Asso”

Scomponiamo la frase pronunciata:
- Alexa -> parola chiave per attivare l’ascolto del dispositivo
- chiedi -> azione che attiva la skill in suffisso
- punteggio briscola -> skill in cui cercare il sinonimo utile
- di contare Asso -> cerca una intent corrispondente alla utterance “contare” oppure “conta” (tutti sinonimi che dovremo aggiungere come utterances del intent getPunteggio).
Vediamo meglio di seguito

Approfondiremo meglio il concetto di Intents, utterances e slot nei prossimi tutorial.
Cos’è una skill?
Ma che cos’è una skill quindi? Una skill Alexa è una applicazione eseguita su dispositivi Amazon Alexa in grado di rispondere ad alcune domande che implementano le funzionalità di base di Alexa.
In sostanza una skill aumenta la conoscenza di base di Alexa sviluppando risposte a quelle domande che Alexa non sarebbe in grado di rispondere.
Ad esempio esistono skill in grado di comandare l’accensione di luci oppure aprire porte o finestre.
Dove si trovano le skill?
Le skill si trovano all’interno dell’app store Alexa.
E’ possibile aggiungere una skill ad Alexa dal menù “Skill” da smartphone o tablet oppure chiedendo ad Alexa di farlo per noi con il comando “Apri” seguito dal nome della skill.

Possono essere eseguite su dispositivi fisici (echo dot, smartphone/tablet) o virtuali.
Ma sopratutto le skill possono essere sviluppata gratuitamente! Anche da chi non ha molta dimestichezza con i linguaggi di programmazione.
Nel corso dei prossimi tutoria vedremo come sviluppare la nostra prima skill Aleza e testarla du emulatore incluso nell’ambiente di sviluppo fornito da Amazon oppure in un dispositivo fisico.
Se apprezzi il mio lavoro ti invito a lasciare un commento e a registrarti al canale Youtube Utilink collegato a questo sito per non perderti le notifiche dei nuovi video che puoi comunque sempre trovare nella sezione Tutorial e Recensioni.
davvero una bella idea…aspetto i prossimi tutoria!
Ciao Ramos8 e grazie per il commento!
Ottima idea!! aspetto i prossimi tutorial 🙂
Grazie per il tuo commento Darst!