Alexa Presentation Language: cos’è e come funziona

Come forse sai, alcuni dispositivi della serie Amazon Echo sono equipaggiati di schermo. Sullo schermo è possibile visualizzare immagini e video ma ciò di cui voglio parlarti è in questo articolo tratta una forma di contenuto peculiare. Per mostrare questo genere di contenuto devi sapere cos’è Alexa Presentation Language.

Sebbene le direttive per lo sviluppo di una skill di Amazon siano piuttosto chiare sul fatto che l’esperienza d’uso debba esser “voice first”, ovvero che l’utente non può compiere azioni con le interfacce differenti a quelle che compie con la voce, la possibilità di proiettare contenuti grafici è comunque data.
Si tratta di contenuti grafici che vengono visualizzati sullo schermo del dispositivo durante l’uso di una skill come arricchimento dell’esperienza di utilizzo.

L’esperienza deve essere sempre Voice First nonostante l’uso delle immagini

Proiettare questo genere di contenuti significa conoscere un linguaggio di programmazione che assomiglia molto a quello impiegato per le pagine web, ovvero l’html, ed il cui acronimo è APL che sta per Amazon Presentation Language.

I dispositivi di Amazon possono essere molto differenti gli uni dagli altri, ed infatti i contenuti prodotti con APL devono essere necessariamente responsive: devono potersi impaginare in modi differenti in ragione delle dimensioni dello schermo sulle quali vengono visualizzate.

Per poterlo fare, sotto un profilo tecnico, all’interno del documento APL devi definire il comportamento responsive oppure puoi stabilire template del tutto differenti dispositivo per dispositivo. Se hai dimestichezza con i concetti propri del linguaggio html troverai molte analogie. Il principio di base è che si tiene separata la struttura dallo stile, ovvero il contenuto e la presentazione del contenuto stesso. 

Ciò che proietti sul monitor del dispositivo può prevedere l’uso del Data Binding per poter variare ciò che viene proiettato in ragione di quello che avviene durante l’uso della skill. Nel template, quindi, puoi specificare dove collocare il testo variabile e ti riferisci alla sorgente di dati che valorizzi mentre la skill viene impiegata. 

Ti faccio un esempio in riferimento alla nostra skill Capitali del Mondo, che consiste in un gioco a quiz. Immagina, ad un certo punto mentre impieghi la skill, di visualizzare quante capitali ti ho chiesto fino a quel momento. Il numero varia nel tempo, e quindi, durante il gioco, viene passata una sorgente dati che viene renderizzata dal template. 

Per concludere questa breve panoramica, devi sapere che la skill non manda direttive APL quando il device non lo supporta perché altrimenti la skill ritorna un errore. Ne consegue che la skill, non il dispositivo, deve verificare se il device ha la possibilità di eseguire il codice oppure. Questa architettura un po’ poco ortodossa – probabilmente – è frutto di considerazioni sulle prestazioni. Infine, sappi che con APL puoi compiere transizioni, animazioni di base, aggiungere bottoni che possono essere cliccati ed inserire video.

Amazon Presentation Language
Animazione fatta usando APL

Conclusioni

APL apre la pista ad un nuovo settore di interesse che riguarda la presentazione di contenuti visuali secondo una prospettiva del tutto nuova ed attuale. Sono convinto che nel prossimo futuro sarà necessario avere le giuste competenze per saper programmare anche in questo tipo di linguaggio che, più in generale, diventerà patrimonio di nuove figure professionali che ancora si devono delineare.

Lascia un commento

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