4. Podpowiedzi, WAT, SEMESTR V, systemy dialogowe, SDial, SD cwiczenia 5


Podpowiedzi

Wcześniej zarejestrowane dane audio

Interpreter VXML może przekształcać tekst na sygnał mowy - jest to wygodne przy projektowaniu i debagowaniu aplikacji.

Jednak zarejestrowane wypowiedzi są preferowane przez użytkownika ze względu na ich jakość. Oprócz tego istnieją biblioteki nagrań typowych (podpowiedzi i efektów dźwiękowych), które można wykorzystać w aplikacji

(np. http://cafe.bevocal.com/libraries/audio/).

Przykład

<prompt>

<audio

src="http://www.yourcompany.com/audio/welcome.wav">

Welcome to the telephone message service.

</audio>

</prompt>

Atrybut src specyfikuje URI pliku dźwiękowego. Tutaj oprócz tej specyfikacji tag audio zawiera również tekst, jako dodatkową wiadomość, która zostaje wygenerowana przez TTS, gdy plik o podanym adresie nie będzie dostępny. Można tak postępować nawet, gdy jeszcze nie mamy zarejestrowanych plików audio.

Czasami wygodnie jest zastosować wyrażenie JavaScript do konstrukcji URI, np.:

<audio

expr="'http://www.yourcompany.com/audio/'

+ userlanguage + '/welcome.wav'"

/>

(wyrażenie łączy dwa łańcuchy znaków i zmienną nazwaną userlanguage - aby uczynić aplikację wielojęzyczną, dla rejestracji w różnych językach umieszczonych w osobnych katalogach, o nazwie zapisanej wcześniej w dialogu w zmiennej userlanguage).

Uwaga: jak widać tag <audio> może być albo kontenerem lub pojedynczym tagiem - w tym drugim przypadku należy pamiętać o zamykającym slashu (/) przed >.

Przerywanie podpowiedzi

Normalnie, podpowiedzi mogą być przerywane (interpreter przerywa podpowiedź, gdy wykryje na wejściu sygnał mowy).

Jednak, nieraz chcemy, aby użytkownik wysłuchał podpowiedzi do końca.

<prompt bargein="false">

<audio src="advertisement.wav">

</prompt>

Można sterować przerywaniem w całej aplikacji, wykorzystując tag <property>

<property name="bargein" value="false"/>

aby uniemożliwić przerywanie w całym dokumencie (wartość domyślna jest true).

Wykorzystanie tagu <reprompt>

Są dwa typy błędów: noinput i nomatch

Są trzy tagi do obsługi tych błędów: <noinput>, < nomatch> i <reprompt>

Gdy pojawi się błąd interpreter odszukuje aktywny element <noninput> lub <nomatch>, aby przypomnieć użytkownikowi podpowiedź, i oczekuje na wypowiedź.

Można zdefiniować <noninput> i < nomatch> na górnym poziomie dokumentu, np.:

<noinput>Sorry, I didn't hear you. </noinput>

<nomatch>Sorry, I didn't understand you. </nomatch>

Uwaga: ginie kontekst źródła błędu, interpreter po wygenerowaniu tekstu czeka na reakcję użytkownika (i liczy na jego pamięć).

Aby przypomnieć użytkownikowi na co ma odpowiedzieć stosuje się pusty tag <reprompt>

Przykład:

<noinput>Sorry, I didn't hear you.<reprompt/> </noinput>

<nomatch>Sorry, I didn't understand you.<reprompt/></nomatch>

<field name="op">

<prompt>Choose add, subtract, multiply, or divide.</prompt>

<grammar type="application/x-nuance-gsl">

[add subtract multiply divide]

</grammar>

...

Interakcja z użytkownikiem może być następująca:

Aplikacja:

Choose add, subtract, multiply, or divide.

Użytkownik:

Truncate.

Aplikacja:

Sorry, I didn't understand you. Choose add, subtract, multiply, or divide.

Użytkownik:

<silence>

Aplikacja:

Sorry, I didn't hear you. Choose add, subtract, multiply, or divide.

Użytkownik:

Exponentiate.

Aplikacja:

Sorry, I didn't understand you. Choose add, subtract, multiply, or divide.

Można podpowiedzi z informacjami o błędach stopniować.

Miarą kłopotów użytkownika może być liczba błędów przez niego popełnianych w pojedynczej instrukcji.

Interpreter umożliwia zliczanie ile razy od momentu wejścia do formularza lub menu był generowany:

dla obiektu wejściowego, elementu <initial> lub menu

Można zastosować te liczniki, aby oznaczyć podpowiedzi za pomocą atrybutu count dla tagów <prompt>, <noinput> i <nomatch>.

Przykład:

<noinput>Sorry, I didn't hear you. <reprompt/></noinput>

<nomatch>Sorry, I didn't understand you. <reprompt/></nomatch>

<field name="itemnumber" type="digits">

<prompt>Please enter the item number.</prompt>

<prompt count="3">Please say the item number of the product you wish to buy, or enter it on the telephone keypad.</prompt>

<prompt count="4">If you need help choosing an item, please enter zero. Otherwise, please say the item number of the product you wish to buy, or enter it on the telephone keypad.</prompt>

</field>

Pole ma trzy prompty, dwa z nich mają wartości count.

Gdy użytkownik początkowo wchodzi do pola, interpreter użyje prompta bez count. Przy pierwszym błędzie interpreter wygeneruje odpowiedni prompt sorry, a za nim prompt bez licznika, np.:

Sorry, I didn't hear you. Please enter the item number.

Gdy licznik prompta osiągnie 3, interpreter wygeneruje odpowiedni prompt sorry, a za nim prompt licznikiem równym 3, np.:

Sorry, I didn't understand you. Please say the item number of the product you wish to buy, or enter it on the telephone keypad.

W końcu, gdy licznik osiągnie 4, interpreter wygeneruje odpowiedni prompt sorry, a za nim prompt z licznikiem równym 4, np.:

Sorry, I didn't understand you. If you need help choosing an item, please enter zero. Otherwise, please say the item number of the product you wish to buy, or enter it on the telephone keypad.

Ponieważ można zastosować liczniki również do <noinput> i <nomatch>, można promty jeszcze bardziej zróżnicować:

<noinput>Sorry, I didn't hear you.<reprompt/></noinput>

<nomatch>Sorry, I didn't understand you.<reprompt/></nomatch>

<nomatch count="2">I'm sorry, I still didn't understand you.<reprompt/> </nomatch>

<nomatch count="3">I seem to be having a lot of trouble understanding. <reprompt/></nomatch>

<field name="itemnumber" type="digits">

<prompt>Please enter the item number.</prompt>

<prompt count="2">Please say the item number of the product you wish to buy, or enter it on the telephone keypad.</prompt>

<prompt count="3">If you need help choosing an item, please enter zero. Otherwise, please say the item number of the product you wish to buy, or enter it on the telephone keypad.</prompt>

</field>

Teraz w tym samym czasie, gdy generowane są informacje o błędzie związane z kontekstem, globalne informacje <nomatch> są również zmieniane.

Można przeprowadzić następującą interakcję:

Aplikacja:

Please enter the item number.

Użytkownik:

The red dress.

Aplikacja:

Sorry, I didn't understand you. Please enter the item number.

Użytkownik:

A dress.

Aplikacja:

I'm sorry, I still didn't understand you. Please say the item number of the product you wish to buy, or enter it on the telephone keypad

Użytkownik:

I want a dress.

Aplikacja:

I seem to be having a lot of trouble understanding. If you need help choosing an item, please enter zero. Otherwise, please say the item number of the product you wish to buy, or enter it on the telephone keypad.



Wyszukiwarka

Podobne podstrony:
1 informacje wstępne, WAT, SEMESTR V, systemy dialogowe, SDial, SD cwiczenia 5
cw5, WAT, SEMESTR V, systemy dialogowe, SDial, SD cwiczenia 5
I9G2S1 Węgrecki Wojciech sprawozdanie, WAT, SEMESTR V, systemy dialogowe, SDial, SD cwiczenia 5
2 zmienne i wyrazenia vxml, WAT, SEMESTR V, systemy dialogowe, SDial, SD cwiczenia 5
3. Formularze, WAT, SEMESTR V, systemy dialogowe, SDial, SD cwiczenia 5
sd potrek, WAT, SEMESTR V, systemy dialogowe, SDial, spr
Tematy ćwiczeń - SD, WAT, SEMESTR V, systemy dialogowe
SPRAWOZDANIE Z ĆWICZENIA LABORATORYJNEGO NR 4, WAT, SEMESTR V, systemy dialogowe, od borysa, SD cwic
Tematy ćwiczeń - SD, WAT, SEMESTR V, systemy dialogowe
Ćwiczenie nr 2, WAT, SEMESTR V, systemy dialogowe, lab2
Ćwiczenie nr 3, WAT, SEMESTR V, systemy dialogowe, lab3
Ćwiczenie nr 4, WAT, SEMESTR V, systemy dialogowe
Systemy dialogowe - pytania na zaliczenie2010 - OPRACOWANE, WAT, SEMESTR V, systemy dialogowe
I Ćwiczenie 5, WAT, semestr III, Grafika komputerowa
W2K3-15-raport, WAT, SEMESTR VII, Systemy operacyjne windows, Systemy operacyjne windows, sow, W2K3-
Sprawozdanie 4 (powtarzanie), WAT, SEMESTR VII, semestrVII, konopacki, WAT, Ekonometria, Prace semes
I Ćwiczenie 6, WAT, semestr III, Grafika komputerowa
Strzelecki - kolos-wejściówka -pytania i odp, WAT, semestr VI, systemy operacyjne UNIX
ściąga(1), WAT, semestr IV, Systemy wbudowane

więcej podobnych podstron