Specifiche funzionali Integrazione comandi vocali
Transcript
Specifiche funzionali Integrazione comandi vocali
Integrazione VUI con Ambiente di sviluppo della “Story” Specifiche tecniche L’ambiente di sviluppo VOCS prevede ce ad ogni azione eseguita dal player dello storyteller venga inviato un feedback a Speaky che interagisce con l’utente in maniera appropriata con eventuali prompt vocali. Il Player dello Storyteller reagisce ad usa serie di eventi definiti, in fase di progettazione, dall’autore della “Story”. Ad ogni evento corrisponde un insieme di azioni che il player eseguirà a seguito dell’evento specifico. L’autore della “Story” potrà, opzionalmente, associare ad ogni evento oppure ad ogni azione, un insieme di comandi vocali che scateneranno i medesimi eventi o le medesime azioni, ma nella modalità di interazione vocale . Le azioni associate ai comandi vocali, o alle diverse interazioni tra utente e “Story” (tramite il player), sono le medesime. In aggiunta un comando vocale potrà sollevare anche più azioni contemporaneamente. Interfaccia per Input e Output Vocale: L’ambiente di sviluppo della “Story” verrà corredato con una interfaccia per l’inserimento degli elementi Vocali. Tali elementi sono di due tipi differenti, input vocali (“Speaky Speech Input”) e output vocali (“Speaky Speech Output”); Speaky Speech Input (SSI) Più frasi per ogni evento/azione (Control Block): Gli input vocali sono insiemi di frasi alle quali è assegnato un significato specifico corrispondente ad un evento oppure ad una azione predefinita all’interno dei blocchi evento o blocchi di controllo/azioni dello script (plot) della “Story”. Ogni evento o azione avrà quindi una o più frasi (comandi vocali) che lo scatenano. Comandi vocali duplicati: (Ambiguità) Ogni frase potrà essere duplicata per altri eventi o azioni relativi a differenti script all’interno della “Story” (ad es. in scene diverse tra loro). Per risolvere l’ambiguità il player vocale invierà di volta in volta a Speaky lo stato in cui si trova (es. in quale scena o gruppo di scene, o stato specifico all’interno della scena, ecc.). Questa informazione permetterà a Speaky di inviare il codice corretto, dell’evento o dell’azione, al player rispetto al contesto in cui si trova. Questa attività di disambiguazione la definiamo come “Sistema automatico di disambiguazione”. In alternativa questo compito potrà essere demandato al player che scatena l’evento o esegue l’azione corrispondente in base al contesto in cui si trova. Il sistema di sviluppo controlla i comandi vocali inseriti durante la definizione della “Story” ed evidenzia all’autore le eventuali anomalie e duplicati. L’autore potrà quindi stabilire se risolvere i duplicati con frasi differenti oppure lasciare al “sistema automatico di disambiguazione” tale compito. Speaky Speech Output (SSO) Feedback o Prompt vocali: Casualità, Prosodia ed Emozione. L’autore della “Story” ha la possibilità di definire, per ogni azione effettuata dal player, durante l’interazione con l’utente, una serie di feedback vocali o frasi che verranno erogate da Speaky. In particolare ogni feedback vocale verrà associato ad un codice specifico. Ad ogni codice corrispondono una o più frasi che Speaky erogherà in maniera casuale per dare l’impressione della variabilità con cui risponde alle medesime azioni all’interno della “Story”. I feedback vocali possono essere corredati da effetti prosodici (tag di prosodia) o espressivi (tag emozionali) in maniera da rendere emozionante ed accattivante la comunicazione con l’utente della “Story”. L’interfaccia di sviluppo utilizzata dall’autore della “Story” prevede la costruzione dei prompt vocali in maniera semplice ed intuitiva e permette l’inserimento dei tag, di prosodia ed emozionali, in modalità grafica. Le componenti per l’ambiente di sviluppo L’ambiente di sviluppo della “Story” utilizzerà una serie di componenti grafiche per l’inserimento degli elementi vocali sopra definiti ovvero gli “Speaky Speech Input” e “Speaky Speech Output”. Tali componenti verranno implementati utilizzando l’ambiente di sviluppo Microsoft Visual Studio .Net 2010. Esse saranno componenti contenenti le API (Application Programming Interface) per l’integrazione delle stesse nell’ambiente di sviluppo della “Story” e si declinano in interfacce grafiche per l’inserimento degli elementi vocali durante la costruzione della “Story”. L’autore utilizzerà tali interfacce grafiche per definire gli elementi vocali. L’ambiente di sviluppo delle “Story” è sviluppato con l’ambiente Microsoft Visual Studio 2010 .Net ed il linguaggio specifico è VC++ Nativo (non .NET). Il linguaggio di programmazione per le componenti vocali è invece C#.NET. Considerando gli ambienti e i linguaggi di programmazione utilizzati verrà sviluppata una interfaccia per la comunicazione tra i vari ambienti di sviluppo. Il Flusso di Dialogo Il flusso di dialogo che deriva dalla implementazione della “Story” è costruito in base alla struttura della “Story” stessa così come definita nel documento specifico. Qui di seguito vediamo come si mappa la struttura del dialogo vocale con la struttura della “Story” sulla base delle componenti che la costituiscono. Il Dialogo Vocale può essere inoltre personalizzato in alcuni suoi elementi dall’autore della “Story”. Tali personalizzazioni sono di seguito descritte. Es. Definire comportamenti alternativi per i comandi universali, accorpare gli stati di dialogo (import di stati), definire gli stati di transizione (es. stati di conferma comando vocale), ecc.