Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Architettura di riferimento

Le diverse componenti di una applicazione vocale
Le diverse componenti di una applicazione vocale
Link copiato negli appunti

Al fine di comprendere il funzionamento di una applicazione vocale ci aiuteremo facendo dei paragoni con le ben più note pagine internet: possiamo, sintetizzando, dire che l'architettura tipica di una applicazione Web comprende il server che ospita il sito, e, in funzione dell'architettura progettata, un application server che gestisca i database e il core della nostra applicazione.

Figura 1: Architettura di una applicazione vocale
architettura di una applicazione vocale

A questo punto non ci resta che collocare gli utenti del nostro sito web (in alto a sinistra nella nostra figura) che accedendo attraverso il loro browser all'applicazione, navigheranno il nostro sito inviando richieste all'applicazione attraverso i metodi GET o POST del protocollo HTTP.

L'applicazione risponderà inviando, sempre attraverso lo stesso protocollo HTTP, una pagina di risposta o eseguendo una determinata operazione.

Supponiamo per semplicità che la nostra applicazione sia una webmail, ovvero una serie di pagine web che permetteranno all'utente di interfacciarsi con la propria casella di posta.

Questo primo strato, che potremmo definire superficiale, viene spesso definito "presentation layer" (strato di presentazione), e si preoccupa unicamente del modo in cui vengono inviati i dati all'utente, alla loro rappresentazione e formattazione, ed è connesso ad uno strato più interno, detto "application layer" (strato dell'applicazione). Questo secondo strato è quello che si farà carico dell'autenticazione utente, della lettura delle mail dal server di posta, e, più genericamente, di tutte le logiche applicative.

Questa architettura, che rappresenta un grado di complessit6agrave; medio, nel momento in cui
decidiamo di rendere la nostra applicazione vocale, sarà mantenuta inalterata, e si creerà un nuovo layer di presentazione dei dati: l'interfaccia vocale.

Una delle principali peculiarità del linguaggio VoiceXML è quella di essere costruito per sviluppare applicazioni voice-enabled orientate al Web: ciò significa essere in grado di produrre pagine VoiceXML anche attraverso linguaggi server side (ASP, ASP.NET, JSP, PHP, ecc.).

Per capire come questo sia possibile faremo riferimento alla parte bassa della figura 1, l'utente si connette tramite il telefono al Voice Gateway, quindi senza dover ricorrere ad un particolare browser o plugin.

Il Voice Gateway è , fondamentalmente, un server con i seguenti requisiti:

  • La capacità di elaborare file VoiceXML: ovvero ha un intreprete VoiceXML, in grado di accettare più chiamate contemporaneamente. Per tornare al nostro parallelo con le tipiche pagine internet, questo è il nostro web-server.
  • Uno o più motori di riconoscimento vocale (ASR: Automatic Speech Recognition) che servono per ascoltare gli input degli utenti.
  • Uno o più motori di sintesi vocale (TTS: Text-to-speech) che vengono utilizzati per produrre un output vocale da un testo sintetizzato.
  • Una scheda telefonica per accettare flussi telefonici in ingresso. Ovviamente al posto della scheda telefonica si può veicolare la telefonata attraverso VOIP o SIP.

Ecco perciò cosa accade quando un utente si connette ad una applicazione vocale:

  • L'utente compone il numero collegato al nostro Voice Gateway
  • Attaverso la linea pubblica telefonica (PSTN), la voce del nostro utente raggiunge il Gateway
  • Il Gateway interpreta le istruzioni contenute nel file VoiceXML, producendo un messaggio vocale attraverso la sintesi (TTS), e ricevendo ed interpretando gli input dell'utente (ASR).
  • Inoltre, il Voice Gateway dialoga con il Web Server attraverso il protocollo HTTP e invia dati all' "application layer".
  • Il server Web riceve le richieste dal Voice Gateway
  • Il server web rende disponibili i file VoiceXML per la loro interpretazione.

Semplificando ulteriormente, possiamo affermare che il Voice Gateway si preoccupa soltanto di leggere il contenuto dei file VoiceXML inviati dal server Web e di raccogliere gli input dell'utente, e che una applicazione vocale rappresenta un ulteriore "presentation layer" della nostra applicazione, ed una sua naturale verticalizzazione.

Tornando alla nostra applicazione di web mail, qualora volessimo renderla accessibile via voce sarà sufficiente dotarsi di un Voice Gateway, connetterlo alla linea telefonica e creare delle pagine di input e di output vocali. A questo punto il nostro utente potrà agevolmente accedere alla sua casella di posta attraverso qualiasi telefono.

Ti consigliamo anche