Dall’immagine alla voce: la sfida dello sviluppo di applicazioni vocali

La potenza dell’ecosistema Alexa è nella creazione di un nuovo modo di accedere a dati che prima erano fruibili solo tramite interfacce visuali – come applicazioni web o mobile – con un nuovo medium, l’interazione vocale. Inoltre lo sforzo commerciale fatto da Amazon ha reso Alexa disponibile non solo nei salotti ma anche in auto o in mobilità, rendendo l’interazione vocale disponibile in scenari che fino a qualche anno fa non erano immaginabili.

Echo Buds, auricolari con Alexa integrata. Immagine da Amazon.com

La nostra sfida

La sfida che stiamo affrontando come azienda in questo momento è quella di chiederci se, ma soprattutto come, i prodotti dei nostri clienti possono portare un valore aggiuntivo ai loro utenti, sfruttando le interfacce vocali. Sfida che è particolarmente impegnativa quando parliamo di applicazioni che girano su web, piuttosto che la semplice fruizione di contenuti.

Questa trasformazione non è un’operazione sempre facile, proprio per le differenze intrinseche che ci sono tra un’interazione visiva e una vocale. Seguendo le linee guida di Amazon disegniamo le conversazioni in modo che siano adattive nei confronti del contesto dell’utente e propositive nel far compiere velocemente all’utente le operazioni più utili per loro in quel momento, senza dover incorrere in lunghi (e noiosi) menù.

Prototipi ed esperimenti

Data la natura fortemente innovativa di queste applicazioni, ci approcciamo ai nostri clienti con dei prototipi o dei piccoli esperimenti, per arrivare subito a qualcosa di utilizzabile da testare con utenti reali. Uno strumento che utilizziamo spesso per ottenere questo scopo è lo Skill Flow Builder (SFB). SFB è un tool ufficiale di Amazon che permette, grazie ad un editor visuale, di creare flussi conversazionali anche abbastanza complessi e di testarli al volo con degli utenti.

Amazon Skill Flow Builder

Dopo questa prima fase, passiamo poi a collegarlo a dati reali sfruttando le API Rest che sono spesso già a disposizione di applicazioni web o mobile. Per aiutare i nostri clienti a cogliere le potenzialità date dall’interazione vocale, spesso prepariamo delle piccole demo molto semplici ma che utilizzano dati reali. In questo modo testiamo anche il collegamento tra i sistemi Alexa ed il sistema REST del cliente. Un esempio di queste demo lo puoi vedere qui sotto. Utilizziamo Alexa per chiedere chi sono i membri dei nostri team.

Cosa c’è sotto il cofano

Come spiegato poco sopra, le demo che prepariamo sono di solito molto semplici, ma il collegamento tra i vari sistemi end-to-end è reale. Come spiegato in un precedente articolo, una Skill Alexa è composta da una Lamdba su AWS (di cui puoi leggere il codice su GitHub) che interroga un backend che mescola i dati del nostro sistema di planning (che ci dà le informazioni sui team) e le API della nostra sezione “Our People” per ottenere dati aggiuntivi, quali le foto profilo. Anche di questo backend trovi il codice su GitHub.

Stack della nostra skill di demo