UNIVERSITA POLITECNICA DELLE MARCHE FACOLTA DI INGEGNERIA. Corso di Laurea in Ingegneria Informatica e dell Automazione

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "UNIVERSITA POLITECNICA DELLE MARCHE FACOLTA DI INGEGNERIA. Corso di Laurea in Ingegneria Informatica e dell Automazione"

Transcript

1 UNIVERSITA POLITECNICA DELLE MARCHE FACOLTA DI INGEGNERIA Corso di Laurea in Ingegneria Informatica e dell Automazione Studio del protocollo VoiceXML e sviluppo di un applicazione per accedere a servizi di prenotazione mediante chiamata telefonica. Relatore: Prof. Aldo Franco DRAGONI Tesi di Laurea di: Vincenzo SALVATORE Anno Accademico

2 insegui i sogni che credi fino al giorno che li rendi veri 2

3 Ringraziamenti Ringrazio i miei genitori, Gennaro e Angela, e mio fratello Matteo per aver appoggiato la mia scelta fin dall inizio e per avermi incoraggiato ogniqualvolta ne avessi bisogno. Ringrazio Federica per aver creduto sempre in me e per avermi dato la fiducia e la forza necessaria nei momenti difficili durante il percorso di studio. Ringrazio il prof. Aldo Franco Dragoni per il suo aiuto durante lo svolgimento del tirocinio. Ringrazio Francesco, amico e collega di facoltà, con il quale ho lavorato per tutti questi anni e realizzato insieme questo progetto. Ringrazio gli ingegneri Alessio Del Toro e Carlo Lucadei per i loro preziosi consigli e per la loro piena disponibilità durante l intero svolgimento del tirocinio. Un ringraziamento a tutti i miei amici, per tutte le esperienze vissute e per tutti i momenti passati insieme. 3

4 INDICE 1 Il VoiceXML 1.1 La nascita del VoiceXML Definizioni sul linguaggio e cenni sulle applicazioni vocali Vantaggi e svantaggi Architettura del Sistema Gli elementi fondamentali della struttura Le tecnologie utilizzate nel gateway VoiceXML Il riconoscimento dei toni DTMF Il riconoscimento vocale La gestione dei dialoghi La tecnologia di sintesi del parlato Le grammatiche nel VoiceXML 2.1 Grammars Inline grammars External grammars Built-in grammars Lo scope SRGS (Speech Recognition Grammar Specification) Speech Syntesis Markup Language (SSML) Call Control XML (CCXML) I costrutti principali: i tag L elemento grammar La progettazione dei dialoghi La creazione di modelli Gli intercalari 39 4

5 2.7.3 Il discorso sintetizzato Come ottenere il miglior riconoscimento vocale 41 3 Progetto e implementazione dell applicazione 3.1 La scelta del progetto Il diagramma di flusso dell applicazione Il database Le piattaforme vocali Spiegazione del codice nei suoi costrutti principali 49 Conclusioni 64 Bibliografia 65 5

6 CAPITOLO 1 Il VoiceXML 1.1 La nascita del VoiceXML Una delle prime società che si è interessata allo sviluppo di un linguaggio di markup per interazioni vocali via telefono è stata l IBM che verso la fine degli anni novanta sviluppò un apposito linguaggio che chiamò SpeechML. Quasi parallelamente anche altre società ne definirono dei propri, PhoneML di AT&T Bell Labs, VoxML di Motorola e TalkML di HP. Ben presto però si accorsero che era necessario unire gli sforzi per dar vita ad unico linguaggio, nacque cosi nel marzo del 1999 uno standard chiamato VXML ed un organizzazione, il VoiceXML Forum che nell agosto 1999 iniziò le specifiche del linguaggio, pubblicando la versione 1.0 nel marzo Questo nuovo linguaggio di markup, grazie alle sue somiglianze con l HTML, ebbe subito un ampia diffusione, infatti nel 2004 la versione 2.0 di VoiceXML divenne una raccomandazione ufficiale del W3C (The World Wide Web Consortium) che ne cura gli sviluppi e le evoluzioni. Nel marzo del 2004 venne pubblicata la versione del VoiceXML 2.0 e con essa anche quei linguaggi utili per relazionarlo: nacquero cosi il SSML (Speech Synthesis Markup Language) e le SRGS (Speech Recognition Grammar Specification). Nel giugno del 2005 è stato presentato un linguaggio che permette il controllo delle chiamate, il CCXML (Call Control XML). Nel giugno del 2007 il W3C ha rilasciato la versione 2.1 di VoiceXML che presenta una serie di estensioni e miglioramenti strutturali che garantiscono la compatibilità con la versione precedente. 6

7 Ad oggi sono tante le voci di uno sviluppo ulteriore del linguaggio e di una nuova versione con nuove estensioni, ma tuttora non ne sono state brevettate di nuove. Figura struttura del W3C speech interface framework 1.2 Definizioni sul linguaggio e cenni sulle applicazioni vocali VoiceXML (VXML) acronimo di Voice extensible Markup Language rappresenta lo standard in formato XML per la creazione di dialoghi interattivi tra una persona e un computer. VoiceXML e' utilizzato per gestire applicazioni vocali per mezzo delle quali la comunicazione uomo-computer non si realizza solo per mezzo di un interfaccia grafica ma anche e soprattutto 7

8 mediante un interfaccia vocale. Per applicazione vocale si intende l insieme di codice che, se eseguito da una piattaforma vocale, realizza un servizio in automatico in voce. Le piattaforme vocali sono sistemi hardware e software che utilizzano tecnologie di riconoscimento e sinterizzazione del parlato e, pertanto, sono in grado di sostenere un interazione vocale con le persone. In generale vengono indicate come applicazioni vocali tutte quelle soluzioni che in qualche misura utilizzano una o entrambe le tecnologie di Automatic Speech Recognition (ASR) e di Text To Speech (TTS), rispettivamente riconoscimento e sintesi del parlato. Figura Applicazione vocale nel contesto delle piattaforme vocali I sistemi di riconoscimento vocale (in inglese Speech Recognition) costituiscono una delle modalità più innovative per gestire l'interazione tra attori umani e sistemi informativi. Si definisce sistema di speech recognition ogni sistema in grado di convertire un input vocale in una stringa digitale di parole 8

9 corrispondenti. Visto da un'altra prospettiva, un sistema di questo genere consente di fornire un input a una macchina con il semplice uso della voce, anziché con una periferica quale potrebbe essere una tastiera, un mouse, una penna ottica o altro. Per realizzare un processo di riconoscimento vocale è necessario un software chiamato Speech recognition engine, vale a dire un motore di riconoscimento vocale. La funzione primaria dell engine è tradurre gli input vocali in formati testuali o in altri formati comprensibili alla macchina. Il meccanismo che permette di effettuare la traduzione prevede in forma estremamente schematica, tre passaggi: la scomposizione dell'input vocale in sequenze rilevanti; l'attivazione di un modello di linguaggio (contenente tutte le parole e combinazioni di parole riconosciute dal sistema) e infine il Matching, cioè il confronto fra i risultati. Durante questo processo il motore si avvale di una (o più) grammatiche di supporto. Con il termine grammatica si intendono tutte le parole e sequenze di parole riconosciute come valide dal sistema. La grammatica prevede una sintassi, che costituisce in un certo senso il contesto dell'interazione con lo strumento di speech recognition. La grammatica può essere rigida (predefinita quindi e non modificabile) o, nella maggior parte dei casi, ampliabile sulla base delle scelte dell'utente. VoiceXML è un linguaggio progettato per realizzare sistemi di presentazione e interazione vocali, denominati Voice User Interface, usando la linea telefonica per l'accesso ai dati. Una VUI è uno schema progettuale che rappresenta gli elementi di dialogo di un applicativo software dotato di una interfaccia vocale. Lo schema deve rappresentare in modo formale tutti gli elementi di dialogo nonché il flusso del dialogo stesso. Esso deve quindi contenere i testi erogati dal sistema, le azioni compiute dal sistema, i comandi vocali leciti per il sistema ed un grafico che rappresenta il flusso del dialogo tra utente e sistema. Come accennato in precedenza il VoiceXML rappresenta lo standard in formato XML per la creazione di dialoghi interattivi tra una persona e un computer dove 9

10 l XML è un metalinguaggio di markup, ovvero un linguaggio marcatore che definisce un meccanismo sintattico che consente di estendere o controllare il significato di altri linguaggi marcatori Vantaggi e svantaggi L utilizzo del VoiceXML per creare applicazioni vocali è motivato da numerosi aspetti positivi, primo fra tutti la possibilità di avere un linguaggio standard formalizzato dal W3C al fine di fornire un ulteriore interfaccia per interazioni fra l uomo e il computer. Inoltre le applicazioni vocali permettono l accesso ai servizi anche a coloro i quali potrebbero avere problemi come i non vedenti, i portatori di handicap, agli anziani e a chiunque non abbia dimestichezza col computer. L interazione vocale rende superfluo l uso di dispositivi con tastiere e piccoli schermi e l accesso ai servizi può avvenire illimitatamente durante tutto il giorno anche di notte. Altro aspetto importante riguarda la riduzione dei costi, infatti con il VoiceXML è possibile implementare un unica infrastruttura che unisce le funzioni di un call center con quelle di un servizio web. Nonostante questi vantaggi, le applicazioni vocali presentano alcuni limiti come il tempo necessario per interagire con l applicazione, infatti ascoltare attentamente per un lungo periodo potrebbe essere stancante. Inoltre, in alcuni casi, un informazione presentata in maniera grafica può avere un impatto superiore rispetto ad una descritta soltanto con la voce. Infine, non deve essere sottovalutato l aspetto della privacy in quanto potrebbero essere messi a disposizione di altri notizie personali e private dell utente. 10

11 1.3 Architettura del Sistema L architettura del VoiceXML è molto simile a quella standard usata nelle applicazioni web. Nel caso di applicazioni web, tutti i documenti HTML risiedono sul server. Quando un utente richiede alcuni documenti dal server, manda una richiesta al server usando un software che può essere il browser o un agente utente. Dopo aver ricevuto la richiesta dall utente tramite il browser, il server inizia il processo di ricerca del documento mandando successivamente i risultati al browser il quale poi provvederà ad inviarli all utente. Nelle applicazioni VoiceXML, come nelle applicazioni web, i documenti sono memorizzati sul web server. In aggiunta al web server, l architettura VoiceXML adotta un altro server, il voice server, il quale gestisce tutte le interazioni tra utente e web server. Il voice server interpreta il ruolo di browser nelle applicazioni vocali, interpretando gli input ricevuti dall utente e provvedendo a dare dei suggerimenti. Nel caso di applicazioni vocali, l utente finale non necessita di computer ad alto livello né tantomeno di browser sofisticati. L utente può accedere a tali applicazioni usando una semplice apparecchiatura telefonica connessa all architettura PSTN. 1.4 Gli elementi fondamentali della struttura Il VoiceXML impiega gli attuali standard di comunicazione delle reti di dati, quali l HTTP ed il TCP/IP e gli standard di telefonia della rete telefonica commutata pubblica (PSTN), della rete integrata digitale di servizi (ISDN), della rete mobile (GSM) e delle telefonate Voice over IP (VoIP). 11

12 I componenti fondamentali di un sistema di applicazioni vocali VoiceXML sono: La rete telefonica; Le applicazioni VoiceXML residenti su un server web; Un gateway VXML che funge da ponte fra la rete internet e quella telefonica; La rete PSTN. Figura 1.3 Struttura dell architettura VoiceXML Pertanto gli elementi fondamentali della struttura sono: Il telefono che l utente usa per accedere ad un applicazione VoiceXML; Il gateway VoiceXML, che funge da ponte tra internet e la rete telefonica, è costituito dal browser VoiceXML e da hardware e software specializzato per interagire con la voce. Inoltre esso mappa il numero composto dall utente con l URL (Uniform Resource Locator) 12

13 dell applicazione. Il gateway VoiceXML è fornito dal VSP (Voice Service Provider) che recupera i costi dell infrastruttura affittando il servizio e facendo pagare le telefonate ai chiamanti. Quindi l interprete VoiceXML è uno dei componenti più importanti del voice server. Esso comunica con l utente processando tutti gli input da esso forniti e poi passa tali richieste al web server per ulteriori processi. Inoltre provvede ad interfacciare le applicazioni utente generando la sintesi del linguaggio usando la tecnologia text-to-speech ; Il web server che ospita l applicazione VoiceXML. Settando opportunamente il tipo MIME (Multipurpose Internet Mail Extensions) supportato dal server HTTP, le pagine VoiceXML possono essere rese disponibili su ogni web server. I web server quali Apache e Microsoft IIS permettono di modificare il tipo MIME, perciò aggiungendo il suffisso vxml e associandolo al tipo text/x-vxml è possibile rendere disponibili documenti in tale formato. Tuttavia, dopo aver fatto questa operazione l applicazione è accessibile solo da un gateway VoiceXML e non per un utente, in quanto non c è ancora nessun numero telefonico associato all applicazione. Pertanto è necessario rivolgersi al proprio VSP (Voice Service Provider). Il web server immagazzina tutti i VoiceXML e i relativi documenti. Esso riceve le richieste dal voice server e le processa utilizzando una logica di base. Il risultato è mandato come risposta al voice server. Il web server, talvolta, lavora come un server database per le applicazioni, facilitando il processo di relazione al database utilizzando sempre una logica di base. In altri casi, invece, il database server viene tenuto separato e il web server comunica con esso tramite dei processi di relazione; La rete PSTN (Public Switched Telephone Network) è ad oggi la più importante architettura per la realizzazione di telefonate via internet; in passato la prima architettura telefonica fu inventata da Alexander Graham Bell e non era basata sul modello PSTN. Infatti l architettura di Bell era basata sul modello interconnesso ovvero per connettere due persone in due 13

14 posti diversi c era bisogno di una linea dedicata. Successivamente si passò ad un modello centralizzato nel quale il chiamante era prima connesso ad un operatore il quale manualmente smistava la chiamata al ricevente desiderato. Oggi, l architettura telefonica è basata su una gerarchia multilivello che utilizza delle locazioni di smistamento distribuiti intorno al mondo. La rete PSTN anche conosciuta come Plain Old Telephone Service (POTS), è il servizio telefonico disponibile in tutte le case e trasporta la voce, come i messaggi riprodotti dal gateway VoiceXML, le risposte vocali dell utente e le interazioni dei toni DTMF (Dual-Tone Multi- Frequency); Internet che trasporta le richieste gateway VoiceXML da e per il web server Le tecnologie utilizzate nel gateway VoiceXML I compiti fondamentali svolti da un gateway sono i seguenti: Accettare le chiamate e accedere ai dati telefonici riguardanti la chiamata; Quando la telefonata giunge al gateway, esso effettua la mappatura del numero chiamato con l URL dell applicazione vocale richiesta; Dopo aver conosciuto l indirizzo del servizio richiesto, esso acquisisce le pagine VoiceXML con i relativi file; Con i codici e i relativi file residenti sul gateway, esso interpreta il codice ed esegue i dialoghi; Il gateway può memorizzare file audio preregistrati. 14

15 Le tecnologie essenziali che intervengono sono: Il riconoscimento del suono dei tasti del telefono, che permette ai chiamanti di rispondere attraverso la pressione dei tasti; Il riconoscimento vocale che consente ai chiamanti di rispondere utilizzando la voce; Interprete VoiceXML che permette ai chiamanti di parlare con il sistema; Sintetizzatore vocale che consente ai chiamanti di ascoltare il PC che parla Il riconoscimento dei toni DTMF L acronimo IVR significa Interactive Voice Response, ossia risposta vocale interattiva. Questa definizione letteralmente sarebbe adatta a rappresentare tutti i sistemi vocali, mentre, in pratica, per motivi sostanzialmente storici, con questo acronimo si indicano i risponditori automatici per la telefonia che utilizzano come canale di input i toni telefonici (DTMF), e rispondono all utente attraverso composizioni di messaggi pre-registrati. Questo si spiega semplicemente con il fatto che i sistemi IVR sono più vecchi delle tecnologie vocali TTS e ASR, nella loro forma commercializzabile. Nel DTMF (Dual Tone Multi Frequency), avviene un semplice processo: dopo aver digitato il numero di telefono, il computer sceglie la chiamata e inizia il processo automatico di dialogo. Un interfaccia automatica di dialogo guida l utente ad effettuare la scelta giusta digitando un tasto sull apparecchiatura telefonica. 15

16 Una volta che la sessione è finita, il sistema IVR disconnette la chiamata. Figura Esempio di applicazione vocale con IVR Quando una persona preme un tasto del telefono viene generato un suono che è la combinazione di due toni, uno ad alta ed uno a bassa frequenza. Tale suono è detto appunto DTMF ed è caratteristico del tasto premuto. Di seguito viene descritto un semplice esempio di questo tipo di conversazione: IVR System Benvenuto nel sistema, digiti 1 per ricevere informazioni meteorologiche, 2 per la situazione traffico, o digiti 3 per uscire Utente Digita 1 sulla tastiera. IVR System Benvenuto nel sistema meteorologico, per ricevere informazioni sul meteo giornaliero digiti 1, per il meteo dei prossimi giorni digiti 2 16

17 Utente Digita 1 sulla tastiera. IVR System Per la giornata odierna è prevista una temperatura massima di 30 gradi e una minima di 20. Grazie per aver utilizzato il sistema I principali problemi che potrebbero presentarsi con questo tipo di riconoscimento sono : Disorientamento: il chiamante prosegue a digitare i tasti per effettuare delle scelte su un menù casualmente ramificato; Dispendio di tempo: il chiamante deve ascoltare tutte le opzioni vocali invece di poter chiedere direttamente l informazione desiderata; Prigione vocale: per evitare questo fenomeno, i chiamanti premono direttamente un pulsante che li fa parlare con un operatore; Poco maneggevole: questo sistema risulta essere poco maneggevole e scomodo da usare per molti utenti. 17

18 1.5. Il riconoscimento vocale Il processo coinvolto sia per la sintesi che per il riconoscimento presuppone che l'input sia diviso in piccoli pezzi, perché il processo sia efficiente, e, nel caso del parlato, i segmenti devono essere elementi linguistici significativi. Nella sintesi "text-to speech", il testo in ingresso è facilmente diviso in parole e lettere; mentre il segnale parlato, che serve come input per un ASR, fornisce soltanto indicazioni dei confini del segmento fonetico. Cambi evidenti e veloci nello spettro del parlato o l'ampiezza, sono spesso usati per valutare i confini del segmento, che sono irrilevabili a causa del fenomeno della coarticolazione. I confini che corrispondono alle parole sono molto difficili da determinare, tranne quando il soggetto fa le pause. Il problema della segmentazione può essere parzialmente superato attraverso particolari stili del parlato. Si possono distinguere tre stili di parlato (presentati di seguito in ordine di difficoltà crescente): parlato che presenta parole isolate o frasi discrete, parlato con parole connesse, parlato continuo. Il riconoscimento del parlato continuo permette una conversazione naturale, con poco adattamento dello stile dell'utente al sistema. Il parlato continuo permette di ottenere l'input più veloce, ma è la classe più difficile da riconoscere. La seconda differenza fra sintesi e riconoscimento riguarda l'adattamento. I soggetti umani che ascoltano modificano le loro aspettative quando odono il parlato sintetico e usualmente lo accettano, considerando il fenomeno della poca naturalezza del parlato sintetico come se fosse dovuto ad un accento dialettale o straniero. Nei sistemi ASR è il computer che deve adattarsi alle voci differenti usate in input. E' più facile produrre una voce sintetica alla quale il soggetto umano si adatta che progettare un algoritmo di riconoscimento che può riuscire ad identificare tutti i differenti modi con i quali i parlanti pronunciano la stessa frase, con variazioni anche all'interno dello stesso soggetto, in tempi differenti. 18

19 I sistemi attuali richiedono che i parlanti si adattino attraverso una modificazione del parlato, per esempio facendo una pausa fra una parola e l'altra, parlando chiaramente e lentamente. Il riconoscimento automatico del parlato (ASR) può essere visto come un compito di pattern recognition, applicando le tecniche sviluppate nel settore della robotica (identificazione di immagini) o comunicazioni di dati (conversione di segnali analogici in informazione digitale). In pratica, il riconoscimento del parlato richiede una mappatura tra il parlato e il testo, cosicché ogni possibile forma di onda in input è identificata con il suo testo corrispondente. In questo contesto, il termine testo viene usato per identificare le parole, le frasi o altre unità linguistiche che il parlante pensa e verbalizza. Tutti i compiti di pattern recognition, incluso l'asr, utilizzano due fasi: il training e il riconoscimento. La fase di training stabilisce una memoria di referenza o un dizionario di modelli del parlato, che sono assegnati alle etichette del testo. In sistemi indipendenti dal parlante, la fase di training è prodotta durante lo sviluppo del sistema e spesso combina metodi manuali e automatici. I sistemi di riconoscimento commerciali, dipendenti dal parlante, sono forniti dalle case produttrici. La fase di riconoscimento automatico tenta di assegnare una etichetta ai modelli di input sconosciuti. Per comprendere il testo, i software di riconoscimento vocale devono innanzitutto costruire una rappresentazione digitale delle parole pronunciate. La digitalizzazione della voce trasforma una grandezza fisica in un valore numerico. L'onda sonora prodotta mette in moto le molecole nell aria e nello spazio. Il microfono cattura questo movimento e lo converte in segnali elettrici. Questi segnali, che riproducono la voce, vengono sottoposti a due processi: il campionamento (sampling) e la quantizzazione. Il campionamento consiste nella misurazione del segnale a intervalli fissi, per ottenere un certo numero di segmenti che consentono di ricostruire la sua variazione nel tempo. 19

20 Tanto più piccoli saranno gli intervalli di tempo, tanto più precisa sarà la ricostruzione e minore sarà la quantità di informazione persa. Il numero di intervalli di campionamento viene espresso in numero di rilevazioni per secondo e si definisce frequenza di campionamento, la cui unità di misura è l'henz (1 Hz = l rilevazione al secondo). Lo standard della voce umana varia tra i 100 e Hz. Una volta campionato il suono, ci si trova di fronte a un secondo problema. Le variazioni possibili del segnale (e quindi i possibili valori dei campioni) sono teoricamente infinite ed è quindi impossibile assegnare a ciascuna un codice numerico. Con la quantizzazione si provvede a semplificare l'onda, eliminando l'intervallo di valori che si ritiene al di sotto della soglia percettiva umana. In questo modo si trasformano gli infiniti valori della grandezza fisica in una misurazione che può avere solo un determinato numero. Tanto più alto sarà il numero di intervalli, che si definiscono tecnicamente quanti, tanto più accurata sarà la rappresentazione del segnale e minore sarà l'informazione persa. Digitalizzata la frase, il software provvede a scandirla in modo da suddividere le singole parole. In passato occorreva separare ogni parola con una breve pausa: oggi si è giunti a riconoscere il parlato continuo, grazie a particolari tecniche di analisi che individuano le brevi inflessioni che si pronunciano involontariamente tra una parola e l'altra. Le parole, a loro volta, vengono suddivise in fonemi, cioè nell'unità minima del parlato. La durata di un fonema oscilla tra i 10 e i 40 millisecondi, per cui le parole vengono divise in intervalli minimi di 10 millisecondi l'uno; questa operazione è conosciuta come "modellazione/classificazione". Segue la fase di riconoscimento vero e proprio, chiamata "ricerca": i fonemi vengono confrontati con il modello acustico dell'utente (generato durante la fase di addestramento) e con il modello delle parole presenti nel vocabolario: si ricostruiscono in questo modo le parole. 20

21 Per migliorare l'accuratezza, queste vengono confrontate con un modello lessicale e con un modello del linguaggio presenti nei dizionari dei programmi, in modo da estrapolare, in base alle regole grammaticali, le parole poco chiare. Il risultato di tutto il processo è la stringa di testo contenente la parola o la frase pronunciata dall'utente La gestione dei dialoghi La voce robotica e metallica che il chiamante sentiva al telefono è ormai un ricordo lontano. Le attuali applicazioni text-to-speech sono a volte confuse per gli esseri umani e le applicazioni di riconoscimento vocale permettono agli utenti di parlare continuamente senza fare una pausa tra ogni singola parola. Il dialogo avviene quando due interlocutori prendono la parola a turno. Esempi di dialoghi basati sulla conversazione fra una persona e un computer includono: Dialoghi basati sulla conversazione guidati dall uomo (Human-driven conversational dialog): la persona formula ripetutamente una domanda o chiede un comando ed il computer risponde; Dialoghi basati sulla conversazione guidati dall applicazione (Applicationdriven conversational dialog): l applicazione formula ripetutamente domande per sollecitare le risposte e le istruzioni del chiamante. Questi sono anche detti system-directed ; Dialoghi basati sulla conversazione con guida mista (Mixed-initiative dialogs): sono una combinazione di dialoghi guidati dall uomo e dal computer. Il chiamante ed il computer guidano le conversazioni parlando a turno. Molte nuove applicazioni vocali si stanno sviluppando usando i dialoghi system-directed. Questi sono particolarmente comuni nelle applicazioni vocali dove al chiamante viene richiesta una sequenza di domande, a cui deve rispondere con una semplice parola o frase. 21

22 Questo tipo di dialogo ha due vantaggi tecnici. In primo luogo, costringe il chiamante a concentrarsi sulla risposta ad una domanda specifica piuttosto che affidare al chiamante di formulare liberamente la sua richiesta al sistema. In secondo luogo, permette al sistema di riconoscimento vocale di riconoscere, in ogni punto del dialogo, un piccolo numero di parole e frasi piuttosto che tutte le parole contenute in un grande vocabolario. Gli interpreti del dialogo vocali sono gestori di dialogo che traducono scritture e coordinano un insieme di moduli di input e output. I moduli di input includono un registratore audio per registrare il modo di parlare del chiamante, un interprete DTMF per decodificare le sequenze dei tasti del telefono premuti e un motore di riconoscimento vocale per l interpretazione delle parole dette dal chiamante. I moduli di output includono la riproduzione audio della voce o della musica precedentemente registrata e un motore di sintesi vocale per convertire il testo in un discorso sintetizzato che il chiamante può sentire. Tutti i moduli del browser vocale risiedono in un server. Questo perché i telefoni e i cellulari sono dispositivi Input/Output, come una tastiera e un display, e non hanno capacità di elaborazione. Tutti i dispositivi che contengono un telefono o un cellulare possono interagire con il server La tecnologia di sintesi del parlato La concatenazione più semplice di parlato sintetico è quella di parole o frasi. Questo approccio può produrre parlato di alta qualità (in correlazione con il metodo di sintesi adottato), ma è limitato dal bisogno di conservare in memoria tutte le frasi che devono essere sintetizzate, dopo che sono state pronunciate da uno speaker, sia in isolamento che in contesto di frase. Per raggiungere il massimo di naturalezza nel parlato sintetico, ogni parola o frase deve essere pronunciata con il tempo e l'intonazione appropriata per tutte le frasi. Così, se una parola potrebbe presentarsi in parecchie strutture sintattiche, la 22

23 sua pronuncia dovrebbe essere registrata e archiviata utilizzando la simulazione delle sentenze in diversi contesti. La concatenazione di parole originalmente pronunciate in isolamento, di solito porta alla non intelligibilità e alla mancanza di naturalezza. La durata delle unità archiviate deve essere considerata, poiché varia in contesti differenti di frasi (specie per le unità più piccole delle parole). Per la sintesi dei testi, sistemi avanzati generano parlato da sequenze di suoni di base, che sostanzialmente riducono le necessità di memoria poiché molti linguaggi hanno soltanto fonemi. Comunque, i tratti dello spettro di questi brevi suoni concatenati ( ms), devono essere uniti, per evitare un parlato discontinuo. Il problema è che la pronuncia di un fonema in una parola o frase, è fortemente dipendente dal suo contesto fonetico (i fonemi vicini, l'intonazione e ritmo del parlato). Il processo di levigatura e di accordamento, così come il bisogno di calcolare una appropriata intonazione per ogni contesto, risulta, in sintetizzatori complessi, con un output parlato meno naturale. I sistemi commerciali sono stati progettati perché producessero parole o concatenazione di foni. Attualmente i ricercatori puntano allo sviluppo di un modello più accurato, legando unità di "taglia intermedia" di parlato archiviato, come sillabe, mezze sillabe e di difoni. Una sillaba consiste di un nucleo centrale (con vocali e dittonghi), più alcune consonanti vicine. Alcune volte i confini della sillaba sono incerti. Le demisillabe sono unità di parlato ottenute dividendo le sillabe a metà, con il taglio sulla vocale. I difoni sono ottenuti dividendo un onda del parlato in unità fonetizzate, con il taglio nella metà di ogni fono. L'appianamento dei parametri dello spettro ai confini tra unità, è più importante per unità piccole (foni) e decresce in importanza, man mano che la concatenazione di unità aumenta. Questo perché diminuisce il numero dei confini per ogni secondo, nel parlato in uscita. 23

24 Per unità di taglia uguale, l'appianamento è molto più semplice quando le unità da congiungere approssimativamente combaciano con gli spettri ai confini. I sistemi che congiungono i foni, devono comunque usare complesse regole di "smoothing" (appunto appianamento), per rappresentare la coarticolazione nel tratto vocale. Poiché non si sa ancora tutto intorno al fenomeno della coarticolazione, non è possibile stabilire un complesso insieme di regole che descrivano come i parametri dello spettro, per ogni fono, sono modificati dai foni che si articolano nelle vicinanze del punto preciso del tratto vocale dove il fono esaminato viene prodotto. I sintetizzatori "difoni" cercano di aggirare il problema, archiviando le transizioni del parametro da un fono al prossimo, in quanto la coarticolazione influenza in primo luogo solo i foni immediatamente adiacenti al punto di articolazione del fono che si sta esaminando. Figura Modello delle fasi di preparazione del motore di sintesi vocale 24

25 Un algoritmo sintetizzatore generalmente consiste di: a) una riserva di memoria dei parametri del parlato, ottenuti dal parlato naturale e organizzati in termini di unità di parlato (dizionario acustico); b) un programma di regole per concatenare queste unità, levigando i parametri per creare traiettorie del tempo dove necessario (conoscenza della lingua). 25

26 CAPITOLO 2 Le grammatiche nel VoiceXML 2.1 Grammars Una grammatica nel contesto di una Applicazione Vocale non è altro che un insieme di parole valide organizzate in determinate successioni. La piattaforma vocale che esegue l Applicazione Vocale, quando si mette in ascolto dell utente telefonico, cerca di trovare una possibile corrispondenza tra la voce dell utente e le parole presenti nella grammatica. Una piattaforma vocale non è in grado di comprendere parole diverse da quelle presenti nella grammatica. In ogni istante la piattaforma vocale cerca di interpretare la voce dell utente confrontandola con tutte le grammatiche a sua disposizione in quello stesso istante. In assenza di un Sistema specifico per la gestione e definizione dell Applicazione Vocale, la definizione delle grammatiche diventa uno dei fattori più critici e complessi. La grammatiche sono definite con un linguaggio specifico, l SRGS (Speech Recognition Grammar Specification), anch esso definito come standard dal W3C. L idea è che la complessità delle grammatiche possa essere risolta dall organizzazione a nodi dell Applicazione Vocale. In questo modo il contesto di validità di ogni Grammatica si riduce ad un singolo nodo, portando la complessità della definizione ad un semplice elenco di parole. 26

27 Ogni grammatica viene convertita in un modello di lingua usato dal motore di riconoscimento del discorso, che abbina una sequenza di fonemi detti dal chiamante ad una sequenza di fonemi presenti nel modello di lingua e seleziona la parola o la frase corrispondente. La maggior parte dei motori di riconoscimento vocale utilizzati con il VoiceXML sono basati sui colloqui e non possono riconoscere la dettatura. Sono realizzati per usare sia le grammatiche XML che ABNF. Tuttavia, alcuni interpreti VoiceXML utilizzano anche le grammatiche N-gram e possono riconoscere sia la dettatura che i dialoghi colloquiali. Il VoiceXML prevede tre tipi di grammatiche: le inline grammars, le external grammars e le built-in grammars Inline grammars Le inline grammars sono definite negli elementi <grammar> all interno dei menù o dei form. Possono essere in formato XML o in altri formati caratteristici della piattaforma. Le grammatiche N-gram sono troppo grandi per essere utilizzate con le inline grammars. Sono grammatiche semplici e piccole che descrivono un limitato numero di parole e frasi. Esse specificano le espressioni che un chiamante può dire sia per un valore del campo di un form sia per delle scelte da effettuare con un menù External grammars Le external grammars non possono essere riutilizzate in un altra applicazione vocale a meno che il progettista copi ed inserisca la grammatica nella seconda applicazione. Il metodo migliore consiste nel memorizzare la grammatica su un file esterno in un sito Web facendo riferimento all interno delle applicazioni VoiceXML. In 27

28 questo modo, le external grammars sono riutilizzabili e diverse applicazioni possono usare la stessa grammatica. Se il progettista cambia la grammatica, il cambiamento si riflette su ciascuna delle applicazioni che la utilizzano. Le external grammars possono essere in formato XML, JSGF o in altri formati caratteristici della piattaforma. Scrivere una grammatica complessa richiede molto tempo e lavoro, pertanto gli sviluppatori spesso riutilizzano le grammatiche esistenti. Molti browser VoiceXML hanno librerie di grammatiche riutilizzabili per alcuni dati che vengono usati frequentemente. Accade spesso che in una grammatica non siano incluse alcune parole e frasi che i chiamanti potrebbero dire. La prova interattiva è necessaria per legare una grammatica da una specifica iniziale alla grammatica finale usata nell applicazione di lavoro. Durante la prova, ogni frase detta dal chiamante dovrebbe essere registrata. Una parola o una frase che non si abbina alla parola contenuta nella grammatica corrente provoca un evento di non corrispondenza, <nomatch>, che dovrebbe essere annotato. Il progettista può allora rivedere il file di log delle chiamate, identificare le parole non corrispondenti dette dal chiamante ed ampliare la grammatica con le nuove parole che realmente sono state dette dai chiamanti. Le external grammars forniscono un tipo di grammatica dinamica nel senso che può essere generata automaticamente in corso d opera ed essere inserita in un file di riferimento per l applicazione VoiceXML Built-in grammars Alcune grammatiche sono usate cosi frequentemente dal VoiceXML che è previsto un insieme di grammatiche predefinite implementate direttamente nella piattaforma vocale. Queste grammatiche, dette built-in grammars, specificano tipologie di dati più comuni, come i numeri di telefono e le date. 28

29 Esse possono essere grammatiche ABNF, XML o N-gram. L elenco completo dei tipi di dati riconosciuti dalle built-in grammars sono: Booleano: sono riconosciute frasi alternative e negative adatte alla lingua utilizzata. Se si usano i tasti del telefono, il tono DTMF 1 vale si, mentre il 2 equivale al no; Data: si possono dire frasi che specificano una data compreso il giorno, il mese e l anno. Le date possono essere inserite anche con toni DTMF e sono di quattro cifre per l anno, seguite da due cifre per il mese e due per il giorno; Cifra: si possono dire o premere i tasti del telefono per inserire una o più cifre da 0 a 9; Valuta: si possono dire frasi che specificano un importo di valuta. Se si usano i toni DTMF, il tasto * fungerà da punto decimale. In genere, la valuta predefinita è quella relativa alla nazione corrispondente alla lingua utilizzata; Numero: i numeri sono riconosciuti dicendo parole come centosettantadue o quattro punto tre. Usando i toni DTMF si possono riconoscere i numeri positivi inseriti usando le cifre e il tasto * per rappresentare un punto decimale. Il risultato è una serie di cifre da 0 a 9 che può facoltativamente includere un punto decimale (. ) e/o un segno più o meno. Numero di telefono: si possono utilizzare le frasi che specificano un numero di telefono. Il risultato è una stringa contenente un numero di telefono che consiste in una serie di cifre e può contenere il carattere x per indicare un numero di telefono con un estensione. 29

30 2.1.4 Lo scope delle grammatiche Lo scope di una grammatica definisce l ambito d uso per la sua attivazione nel momento dell esecuzione. Per adempire alle richieste dell applicazione, si possono scegliere alcune categorie di grammatiche con differenti scope. Le grammatiche possono essere suddivise in quattro categorie, ognuna dipendente dal proprio scope: Field grammars Link grammars Form grammars Menù grammars Field Grammars Le field grammars vengono utilizzate per definire un set di grammatiche per un particolare campo. Lo scope di questo tipo di grammatiche è limitato dall elemento <field> nel quale esse sono definite. Se si sta lavorando con le grammatiche di un elemento <field> non è possibile ricevere degli input da un altro elemento <field>. Link Grammars Le link grammars sono usate per definire un input da un elemento <link>. Tale tipo di grammatica una volta definita in qualsiasi parte del documento, rimarrà valida in ogni sottolivello del documento fra lo scope dell applicazione. 30

31 Form Grammars Per le form grammars possiamo utilizzare due livelli di scope, quello a livello di documento e quello a livello di dialogo. Lo scope a livello di dialogo è lo scope di default assegnato ad ogni grammatica a livello di form. In questo tipo di livello, la grammatica rimarrà attiva per tutto il tempo in cui è definito lo scope della form. Mentre lo scope a livello di documento rimane attivo in tutto il documento associato. Si può accedere alle grammatiche a livello documento ovunque dopo la loro inizializzazione. Se si definisce lo scope del documento ma non si definisce lo scope della grammatica, la piattaforma assegnerà automaticamente lo scope del documento alla grammatica. Menù Grammars I menù grammars sono assegnati di default allo scope a livello di dialogo e seguono le stesse regole delle grammatiche a livello di form. È possibile, inoltre, definire delle menù grammars allo scope a livello di documento, in questo caso le grammatiche a livello di menù seguono le stesse regole applicate alle grammatiche a livello di form. 2.2 Speech Recognition Grammar Specification (SRGS) Lo Speech Recognition Grammar Specification è lo standard per la stesura delle grammatiche. Esso prevede i formati ABNF e XML, che sono semanticamente mappabili e pertanto è possibile convertire l uno nell altro. Una grammatica in formato ABNF è costituita da regole i cui elementi sono descritti con stringhe di testo. Ogni regola è delimitata all inizio dal carattere = e alla fine dal ;. 31

32 Alcuni parametri utilizzati per la sintassi sono: $ Assegna un nome alla regola < e > Delimita qualsiasi operatore ripetuto o referenzia a una regola Definisce l alternativa ad un elemento { e } Delimitano ogni tag Solo il formato XML è obbligatoriamente utilizzato da tutte le piattaforme vocali conformi allo standard VoiceXML 2.1 e i tag previsti dalle specifiche sono: <count> <item> <one-of> <rule> Indica quante volte l elemento deve comparire Definisce un elemento di un set di espressioni Definisce l alternativa ad un elemento Indica il nome di una regola o di una grammatica 2.3 Speech Syntesis Markup Language (SSML) Lo Speech Syntesis Markup Language è un linguaggio di marcatura basato sull XML, realizzato per assistere la generazione di discorsi sintetizzati per il Web e per altre applicazioni. Il suo ruolo principale è quello di fornire un supporto standard per controllare diversi aspetti della produzione del suono, quali pronuncia, volume, tonalità e velocità del linguaggio, svincolandoli dalla piattaforma e dai sintetizzatori utilizzati. Inoltre, esso può fornire in uscita parole pronunciate nei più diversi idiomi senza caricare eccessivamente il computer e fornendo un linguaggio di alto livello facilmente interpretabile dallo sviluppatore. 32

33 L aiuto che il sintetizzatore riceve, avviene per mezzo di tag che interessano diversi passi di sintesi: Parsing del documento XML: un analizzatore (parser) XML viene usato per estrarre correttamente la struttura e il suo contenuto dal documento di testo in ingresso; Analisi della struttura: alcuni elementi del linguaggio suggeriscono una forma ben definita, cosi il sintetizzatore non dovrà studiare la punteggiatura per strutturare il discorso; Normalizzazione del testo: lo sforzo per specificare gli acronimi o i numeri sarebbe maggiore senza lo SSML; La conversione Text-To-Phoneme : l elemento <phoneme> fornisce una rappresentazione fonemica dipendente dall autore, svincolando perciò il sintetizzatore da problemi di interpretazione del testo fornito; Riproduzione della forma d onda: le informazioni sui fonemi e sulla metrica vengono usate dal sintetizzatore vocale nel rendering della forma d onda. Alcuni tag SSML utilizzabili con VoiceXML sono: <audio> <break> <p> <phoneme> <voice> 2.4 Call Control XML (CCXML) Il ruolo di questo linguaggio, formalizzato dal W3C, è quello di descrivere, attraverso degli elementi, il controllo delle chiamate telefoniche, che può essere usato in linguaggi vocali. Un applicazione telefonica, spesso può utilizzare diversi apparecchi per specificare il dialogo, questi sono quasi sempre diversi e hanno varie tipologie di segnali interni, il CCXML fornisce una standardizzazione di questi elementi permettendo una completa funzionalità delle applicazioni telefoniche. 33

34 I principali vantaggi dell utilizzo del CCXML sono: Supportare tutte le sessioni con diversi utenti, stabilendo dei controlli audio avanzati; Cercare di indirizzare ogni chiamata all interprete VoiceXML adatto, favorendo cosi un efficace esecuzione degli ordini; Controllare le chiamate multiple gestendo anche quelle in partenza dall apparecchio telefonico; Supportare la capacità di ricevere gli eventi da entità computazionali diverse, comunicando con le code delle chiamate o smistando le stesse per mezzo di un server. Il CCXML perciò fornisce un supporto fondamentale infatti riesce a rendere le applicazioni VoiceXML indipendenti anche dall apparecchio telefonico utilizzato, rendendo il VoiceXML estremamente potente e portabile. 2.5 I costrutti principali: i tag Essendo un linguaggio di markup, il VoiceXML necessita di una vasta gamma di tag per consentire al programmatore di possedere tutti gli elementi necessari per la progettazione del codice. I principali sono: <vxml> è l elemento presente in ogni documento che caratterizza un file VoiceXML; <form> e <menu> definiscono i dialoghi, <menu>: consente la selezione da una sequenza di opzioni prestabilite; <form>: permette di rivolgere all utente una domanda diretta e di ascoltarne la risposta; 34

35 <prompt> è il principale elemento per pronunciare le domande e le frasi; <field> e <option> permettono l acquisizione dell input, <field>: dichiara un campo di input nel <form>; <option>: specifica un optione nel <field>; <submit> è un elemento di collegamento fra le varie parti del dialogo, ovvero trasmette valori al server; <noinput> e <nomatch> utilizzati per la gestione degli eventi, <noinput>: cattura un evento di ingresso non fornito; <nomacth>: cattura un evento di ingresso non riconosciuto; <exit> elemento di uscita generalmente da una sessione: <log> elemento di debug che permette di controllare ogniqualvolta viene richiamato la correttezza del codice; <block> contiene codice non eseguibile; <filled> è un azione che viene eseguita quando i field sono riempiti; gli elementi per la programmazione e per lo scripting come <assign>, <if>, <script>, <log>, <var>; <grammar>: usato per indicare una grammatica; Ogni tag è caratterizzato da propri attributi che permettono di specificare alcune caratteristiche dell elemento. Alcuni di questi sono opzionali e possono non essere indicati. Inoltre ogni elemento è collegato ad altri secondo una relazione padre-figlio, per cui deve essere utilizzato secondo uno schema ben definito. Di seguito vengono riportati con una breve descrizione i tag disponibili nelle specifiche della versione VoiceXML 2.1: <assign> <audio> <catch> <choice> assegna un valore ad una variabile riproduce un file audio all interno del <prompt> cattura un evento definisce un elemento di menù 35

36 <else> <field> <filled> <help> <meta> <object> <option> <param> <prompt> <record> <reprompt> <script> <throw> <transfer> <value> <var> usato con elementi <if> dichiara un campo di input nel <form> un azione che viene eseguita quando i field sono riempiti cattura un evento di aiuto definisce un elemento metadata interagisce con un estensione personalizzata specifica un opzione in un <field> parametri presenti in <object> o <subdialog> fornisce all utente un messaggio audio registra un campione audio riproduce il messaggio contenuto nel <prompt> quando il campo è rivisitato specifica un blocco di codice lato-client lancia un evento trasferisce il chiamante ad un altra destinazione inserisce il valore di un espressione in un <prompt> dichiara una variabile 2.6 L elemento grammar In relazione ai cambiamenti avuti nella stesura del formato del VoiceXML 2.0, l elemento <grammar> ha subito delle modifiche per andare in contro ai nuovi cambiamenti. Il nuovo elemento <grammar> è in grado di mappare i due formati di grammatiche menzionati in precedenza, il formato basato sull XML e la sintassi ABNF. È possibile utilizzare sia le grammatiche interne che quelle esterne in un documento in base alle richieste. 36

37 Di seguito vengono illustrati gli attributi che possono essere usati con l elemento <grammar>: src Usato per definire l URL, questo definisce la locazione del file grammar se si desidera utilizzare una grammatica esterna. xml:lang Usato per definire le informazioni del linguaggio per entrambe le grammatiche. Il valore di default è US ENGLISH, rappresentato come en-us. type Usato per definire il MIMETYPE della grammatica. Se non viene specificato, il sistema provvederà a determinare un MIMETYPE automaticamente. scope Usato per definire lo scope della grammatica. Questo attributo è usato sono in caso di inline grammars. I due possibili valori attribuibili per questo attribuito sono dialogo e documento. mode Usato per determinare il modo della grammatica che può essere una grammatica DTMF o voice. version Usato per definire la versione usata per la scrittura del codice. Il valore di default per questo attributo è

38 root Usato per definire il percorso della grammatica in caso di inline grammars. 2.7 La progettazione dei dialoghi L obiettivo di progettazione di un efficace interfaccia vocale in VoiceXML è di generare un piccolo dialetto, utilizzabile nei dialoghi, contenuto in un vocabolario e in una struttura di frasi, efficace per l operazione che si vuole svolgere, e che tolleri gli errori. In altre parole, non si cerca di fare parlare il computer come se fosse una persona. Si cerca di convincere una persona a parlare come un computer. Questo processo di adattamento potrebbe risultare strano, ma in realtà non è cosi inusuale. Le persone usano quotidianamente, in modo naturale ed efficace, diversi modi di parlare senza accorgersene o esserne costrette. Per esempio, le persone parlano con un bambino in modo diverso rispetto ad un adulto, perché le capacità di discorso e di comprensione del bambino sono minori di quelle di un adulto. In termini di progettazione del discorso, è importante che il progettista faccia parlare il computer come una persona. Le aspettative di dialogo delle persone sono basate sulle percezioni che ricevono da chi sta parlando con loro. Se una persona non capisce che un altra sta parlando con un bambino, per esempio, quella persona percepisce che si sta comunicando con un adulto molto strano. Allo stesso modo, se un computer tenta di parlare come una persona, gli utenti avranno la percezione di interagire con un essere umano invece che con un computer. 38

39 Quindi compito del progettista è quello di presentare il computer cosi com è: una voce sintetizzata con un dialetto semplificato, mentre le aspettative delle persone tendono ad un modello di computer parlante cosi come presentato nei film La creazione di modelli Nella comunicazione tra persone e computer, si tende a modellare il proprio discorso in base al modo di parlare dell altro interlocutore. Se il computer parla in modo conciso e veloce, l interlocutore tenderà a parlare allo stesso modo. Questa imitazione si applica a molte funzioni del dialogo come la scelta del vocabolario, la struttura delle frasi, il volume o le pause. La creazione di modelli è uno degli strumenti più potenti a disposizione di un progettista di applicazioni vocali poiché riesce a dare degli indizi agli utenti di forme accettabili di discorso. Ecco cosa si può e non si può usare nella creazione di modelli per un interfaccia vocale: Si usino comandi brevi e puntuali. Lo stile del discorso del computer dovrebbe creare una conversazione professionale e non amichevole; Quando l utente richiede aiuto, si utilizzano degli esempi di quello che dovrà dire piuttosto che provare a spiegare cosa sta accadendo; Non si devono usare comandi lunghi e prolissi, perché le persone risponderebbero allo stesso modo Gli intercalari Uno dei maggiori inibitori del riconoscimento del discorso continuo è che le persone non parlano in modo continuativo. Il discorso delle persone è fatto di 39

40 um, ah, eh, pause ed altri riempitivi. Le persone correggono il loro discorso mentre parlano: Mi dia due, anzi tre aranciate. Le persone possono abbandonare le forme del discorso durante il discorso stesso: Mi stavo domandando oh, non importa. Le persone fanno trapelare queste interruzioni nel flusso normale del discorso, sia come ascoltatori che come interlocutori, e conseguentemente non si rendono conto di quanto frequentemente avvengono queste interruzioni. Un discorso sintetizzato sembra artificiale per due ragioni: ha limitazioni di prosodia come ad esempio la mancanza di modulazione ed enfasi, e mancano gli intercalari e le pause. Nelle interfacce vocali il non parlare correntemente causa problemi perché la loro risoluzione avviene a livelli multipli. Le pause e gli intercalari possono essere filtrati efficacemente da un riconoscitore vocale, ma possono portare anche ad errori che confondono un analizzatore semantico. Il non parlare correntemente aumenta rapidamente in funzione della lunghezza di un espressione. Più a lungo una persona parla senza interruzioni, più difficile diventa il riconoscimento. Di conseguenza si deve limitare la lunghezza dell espressione. Quando si prende confidenza con l interfaccia vocale e ci si adatta a parlare in modo che il computer capisca, si desidera usare espressioni più lunghe per migliorare l efficienza. Per minimizzare il non riconoscimento bisogna: Strutturare i dialoghi combinando la tecnica mixed-iniziative con quella directed forms. Questo permette agli utenti di fornire tante più informazioni con una singola espressione e sollecita la richiesta delle informazioni non dette; Non si deve provare a intercettare il non parlare correntemente durante il progetto della grammatica. Ciò aumenterebbe notevolmente la complessità della grammatica stessa e rallenterebbe il riconoscimento. 40

41 2.7.3 Il discorso sintetizzato Ascoltare un discorso sintetizzato richiede più concentrazione e sforzo che ascoltare un discorso umano. Le persone cambiano la loro intonazione, il loro volume, introducono pause e forniscono un numero di indizi sul comportamento che suggeriscono all ascoltatore la struttura ed il significato del discorso. Senza queste indicazioni fornite dal computer, le persone lavorano con meno informazioni ed è più difficile decifrare che cosa si sta comunicando. Questo significa anche che gli errori sono più difficili da recuperare ed i messaggi lunghi sono più faticosi da comprendere. Di seguito sono riportati alcuni punti generali sull uso del discorso sintetizzato: Si utilizzino dei suggerimenti registrati. Alcuni suggerimenti fissi dovrebbero essere registrati; Si faccia attenzione alle caratteristiche prosodiche quando si usa il discorso sintetizzato; Non utilizzare il discorso sintetizzato per leggere liste lunghe e non aspettarsi che la persona abbia compreso o si ricordi tutte le liste. L interfaccia dovrebbe essere progettata in modo che le liste contengano al massimo quattro o cinque passi Come ottenere il miglior riconoscimento vocale Il riconoscimento vocale non è una scienza esatta e analitica. È un arte probabilistica e comprende ipotesi dettagliate. Ci sono alcuni principi fondamentali che possono aiutare a progettare questo strumento inesatto ma potente. 41

42 Il principio di base è distinguere le risposte che si possono prevedere. Purtroppo, la nostra intuizione non riesce a prevedere bene le frasi che suonano simili o differenti rispetto a come verranno elaborate dal riconoscimento vocale. Ciò significa che le grammatiche devono essere testate per questi problemi di riconoscimento. Tuttavia alcune proprietà delle risposte hanno un forte effetto sul riconoscimento. La proprietà principale è la lunghezza della risposta. Le risposte migliori sono le frasi brevi che permettono al riconoscitore di elaborarle efficacemente e non presentano incomprensioni dovute alla non fluidità del discorso. Nel VoiceXML, parecchie grammatiche possono essere attive contemporaneamente, rispettando una priorità data dal seguente elenco: 1. grammatica a livello di campo (field grammar); 2. grammatica a livello di form; 3. grammatica a livello di documento; 4. grammatica a livello di applicazione; 5. grammatiche predefinite del riconoscitore vocale. 42

43 CAPITOLO 3 Progetto e implementazione dell applicazione 3.1 La scelta del progetto L idea di realizzare questo progetto è emersa dall intento di far comprendere meglio le potenzialità della tecnologia VoiceXML. Per questo motivo, io e il mio collega di lavoro, abbiamo pensato di progettare un applicazione vocale che non fosse soltanto una dimostrazione fine a se stessa, ma un applicazione che potesse essere utile, semplice da utilizzare e che fornisse la possibilità di accedere tramite la voce ad un servizio nuovo o già disponibile per il web tradizionale. Una prima applicazione vocale che ci sembrava interessante sviluppare era una prenotazione telefonica: un qualsiasi utente, telefonando ad un certo numero prefissato, avrebbe trovato un applicazione che smistando le chiamate in ingresso, le avrebbe opportunamente indirizzate alla persona o all ufficio competente richiesto dal chiamante. Questa applicazione permette di effettuare la prenotazione di un biglietto ferroviario o perlomeno di ricevere informazioni utili per il viaggio. Infatti, l utente una volta inseriti i dati relativi alla sede di partenza, di arrivo e il giorno del viaggio potrà ricevere gli orari di tutti i treni presenti lungo quella tratta e relativi a quella data. Attraverso questa applicazione l utente può altresì, dopo aver inserito tutti i dati, parlare direttamente con un operatore umano e concludere l acquisto del biglietto evitando di ripetere i dati del viaggio; questo perché l operatore umano durante il 43

44 primo step automatico avrà a disposizione già i dati relativi al viaggio e potrà guidare l utente alla conclusione dell acquisto. Nonostante il valore puramente dimostrativo di tale applicazione, questa potrebbe essere realmente impiegata per la prenotazione di ticket in qualsiasi azienda. 44

45 3.2 Il diagramma di flusso dell applicazione 45

46 Nella figura precedente è riprodotto il diagramma di flusso che rappresenta in maniera schematica la rappresentazione logica dell applicazione. L applicazione vocale è costituita da file VoiceXML, da script PHP e da un database contenente i dati necessari per il corretto funzionamento. Dopo il messaggio del benvenuto, il sistema chiederà il numero della carta frecciax e l utente deve rispondere opportunamente indicando il proprio codice. Dopo aver acquisito il codice il sistema effettuerà un controllo sul database verificando l esistenza di un cliente loggato con quel codice; nel caso in cui non ci fosse nessuna corrispondenza il sistema provvederà a richiedere all utente di riferire il codice, se ciò che viene detto non è presente nella lista allora la chiamata verrà passata in automatico ad un operatore umano. Nel caso in cui, invece, il numero della carta frecciax è presente nella lista del database, il sistema darà di nuovo il benvenuto all utente e assocerà il codice della carta al nome del cliente in modo tale da poterlo chiamare per nome. Questo step è considerato fondamentale per il proseguo poiché la conversazione continua solo per coloro i quali sono loggati mentre per gli altri è previsto il passaggio della chiamata ad un operatore umani. Detto ciò, il sistema inizierà a porre delle domande all utente sulla città di partenza e di arrivo; in entrambi i casi accade che se l utente non dovesse pronunciare nessuna città di partenza o di destinazione, verrà inviato un messaggio che consiglia le possibili scelte all utente. Stesso discorso se l utente dovesse pronunciare una città non valida tra quelle presenti nel database, il sistema provvederà a dare dei suggerimenti sulle città dove è possibile effettuare la prenotazione. Terza domanda che pronuncerà il sistema riguarda la data di partenza, anche in questo caso l utente è limitato a scegliere solo delle possibili date e nel caso in cui dovesse fornire dati non presenti nel database o non dovesse pronunciare nessuna data, il sistema darà il suggerimento. Una volta terminate queste domande, il sistema acquisisce i dati e andrà ad interrogare il database cercando delle possibili soluzione alle richieste 46

47 dell utente; in caso positivo avvertirà l utente dei dati relativi al viaggio. Mentre nel caso non ci fosse nessuna corrispondenza l utente sarà avvertito di ciò. In entrambe le soluzioni, la telefonata sarà passata all operatore umano il quale provvederà a terminare l acquisto del biglietto. 3.3 Il database Il database biglietto_ferroviario, progettato per l utilizzo con l applicazione vocale, è costituito da due tabelle denominate orari e utente (Figura 3.3.1). Figura 3.3.1: il database Le città che gli utenti possono scegliere per effettuare la prenotazione sono presenti nella tabella orari. In questa tabella sono presenti solo le tratte relative a determinate date ed è costituita dai campi partenza, arrivo e data che sono tutte chiavi primarie. La struttura di ogni campo è descritta in figura 3.3.2: Figura 3.3.2: tabella orari 47

VERSO UNA BADANTE VIRTUALE : STUDIO E SVILUPPO DEL LIVELLO COMUNICATIVO TRAMITE TECNOLOGIA VOICEXML

VERSO UNA BADANTE VIRTUALE : STUDIO E SVILUPPO DEL LIVELLO COMUNICATIVO TRAMITE TECNOLOGIA VOICEXML UNIVERSITA POLITECNICA DELLE MARCHE FACOLTA DI INGEGNERIA Corso di Laurea in Ingegneria Informatica e dell Automazione VERSO UNA BADANTE VIRTUALE : STUDIO E SVILUPPO DEL LIVELLO COMUNICATIVO TRAMITE TECNOLOGIA

Dettagli

Definizione e struttura della comunicazione

Definizione e struttura della comunicazione Definizione e struttura della comunicazione Sono state date molteplici definizioni della comunicazione; la più semplice e comprensiva è forse questa: passaggio di un'informazione da un emittente ad un

Dettagli

Analisi dei requisiti e casi d uso

Analisi dei requisiti e casi d uso Analisi dei requisiti e casi d uso Indice 1 Introduzione 2 1.1 Terminologia........................... 2 2 Modello della Web Application 5 3 Struttura della web Application 6 4 Casi di utilizzo della Web

Dettagli

Elementi di Informatica e Programmazione

Elementi di Informatica e Programmazione Elementi di Informatica e Programmazione Le Reti di Calcolatori (parte 2) Corsi di Laurea in: Ingegneria Civile Ingegneria per l Ambiente e il Territorio Università degli Studi di Brescia Docente: Daniela

Dettagli

Le Reti Informatiche

Le Reti Informatiche Le Reti Informatiche modulo 10 Prof. Salvatore Rosta www.byteman.it s.rosta@byteman.it 1 Nomenclatura: 1 La rappresentazione di uno schema richiede una serie di abbreviazioni per i vari componenti. Seguiremo

Dettagli

ITALIANO TRAGUARDI PER LO SVILUPPO DELLE COMPETENZE AL TERMINE DELLA SCUOLA PRIMARIA

ITALIANO TRAGUARDI PER LO SVILUPPO DELLE COMPETENZE AL TERMINE DELLA SCUOLA PRIMARIA ITALIANO TRAGUARDI PER LO SVILUPPO DELLE COMPETENZE AL TERMINE DELLA SCUOLA PRIMARIA L allievo partecipa a scambi comunicativi (conversazione, discussione di classe o di gruppo) con compagni e insegnanti

Dettagli

Internet Internet è universalmente nota come la Rete delle reti: un insieme smisurato di computer collegati tra loro per scambiarsi dati e servizi.

Internet Internet è universalmente nota come la Rete delle reti: un insieme smisurato di computer collegati tra loro per scambiarsi dati e servizi. Internet Internet è universalmente nota come la Rete delle reti: un insieme smisurato di computer collegati tra loro per scambiarsi dati e servizi. Internet: la rete delle reti Alberto Ferrari Connessioni

Dettagli

Talento LAB 4.1 - UTILIZZARE FTP (FILE TRANSFER PROTOCOL) L'UTILIZZO DI ALTRI SERVIZI INTERNET. In questa lezione imparerete a:

Talento LAB 4.1 - UTILIZZARE FTP (FILE TRANSFER PROTOCOL) L'UTILIZZO DI ALTRI SERVIZI INTERNET. In questa lezione imparerete a: Lab 4.1 Utilizzare FTP (File Tranfer Protocol) LAB 4.1 - UTILIZZARE FTP (FILE TRANSFER PROTOCOL) In questa lezione imparerete a: Utilizzare altri servizi Internet, Collegarsi al servizio Telnet, Accedere

Dettagli

Guida ai Servizi Voce per il Referente. Guida ai Servizi Voce per il Referente

Guida ai Servizi Voce per il Referente. Guida ai Servizi Voce per il Referente Guida ai Servizi Voce per il Referente Guida ai Servizi Voce per il Referente 1 Sommario 1 Introduzione... 3 1.1 Accesso al Self Care Web di Rete Unica... 4 2 Servizi Aziendali... 6 2.1 Centralino - Numero

Dettagli

MATRICE DELLE FUNZIONI DI DRAGON NATURALLYSPEAKING 12 CONFRONTO TRA EDIZIONI DEL PRODOTTO

MATRICE DELLE FUNZIONI DI DRAGON NATURALLYSPEAKING 12 CONFRONTO TRA EDIZIONI DEL PRODOTTO MATRICE DELLE FUNZIONI DI DRAGON NATURALLYSPEAKING 12 CONFRONTO TRA EDIZIONI DEL PRODOTTO Precisione del riconoscimento Velocità di riconoscimento Configurazione del sistema Correzione Regolazione della

Dettagli

Il World Wide Web: nozioni introduttive

Il World Wide Web: nozioni introduttive Il World Wide Web: nozioni introduttive Dott. Nicole NOVIELLI novielli@di.uniba.it http://www.di.uniba.it/intint/people/nicole.html Cos è Internet! Acronimo di "interconnected networks" ("reti interconnesse")!

Dettagli

BPEL: Business Process Execution Language

BPEL: Business Process Execution Language Ingegneria dei processi aziendali BPEL: Business Process Execution Language Ghilardi Dario 753708 Manenti Andrea 755454 Docente: Prof. Ernesto Damiani BPEL - definizione Business Process Execution Language

Dettagli

SOFTWARE GESTIONE SMS DA INTERFACCE CL MANUALE D INSTALLAZIONE ED USO

SOFTWARE GESTIONE SMS DA INTERFACCE CL MANUALE D INSTALLAZIONE ED USO CLSMS SOFTWARE GESTIONE SMS DA INTERFACCE CL MANUALE D INSTALLAZIONE ED USO Sommario e introduzione CLSMS SOMMARIO INSTALLAZIONE E CONFIGURAZIONE... 3 Parametri di configurazione... 4 Attivazione Software...

Dettagli

Sistemi Web-Based - Terminologia. Progetto di Sistemi Web-Based Prof. Luigi Laura, Univ. Tor Vergata, a.a. 2010/2011

Sistemi Web-Based - Terminologia. Progetto di Sistemi Web-Based Prof. Luigi Laura, Univ. Tor Vergata, a.a. 2010/2011 Sistemi Web-Based - Terminologia Progetto di Sistemi Web-Based Prof. Luigi Laura, Univ. Tor Vergata, a.a. 2010/2011 CLIENT: il client è il programma che richiede un servizio a un computer collegato in

Dettagli

How to Develop Accessible Linux Applications

How to Develop Accessible Linux Applications How to Develop Accessible Linux Applications Sharon Snider Copyright 2002 IBM Corporation v1.1, 2002-05-03 Diario delle Revisioni Revisione v1.1 2002-05-03 Revisionato da: sds Convertito in DocBook XML

Dettagli

Manuale tecnico Stazione Meteo Eolo Davis

Manuale tecnico Stazione Meteo Eolo Davis Descrizione Generale Manuale tecnico Stazione Meteo Eolo Davis EOLO DAVIS rappresenta una soluzione wireless di stazione meteorologica, basata su sensoristica Davis Instruments, con possibilità di mettere

Dettagli

Corso SOL Gestione catalogo libro moderno 21-22 settembre 2009

Corso SOL Gestione catalogo libro moderno 21-22 settembre 2009 Corso SOL Gestione catalogo libro moderno 21-22 settembre 2009 Introduzione generale Autenticazione dell operatore https://sebina1.unife.it/sebinatest Al primo accesso ai servizi di Back Office, utilizzando

Dettagli

Guida introduttiva. Installazione di Rosetta Stone

Guida introduttiva. Installazione di Rosetta Stone A Installazione di Rosetta Stone Windows: Inserire il CD-ROM dell'applicazione Rosetta Stone. Selezionare la lingua dell'interfaccia utente. 4 5 Seguire i suggerimenti per continuare l'installazione. Selezionare

Dettagli

GLI ASSI CULTURALI. Allegato 1 - Gli assi culturali. Nota. rimessa all autonomia didattica del docente e alla programmazione collegiale del

GLI ASSI CULTURALI. Allegato 1 - Gli assi culturali. Nota. rimessa all autonomia didattica del docente e alla programmazione collegiale del GLI ASSI CULTURALI Nota rimessa all autonomia didattica del docente e alla programmazione collegiale del La normativa italiana dal 2007 13 L Asse dei linguaggi un adeguato utilizzo delle tecnologie dell

Dettagli

Cross Software ltd Malta Pro.Sy.T Srl. Il gestionale come l'avete sempre sognato... Pag. 1

Cross Software ltd Malta Pro.Sy.T Srl. Il gestionale come l'avete sempre sognato... Pag. 1 Il gestionale come l'avete sempre sognato... Pag. 1 Le funzionalità di X-Cross La sofisticata tecnologia di CrossModel, oltre a permettere di lavorare in Internet come nel proprio ufficio e ad avere una

Dettagli

Guida alla scansione su FTP

Guida alla scansione su FTP Guida alla scansione su FTP Per ottenere informazioni di base sulla rete e sulle funzionalità di rete avanzate della macchina Brother, consultare la uu Guida dell'utente in rete. Per ottenere informazioni

Dettagli

12.5 UDP (User Datagram Protocol)

12.5 UDP (User Datagram Protocol) CAPITOLO 12. SUITE DI PROTOCOLLI TCP/IP 88 12.5 UDP (User Datagram Protocol) L UDP (User Datagram Protocol) é uno dei due protocolli del livello di trasporto. Come l IP, é un protocollo inaffidabile, che

Dettagli

Installazione di GFI Network Server Monitor

Installazione di GFI Network Server Monitor Installazione di GFI Network Server Monitor Requisiti di sistema I computer che eseguono GFI Network Server Monitor richiedono: i sistemi operativi Windows 2000 (SP4 o superiore), 2003 o XP Pro Windows

Dettagli

Dipartimento del Tesoro

Dipartimento del Tesoro Dipartimento del Tesoro POWER POINT AVANZATO Indice 1 PROGETTAZIONE DELL ASPETTO...3 1.2 VISUALIZZARE GLI SCHEMI...4 1.3 CONTROLLARE L ASPETTO DELLE DIAPOSITIVE CON GLI SCHEMI...5 1.4 SALVARE UN MODELLO...6

Dettagli

Guida ai Servizi Voce per l Utente. Guida ai ai Servizi Voce per l Utente

Guida ai Servizi Voce per l Utente. Guida ai ai Servizi Voce per l Utente Guida ai Servizi Voce per l Utente Guida ai ai Servizi Voce per l Utente 1 Indice Introduzione... 3 1 Servizi Voce Base... 4 1.1 Gestione delle chiamate... 4 1.2 Gestione del Numero Fisso sul cellulare...

Dettagli

Funzioni di base. Manualino OE6. Outlook Express 6

Funzioni di base. Manualino OE6. Outlook Express 6 Manualino OE6 Microsoft Outlook Express 6 Outlook Express 6 è un programma, incluso nel browser di Microsoft Internet Explorer, che ci permette di inviare e ricevere messaggi di posta elettronica. È gratuito,

Dettagli

ISTITUTO COMPRENSIVO STATALE di BORGORICCO SUGGERIMENTI PER LA COMPILAZIONE DEL P.D.P. PER ALUNNI CON DISTURBI SPECIFICI DI APPRENDIMENTO

ISTITUTO COMPRENSIVO STATALE di BORGORICCO SUGGERIMENTI PER LA COMPILAZIONE DEL P.D.P. PER ALUNNI CON DISTURBI SPECIFICI DI APPRENDIMENTO SUGGERIMENTI PER LA COMPILAZIONE DEL P.D.P. PER ALUNNI CON DISTURBI SPECIFICI DI APPRENDIMENTO Il documento va compilato in forma digitale per poter ampliare gli spazi dello schema (ove necessario) e togliere

Dettagli

Mod. 4: L architettura TCP/ IP Classe 5 I ITIS G. Ferraris a.s. 2011 / 2012 Marcianise (CE) Prof. M. Simone

Mod. 4: L architettura TCP/ IP Classe 5 I ITIS G. Ferraris a.s. 2011 / 2012 Marcianise (CE) Prof. M. Simone Paragrafo 1 Prerequisiti Definizione di applicazione server Essa è un servizio che è in esecuzione su un server 1 al fine di essere disponibile per tutti gli host che lo richiedono. Esempi sono: il servizio

Dettagli

FileMaker Server 12. Guida introduttiva

FileMaker Server 12. Guida introduttiva FileMaker Server 12 Guida introduttiva 2007 2012 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker e Bento sono marchi di FileMaker,

Dettagli

Lezione n 1! Introduzione"

Lezione n 1! Introduzione Lezione n 1! Introduzione" Corso sui linguaggi del web" Fondamentali del web" Fondamentali di una gestione FTP" Nomenclatura di base del linguaggio del web" Come funziona la rete internet?" Connessione"

Dettagli

FIRESHOP.NET. Gestione Utility & Configurazioni. Rev. 2014.3.1 www.firesoft.it

FIRESHOP.NET. Gestione Utility & Configurazioni. Rev. 2014.3.1 www.firesoft.it FIRESHOP.NET Gestione Utility & Configurazioni Rev. 2014.3.1 www.firesoft.it Sommario SOMMARIO Introduzione... 4 Impostare i dati della propria azienda... 5 Aggiornare il programma... 6 Controllare l integrità

Dettagli

Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN)

Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN) Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN) System Overview di Mattia Bargellini 1 CAPITOLO 1 1.1 Introduzione Il seguente progetto intende estendere

Dettagli

Funzioni nuove e modificate

Funzioni nuove e modificate Gigaset S675 IP, S685 IP, C470 IP, C475 IP: Funzioni nuove e modificate Questo documento integra il manuale di istruzioni dei telefoni VoIP Gigaset: Gigaset C470 IP, Gigaset C475 IP, Gigaset S675 IP e

Dettagli

FileMaker Server 13. Pubblicazione Web personalizzata con PHP

FileMaker Server 13. Pubblicazione Web personalizzata con PHP FileMaker Server 13 Pubblicazione Web personalizzata con PHP 2007-2013 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 Stati Uniti FileMaker

Dettagli

AUL22: FactoryTalk View SE Scoprite i vantaggi chiave di una soluzione SCADA integrata

AUL22: FactoryTalk View SE Scoprite i vantaggi chiave di una soluzione SCADA integrata AUL22: FactoryTalk View SE Scoprite i vantaggi chiave di una soluzione SCADA integrata Giampiero Carboni Davide Travaglia David Board Rev 5058-CO900C Interfaccia operatore a livello di sito FactoryTalk

Dettagli

Privacy Policy del sito http://www.plastic-glass.com

Privacy Policy del sito http://www.plastic-glass.com Cos'è una PRIVACY POLICY Privacy Policy del sito http://www.plastic-glass.com Questo documento, concernente le politiche di riservatezza dei dati personali di chi gestisce il sito Internet http://www.plastic-glass.com

Dettagli

Sistema di telecomunicazione per le piccole e medie imprese.

Sistema di telecomunicazione per le piccole e medie imprese. Sistema di telecomunicazione per le piccole e medie imprese. Sistema di telecomunicazione Promelit ipecs MG. Descrizione del Sistema: L azienda di oggi deve saper anche essere estesa : non confinata in

Dettagli

Informatica per la comunicazione" - lezione 9 -

Informatica per la comunicazione - lezione 9 - Informatica per la comunicazione" - lezione 9 - Protocolli di livello intermedio:" TCP/IP" IP: Internet Protocol" E il protocollo che viene seguito per trasmettere un pacchetto da un host a un altro, in

Dettagli

NAVIGAORA HOTSPOT. Manuale utente per la configurazione

NAVIGAORA HOTSPOT. Manuale utente per la configurazione NAVIGAORA HOTSPOT Manuale utente per la configurazione NAVIGAORA Hotspot è l innovativo servizio che offre ai suoi clienti accesso ad Internet gratuito, in modo semplice e veloce, grazie al collegamento

Dettagli

Configurazioni Mobile Connect

Configurazioni Mobile Connect Mailconnect Mail.2 L EVOLUZIONE DELLA POSTA ELETTRONICA Configurazioni Mobile Connect iphone MOBILE CONNECT CONFIGURAZIONE MOBILE CONNECT PER IPHONE CONFIGURAZIONE IMAP PER IPHONE RUBRICA CONTATTI E IPHONE

Dettagli

ACCREDITAMENTO EVENTI

ACCREDITAMENTO EVENTI E.C.M. Educazione Continua in Medicina ACCREDITAMENTO EVENTI Manuale utente Versione 1.5 Maggio 2015 E.C.M. Manuale utente per Indice 2 Indice Revisioni 4 1. Introduzione 5 2. Accesso al sistema 6 2.1

Dettagli

Dispositivi di comunicazione

Dispositivi di comunicazione Dispositivi di comunicazione Dati, messaggi, informazioni su vettori multipli: Telefono, GSM, Rete, Stampante. Le comunicazioni Axitel-X I dispositivi di comunicazione servono alla centrale per inviare

Dettagli

Telefono Sirio lassico

Telefono Sirio lassico GUIDA USO Telefono Sirio lassico 46755H Aprile 2013 3 Indice INTRODUZIONE...1 CARATTERISTICHE TECNICHE E FUNZIONALI...1 CONTENUTO DELLA CONFEZIONE...1 INSTALLAZIONE...2 DESCRIZIONE DELL APPARECCHIO...3

Dettagli

Modello OSI e architettura TCP/IP

Modello OSI e architettura TCP/IP Modello OSI e architettura TCP/IP Differenza tra modello e architettura - Modello: è puramente teorico, definisce relazioni e caratteristiche dei livelli ma non i protocolli effettivi - Architettura: è

Dettagli

MINI GUIDA SINTETICA per l uso della lavagna interattiva multimediale

MINI GUIDA SINTETICA per l uso della lavagna interattiva multimediale MINI GUIDA SINTETICA per l uso della lavagna interattiva multimediale InterWrite SchoolBoard è un software per lavagna elettronica di facile utilizzo. Può essere adoperata anche da studenti diversamente

Dettagli

APPLICAZIONE WEB PER LA GESTIONE DELLE RICHIESTE DI ACQUISTO DEL MATERIALE INFORMATICO. Francesco Marchione e Dario Richichi

APPLICAZIONE WEB PER LA GESTIONE DELLE RICHIESTE DI ACQUISTO DEL MATERIALE INFORMATICO. Francesco Marchione e Dario Richichi APPLICAZIONE WEB PER LA GESTIONE DELLE RICHIESTE DI ACQUISTO DEL MATERIALE INFORMATICO Francesco Marchione e Dario Richichi Istituto Nazionale di Geofisica e Vulcanologia Sezione di Palermo Indice Introduzione...

Dettagli

Cos è un protocollo? Ciao. Ciao 2:00. tempo. Un protocollo umano e un protocollo di reti di computer:

Cos è un protocollo? Ciao. Ciao 2:00. <file> tempo. Un protocollo umano e un protocollo di reti di computer: Cos è un protocollo? Un protocollo umano e un protocollo di reti di computer: Ciao Ciao Hai l ora? 2:00 tempo TCP connection request TCP connection reply. Get http://www.di.unito.it/index.htm Domanda:

Dettagli

HORIZON SQL CONFIGURAZIONE DI RETE

HORIZON SQL CONFIGURAZIONE DI RETE 1-1/9 HORIZON SQL CONFIGURAZIONE DI RETE 1 CARATTERISTICHE DI UN DATABASE SQL...1-2 Considerazioni generali... 1-2 Concetto di Server... 1-2 Concetto di Client... 1-2 Concetto di database SQL... 1-2 Vantaggi...

Dettagli

TeamViewer 8 Manuale Meeting

TeamViewer 8 Manuale Meeting TeamViewer 8 Manuale Meeting Rev 8.0-12/2012 TeamViewer GmbH Kuhnbergstraße 16 D-73037 Göppingen www.teamviewer.com Indice 1 Informazioni su TeamViewer... 5 1.1 Informazioni sul software... 5 1.2 Informazioni

Dettagli

WEB Conference, mini howto

WEB Conference, mini howto Prerequisiti: WEB Conference, mini howto Per potersi collegare o creare una web conference è necessario: 1) Avere un pc con sistema operativo Windows XP o vista (windows 7 non e' ancora certificato ma

Dettagli

Luca Mari, Sistemi informativi applicati (reti di calcolatori) appunti delle lezioni. Architetture client/server: applicazioni client

Luca Mari, Sistemi informativi applicati (reti di calcolatori) appunti delle lezioni. Architetture client/server: applicazioni client Versione 25.4.05 Sistemi informativi applicati (reti di calcolatori): appunti delle lezioni Architetture client/server: applicazioni client 1 Architetture client/server: un esempio World wide web è un

Dettagli

GUIDA RAPIDA emagister-agora Edizione BASIC

GUIDA RAPIDA emagister-agora Edizione BASIC GUIDA RAPIDA emagister-agora Edizione BASIC Introduzione a emagister-agora Interfaccia di emagister-agora Configurazione dell offerta didattica Richieste d informazioni Gestione delle richieste d informazioni

Dettagli

Informatica. Scopo della lezione

Informatica. Scopo della lezione 1 Informatica per laurea diarea non informatica LEZIONE 1 - Cos è l informatica 2 Scopo della lezione Introdurre le nozioni base della materia Definire le differenze tra hardware e software Individuare

Dettagli

Università degli Studi di Parma. Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica

Università degli Studi di Parma. Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica Università degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica A.A. 2007-08 CORSO DI INGEGNERIA DEL SOFTWARE Prof. Giulio Destri http://www.areasp.com (C) 2007 AreaSP for

Dettagli

Processi di business sovra-regionali relativi ai sistemi regionali di FSE. Versione 1.0 24 Giugno 2014

Processi di business sovra-regionali relativi ai sistemi regionali di FSE. Versione 1.0 24 Giugno 2014 Processi di business sovra-regionali relativi ai sistemi regionali di FSE Versione 1.0 24 Giugno 2014 1 Indice Indice... 2 Indice delle figure... 3 Indice delle tabelle... 4 Obiettivi del documento...

Dettagli

Web conferencing e collaborazione in tempo reale su Internet: la piattaforma Meetecho

Web conferencing e collaborazione in tempo reale su Internet: la piattaforma Meetecho Web conferencing e collaborazione in tempo reale su Internet: la piattaforma Meetecho Tobia Castaldi Alessandro Amirante Lorenzo Miniero Simon Pietro Romano Giorgio Ventre 02/10/2009 GARR 2009 "Network

Dettagli

Guida. Vista Live. Controllo. Riproduzione su 24 ore. Ricerca avanz. Le icone includono: Mod. uscita. Icona. Un sensore di allarme.

Guida. Vista Live. Controllo. Riproduzione su 24 ore. Ricerca avanz. Le icone includono: Mod. uscita. Icona. Un sensore di allarme. Guida operatore del registratore TruVision Vista Live Sull immagine live dello schermo vengono visualizzati laa data e l ora corrente, il nome della telecamera e viene indicato se è in corso la registrazione.

Dettagli

CHIAVETTA INTERNET ONDA MT503HSA

CHIAVETTA INTERNET ONDA MT503HSA CHIAVETTA INTERNET ONDA MT503HSA Manuale Utente Linux Debian, Fedora, Ubuntu www.ondacommunication.com Chiavet ta Internet MT503HSA Guida rapida sistema operativo LINUX V 1.1 33080, Roveredo in Piano (PN)

Dettagli

XM100GSM SCHEDA GSM PER CENTRALI SERIE XM

XM100GSM SCHEDA GSM PER CENTRALI SERIE XM 1 Stato del combinatore direttamente sul display della Consolle XM Interrogazione credito residuo tramite SMS e inoltro SMS ricevuti Messaggi di allarme pre-registrati Completa integrazione con centrali

Dettagli

Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica. Programmazione I - corso B a.a. 2009-10. prof.

Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica. Programmazione I - corso B a.a. 2009-10. prof. Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica Programmazione I - corso B a.a. 009-10 prof. Viviana Bono Blocco 9 Metodi statici: passaggio parametri, variabili locali, record

Dettagli

minor costo delle chiamate, su nazionali e internazionali

minor costo delle chiamate, su nazionali e internazionali Il Voice Over IP è una tecnologia che permette di effettuare una conversazione telefonica sfruttando la connessione ad internet piuttosto che la rete telefonica tradizionale. Con le soluzioni VOIP potete

Dettagli

SAI QUANTO TEMPO IMPIEGHI A RINTRACCIARE UN DOCUMENTO, UN NUMERO DI TELEFONO O UNA E-MAIL?

SAI QUANTO TEMPO IMPIEGHI A RINTRACCIARE UN DOCUMENTO, UN NUMERO DI TELEFONO O UNA E-MAIL? archiviazione ottica, conservazione e il protocollo dei SAI QUANTO TEMPO IMPIEGHI A RINTRACCIARE UN DOCUMENTO, UN NUMERO DI TELEFONO O UNA E-MAIL? Il software Facile! BUSINESS Organizza l informazione

Dettagli

CAMPO DI ESPERIENZA IL SE E L ALTRO SCUOLA DELL INFANZIA ANNI 3

CAMPO DI ESPERIENZA IL SE E L ALTRO SCUOLA DELL INFANZIA ANNI 3 IL SE E L ALTRO ANNI 3 Si separa facilmente dalla famiglia. Vive serenamente tutti i momenti della giornata scolastica. E autonomo. Stabilisce una relazione con gli adulti e i compagni. Conosce il nome

Dettagli

RETI DI CALCOLATORI E APPLICAZIONI TELEMATICHE

RETI DI CALCOLATORI E APPLICAZIONI TELEMATICHE RETI DI CALCOLATORI E APPLICAZIONI TELEMATICHE Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine 1999 Pier Luca Montessoro (si veda la nota a pagina 2) 1 Nota di Copyright

Dettagli

Analisi dei requisiti e casi d uso

Analisi dei requisiti e casi d uso Analisi dei requisiti e casi d uso Indice 1 Introduzione 2 1.1 Terminologia........................... 2 2 Modello del sistema 4 2.1 Requisiti hardware........................ 4 2.2 Requisiti software.........................

Dettagli

2009 Elite Computer. All rights reserved

2009 Elite Computer. All rights reserved 1 PREMESSA OrisDent 9001 prevede la possibilità di poter gestire il servizio SMS per l'invio di messaggi sul cellulare dei propri pazienti. Una volta ricevuta comunicazione della propria UserID e Password

Dettagli

Procedura per il ripristino dei certificati del dispositivo USB

Procedura per il ripristino dei certificati del dispositivo USB Procedura per il ripristino dei certificati del dispositivo USB 30/04/2013 Sommario - Limitazioni di responsabilità e uso del manuale... 3 1 Glossario... 3 2 Presentazione... 4 3 Quando procedere al ripristino

Dettagli

Manuale d uso. Servizio Segreteria Telefonica Memotel. per Clienti con linea Fibra

Manuale d uso. Servizio Segreteria Telefonica Memotel. per Clienti con linea Fibra Manuale d uso Servizio Segreteria Telefonica Memotel per Clienti con linea Fibra 1 INDICE 1. GUIDA AL PRIMO UTILIZZO 2. CONFIGURAZIONE SEGRETERIA 3. CONSULTAZIONE SEGRETERIA 4. NOTIFICHE MESSAGGI 5. ASCOLTO

Dettagli

Manuale d uso Apache OpenMeetings (Manuale Utente + Manuale Amministratore)

Manuale d uso Apache OpenMeetings (Manuale Utente + Manuale Amministratore) Manuale d uso Apache OpenMeetings (Manuale Utente + Manuale Amministratore) Autore: Matteo Veroni Email: matver87@gmail.com Sito web: matteoveroni@altervista.org Fonti consultate: http://openmeetings.apache.org/

Dettagli

Modulo. Programmiamo in Pascal. Unità didattiche COSA IMPAREREMO...

Modulo. Programmiamo in Pascal. Unità didattiche COSA IMPAREREMO... Modulo A Programmiamo in Pascal Unità didattiche 1. Installiamo il Dev-Pascal 2. Il programma e le variabili 3. Input dei dati 4. Utilizziamo gli operatori matematici e commentiamo il codice COSA IMPAREREMO...

Dettagli

Trattamento aria Regolatore di pressione proporzionale. Serie 1700

Trattamento aria Regolatore di pressione proporzionale. Serie 1700 Trattamento aria Serie 7 Serie 7 Trattamento aria Trattamento aria Serie 7 Serie 7 Trattamento aria +24VDC VDC OUTPUT MICROPROCESS. E P IN EXH OUT Trattamento aria Serie 7 Serie 7 Trattamento aria 7 Trattamento

Dettagli

Le telecamere Installate verranno connesse ad Unità di elaborazione multiplexer per la gestione e la verifica di gruppi omogenei di 4-8-16-32-48-64

Le telecamere Installate verranno connesse ad Unità di elaborazione multiplexer per la gestione e la verifica di gruppi omogenei di 4-8-16-32-48-64 Le telecamere Installate verranno connesse ad Unità di elaborazione multiplexer per la gestione e la verifica di gruppi omogenei di 4-8-16-32-48-64 telecamere. I sistemi di acquisizione ed archiviazione

Dettagli

Informatica Applicata

Informatica Applicata Ing. Irina Trubitsyna Concetti Introduttivi Programma del corso Obiettivi: Il corso di illustra i principi fondamentali della programmazione con riferimento al linguaggio C. In particolare privilegia gli

Dettagli

Integrated Development Environment (IDE) DevC++ 4.9.9.2

Integrated Development Environment (IDE) DevC++ 4.9.9.2 Integrated Development Environment (IDE) DevC++ 4.9.9.2 Manuale utente Data ultima revisione: 22/10/2008 Fondamenti di informatica Università Facoltà Corso di laurea Politecnico di Bari 1 a Facoltà di

Dettagli

DALLA TEORIA ALLA PRATICA

DALLA TEORIA ALLA PRATICA DALLA TEORIA ALLA PRATICA Comunicare a distanza: il telefono a filo La prima esperienza di telecomunicazione (dal greco tele = distante) si realizza con due piccoli contenitori di plastica, cartone o metallo,

Dettagli

I.Stat Guida utente Versione 1.7 Dicembre 2010

I.Stat Guida utente Versione 1.7 Dicembre 2010 I.Stat Guida utente Versione 1.7 Dicembre 2010 1 Sommario INTRODUZIONE 3 I concetti principali di I.Stat 4 Organizzazione dei dati 4 Ricerca 5 GUIDA UTENTE 6 Per iniziare 6 Selezione della lingua 7 Individuazione

Dettagli

CAMPO DI ESPERIENZA: IL SE E L ALTRO

CAMPO DI ESPERIENZA: IL SE E L ALTRO CAMPO DI ESPERIENZA: IL SE E L ALTRO I. Il bambino gioca in modo costruttivo e creativo con gli altri, sa argomentare, confrontarsi, sostenere le proprie ragioni con adulti e bambini. I I. Sviluppa il

Dettagli

FASE DEBUGGING: Compiler Linker. controllando che la voce Genera le informazioni per il debug cioè. "Generate debugging information"

FASE DEBUGGING: Compiler Linker. controllando che la voce Genera le informazioni per il debug cioè. Generate debugging information FASE DEBUGGING: Prima della compilazione, si devono inserire 1 nel progetto informazioni per il debug cioè si devono visualizzare le opzioni di progetto seguendo il percorso: controllando che la voce Genera

Dettagli

IL SAMPLE AND HOLD UNIVERSITÀ DEGLI STUDI DI MILANO. Progetto di Fondamenti di Automatica. PROF.: M. Lazzaroni

IL SAMPLE AND HOLD UNIVERSITÀ DEGLI STUDI DI MILANO. Progetto di Fondamenti di Automatica. PROF.: M. Lazzaroni UNIVERSITÀ DEGLI STUDI DI MILANO FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI Corso di Laurea in Informatica IL SAMPLE AND HOLD Progetto di Fondamenti di Automatica PROF.: M. Lazzaroni Anno Accademico

Dettagli

GRIGLIA DI OSSERVAZIONE E DI RILEVAZIONE DELLE ABILITA IN INGRESSO PER I TRE ANNI

GRIGLIA DI OSSERVAZIONE E DI RILEVAZIONE DELLE ABILITA IN INGRESSO PER I TRE ANNI GRIGLIA DI OSSERVAZIONE E DI RILEVAZIONE DELLE ABILITA IN INGRESSO PER I TRE ANNI INGRESSO Si mostra sereno Ricerca gli altri bambini Porta gli oggetti a scuola SERVIZI IGIENICI Ha il controllo sfinterico

Dettagli

Elementi di rete che permettono lo scambio dei messaggi di segnalazione

Elementi di rete che permettono lo scambio dei messaggi di segnalazione SEGNALAZIONE Segnalazione e sistemi di segnalazione Segnalazione Messaggi tra elementi di una rete a commutazione di circuito (apparecchi di utente e centrali o fra le varie centrali) che permettono la

Dettagli

Scuola primaria: obiettivi al termine della classe 5

Scuola primaria: obiettivi al termine della classe 5 Competenza: partecipare e interagire con gli altri in diverse situazioni comunicative Scuola Infanzia : 3 anni Obiettivi di *Esprime e comunica agli altri emozioni, sentimenti, pensieri attraverso il linguaggio

Dettagli

AOT Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma. Unified Process. Prof. Agostino Poggi

AOT Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma. Unified Process. Prof. Agostino Poggi AOT Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Unified Process Prof. Agostino Poggi Unified Process Unified Software Development Process (USDP), comunemente chiamato

Dettagli

Appunti di Antonio Bernardo

Appunti di Antonio Bernardo Internet Appunti di Antonio Bernardo Cos è Internet Internet può essere vista come una rete logica di enorme complessità, appoggiata a strutture fisiche e collegamenti di vario tipo (fibre ottiche, cavi

Dettagli

Sistemi di supporto alle decisioni Ing. Valerio Lacagnina

Sistemi di supporto alle decisioni Ing. Valerio Lacagnina Cosa è il DSS L elevato sviluppo dei personal computer, delle reti di calcolatori, dei sistemi database di grandi dimensioni, e la forte espansione di modelli basati sui calcolatori rappresentano gli sviluppi

Dettagli

Come difendersi dai VIRUS

Come difendersi dai VIRUS Come difendersi dai VIRUS DEFINIZIONE Un virus è un programma, cioè una serie di istruzioni, scritte in un linguaggio di programmazione, in passato era di solito di basso livello*, mentre con l'avvento

Dettagli

GeoGebra 4.2 Introduzione all utilizzo della Vista CAS per il secondo biennio e il quinto anno

GeoGebra 4.2 Introduzione all utilizzo della Vista CAS per il secondo biennio e il quinto anno GeoGebra 4.2 Introduzione all utilizzo della Vista CAS per il secondo biennio e il quinto anno La Vista CAS L ambiente di lavoro Le celle Assegnazione di una variabile o di una funzione / visualizzazione

Dettagli

Installazione ed attivazione della "SUITE OFFIS" versione SERVER

Installazione ed attivazione della SUITE OFFIS versione SERVER Installazione ed attivazione della "SUITE OFFIS" versione SERVER Premessa La versione server di OFFIS può essere installata e utilizzata indifferentemente da PC/Win o Mac/Osx e consente l'accesso contemporaneo

Dettagli

Manuale di Remote Desktop Connection. Brad Hards Urs Wolfer Traduzione: Luciano Montanaro Traduzione: Daniele Micci

Manuale di Remote Desktop Connection. Brad Hards Urs Wolfer Traduzione: Luciano Montanaro Traduzione: Daniele Micci Manuale di Remote Desktop Connection Brad Hards Urs Wolfer Traduzione: Luciano Montanaro Traduzione: Daniele Micci 2 Indice 1 Introduzione 5 2 Il protocollo Remote Frame Buffer 6 3 Uso di Remote Desktop

Dettagli

8. L'USO DEL PROGRAMMA DI POSTA ELETTRONICA INSIEME ALLA GESTIONE PROFESSIONALE DI DOCUMENTI IN FORMATO E-MAIL

8. L'USO DEL PROGRAMMA DI POSTA ELETTRONICA INSIEME ALLA GESTIONE PROFESSIONALE DI DOCUMENTI IN FORMATO E-MAIL This project funded by Leonardo da Vinci has been carried out with the support of the European Community. The content of this project does not necessarily reflect the position of the European Community

Dettagli

Guida ai Servizi Internet per il Referente Aziendale

Guida ai Servizi Internet per il Referente Aziendale Guida ai Servizi Internet per il Referente Aziendale Indice Indice Introduzione...3 Guida al primo accesso...3 Accessi successivi...5 Amministrazione dei servizi avanzati (VAS)...6 Attivazione dei VAS...7

Dettagli

END-TO-END SERVICE QUALITY. LA CULTURA DELLA QUALITÀ DAL CONTROLLO DELLE RISORSE ALLA SODDISFAZIONE DEL CLIENTE

END-TO-END SERVICE QUALITY. LA CULTURA DELLA QUALITÀ DAL CONTROLLO DELLE RISORSE ALLA SODDISFAZIONE DEL CLIENTE END-TO-END SERVICE QUALITY. LA CULTURA DELLA QUALITÀ DAL CONTROLLO DELLE RISORSE ALLA SODDISFAZIONE In un mercato delle Telecomunicazioni sempre più orientato alla riduzione delle tariffe e dei costi di

Dettagli

RELAZIONI TRA SERVIZI PER L IMPIEGO

RELAZIONI TRA SERVIZI PER L IMPIEGO RELAZIONI TRA SERVIZI PER L IMPIEGO E AZIENDE-UTENTI L IMPATTO DELLE PROCEDURE INFORMATIZZATE a cura di Germana Di Domenico Elaborazione grafica di ANNA NARDONE Monografie sul Mercato del lavoro e le politiche

Dettagli

Caratteristiche raccomandate del Network in un progetto di Home Automation

Caratteristiche raccomandate del Network in un progetto di Home Automation Caratteristiche raccomandate del Network in un progetto di Home Automation Uno degli aspetti progettuali più importanti di un sistema Control4 è la rete. Una rete mal progettata, in molti casi, si tradurrà

Dettagli

Adriana Volpato. P.D.P. Piano Didattico Personalizzato sc. Primaria

Adriana Volpato. P.D.P. Piano Didattico Personalizzato sc. Primaria Adriana Volpato P.D.P. Piano Didattico Personalizzato sc. Primaria 19 Dicembre 2011 STRUMENTO didattico educativo individua gli strumenti fa emergere il vero alunno solo con DIAGNOSI consegnata si redige

Dettagli

DNS (Domain Name System) Gruppo Linux

DNS (Domain Name System) Gruppo Linux DNS (Domain Name System) Gruppo Linux Luca Sozio Matteo Giordano Vincenzo Sgaramella Enrico Palmerini DNS (Domain Name System) Ci sono due modi per identificare un host nella rete: - Attraverso un hostname

Dettagli

Bus di sistema. Bus di sistema

Bus di sistema. Bus di sistema Bus di sistema Permette la comunicazione (scambio di dati) tra i diversi dispositivi che costituiscono il calcolatore E costituito da un insieme di fili metallici che danno luogo ad un collegamento aperto

Dettagli

capitolo 6 IL QUESTIONARIO PER LA VALUTV ALUTAZIONEAZIONE DEI CONTENUTI

capitolo 6 IL QUESTIONARIO PER LA VALUTV ALUTAZIONEAZIONE DEI CONTENUTI capitolo 6 IL QUESTIONARIO PER LA VALUTV ALUTAZIONEAZIONE DEI CONTENUTI 6.1 ISTRUZIONI PER IL VALUTATORE Il processo di valutazione si articola in quattro fasi. Il Valutatore deve: 1 leggere il questionario;

Dettagli

Altre opzioni Optralmage

Altre opzioni Optralmage di Personalizzazione delle impostazioni............ 2 Impostazione manuale delle informazioni sul fax......... 5 Creazione di destinazioni fax permanenti................ 7 Modifica delle impostazioni di

Dettagli