W3C Voice E Irowser Activity VoiceXML Standardy W3C Voice Browser Activity Luděk Bártek Fakulta informatiky Masarykova univerzita Brno podzim 2014 Luděk Bártek Standardy W3C Voice Browser Activity Obsah W3C Voice Browser Activity VoiceXML Q W3C Voice Browser Activity 0 VoiceXML • 1876 - udělen patent na telefon A. G. Bellovi • WWW • 1989 - článek HyperText and CERN (Tim Burns Lee) koloval po CERNu k připomínkám • Vánoce 1990 - demonstrován řádkový webový prohlížeč a editor • 1991 - všeobecná dostupnost WWW na počítačích v CERNu • 1994 - první setkání W3 konsorcia (www.w3.org) » W3C Voice Browser Working Group • založena 1999 • cíl - návrh standardů umožňujících přístup k WWW pomocí hlasu a telefonu • zastoupeny firmy jako: • HP • Nuance Communications • Lucent Technologies • Motorola • ScanSoft Luděk Bártek Standardy W3C Voice Browser Activity W3C Voice E irowser Activity 1 VoiceXML Standardy W3C Voice Browser Activity • VoiceXML • Speech Recognition Grammar Specification (SRGS) • Speech Synthesis Markup Language (SSML) • Semantic Interpretation for Speech Recognition (SISR) • Pronunciation Lexicon Specification (PLS) • slouží k popisu fonetických informací pro rozpoznávání a syntézu řeči • výslovnost zkratek, místních jmen, ... • Call Control XML (CCXML) • State Chart XML (SCXML) Luděk Bártek Standardy W3C Voice Browser Activity W3C Voice E Irowser Activity 1 VoiceXML Základní informace • Jazyk pro popis dialogových rozhraní • Cíl - přinést výhody webového vývoje a doručování obsahu do interaktivních hlasových aplikací • vývoj započat 1995 - AT&T Phone Markup Language • 1998 - konference hostovaná W3C na téma hlasového procházení WWW - předvedeny jazyky PML, VoxML, SpeechML, TalkML, VoiceHTML, ... • 1999 - založeno VoiceXML Fórum - spojení sil při vývoji jazyka pro značkování dialogů • 2000 - VoiceXML 1.0, krátce na to přijato jako standard W3C • Aktuální verze: • doporučení 2.1 (červen 2007) • draft 3.0 (srpen 2010) Luděk Bártek Standardy W3C Voice Browser Activity W3C Voice Browser Activity VoiceXML Architektura VoiceXML aplikací Document Server Request VoiceXML Interpreter Context VoiceXML Interpreter Implementation Platform Figure : Převzato ze specifikace VoiceXML 2.0 Luděk Bártek Standardy W3C Voice Browser Activity W3C Voice Browser Activity VoiceXML Struktura VoiceXML aplikací • VoiceXML dokument(y) • formuláře - konečně stavové automaty. • Uživatel se nachází v jednom z konverzačních stavů. • Přechody definovány pomocí URI - odkazují na další krok dialogu. o URI - Uniform Resource Identifier • jednoznačná identifikace zdroje (souboru, obrázku, ...) na Internetu • rozšíření URL (URL je odkaz na soubor, cíl URI nemusí existovat). o Dialog končí, pokud tento přechod není definován. • Dva druhy dialogů: • formuláře - definuje proces pro získání hodnot sady položek o menu - poskytuje uživateli sadu možností a odkazů na pokračování dialogu Luděk Bártek Standardy W3C Voice Browser Activity W3C Voice Browser Activity VoiceXML Struktura VoiceXML aplikací • Subdialogy • obdoba funkcí o slouží k opětovnému provádění jisté části dialogu a vrácení získaných hodnot. • Sezení - začíná v okamžiku, kdy uživatel zahájí interakci se VoiceXML interpretrem a končí, když je ukončena bud uživatelem, VoiceXML dokumentem nebo kontextem dialogu. • Aplikace - sada dokumentů, které sdílejí kořenový dokument Luděk Bártek Standardy W3C Voice Browser Activity W3C Voice E Irowser Activity 1 VoiceXML VoiceXML formulář • Základní komponenta VoiceXML dokumentů. • Obsahuje: • sadu položek • deklarace proměnných nepatřících položkám • ošetření událostí. • Základní atribut - id • název formuláře • lze se pomocí něj na formulář odkazovat • musí být unikátní. • Zpracování formuláře - FIA O Výběr a přebrání jedné nebo více výzev. O Získání uživatelských odpovědí, které naplní jednu nebo více položek a nebo vyvolání události (žádost o nápovědu). Q Zpracování sekcí filled u všech zadaných položek. Luděk Bártek Standardy W3C Voice Browser Activity W3C Voice E browser Activity 1 VoiceXML Ukázkový VoiceXML formulář
Welcome to the VoiceXML!. Hello. Tell mi something nice, like hello, hi, good day. Luděk Bártek Standardy W3C Voice Browser Activity W3C Voice B rowser Activity VoiceXML Ukázkový formulář Pokračování I didn't understand you, but thanks anyway. You don't want to speek to me. Good bye. you said
_ Luděk Bártek Standardy W3C Voice Browser Activity W3C Voice E Irowser Activity VoiceXML Položky formuláře • Vstupní položky • field • record • transfer • object • subdialog. • Vstupním položkám odpovídají proměnné s názvem, který odpovídá hodnotě atributu name, příslušné vstupní položky. • Řídící položky • block • initial. • Provádění lze omezit pomocí atributu cond. Luděk Bártek Standardy W3C Voice Browser Activity W3C Voice Browser Activity VoiceXML Element field • Představuje vstup od uživatele. • Atributy: • name - jméno pole • přístup k výsledné hodnotě pomocí stínové proměnné s tímto jménem. • expr - případná počáteční hodnota, lze použít výrazy jazyka ECMAScript • cond - podmínka nutná pro zpracování vstupu • vice viz specifikace. Luděk Bártek Standardy W3C Voice Browser Activity W3C Voice Browser Activity VoiceXML Element field Dokončení • Obsah: • případná výzva s popisem vstupu (element prompt) • gramatika - popisuje množinu akceptovatelných vstupů • ošetření událostí • noinput • nomatch • filled • ... • ... Luděk Bártek Standardy W3C Voice Browser Activity W3C Voice E browser Activity 1 VoiceXML Ukázka použití elementu field
Zadejte Vaše jméno Zadejte prosím Vaše křestní jméno Je mi líto, ale zadané jméno není v kalendáři.
Luděk Bártek Standardy W3C Voice Browser Activity W3C Voice Browser Activity VoiceXML Element record • Umožňuje systému nahrát zprávu. • Lze využít např. pro dialogový záznamník. • Atributy: • name • expr • cond • beep - má-li se před začátkem nahrávání přehrát zvukový signál • maxtime - maximální délka nahrávky • type - mime-type výsledné nahrávky; musí být podporována VoiceXML platformou a ... • Obsah: • případná výzva s popisem vstupu • ošetření událostí • noinput • connection.disconnect.hangup (použití elementu catch). Luděk Bártek Standardy W3C Voice Browser Activity W3C Voice Browser Activity VoiceXML Ukázka použití elementu record
Bohužel zde nikdo není. Po zaznění signálu můžete zanechat vzkaz. Bohužel nic neslyším. Zkuste to znovu.
Luděk Bártek Standardy W3C Voice Browser Activity W3C Voice E Irowser Activity VoiceXML Element subdialog • Slouží k vyvolaní dialogu, řešícího dílčí problém. • Element subdialog. • Jeden a tentýž subdialog lze volat opakovaně. • Elementy: • subdialog - volání dílčího dialogu • parám - definice hodnoty parametru • filled - kód, který se má provést po návratu z dílčího dialogu. • Atributy • name - jméno volaného dílčího dialogu • src - URI dokumentu, který obsahuje kód dialogu. • Kód subdialogu - formulář, ukončený elementem return. Luděk Bártek Standardy W3C Voice Browser Activity W3C Voice E Irowser Activity VoiceXML Ukázka subdialogu
Hodnota subdialogu je Řekl jste
Luděk Bártek Standardy W3C Voice Browser Activity W3C Voice E Irowser Activity VoiceXML Ukázka subdialogu
Na pozdrav jste mi neodpověděl. Nashledanou. Luděk Bártek Standardy W3C Voice Browser Activity W3C Voice B rowser Activity VoiceXML Ukázka subdialogu Dokončení Bohužel jsem Vám nerozuměl, ale stejně dekuji. Nashledanou.
Luděk Bártek Standardy W3C Voice Browser Activity Element block W3C Voice Browser Activity VoiceXML • Obsahuje proveditelný obsah. • Provádí se pokud: • má hodnotu 'undefineď (nebyl dosud navštíven) • atribut cond se vyhodnotí jako true. • Struktura - viz předchozí příklady. • Atributy: • name - jméno bloku • expr - iniciální hodnota proměnné formuláře • cond - podmínka omezující provádění bloku. Luděk Bártek Standardy W3C Voice Browser Activity W3C Voice Browser Activity VoiceXML Element initial • Typické využití - dialogové strategie se smíšenou iniciativou. • Umožňuje uživateli zadat více informací naráz. • Na rozdíl od ostatních vstupních elementů nemůže obsahovat: • gramatiku - využívá se gramatika formuláře (viz ukázka na dalším slidu) • pokud je uživatelova odpověď gramatikou formuláře rozpoznána, je nutno nastavit hodnotu elementu initial -většinou se používá true • filled. • Dceřiné elementy: • výzvy (prompt) • ošetření událostí (catch, nomatch, noinput). Luděk Bártek Standardy W3C Voice Browser Activity W3C Voice Browser Activity VoiceXML Ukázka použití elementu initia 1
Zde můžete zadat, jaké předměty s jakým ukončením si chcete zaregistrovat Luděk Bártek Standardy W3C Voice Browser Activity W3C Voice Browser Activity VoiceXML Ukázka použití elementu initia Pokračování Řekněte něco jako Předmět PB095 na zkoušku Dobře zkusime to postupně. Můžete si zaregistrovat předměty PB095, PB125, PB162 s hodnocením zkouškou nebo zápočtem. Dobře zkusíme to postupně. W3C Voice Browser Activity VoiceXML Ukázka použití elementu initial Pokračování Dobře zkusíme to postupně. Zadejte kód předmětu Zatím si lze zaregistrovat předměty PB162, PB095, PB125 Luděk Bártek Standardy W3C Voice Browser Activity W3C Voice Browser Activity VoiceXML Ukázka použití elementu initial Pokračování Bohužel se nám zadávání nedaří. Nashledanou. Jelikož jste nic nezadal, tak se s Vámi loučím. Zadejte požadované ukončení. Předměty lze ukončit zkouškou nebo zápočtem. _ Luděk Bártek Standardy W3C Voice Browser Activity W3C Voice Browser Activity I VoiceXML Ukázka použití elementu initia Pokračování Bohužel se Vám zadávání nedaří, zkuste to klasicky na adrese is.muni.cz. Nashledanou. Zadejte, zda chcet předmět ukončit zkouškou nebo zápočte ... Luděk Bártek Standardy W3C Voice Browser Activity W3C Voice Browser Activity VoiceXML Ukázka použití elementu initial Dokončení Provádím registraci předmětu s kódem a ukončením .
Luděk Bártek Standardy W3C Voice Browser Activity W3C Voice E browser Activity 1 VoiceXML Další informace o VoiceXML • Popis na W3C VoiceBrowser Activity (http://www.w3.org/TR/voicexml20/ doplnění změn na http://www.w3.org/TR/voicexml2l) • www.voicexml.org (http://www.voicexml.org) • Šimek, Richard - Tutoriál jazyka VoiceXML (bakalářská práce Fl), 2005 • ... Luděk Bártek Standardy W3C Voice Browser Activity