Sviluppare una skill per Amazon Alexa: concetti fondamentali

In questo articolo ti voglio illustrare i concetti fondamentali che devi necessariamente conoscere se vuoi capire come realizzare una skill per Alexa.

I concetti che esprimo di seguito sono frutto della mia esperienza sul campo. Prima di scrivere questo articolo, è bene che tu sappia, ho realizzato innumerevoli skill alcune delle quali hanno ottenuto successo tra gli utilizzatori.
Iniziamo con il definire Alexa. Alexa è l’intelligenze artificiale di Amazon. È la componente che può capire quando parli e ritornare risposte coerenti con quanto chiedi. Sulla base dell’intelligenza artificiale si sono sviluppati la gamma di assistenti vocali che sono della linea Amazon Echo come l’Echo Dot o l’Echo Show.

Sviluppare una Skill per la Gamma di prodotti Amazon Echo
La gamma di prodotti

Facendo un parallelo che tiene, entro certi confini, le skill per Alexa corrispondono alle APP per uno smartphone, con la differenza che:

  • l’interazione cambia, perché non ci sono interfacce grafiche (ovvero schermate) da visualizzare ma si interagisce con la sola voce ed eventualmente con la proiezione di immagini
  • cambiano i meccanismi di monetizzazione: chi sviluppa non vende la skill ma può vendere – ad esempio – contenuti extra a pagamento (questa modalità è detta In Skill Purchase)

Sviluppare una skill può servire a:

  • i proprietari di dispositivi che vogliono governare l’hardware dall’assistente vocale, come ad esempio i produttori di caldaie che vogliono offrire la possibilità ai propri utenti di accendere o spegnere la caldaia interagendo con un dispositivo Echo. In questo esempio il dispositivo, ovvero la caldaia, viene detta Alexa Enabled e consegue il marchio “Works whit Alexa”.
  • chi ha contenuti da erogare, come ad esempio:
    • un produttore di giochi
    • una radio
    • una tv
    • un cantante
    • una testata giornalistica
Works with Alexa è il marchio che consegue il dispositivo che può essere azionato da Alexa
I dispositivi che possono essere attivati da Alexa

Nel seguito vediamo cosa devi fare per poter sviluppare una skill tutta tua, i passi da seguire, i tipi di skill e tutto l’occorrente fino al processo di verifica.

Registrare l’account per sviluppatori

Per accedere al portale per sviluppatori, il prerequisito è avere un account Amazon e, in seconda battuta, registrarsi all’indirizzo: https://developer.amazon.com/it-IT/alexa
Al primo accesso al portale sviluppatori dovrai compilare un breve questionario sul tuo conto con i canonici campi da compilare come nome, contatto mail tecnico, ecc.
Una volta registrato potrai iniziare a creare la tua skill ma attenzione: sei un buon marketer se hai già in mente come monetizzarla.

Tipologie di Skill

I tipi di skill, se ci riferiamo al mercato Italia sono 3:

  1. Flash briefing: sono feed RSS dentro i quali puoi mettere del testo che viene letto da Alexa oppure che contengono link a file di tipo mp3, e che quindi vengono riprodotti da Alexa. SViluppare questa tipologia di skill è piuttosto semplice: ti è sufficiente avere i contenuti da somministrare alla skill. Per il fatto che è molto semplice, questo tipo di skill deve necessariamente prevedere una fonte autorevole per avere successo, perché il valore della skill si annida li. Se mi dai in pasto le notizie di un qualunque blog di cucina, quindi, non mi stai dando del valore ma mi stai solo offrendo un contenuto noto, in una forma differente.
  2. Smart Home: sono skill che controllano dispositivi intelligenti per la casa. Qui il pezzo forte risiede nel dispositivo intelligente, non tanto nella skill. Il fatto che la skill si connetta al dispositivo è un elemento pregevole ma da annoverare alle feature del dispositivo intelligente, più che allo smart speaker.
  3. Custom: sono skill che ti permettono di fare qualunque cosa, nei limiti previsti dalla tecnologia Alexa e da come questa viene regolamentata. Queste sono le più interessanti, nel mio modo di vedere, se il tuo background è di sviluppatore/marketer perché esiste un mondo di servizi che si possono creare e che possono incontrare veramente i gusti di un mercato in grande espansione ed ancora poco governato.

Fisionomia di una skill

Componenti fondamentali di una skill
Le componenti fondamentali di una skill

Le skill, nella loro rappresentazione più schematica, si compongono di due elementi fondamentali:

  • il modello di interazione, che determina il modello linguistico con cui l’utente interagisce con la tua applicazione
  • la parte di logica, cche può essere sviluppata con qualunque linguaggio di programmazione. Amazon suggerisce un approccio ma la realtà dei fatti è che puoi farlo con qualunque linguaggio

vediamoli separatamente.

Modello di interazione

Il modello di interazione è l’equivalente all’interfaccia grafica per le APP (o per qualunque altra applicazione web) ed è quella che permette all’utente di impiegare la tua skill. Il modello di interazione, quindi, è un tassello che decreta l’esperienza utente e, in estrema istanza, il successo della tua skill perché è per tramite di questo elemento che gli utenti si diranno contenti oppure no del lavoro che hai fatto e che ti lasceranno buone recensioni. 
Il fatto di avere una interfaccia “vocale” ti può sembrare – di primo acchito – un problema in meno a cui pensare (ovvero al design delle interfacce grafiche). 
In realtà fin da subito ti accorgerai di alcune differenze sostanziali che passano tra lo sviluppo di un’interfaccia grafica ed un’interfaccia conversazionale e che, nel mio modo di vedere, decretano di fatto la nascita di una nuova figura professionale: quella del “voice designer”.
Il concetto principale del modello di interazione è quello di Intenti.

Interfaccia grafica e conversazionale: quali differenze?

Differenza tra interfaccia grafica e conversazionale per lo sviluppo di una skill
Le differenze tra interfaccia grafica e conversazionale

Quelle che seguono sono le più rilevanti differenze tra lo sviluppo di una interfaccia grafica ed un’interfaccia “conversazionale” 

  • per tramite dei pulsanti, o altri elementi grafici abilitati o disabilitati dei percorsi. Con le interfacce conversazionali non puoi farlo
  • con l’uso delle componenti grafiche conosci il contesto, facendo uso delle parole no
  • ad un intento possono corrispondere innumerevoli frasi di attivazione di quell’intento, cosa che non accade per un’interfaccia grafica.

Ti faccio un esempio: se l’intento che esprime il giocatore di “Esatto, risposta Sbagliata” è “Inizia una nuova partita”, le frasi possono essere:

  • voglio fare una nuova partita
  • inizia un nuovo match
  • ancora una partita

definite le frasi che attivano l’intento, Amazon “allena” la sua intelligenza artificiale per far ricadere qualunque frase espressa dall’utente in uno degli intenti che hai previsto.
Se gli intenti sono molti, i percorsi che l’utente può imboccare sono innumerevoli. Cioè al crescere degli intenti crescono le possibilità di saltare da un intento ad uno molto diverso che la tua skill prevede.
Ne consegue che se con un’interfaccia grafica posso indurre il giocatore di un videogame a rilasciare i suoi dati (nome e cognome) prima di iniziare la partita, con un’interfaccia conversazionale non posso farlo perché l’utente può richiamare un intento che viene dopo a quello per la raccolta dei suoi dati.

Conclusioni

Il mondo delle skill di Alexa e, più in generale, delle applicazioni vocali è davvero agli albori nel momento in cui sto redigendo questo articolo. La novità risiede in tutto l’ecosistema che si sta aggregando attorno a questa tecnologia: nuove figure professionali, nuovi modelli di business e oceaniche opportunità si presentano dinnanzi a chi, come noi, sta approfondendo questo ambito.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *