speech-dispatcher-cs: Typy priorit
2.1.1.1 Priority Categories
...........................
Speech Dispatcher poskytuje systém pěti priorit. Každá zpráva obsahuje
buď explicitní informaci o prioritě, nebo jí je přiřazena výchozí
priorita.
Prosím podívejte se také na přiložený diagram (dole).
Priorita 'important'
....................
Tato zpráva bude přeříkána okamžitě, jak dorazí do serveru. Není nikdy
přerušena. Když server obdrží současně několik různých zpráv této
priority, ty jsou uloženy a přeříkány v pořadí, ve kterém přišly.
Když přijde nová zpráva priority 'important' a zrovna se říká nějaká
jiná zpráva, tato jiná zpráva je zahozena. Další zprávy nižších priorit
jsou buď pozdrženy (priorita 'message' a 'text') než již nečekají na
přeříkání žádné zprávy priority 'important', nebo jsou zahozeny
(priority 'notification' a 'progress').
Tyto zprávy by měly být tak krátké, jak je to jen možné, a měly by
být používány pouze zřídka, protože blokují výstup všech ostatních
zpráv.
Priorita 'message'
..................
Tato zpráva bude přeříkána, pokud již ve frontě nečeká žádná jiná zpráva
priority 'important' nebo 'message'. V opačném případě je tato zpráva
pozdržena dokud nebudou všechny přeříkány. To znamená, že priorita
'message' nezastavuje sama sebe. Když ve frontě čekají zprávy priorit
'notification' nebo 'progress' nebo 'text' když přijde zpráva priority
'message', jsou zahozeny.
Priorita 'text'
...............
Tato zpráva bude přeříkána, když ve frontě nečeká žádná zpráva priority
'important' nebo 'message'. Pokud čeká, tato nová zpráva je pozdržena
dokud nebudou předchozí zprávy přeříkány.
Priorita text přerqušuje sama sebe. To znamená, že když přijde
několik zpráv priority text, ty nejsou přeříkány v pořadí, ve kterém
přišly, ale bude vyřčena pouze poslední z nich a ostatní jsou přerušeny
a zahozeny.
Pokud jsou ve frontě zprávy priorit 'notification' nebo 'progress'
nebo se právě přeříkávají, jsou zahozeny.
Priorita 'notification'
.......................
Toto je zpráva nízké priority. Pokud ve frontě čekají zprávy priorit
'important', 'messages', 'text' nebo 'progress' nebo jsou právě
přeříkávány, tato nová zpráva priority 'notification' je zrušena.
Tato priorita přerušuje sama sebe, takže když přijde najednou více
zpráv s prioritou 'notification', přeříká se pouze poslední z nich.
Priority 'progress'
...................
Toto je speciální priorita pro zprávy, které přicházejí krátce po sobě a
nesou informaci o nějaké probíhající činnosti (např. 'Dokončeno 45%').
Kdyby nové zprávy přerušovaly ostatní (viz. priorita Notification),
uživatel by nemusel slyšet ani jednu zprávu do konce.
Tato priorita se chová stejně jako 'notification' s výjimkou dvou
věcí.
* Zprávy této priority nepřerušují jedna druhou. Místo toho, pokud
je zrovna přeříkávána jiná zpráva této priority, nově příchozí
zpráva je zahozena.
* Speech Dispatcher se snaží detekovat poslední zprávu v sérii
příchozích zpráv a zaručit její přeříkání (pro uživatele je
důležité slyšet zprávu 'Completed 100%', aby věděl, že proces již
skončil). Vždy, když ve frontě již nečeká žádná nová zpráva této
priority a poslední příchozí zpráva ještě nebyla přeříkána, je její
přeříkání vynuceno s prioritou 'message'.