VoiceXML: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Sistemo e aggiusto fraseologia e alcune imprecisioni tecniche
Riga 1:
{{W|informatica|maggio 2008}}
{{S|informatica}}
'''VoiceXML''' ('''VXML''') acronimo di '''V'''oice e'''X'''ensible '''M'''arkup '''L'''anguage, rappresentadefinito lo standarddal [[W3CWorld Wide Web Consortium]] (W3C), rappresenta lo standard in formato [[XML]], per la creazione di dialoghi interattivi tra una persona e un computer.
 
La piattaforma VoiceXML lavora in modo analogo a un browser HTML.
ComeLa piattaforma VoiceXML lavora in modo analogo a un browser [[HTML]]: caricai documenti VoiceXML vengono scaricati da un Serverserver Webweb e liinterpretati interpreta,e analogamentetrasformati ilin Voicevoce Gatewayda caricaun gliVoice scriptGateway VoiceXMLresidente dalsul Server Web ecomputer lidell'utente interpretafinale.
 
== A cosa serve ==
VoiceXML si candida come linguaggio ideale per verticalizzarerealizzare diun applicazioninuovo Webmetodo esistentidi creandopresentazione cosìbasato nuovosulla layervoce die presentazione,denominato '''Voice User Interface''' (VUI), ein unaitaliano nuova''interfaccia viautente divocale'') accessoaccedendo ai dati: ilattraverso linee telefonotelefoniche.
 
VoiceXML permette la creazione di logiche di dialogo uomo-macchina in linguaggio naturale attraverso l’'integrazione con diverse tecnologie, tra cui:
*[[DTMF|Dual-Tone Multi-Frequency]]
*[[Riconoscimento vocale|Automatic Speech Recognition]]
*[[Sintesi vocale|Text-to-Speech]]
*''Speaker Verification''
* Video in streaming o preregistrati
 
Una delle caratteristiche del linguaggio VoiceXML è quella di essere costruito per sviluppare applicazioni voice-enabledbasate sulla voce e orientate al Web: questo implica, infatti, la possibilitàconsente di produrre paginedocumenti VoiceXML anche in modo dinamico, attraverso linguaggi server side (ASP, ASP.NET, JSP, PHP, ecc.), così come avviene per le pagine web.
 
== Caratteristiche ==
 
Alcune delle caratteristiche del linguaggio VoiceXML sono:
 
* ''Linguaggio di markup idealeconcepito per creare applicazioni vocali'': VoiceXML è stato progettato appositamente per la creazione di applicazioni vocali, la gestione dei dialoghi, e l’'integrazione con le funzioni di '''ASR''' e '''TTS'''.
 
* ''Separazione del codice per le interazioni utente dal codice dell'’applicazione'': la separazione delle logiche di programmazione da quelle di presentazione è un requisito fondamentale, sia per la verticalizzazione di applicazioni esistenti, sia per lo sviluppo in team di applicazioni vocali.
 
* ''Una strutturaStruttura modulare'': la struttura stessa del linguaggio permette la creazione di dialoghi, grammatiche e logiche di interazione che possono essere resi modulari. Questi elementi possono essere conservati separatamente e riutilizzati in altre applicazioni.
 
* ''Portabilità e semplicità di sviluppo'': VoiceXML è stato creato per essere utilizzato indipendentemente dalle piattaforme e per nascondere al programmatore le logiche di più basso livello;. loLo sviluppatore di applicazioni vocali , infatti, non dovrà preoccuparsi sulladella gestione del motori di riconoscimento o sintesi vocale, ma si potrà concentareconcentrare sulla creazione dell'interfaccia utente.
 
== Come funziona ==
L'’utente si connette tramite il proprio telefono (senza dover usare un particolare browser o plugin) ad un Voice Gateway attraverso la [[PSTN|rete telefonica ordinaria]].
 
L'’utente si connette tramite il proprio telefono (senza dover usare un particolare browser o plugin) ad un Voice Gateway attraverso la [[PSTN]].
 
[[Immagine:Archi3 wiki.jpg|600px]]
 
Il Voice Gateway svolge le seguenti funzioni:
* interpreta il filedocumento VoiceXML;
* produce un messaggio vocale attraverso la sintesi vocale (TTS);
* riceve ed interpreta gli input dall'utente (tramite la tastiera a toni, via DTMF o ASRtramite comandi vocali, via riconoscimento vocale);
* dialoga con il Webserver Serverweb attraverso il [[Hyper Text Transfer Protocol|protocollo HTTP]].
 
Il server Webweb, riceveuna volta ricevute le richieste dal Voice Gateway e, rende disponibili i filedocumenti VoiceXML per la loro interpretazione.
loro interpretazione.
 
== Esempio ==
 
Esempio di un documento VoiceXML:
 
Line 63 ⟶ 58:
</source>
 
L'’interpretazione di questa pagina VoiceXML da parte del Voice Gateway produrràfa lapronunciare pronuncia da parte del TTS dellele parole " ''Ciao Mondo!'''" ”"tramite un sistema integrato di sintesi vocale.
 
Esempi di applicazioni possibili sono: posta elettronica, informazioni suldi meteo,servizio informazionidi sulpubblic utilità (meteo, traffico...), quotazioni di borsa, oroscopo, call center, gestione delle scorte, ecc..servizi di tempo libero (oroscopi, eccetera)
 
== Storia del linguaggio ==
Un primo linguaggio di markup per interazioni vocali via telefono, il ''Phone Markup Language'' (PML) fu sviluppato dai [[Bell Laboratories]] di AT&T. Lo sviluppo proseguì anche quando i Bell Laboratories furono scorporati da AT&T e integrati in [[Alcatel-Lucent|Lucent Technology]].
 
Nel frattempo anche [[IBM]] e [[Motorola]] svilupparono i loro linguaggi di markup vocali, denominati rispettivamente SpeechML e VoxML.
AT&T Bell Labs svilupparono il Phone Markup Language (PML).
In seguito AT&T si divise in AT&T e Lucent che portarono avanti separatamente lo svilppo del linguaggio PML.
IBM sviluppò il linguaggio SpeechML, Motorola il linguaggio VoxML.
Nel Marzo 1999 IBM, AT&T, Lucent e Motorola si unirono nel VoiceXML Forum e crearono (nell'Agosto 1999) il linguaggio VoiceXML.
Nel marzo [[1999]] IBM, AT&T, Lucent e Motorola decisero di unificare gli sviluppi su una base comune, dando vita al VoiceXML Forum che nell'agosto 1999 inizò le specifiche del linguaggio VoiceXML, pubblicando la versione 1.0 nel [[marzo]] [[2000]]. Il nuovo linguaggio di markup, grazie anche alle somiglianze con l'HTML, ebbe subito un'ampia diffusione.
La '''versione 1.0''' fu pubblicata nel Marzo del 2000.
VoiceXML 1.0 venne largamente adottata, grazie anche alla sua somiglianza con HTML.
'''VoiceXML 2.0''' divento ''Recommendatio'' W3C a Marzo 2004.
 
Nel marzo [[2004]], la versione 2.0 di VoiceXML divenne una raccomandazione ufficiale del W3C, che ne cura gli sviluppi e le evoluzioni.
'''VoiceXML 2.1''', diventata ''Reccomendation'' W3C nel'Ottobre 2007, aggiunge alcune caratteristiche addizionali alla versione precedente con cui è retro-compatibile.
 
A ottobre [[2007]] il W3C ha rilasciato la versione 2.1 di VoiceXML, che presenta una serie di estensioni garantendo la compatibilità all'indietro con la versione precedente.
== Standard collegati ==
 
== Standard collegati ==
Il W3C ha separato la struttura dell'interfaccia vocale in altri diversi linguaggi:
Nel quadro delle attività collegate alle applicazioni vocali, il W3C ha ulteriormente separato il controllo delle interfacce vocale definendo diversi linguaggi di markup, ognuno orientato verso aspetti specifici.
 
=== SRGS e SISR===
''Speech Recognition Grammar Specification (SRGS)'' è il linguaggio utilizzato per scrivere le grammatiche (insiemi di regole) utilizzate dal riconoscitore vocale per riconoscere gli input utente.
 
''Semantic Interpretation for Speech Recognition(SISR)'' gliviene sviluppatoriutilizzato usanoper controllare l'interpretazione semantica, inserendo le opportune istruzioni nelle grammatiche, per manipolare i risultati ottenuti dal riconoscimento vocale in base al contesto applicativo.
 
=== PLS ===
''[[Pronunciation Lexicon Specification]] (PLS)'' viene utilizzato sia dal riconoscitore vocale sia dalladal sintesisintetizzatore per definirecontrollare la corretta pronuncia di una parola, soprattutto in applicazioni multilingue.
 
=== SSML ===
''[[Speech Synthesis Markup Language]] ([[SSML]])'' viene usato per migliorare la prosodia delle frasi percontrollando esempioaspetti aumentandoquali oenfasi, diminuendotimbro lavocale, volume sonoro e velocità di lettura.
 
=== CCXML ===
''Call CantrolControl eXensible Markup Language (CCXML)'' linguaggio viene usato per la gestione delle telefonate. Permette di accettare una chiamata in entrata, effettuare una chiamata in uscita, disconnettereterminare una chiamata e connettere insiemecollegare più chiamate in conferenza.
 
{{Portale|Informatica}}