Documentos de Académico
Documentos de Profesional
Documentos de Cultura
1
19-01-2005
1.2 Qu es VoiceXML?
navegador de voz
Usuario
RTC WWW
Usuario
pasarela de voz
Usuario
Para trabajar en todo ste mudo Web, han ido apareciendo aplicaciones y
herramientas, que con el tiempo han ido evolucionando y convirtindose en
ms potentes. Algunas de ellas, como por ejemplo los editores sensitivos a
XML, pueden usarse para desarrollar aplicaciones en VoiceXML de forma
sencilla y til.
Sistemas de Informacin:
Tambin tienen cabida las aplicaciones financieras como por ejemplo, consulta
de acciones (bolsa), administracin de tareas o aplicaciones catlogo. Las
aplicaciones de catlogos deben estar echas minuciosamente ya que la voz, en
estos casos ofrece menos informacin que las imgenes. Estas aplicaciones
pueden funcionar por ejemplo si el cliente esta mirando simultneamente un
catlogo impreso (p.ej. de ropa) o conoce exactamente a priori el producto (ej.:
un libro, un CD o un DVD).
Servicios telefnicos
Los servicios telefnicos como por ejemplo los servicios de marcacin por voz,
de bsqueda de nmeros telefnicos, de administracin de correo electrnico o
teleconferencia, pueden ser fcilmente utilizados mediante voz a travs de
VoiceXML. Las aplicaciones personales de voz, aadidas a las lneas
particulares de los usuarios, pueden ser importantes fuentes de ingreso.
Mensajera unificada:
Hay muchas otras reas donde los servicios de voz pueden ser de gran
utilidad, como las aplicaciones de directorio asistidas, verificacin del estado de
apuestas, autorizacin de pagos, programacin de un servicio despertador de
un hotel, etc. Sin lugar a duda hay muchos servicios que an no han sido
explotados.
1.8 Dnde encontrar documentacin
Los siguientes sitios Web, estn relacionados con el mundo VoiceXML y son
una fuente importante de documentacin y ejemplos en lo que al lenguaje de
programacin se refiere:
http://www.voicexml.org
(Foro de VoiceXML)
http://www.voicexmlreview.org/
(Revista electrnica mensual de VoiceXML)
http://www.w3.org/TR/voicexml20/
(Recomendacin del W3C para VoiceXML 2.0)
http://www.verbio.com
(Sitio Web de Verbio)
BBDD
Web Server
pasarela de voz
+
motor VoiceXML
Text-To-Speech reconocedor
de voz
figura 2.1: arquitectura de la plataforma Verbio VoiceXML
El mdulo Verbio VoiceXML debe estar montado sobre un equipo con sistema
operativo Windows 2000, 2003 o XP (y sus versiones Server) con un mnimo
de 256MB de RAM (recomendable 512MB) y 1GHZ de CPU.
2.3 Gestin de la plataforma
Cuando llega una llamada entrante a la pasarela de voz, esta es redirigida a los
usuarios de los dominios en funcin de las restricciones establecidos por el
administrador del sistema.
llamantes o usuarios
de los servicios
finales
93 409 71 20
93 409 71 21 93 409 71 23 distribucin de los
recursos
93 409 71 22
http://empresa1/usuario1.xml http://servidor/usuario3empresa2.xml
http://empresa1/usuario2.xml
empresa 1 (dominio 1)
VoxServer
figura 2.3 : la pestaa VoxServer
dll: indica la dll que controla al dispositivo fsico. Verbio, proporciona dlls
para el control de dispositivos Dialogic, Eicon y de Audio sobre IP.
Adems proporciona un SDK para que los integradores puedan
desarrollarse su propias dlls para el control de dispositivos (para ms
informacin acerca del SDK de Verbio VoiceXML consultar la guia del
integrador de Verbio VoiceXML).
VoiceXML
Para aadir dominios y usuarios deben utilizarse los botones add, remove y
modify.
Fichero de configuracin
Cada usuario puede definir sus pginas de inicio VoiceXML en funcin del
DNIS (o nmero llamante) y el ANI (o nmero llamado).
Para ambos casos pueden usarse el * para indicar todo. As, un DNIS del
tipo:
<dnis number="93409*"> significa que se atendern todas las llamadas cuyo
DNIS empiece con la cadena 93409.
almacenamiento de
pginas VoiceXML
.vxml
Gramticas
Gramticas de voz
Mediante las gramticas de voz se pueden especificar:
gramtica ABNF
Gramticas builtin:
<grammar src="builtin:grammar/boolean"/>
code: Verbio ASR incorpora en esta builtin: cdigos numricos hablados como
una secuencia de nmeros naturales.
spell: Verbio ASR incorpora en esta builtin deletreos, tanto alfabticos como
numricos.
o bien,
<grammar src="builtin:grammar/x-nif"/>
result: abrir 1
confidence: 185.34
utterance: abrir ventana
result: abrir 1
confidence: 185.34
utterance: abrir ventana
result: 1
confidence: 165.34
utterance: ventana
NLSML
Hay muchas formas de entregar los resultados de reconocimiento al usuario.
Desde la utilizacin de nomenclaturas propias de plataforma, hasta la
utilizacin de lenguajes estndar.
<rule id="action">
<one-of>
<item> abrir </item>
<item> cerrar </item>
</one-of>
</rule>
<rule id="object">
<one-of>
<item> ventana </item>
<item> puerta </item>
<item> luz </item>
</one-of>
</rule>
y el NLSML generado:
O si la gramtica fuera:
#ABNF 1.0 UTF-8;
language es;
mode voice;
root $out;
Reglas vacas
Para obtener como resultado de reconocimiento tanto las reglas vacas y como
las rellenadas, en Verbio VoiceXML debe fijarse a true la propiedad especfica
de plataforma com.verbio.wantemptyrules:
Dada la gramtica del ejemplo 3, con una entrada del usuario como:
>> usuario: abrir ventana
<field name=out>
</field>
out$.result
out$.confidence
out$.utterance
out.action$.result = abrir ;
out.action$.confidence = 172.80;
out.action$.utterance = abrir ;
out.object$.result = ventana ;
out.object$.confidence = 192.80 ;
out.object$.utterance = ventana ;
Slo las reglas rellenadas en el reconocimiento disponen de representacin en
sta estructura de objetos. Esto es un problema, dado que el programador de
la aplicacin no puede prever a priori los resultados de reconocimiento, pero
necesita programar la aplicacin en funcin de ellos.
Adems, si se intenta acceder a un miembro no existente de un objeto,
JavaScript nos devolver un error.
<form>
<field name="choose">
<grammar src="gram/gram.bnf"/>
<property name="com.verbio.wantemptyrules" value="true"/>
<prompt>What do you want?</prompt>
<filled>
<prompt cond=choose.info$.confidence > 0>information</prompt>
<prompt cond=choose.reserve$.confidence > 0>reserve</prompt>
<prompt cond=choose.cancel$.confidence > 0>cancel</prompt>
</filled>
</field>
</form>
choose$.result
choose$.confidence
choose$.utterance
var choose = new object();
var choose.info$ = new object();
var choose.reserve$ = new object();
var choose.cancel$ = new object();
choose.info$.result;
choose.info$.confidence;
choose.info$.utterance;
choose.reserve$.result;
choose.reserve$.confidence;
choose.reserve$.utterance;
choose.cancel$.result;
choose.cancel$.confidence;
choose.cancel$.utterance;
La versin 2.1 del estndar de VoiceXML prev incorporar adems una nueva
transferencia llamada consultation que viene a ser una solucin intermedia
entre la transferencia bridge y la blind.
con PBX * X - X X
con PBX * X - X -
con PBX * X - X X
* depende de la PBX. Contacte el soporte tcnico de VERBIO (support@verbio.com) para informacin adicional.
(1) La transferencia queryblind, permite una negociacin previa a la aceptacin de la llamada entre el llamado y la
aplicacin. Contacte con el soporte tcnico de VERBIO para informacin adicional respecto esta tipo de
transferencia.
3. Herramientas adicionales de Verbio VoiceML
botn new
Una vez seleccionados los canales a monitorizar aparece una nueva ventana
monitor. sta organiza la informacin en 6 columnas:
Para navegar por las aplicaciones, el usuario debe utilizar un micrfono para
hablar y altavoces para escuchar el audio provinente del servidor.