Está en la página 1de 43

versin 7.

1
19-01-2005

Gua del usuario

Copyright 2003 Verbio Technologies, S.L.


www.verbio.com
support@verbio.com
Tabla de contenidos
1. Introduccin a VoiceXML ............................................................. 3
1.1 Bienvenido ................................................................................................ 3
1.2 Qu es VoiceXML? ................................................................................. 3
1.3 El World Wide Web y VoiceXML ............................................................... 4
1.4 La Tecnologa del habla............................................................................ 5
1.5 La extensin del mundo Web ................................................................... 6
1.6 Resumiendo conceptos ............................................................................ 6
1.7 Ejemplos de aplicaciones de voz .............................................................. 7
1.8 Dnde encontrar documentacin .............................................................. 9

2. Verbio VoiceXML ....................................................................... 10


2.1 Arquitectura de la plataforma .................................................................. 10
2.2 Requisitos del sistema ............................................................................ 11
2.3 Gestin de la plataforma ......................................................................... 12
2.3.1 Administracin de Verbio VoiceXML .......................................................... 13
VoxServer ....................................................................................................... 13
Hardware ........................................................................................................ 15
VoiceXML ...................................................................................................... 16
Domains .......................................................................................................... 17
2.3.2 Configuracin de usuario............................................................................... 18
Fichero de configuracin ................................................................................ 18
Verbio VoiceXML User Administrator.......................................................... 20
2.4 El motor de navegacin VoiceXML ......................................................... 21
2.4.1 Caractersticas del motor ............................................................................... 21
Salidas del sistema (outputs) .......................................................................... 21
SSML .......................................................................................................... 22
Entradas al sistema (inputs) ............................................................................ 22
Gramticas .................................................................................................. 22
Gramticas de voz .................................................................................. 22
Gramticas DTMF .................................................................................. 24
Gramticas builtin: ................................................................................. 24
Reconocimiento e Interpretacin Semntica .............................................. 26
NLSML................................................................................................... 27
Reglas vacas .......................................................................................... 30
Resultados de reconocimiento en VoiceXML ........................................ 31
2.4.2 Propiedades por defecto del motor ................................................................ 35
2.4.3 Propiedades especificas de la plataforma Verbio VoiceXML....................... 36
2.4.4 Transferencias en Verbio VoiceXML ........................................................... 37

3. Herramientas adicionales de Verbio VoiceML ........................... 40


3.1 Verbio VoiceXML Logging Monitor ......................................................... 40
3.2 Verbio IP Audio Device ........................................................................... 43
1. Introduccin a VoiceXML
1.1 Bienvenido

Bienvenido a Verbio VoiceXML, la nueva herramienta de VERBIO para


desarrollar aplicaciones de voz.

Verbio VoiceXML es una plataforma de navegacin de pginas VoiceXML


desarrollada para entornos de telefona y dispositivos IP.

En los siguientes captulos de sta gua se hace una referencia al lenguaje de


programacin VoiceXML y a la tecnologa de voz en general (sus orgenes, sus
oportunidades y su futuro) para posteriormente describir con ms detalle la
plataforma Verbio VoiceXML, su motor de navegacin y las herramientas que
facilitan su uso.

1.2 Qu es VoiceXML?

VoiceXML (Voice Extensible Markup Language) es el equivalente al lenguaje


de programacin HTML y el estndar ms popular para el desarrollo de
aplicaciones de voz.
Utilizando la potente infraestructura Web desarrollada para el HTML, VoiceXML
facilita la creacin y extensin de aplicaciones de voz. Como con la
programacin en HTML, ste lenguaje ha abierto inmensas oportunidades de
negocio.

La versin 1.0 de VoiceXML fue publicada por el VoiceXML Forum, un


consorcio de ms de 500 empresas, en Marzo del ao 2000. Posteriormente, el
Forum entreg el control del estndar al World Wide Web Consortium (W3C), y
ahora es ste quien se encarga de garantizar el cumplimiento de la normativa
legal, as como de los temas educativos y de marketing. Desde entonces, el
W3C ha publicado la versin 2.0 de VoiceXML y la Candidate Recomendation
para la versin 2.1.

Mientras HTML basa su funcionalidad en un navegador grfico (entre los ms


conocidos, Internet Explorer o Netscape) con pantalla, teclado y mouse,
VoiceXML funciona mediante un navegador de voz cuya salida es audio, y cuya
entrada es audio y teclado. La entrada de audio est controlada por un
reconocedor de voz integrado con el navegador de VoiceXML. La salida de
audio consiste en audio pre-grabado y/o en voz sintetizada por un sistema de
Text-To-Speech.

Un navegador de voz normalmente funciona en base a una pasarela de voz


que es un nodo conectado tanto a Internet como a la RTC (Red Telefnica
Conmutada). La pasarela de voz puede soportar cientos o miles de llamadas
simultneas y permite que accedan a ella cualquiera de los 2,500,000,000
millones de telfonos que se estima que hay en el mundo, entre los mviles y
los telfonos fijos de toda la vida.

El siguiente diagrama muestra sta arquitectura:

navegador de voz

Usuario

RTC WWW
Usuario

pasarela de voz
Usuario

Text to Speech motor VoiceXML reconocedor


de voz
figura 1.1: arquitectura de un sistema VoiceXML

El lenguaje VoiceXML se beneficia adems de:

el crecimiento del WWW World Wide Web y de las posibilidades que


este ofrece.
las mejoras en el campo del reconocimiento de voz y la sntesis de texto
al habla.
la expansin del WWW a niveles ms all del ordenador de sobremesa.

1.3 El World Wide Web y VoiceXML

El abanico de posibilidades que ofrece el mundo Web ha ido creciendo


vertiginosamente desde sus comienzos.

Al principio, los servidores Web, solo almacenaban contenidos estticos.


Ahora, son capaces de generarlos dinmicamente mediante scripts, paginas
servidor, servlets, acceso a bases de datos y muchas otras tecnologas.
VoiceXML aprovecha todas estas tecnologas ya desarrolladas.

Tambin la representacin de la informacin Web ha avanzado con el tiempo.


XML es una forma general y flexible de representar la informacin, que adems
permite de forma sencilla y mediante tecnologas de transformacin, convertir
una estructura XML en otra XML o en otra que no siga este formato. VoiceXML
se basa en el XML beneficindose as, de todas las ventajas que ofrece este
lenguaje.
Como tambin se beneficia de los avances continuos de Internet, en trminos
de eficiencia, anchos de banda y calidad de servicio. Mejoras que conducen a
nuevas aplicaciones Web y servicios, los cuales generan en si nuevas mejoras.
Por ejemplo, la posibilidad de mover informacin de audio a travs de la Web
de forma eficiente es un claro beneficio para VoiceXML.

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.

1.4 La Tecnologa del habla

Los sistemas automticos de reconocimiento de voz (ASR) han mejorado


muchsimo en los ltimos aos a medida que se han ido desarrollando mejores
algoritmos y modelos acsticos, y han ido apareciendo computadoras con
mayor capacidad de clculo. Por ejemplo, un sistema de ASR funcionando en
un ordenador personal o de oficina, con prestaciones estndar, y un micrfono
puede funcionar perfectamente como herramienta de dictado siempre que haya
sido previamente entrenado por la voz que pretende usarlo para este fin.

A travs del telfono, sin entrenamiento de voz, un sistema de ASR necesita


tener un conjunto de gramticas de voz o vocabularios que le indiquen que
palabras o frases puede entender de los usuarios en cada instante. Los
telfonos mviles, adems, necesitan usar tecnologa avanzada para paliar los
efectos de los entornos ruidosos en el reconocimiento de voz. El
Reconocimiento de voz se utiliza hoy en da en un amplio nmero de
aplicaciones comerciales.

Tambin se han echo avances importantes en el campo de la sntesis de voz o


sistemas Text-To-Speech (TTS). Los antiguos TTS generaban voz muy
robtica y poco natural. Eran pesados de escuchar e incluso en ocasiones se
hacan incomprensibles. Ahora los sistemas de TTS suenan mucho ms
naturales contribuyendo a realizar mejores aplicaciones de voz dnde existe
una interaccin hombre maquina.

Es importante resaltar que VoiceXML se puede utilizar incluso en entornos sin


tecnologa de voz. La salida de audio puede consistir en locuciones pre-
grabadas y la entrada de inputs por parte del usuario puede llevarse a cabo
mediante el teclado telefnico (DTMFs).

Mientras que la tecnologa de voz, con sus avances, permite desarrollar


aplicaciones mucho ms potentes y naturales de utilizar, VoiceXML adems
aade las ventajas del desarrollo Web.
1.5 La extensin del mundo Web

Internet se extiende a ms dispositivos que los ordenadores personales: por


ejemplo, los dispositivos PDA con conexin wireless, los telfonos mviles que
soportan tecnologas como WAP (Wireless Application Protocol) o GPRS
(General Packet Radio Service) o los telfonos i-mode con tecnologa NTT
Docomos . El fututo nos llevar ms dispositivos preparados para el Web: MP3
de mano con conexin a Internet, mquinas de venda de productos que ellas
mismas hacen encargos cuando se les acaba algn producto, displays de
pared que descargan cuadros de Internet, televisores basados en el Web, y un
largo etctera.

La tecnologa de voz es una interfaz natural y muy potente para los


dispositivos Web. Los micrfonos son mucho ms pequeos que los teclados y
los altavoces que las pantallas. Parece bastante probable que la mayora de los
futuros dispositivos Web incorporaran un sistema de reconocimiento y sntesis
de voz.

1.6 Resumiendo conceptos

Podramos resumir en 4, los motivos por los cuales es tan importante la


penetracin y el enfoque de la tecnologa VoiceXML:

1. En primer lugar, porque el telfono es una herramienta con mucho


poder. Actualmente hay ms de 2.2 billones de telfonos en uso. Una cifra muy
superior a la de usuarios que disponen de ordenador con conexin a Internet.
Adems los telfonos son fciles de usar y no necesitan ni tiempo de arranque
ni sistemas operativos.

Tambin los telfonos mviles estn consiguiendo una gran penetracin en la


poblacin. A diferencia de los ordenadores porttiles y algunas PDAs, los
telfonos mviles son fciles de llevar, no demasiado caros y tienen bateras
con un tiempo de vida largo. Adems pueden usarse mientras se conduce o se
tienen las manos ocupadas.

2. En segundo lugar, porque la voz es importante en el telfono. La voz


siempre ha sido la forma natural de comunicarse a travs del telfono. Aunque
algunos mviles disponen de navegadores WAP o XHTML, sus pequeas
pantallas y teclados, hacen complicada la navegacin, especialmente en
algunas circunstancias como por ejemplo durante la conduccin.

Sin embargo, existen ventajas al combinar navegadores visuales con


navegadores de voz. Por ejemplo, la informacin compleja es difcil de recordar
cuando se habla con el usuario, pero sencilla de recordar si esta persistente de
forma visual. Y algunos fallos de reconocimiento son fciles de corregir con una
entrada de teclado. En consecuencia, es previsible que con el tiempo
aparezcan aplicaciones multimodales, desarrolladas de la unin de
aplicaciones estrictamente visuales y aplicaciones estrictamente de voz.
3. En tercer lugar, por que Internet ayuda al desarrollo de aplicaciones
de voz en VoiceXML:

El desarrollo de aplicaciones de voz es ms sencillo debido a que


VoiceXML es un lenguaje de marcas de alto nivel y porque las
aplicaciones de voz ahora se pueden construir en su plenitud con
herramientas potentes, sin un coste excesivo.
Las aplicaciones de voz son ahora ms que nunca, sencillas de
distribuir. Ya no es necesario que residan en servidores de voz
dedicados a esta tarea: pueden alojarse en cualquier sitio y
accedidas por cualquier servidor de VoiceXML.
Las aplicaciones pueden estructurarse de forma ordenada y limpia,
entregando distintas pginas VoiceXML al navegador de voz en
funcin de por ejemplo el dispositivo que las est navegando.

4. Finalmente, la voz y VoiceXML son importantes para otros dispositivos


Web adems del telfono. Por ejemplo, un control remoto universal, podra
llevar un navegador VoiceXML incorporado o comunicarse con alguno
mediante tecnologa Wireless. Podras entrar en el comedor, sacar el control
remoto, pulsar el botn de hablar y decir algo como: equipo de msica:
APAGAR, televisin: qu pelculas de accin hacen hoy?

1.7 Ejemplos de aplicaciones de voz

Qu tipo de aplicaciones de voz son las ms adecuadas para VoiceXML?


Estas son algunas ideas:

Sistemas de Informacin:

Los sistemas de informacin son un ejemplo tipo de aplicacin VoiceXML. En


un sistema de informacin, la salida de audio tiende a ser audio pregrabado y
la entrada de informacin pueden ser comandos de voz bastante cerrados
(comandos de navegacin, fechas, respuestas si/no, etc.) o respuestas ms
naturales (direcciones arbitrarias de calles, etc.).

Un buen ejemplo de un sistema de informacin es por ejemplo una aplicacin


donde primero el usuario se personaliza un boletn informativo en un sitio Web
y posteriormente llama peridicamente para navegar a travs de las noticias
del boletn. El boletn puede contener noticias de ltima hora, deportes,
informacin del trfico, del tiempo, de la bolsa, etc. El servicio podra ganar
dinero a base de suscripciones, anuncios o tiempo de conexin.
Comercio Electrnico:

El comercio electrnico es otra rea con gran cabida para VoiceXML.


Aplicaciones para ofrecer servicios de tracking de pedidos, estados de cuenta o
soporte, son algunos ejemplos.

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.

Ya que las medidas de seguridad estndar de la Web aplican tambin a la


tecnologa de voz en la Web, las aplicaciones de intranet pueden ser tambin
programadas en VoiceXML para el control de inventario, entrega de pedidos,
servicios de recursos humanos o atencin al cliente, o para crear portales de
voz corporativos.

Mensajera unificada:

Las aplicaciones de mensajera unificada pueden verse impulsadas gracias a la


voz. Los mensajes de voz pueden leerse a travs del telfono, los mails de
salida pueden grabarse (y en el futuro quiz transcribirse) y enviarse como un
fichero de voz grabado, y la informacin relativa a direcciones, sincronizarse
con agendas personales y sistemas de email.

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)

En la carpeta de documentacin de VoiceXML, se encuentra la versin pdf de


la recomendacin del W3C para la versin 2.0 de VoiceXML. Es recomendable
hacer una lectura rpida de dicho documento antes de abordar los siguientes
captulos de sta gua, con el fin de facilitar su comprensin.
2. Verbio VoiceXML
2.1 Arquitectura de la plataforma

La arquitectura necesaria para montar una plataforma de navegacin Verbio


VoiceXML es la que se representa en la siguiente figura:

BBDD

Web Server

pasarela de voz
+
motor VoiceXML

Text-To-Speech reconocedor
de voz
figura 2.1: arquitectura de la plataforma Verbio VoiceXML

En primer lugar se necesita un Web Server, dnde se almacenen las pginas y


ficheros de las aplicaciones VoiceXML, as como los ficheros de configuracin
de los usuarios del servicio. Existen mltiples servidores Web en el mercado
(entre los ms conocidos, Apache o Internet Information Server).
El Web Server se puede montar en cualquier PC con un mnimo de
prestaciones en trminos de velocidad y memoria e incluso pueden usarse
Web Servers ya existentes proveedores de otro tipo de servicios.

Por otro lado, se necesitan la pasarela de voz y el motor VoiceXML,


conectados con los motores de Text-To-Speech (TTS) y de reconocimiento de
voz (ASR).
La versin 7.1 de Verbio VoiceXML, soporta los motores de sntesis y
reconocimiento de Verbio, y tambin los motores de sntesis que funcionan
bajo protocolo SAPI 4.x o SAPI 5.x .
2.2 Requisitos del sistema

La arquitectura de la plataforma Verbio VoiceXML puede montarse en una sola


mquina fsica que contenga el Web Server, la pasarela y motor VoiceXML y
los motores de TTS y ASR, pero en estos casos la capacidad de sta (en
trminos de memoria y CPU) deber ser como mnimo de 512MB RAM y
1800MHZ de CPU.

Sin embargo, es aconsejable montar la plataforma Verbio VoiceXML (y


como mximo tambin el Web Server) en un servidor, instalando en otro
equipo de la misma red los motores de TTS y ASR.

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

Verbio VoiceXML esta enfocado hacia un modelo de negocio ASP (Application


Service Provider). Sus recursos (a efectos de lneas de telefona) son
gestionados por un administrador que los reparte entre los distintos usuarios
del sistema, agrupados en dominios como se muestra en la figura 2.2.

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.

Cada uno de los usuarios dispone de un fichero de configuracin XML donde


en funcin del nmero llamante (ANI) y el nmero llamado (DNIS) puede dirigir
la llamada a una aplicacin VoiceXML u otra.

Verbio VoiceXML - Modelo ASP


Ejemplo del modelo con 3 usuarios del servicio (agrupados en 2 dominios)

llamantes o usuarios
de los servicios
finales

Recursos entrantes disponibles:


proveedor o
93 409 71 20
93 409 71 21
administrador del
93 409 71 22 servicio
93 409 71 23 Verbio VoiceXML

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)

servidor HTTP usuarios o clientes


empresa 2 (dominio 2)
servidor HTTP externo
del modelo ASP,
agrupados en
usuario1.xml
usuario 1 empresas o
dominios.
usuario 2 usuario2.xml usuario3 usuario3empresa2.xml

figura 2.2: organizacin de los dominios en Verbio VoiceXML


2.3.1 Administracin de Verbio VoiceXML

Verbio VoiceXML funciona como un servicio de Windows. Su configuracin, as


como la administracin de sus dominios y usuarios se realiza mediante la
aplicacin Verbio VoiceXML Configuration Manager. A continuacin se
describen las distintas opciones que sta ofrece:

Verbio VoiceXML Configuration Manager nos ofrece un abanico de


posibilidades a configurar, agrupadas en 4 pestaas o mens:

VoxServer
figura 2.3 : la pestaa VoxServer

La pestaa VoxServer nos permite configurar la ubicacin de las mquinas


principal y de back-up (opcional) dnde se encuentran los motores de sntesis y
reconocimiento (en la versin 7.1 de Verbio VoiceXML, los motores de sntesis
y reconocimiento deben estar instalados en la misma mquina fsica).

Cuando se introduce la IP de la mquina principal, el configurador obtiene


informacin sobre las configuraciones y locutores disponibles en dicha mquina
(el servicio debe estar iniciado). Dicha informacin sirve para rellenar las
tablas de TTS y ASR de Verbio VoiceXML Configuration Manager. El
administrador deber seleccionar los idiomas de sntesis y reconocimiento que
desee arrancar y los utilizados por defecto cuando arranque el servicio de
VoiceXML.
Hardware

figura 2.4 : la pestaa Hardware

La pestaa Hardware permite seleccionar los dispositivos de telefona e IP que


Verbio VoiceXML debe iniciar cuando se arranque el servicio.
Para aadir, quitar o modificar dispositivos, pueden utilizarse los botones add,
remove y modify.

Cuando se aade o modifica un dispositivo, se abre un cuadro de dilogo


donde debe proporcionarse la siguiente informacin:

manufacturer: fabricante del dispositivo : Audio, Dialogic, Eicon,


Natural, Teima o IPAudio son los disponibles en la versin 7.1

device name: nombre identificativo (nmero de serie para Dialogic) del


dispositivo fsico. Si se especifica * como nombre, el servicio iniciar
todos los dispositivos fsicos del manufacturer especificado.

open channel(s): canales a abrir para dicho dispositivo. Pueden


especificar-se rangos (por ejemplo 1-4 = abrir canales del 1 al 4) o
canales no consecutivos (ej.: 1,4 = abrir canales 1 y 4).
channel(s) type (incomming / outgoing): tipo de canal. Los canales
son siempre del tipo incomming, excepto cuando quieren hacerse
transferencias utilizando dos recursos fsicos (ver captulo 2.4.4).

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

figura 2.5 : la pestaa VoiceXML

En la pestaa VoiceXML se permiten escoger algunas opciones de arranque


para el motor de VoiceXML:

service mode: Indica el modo de arranque del servicio. Las opciones


son automatic (cada vez q arranca el equipo) o manual.

objects: permite aadir una lista de dlls dnde se encuentran definidos


objetos (<object>) VoiceXML propios de la plataforma. Para ms
informacin acerca de cmo aadir objetos propios consultar la guia del
integrador de Verbio VoiceXML.
Domains

figura 2.6 : la pestaa Domains

El servicio de Verbio VoiceXML organiza sus recursos en dominios y usuarios.


Cada usuario debe formar parte de un dominio dentro del cul se definen los
recursos que tiene reservados o contratados,

Para aadir dominios y usuarios deben utilizarse los botones add, remove y
modify.

Para aadir o modificar un dominio slo debe especificarse su nombre.


Para aadir o modificar un usuario deben definirse:
Nombre
Contrasea
Direccin de email
Recursos de telefona (DNIS) asignados al usuario: El administrador del
sistema distribuye sus recursos de telefona entre sus usuarios
(organizados en dominios), mediante esta opcin. As, por ejemplo, si un
usuario tiene asignados los recursos:
- 93*, significar que ste usuario recibir todas las llamadas a los
nmeros del administrador que empiecen por 93. Estas sern
dirigidas a una aplicacin u otra en funcin del fichero de
configuracin de ste usuario.
O por ejemplo,
- *, significar que el usuario recibir todas las llamadas.
- 9340971*, significar que el usuario recibir todas las llamadas
dirigidas a nmeros que empiecen con 9340971.

Fichero de configuracin del usuario: Indica dnde se encuentra alojado


el fichero de configuracin del usuario. ste debe estar en un
servidor HTTP y debe seguir un determinado formato (ver captulo
2.3.2). El fichero de configuracin le permitir al usuario gestionar los
recursos que tiene asignados y repartirlos entre sus aplicaciones.

2.3.2 Configuracin de usuario

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.

Tambin puede usarse el smbolo ! para indicar negacin o opuesto.


As un DNIS como:
<dnis number="!93*"> significar que se atendern todas la llamadas cuyo
DNIS no empiece por 93.

La misma nomenclatura aplica para el ANI.

En el siguiente ejemplo se especifica que las llamadas entrantes que empiecen


con 93 deben ser atendidas por la pgina VoiceXML indice-ca.vxml, mientras
que las dems deben hacerlo con la indice-es.vxml:
<dnis number="93*">
<ani number="*">
<voicexmlfile>http://localhost/indice-ca.vxml</voicexmlfile>
</ani>
</dnis>
<dnis number="!93*">
<ani number="*">
<voicexmlfile> http://localhost/indice-es.vxml</voicexmlfile>
</ani>
</dnis>

figura 2.7 : ejemplo de fichero de configuracin de usuario

Las llamadas de los usuarios que el administrador de Verbio VoiceXML dirija a


cada usuario consultarn este fichero para contestar con una aplicacin
VoiceXML u otra.
Verbio VoiceXML User Administrator

User Administrator es una herramienta de cliente para actualizar los ficheros de


configuracin.

La aplicacin pide en primer lugar, seleccionar el servidor VoiceXML (la


direccin IP) dnde se desea actualizar la configuracin del cliente.

En segundo lugar, el usuario debe identificarse


con su nombre de usuario, su password y con el
nombre del dominio al que pertenece.

Finalmente, debe especificarse la direccin HTTP


dnde se ubica el nuevo fichero de configuracin
de ste usuario.

Una vez rellenados todos estos campos debe


pulsarse el botn upload, para subir la
configuracin de usuario al servidor VoiceXML
que deber estar arrancado.

La siguiente llamada que el administrador del


sistema dirigia a ste usuario, ser atendida
siguiendo las premisas del nuevo fichero de
configuracin.
figura 2.8 : User Administrator
2.4 El motor de navegacin VoiceXML
2.4.1 Caractersticas del motor

Verbio VoiceXML soporta las funcionalidades definidas por el W3C en su


versin 2.0 del estndar (http://www.w3.org/TR/voicexml20/), adems de
incorporar algunas caractersticas de la versin 2.1 (an Candidate
Recommendation) y algunas funcionalidades propias de inters.

El motor de VoiceXML se puede ver de forma esquemtica como una caja


negra que interpreta documentos VoiceXML generando hacia el usuario
outputs o salidas de audio y recibiendo del usuario inputs o entradas (audio o
DTMFs).

almacenamiento de
pginas VoiceXML

.vxml

entrada al sistema interpretacin de


los documentos
VoiceXML

Usuario salidas del sistema

interaccin usuario - mquina

figura 2.9 : esquema del motor VoiceXML

Salidas del sistema (outputs)


El elemento prompt (en lenguaje VoiceXML) controla la salida de la voz
sintetizada y de los audio pregrabados.
Los prompts bsicos estn formados por texto comprendido entre etiquetas
<prompt>:

<prompt>Por favor, dime tu nombre.</prompt>

Puede omitirse la sintaxis <prompt> ... </prompt> siempre que no sea


necesario especificar un atributo del prompt (como por ejemplo el bargein
<prompt bargein=true> ) y que el prompt consista en PCDATA (no contenga
etiquetas SSML) o en etiquetas <audio> o <value>.
SSML
VoiceXML permite utilizar las etiquetas definidas por el lenguaje estndar del
W3C SSML (Speech Synthesis Markup Language), en la elaboracin de
prompts.
Dicho lenguaje debe ser soportado por el sistema de TTS que se integre con el
motor de VoiceXML.
El motor de sntesis de Verbio (Verbio TTS), soporta en su plenitud las
especificaciones del estndar SSML en su versin 1.0, permitiendo as generar
prompts que por ejemplo controlen el nfasis o las pausas de las frases:

<prompt>Esto es un texto generado por <emphasis> computador


</emphasis>. <break size="medium"/> Qu te parece? </prompt>

Verbio Read Aloud es la herramienta de VERBIO para el desarrollo,


depuracin y test de textos sintetizados. Para ms informacin acerca de sta
herramienta consultar la gua del usuario de Verbio.

Entradas al sistema (inputs)


Las gramticas son los elementos clave de las entradas al sistema por parte
del usuario.
Cada dilogo en VoiceXML tiene una o ms gramticas de voz y/o DTMF
asociadas.

Gramticas
Gramticas de voz
Mediante las gramticas de voz se pueden especificar:

un conjunto o set de palabras o frases que el usuario puede decir


para llevar a cabo una accin o proporcionar una informacin, y
adems se puede proporcionar un valor de retorno para describir la
informacin o la accin solicitada.

La representacin de gramticas para utilizar en reconocimiento de voz se ha


estandarizado con dos sintaxis distintas: la conocida como ABNF (Augmented
Backus-Naur Format) y la XML. Ambas son reconocidas por el W3C como
estndares (http://www.w3.org/TR/speech-grammar/) del reconocimiento de
voz.

El motor de reconocimiento utilizado por Verbio VoiceXML (Verbio ASR),


soporta ambas sintaxis.

Cuando se utilizan gramticas XML debe especificarse application/srgs+xml en


el atributo type de la etiqueta <grammar>.
Cuando se utilizan gramticas ABNF no es necesario especificar el atributo
type, pero en caso de hacerlo este debe ser: application/srgs.
ste es un ejemplo de una gramtica ABNF:

#ABNF 1.0 ISO8859-1;


public $polite = $startPolite $drink $endPolite;

public $startPolite = ( desearia | podria ) ;


public $drink = ( agua | vino | refresco );
public $endPolite = ( porfavor | gracias ) ;

gramtica ABNF

, y su equivalente en el formato XML:

<?xml version="1.0" encoding="ISO-8859-1"?>


<grammar xmlns="http://www.w3.org/2001/06/grammar"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.w3.org/2001/06/grammar
http://www.w3.org/TR/speech-grammar/grammar.xsd" xml:lang="es"
version="1.0" root="polite" mode="voice">

<rule id="polite" scope="public">


<ruleref uri="#startPolite"/>
<ruleref uri="#drink"/>
<ruleref uri="#endPolite"/>
</rule>
<rule id="startPolite" scope="public">
<one-of>
<item tag="desearia">desearia</item>
<item tag="podria">podria</item>
</one-of>
</rule>
<rule id="drink" scope="public">
<one-of>
<item tag="agua">agua</item>
<item tag="vino">vino</item>
<item tag="refresco">refresco</item>
</one-of>
</rule>
<rule id="endPolite" scope="public">
<one-of>
<item tag="porfavor">por favor</item>
<item tag="gracias">gracias</item>
</one-of>
</rule>
</grammar
gramtica XML

Existen plantillas de transformacin u hojas de estilo (XSLT) para convertir


gramticas del formato XML al formato ABNF (no a la inversa).

Verbio Grammar Manager es la herramienta de VERBIO para el desarrollo,


depuracin y test de gramticas Augmented BNF (ABNF). Para ms
informacin acerca de sta herramienta consultar la gua del usuario de Verbio.
Gramticas DTMF
Las gramticas DTMF (Dual Tone Multi-Frequency) permiten definir:

un conjunto de nmeros DTMF que el usuario puede pulsar para


llevar a cabo una accin o proporcionar una informacin, y
tambin permiten proporcionar un valor de retorno para describir la
informacin o la accin solicitada.

El estndar 2.0 de VoiceXML distingue las gramticas DTMF de las gramticas


de voz mediante el atributo mode de la etiqueta <grammar>.

El atributo "xml:lang" no posee ningn efecto sobre las gramticas DTMF.


Por lo dems, las gramticas de voz y las DTMF son tratadas por igual
incluyendo la opcin de definir gramticas inline (incrustadas en el
documento) o referenciarlas a un documento externo.

El siguiente es un ejemplo de gramtica inline DTMF dnde se aceptan como


valores posibles 1234 (la gramtica devuelve el nombre Marc), 123 (la
gramtica devuelve el nombre Javier) y # (la gramtica devuelve el nombre
Pedro).

<grammar mode="dtmf"> 1234{Marc} | "1 2 3"{Javier} | #{Pedro}


</grammar>

Gramticas builtin:

Existen gramticas especialmente diseadas para las tareas ms comunes (y a


menudo difciles) que han sido integradas en el reconocedor como un recurso
incorporado. Las gramticas bsicas incorporadas no son solamente la
definicin de las reglas sino el procesado interno de los resultados
considerando medidas de confianza y opcionalmente mltiples hiptesis (N-
Best). Son las denominadas gramticas builtin.

La versin 2.0 del estndar de VoiceXML especifica que deben proporcionarse


las siguientes builtin, todas ellas soportadas por la plataforma Verbio ASR:

boolean: Verbio ASR incorpora en esta builtin respuestas a preguntas tipo


s/no, cubriendo las palabras s, no (con modelado acstico especfico), y las
palabras y expresiones ms comunes para expresar confirmacin y negacin
(ej: exacto, correcto, no gracias, etc.).

date: Verbio ASR incorpora en esta builtin fechas en lenguaje natural,


cubriendo fechas fijas en cualquier formato (slo el da, da y mes o da, mes y
ao).
digits: Verbio ASR incorpora en esta builtin cadenas de dgitos de longitud
limitada o no, usando modelos acsticos especficos para los dgitos
conectados (ej: uno, tres, cuatro, siete, etc.).

currency: Verbio ASR incorpora en esta builtin cantidades monetarias (ej:


veintisiete euros con cinco cntimos).

number: Verbio ASR incorpora en esta builtin nmeros naturales dentro de un


rango limitado (ej: dos mil trescientos cuarenta y siete, doce, etc.).

phone: Verbio ASR incorpora en esta builtin nmeros de telfono en lenguaje


natural, cubriendo las ms frecuentes formas de agrupar los dgitos en
nmeros naturales (noventa y tres, cuatro cero nueve, setenta y uno, veinte).

time: Verbio ASR incorpora en esta builtin expresiones de tiempo en lenguaje


natural que especifican horas y minutos.

Todas estas builtin deben especificarse o bien mediante el atributo type de la


etiqueta <field> o bien mediante la sintaxis:

<grammar src="builtin:grammar/boolean"/>

Adems Verbio VoiceXML proporciona mediante Verbio ASR otras gramticas


builtin de gran utilidad para muchas aplicaciones de voz:

creditcard: Verbio ASR incorpora en esta builtin nmeros de tarjetas de crdito


(dictados dgito a dgito).

code: Verbio ASR incorpora en esta builtin: cdigos numricos hablados como
una secuencia de nmeros naturales.

nif: Verbio ASR incorpora en esta builtin nmero de identificacin fiscal


personal (NIF) de Espaa.

spell: Verbio ASR incorpora en esta builtin deletreos, tanto alfabticos como
numricos.

Siguiendo la recomendacin 2.0 del estndar, estas builtin pueden usarse


utilizando tambin el atributo type de la etiqueta <field> o bien mediante la
etiqueta <grammar>, pero siempre precediendo el nombre de la builtin con una
x- para indicar que es una gramtica builtin especifica de plataforma:

<field name=asknif type="x-nif"/>

o bien,

<grammar src="builtin:grammar/x-nif"/>

Para ms informacin acerca de las builtin especificadas por el estndar de


VoiceXML, as como sus valores de retorno y sus posibles parmetros,
consultar el Apndice P de la recomendacin
(http://www.w3.org/TR/voicexml20/#dmlABuiltins).

Reconocimiento e Interpretacin Semntica

Verbio ASR permite escoger si el resultado de un reconocimiento asociado a


una gramtica (ya sea en formato XML o ABNF) genera interpretacin
semntica o no.

Cuando una gramtica no genera interpretacin semntica, esta entrega al


usuario, el valor de retorno del reconocimiento (o result), la confianza global
con la que ha reconocido (o confidence) y las palabras que ha entendido
durante el reconocimiento (o utterance).
Por ejemplo dada la siguiente gramtica ABNF:

#ABNF 1.0 UTF-8;


language es;
mode voice;
root $out;

public $out = (abrir | cerrar) $object;

$object = ventana {1} | puerta {2} | luz {3};


ejemplo 1: gramtica ABNF

ante el siguiente input por parte del usuario:


>> usuario: abrir ventana

El resultado de reconocimiento asociado, sin interpretacin semntica, genera


3 valores de retorno:

result: abrir 1
confidence: 185.34
utterance: abrir ventana

Cuando al reconocedor se le pide que genere interpretacin semntica, ste


genera los mismos campos (result, confidence y utterance), pero lo hace
para cada regla y subregla de la gramtica, en lugar de hacerlo de forma
global. Por ejemplo en el caso anterior:

para la regla out:

result: abrir 1
confidence: 185.34
utterance: abrir ventana

y para la regla object:

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.

Verbio ASR devuelve los resultados de reconocimiento al motor de VoiceXML


en el lenguaje estndar del W3C conocido como Natural Language Semantics
Markup Language o NLSML (http://www.w3.org/TR/nl-spec/). ste es un
lenguaje de marcas que se complementa perfectamente con las gramticas de
reconocimiento escritas en lenguaje XML (http://www.w3.org/TR/nl-spec/)
soportadas por Verbio ASR.
Las gramticas XML, sin embargo, ofrecen menos posibilidades que las ABNF,
tambin definidas como estndar por el consorcio W3C y soportadas por
Verbio ASR. Es por este motivo que VERBIO ha extendido el NLSML en su
motor Verbio ASR, para poder soportar todas las funcionalidades del lenguaje
ABNF.

En las gramticas ABNF, existe la opcin de mezclar reglas y texto, lo cual no


est permitido en formato XML. De ste modo, la gramtica:

#ABNF 1.0 UTF-8;


language es;
mode voice;
root $out;

public $out = (abrir | cerrar) $object;

$object = ventana | puerta | luz;


ejemplo 2: gramtica ABNF

no dispone de equivalencia directa en el formato XML.


Para poder disponer de una equivalencia en formato XML, la gramtica debera
ser redefinida del siguiente modo:

#ABNF 1.0 UTF-8;


language es;
mode voice;
root $out;

public $out = $action $object;

$action = abrir | cerrar;


$object = ventana | puerta | luz;
ejemplo 3: gramtica ABNF

Entonces su equivalencia XML sera:


<?xml version="1.0" encoding="UTF-8"?>
<grammar xmlns="http://www.w3.org/2001/06/grammar" xml:lang="es"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
version="1.0" mode="voice" root="out">

<rule id="out" scope="public">


<ruleref uri="#action"/>
<ruleref uri="#object"/>
</rule>

<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>

ejemplo 4: gramtica XML

NLSML slo contempla la opcin de devolver resultados de reconocimiento que


estn explcitamente definidos en una regla que no contenga subreglas.
De ste modo, dada la gramtica del ejemplo 3, si el reconocedor reconoce la
cadena abrir ventana, el resultado del reconocimiento en formato NLSML
ser:

<?xml version='1.0' encoding='iso-8859-1'?>


<result>
<interpretation grammar="0">
<instance confidence="82.80">
<action confidence="92.78"> abrir </action>
<object confidence="72.78"> ventana </object>
</instance>
<input mode=speech confidence="82.80">abrir ventana</input>
</interpretation>
</result>

Sin embargo, en el ejemplo 2, el NLSML resultante pierde informacin, dado


que la accin abrir no est contemplada dentro de ninguna regla:
<?xml version='1.0' encoding='iso-8859-1'?>
<result>
<interpretation grammar="0">
<instance confidence="82.80">
<object confidence="72.78"> ventana </object>
</instance>
<input mode=speech confidence="82.80">abrir ventana</input>
</interpretation>
</result>

Adems, NLSML no contempla la opcin de aadir informacin acerca de la


utterance de cada subregla.

Verbio ASR ha extendido el NLSML para poder aadir informacin al resultado


de reconocimiento con los atributos result y utterance en la etiqueta
<instance> y en las etiquetas de cada subregla.

El atributo utterance representa lo que el usuario ha dicho dentro de cada


regla y subregla de la gramtica.
El atributo result, representa el valor de salida de cada regla o subregla,
incluyendo los resultados de sus subreglas.

As, en el ejemplo 2, ante la siguiente entrada por parte del usuario:

>> usuario: abrir ventana

las salidas de las reglas sern:

$out (regla principal) abrir ventana


$object ventana

y el NLSML generado:

<?xml version='1.0' encoding='iso-8859-1'?>


<result>
<interpretation grammar="0">
<instance confidence="156.52" result="abrir ventana"
utterance="abrir ventana">
<object confidence="142.50" result="ventana"
utterance="ventana">ventana</object>
</instance>
<input mode="speech" confidence="156.52">abrir ventana</input>
</interpretation>
</result>

O si la gramtica fuera:
#ABNF 1.0 UTF-8;
language es;
mode voice;
root $out;

public $out = (abrir | cerrar) $object;


$object = [la | las] $item;
$item = ventana | ventanas | puerta | puertas | luz | luces ;
ejemplo 5: gramtica ABNF

ante la siguiente entrada por parte del usuario:

>> usuario: abrir la ventana

Las salidas de las reglas sern:


$out(regla principal) abrir la ventana
$object la ventana
$item ventana

y el NLSML resultante proporcionado por Verbio ASR sera:

<?xml version='1.0' encoding='iso-8859-1'?>


<result>
<interpretation grammar="0">
<instance confidence="156.52" result="abrir la ventana"
utterance="abrir la ventana">
<object confidence="142.50" result="la ventana" utterance="la
ventana">
<item confidence="170.50" result="ventana"
utterance="ventana">ventana</item>
</object>
</instance>
<input mode="speech" confidence="156.52">abrir la ventana</input>
</interpretation>
</result>

Reglas vacas

En ocasiones, puede resultar til devolver las reglas que componen la


gramtica, incluso en el caso en que stas no se hayan rellenado.
Verbio ASR, ofrece la opcin de devolver un NLSML completo, que incluye
TODAS las reglas de la gramtica (las que han sido rellenadas en el
reconocimiento y las que han permanecido vacas).

As, dada la siguiente gramtica ABNF:


#ABNF 1.0 UTF-8;
language es;
mode vioce;
root $out;

public $out = (abrir | cerrar) $object [$politeness];


$object = ventana | puerta | luz;
$politeness = por favor;
ejemplo 6: gramtica ABNF

ante el siguiente entrada por parte del usuario:

>> usuario: abrir ventana

El NLSML resultante sera:

<?xml version='1.0' encoding='iso-8859-1'?>


<result>
<interpretation grammar="0">
<instance confidence="133.98" result="abrir ventana" utterance="abrir
ventana">
<object confidence="163.42" result="ventana"
utterance="ventana">ventana</object>
<politeness confidence="0.00" result="[empty]"
utterance="">[empty]</politeness>
</instance>
<input mode="speech" confidence="133.98">abrir
ventana</input></interpretation></result>

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:

< property name=com.verbio.wantemptyrules value="true"/>

Para ms informacin acerca de las propiedades especificas de plataforma,


consultar el captulo 2.4.3.

Resultados de reconocimiento en VoiceXML

VoiceXML utiliza en su versin 2.0 el formato ECMAScript para la definicin de


variables. En concreto, Verbio VoiceXML utiliza en su versin 7.1 la
implementacin JavaScript de mozilla (http://wp.netscape.com/eng/mozilla/
3.0/handbook/javascript/) para ello.

Los resultados de reconocimiento proporcionados por Verbio ASR en NLSML


son transformados por el motor de Verbio VoiceXML a objetos JavaScript.
Para acceder a los miembros de los objetos, se utiliza la sintaxis de puntos
como se especifica en el estndar de ECMAScript.

Dada la gramtica del ejemplo 3, con una entrada del usuario como:
>> usuario: abrir ventana

Si no se pide interpretacin semntica, Verbio VoiceXML genera un objeto con


el nombre del <field> dnde se produce el reconocimiento seguido del smbolo
$.

Por ejemplo, si el field es del tipo:

<field name=out>

</field>

se generar un objeto como:

var out$ = new object();

ste objeto contiene 3 miembros que son, el resultado, la confianza y la


utterance del reconocimiento:

out$.result
out$.confidence
out$.utterance

cuando en un pgina VoiceXML se accede directamente a un objeto


resultado de un reconocimiento, sin especificar el miembro al que se
accede, Verbio VoiceXML interpreta que se est accediendo a su
miembro: $.result.

Cuando se pide interpretacin semntica, se generan varios objetos


JavaScript, que reproducen la estructura de reglas y subreglas de la
gramtica. Por ejemplo, en el caso anterior, si se genera interpretacin
semntica, Verbio VoiceXML montar los siguientes objetos JavaScript:

var out$ = new object();


out$.result = abrir ventana;
out$.confidence = 182.80;
out$.utterance = abrir ventana;

var out = new object();


var out.action$= new object();
var out.object$= new object();

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.

La plataforma Verbio VoiceXML soluciona ste problema gracias a que Verbio


ASR ofrece la opcin, de obtener las reglas vacas en NLSML como hemos
visto antes. Verbio VoiceXML, mapea en el objeto JavaScript TODAS las reglas
(vacas y llenas), pero solo las segundas tienen una confianza mayor que 0 y
por lo tanto un resultado distinto de un string vaco. As, podemos programar
aplicaciones VoiceXML cmo:

#ABNF 1.0 UTF-8;


language es;
mode voice;
root $out;

public $out = $info | $reserve | $cancel;

$info = information | query;


$reserve = reservation | make a reservation;
$cancel = cancel;

gramtica ABNF: gram.bnf

<?xml version="1.0" encoding="iso-8859-1"?>


<vxml xmlns="http://www.w3.org/2001/vxml"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
version="2.0">

<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>

ya que la gramtica gram.bnf genera siempre los siguientes objetos como


resultado de reconocimiento:

var choose$ = new object();

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;

Para ms informacin acerca de NLSML y los resultados de reconocimiento,


ver el ejemplo NLSML&nbest que se reparte con los ejemplos de VoiceXML.
2.4.2 Propiedades por defecto del motor

Ubicado en la carpeta config (en el directorio de instalacin de Verbio


VoiceXML), se encuentra el fichero defaults.xml con las propiedades por
defecto de navegacin utilizadas por el motor de VoiceXML.
Los tiempos de reconocimiento o los mensajes estndar para los eventos de
nomatch y noinput son algunas de las propiedades que se pueden modificar
en ste fichero.
Los cambios efectuados en ste fichero afectarn a todos los usuarios de la
plataforma Verbio VoiceXML. Para que dichos cambios surjan efecto, la
plataforma debe reiniciarse.
2.4.3 Propiedades especificas de la plataforma Verbio VoiceXML

VERBIO ha aadido en su plataforma Verbio VoiceXML algunas propiedades


de inters, siguiendo las recomendaciones de sintaxis del estndar 2.0 de
VoiceXML. Son las que se describen a continuacin:

o <property name="com.verbio.beep_before_rec" value="true"/>


Permite seleccionar si se desea escuchar una seal sonora o beep antes de
cada reconocimiento (valor por defecto: false)

o <property name="com.verbio.semantic_interp" value="true"/>


Permite seleccionar si se desea obtener interpretacin semntica o no en
los resultados de reconocimiento (valor por defecto: true)

o <property name="com.verbio.wantemptyrules" value="false"/>


Permite escoger si se desean obtener las reglas vacas en los resultados de
reconocimiento o slo las que han sido rellenadas por el usuario (valor por
defecto: false)

o <property name="com.verbio.pbxtransfer" value="false"/>


Permite escoger si se desea utilizar centralita para realizar transferencias
(ver captulo 2.4.4) o si por el contrario desean utilizarse dos recursos para
realizar las transferencias (uno para la llamada entrante y otro para la
saliente) (valor por defecto: false)
2.4.4 Transferencias en Verbio VoiceXML

VoiceXML no contempla en su arquitectura bsica la inclusin de una PBX en


la pasarela de voz.
Esto significa que a priori, cada transferencia realizada en VoiceXML utiliza dos
recursos del dispositivo de telefona (uno para la llamada entrante y otro para la
saliente).
Es por este motivo que deben configurarse los canales asignados para
llamadas entrantes y para llamadas salientes cuando se aade un dispositivo
(ver captulo 2.3.1 - seccin Hardware).

Dado que la inclusin de una PBX en la pasarela de voz, permite reducir a la


mitad el consumo de recursos del dispositivo de telefona al realizar
transferencias, VERBIO ha incluido en su plataforma Verbio VoiceXML, la
opcin de realizar transferencias utilizando la potencialidad de la PBX.

Esto puede inducir sin embargo a problemas de comunicacin y/o sealizacin


entre tarjetas y centralitas. Es por esto que VERBIO asegura, en
cumplimiento con el estndar 2.0 de VoiceXML el buen funcionamiento de
las transferencias sin el uso de PBX, y aade la opcin, sin garanta de xito,
de utilizar la potencialidad de la centralita por medio de la propiedad especifica
de plataforma: com.verbio.pbxtransfer:

<property name=com.verbio.pbxtransfer value="true"/>

value = true transferencia utilizando centralita


value = false transferencia sin utilizar centralita

La versin 2.0 del estndar de VoiceXML define dos tipos de transferencia:


blind y bridge.

Cuando en una aplicacin VoiceXML se produce una transferencia blind, el


servicio conecta la llamada entrante (llamante) con el destinatario de la
transferencia (llamado), sin opcin a un feedback posterior de la aplicacin con
el llamante:

Conexiones en una transferencia blind: <transfer bridge="false">

Cuando en una aplicacin VoiceXML se produce una transferencia bridge,


Verbio VoiceXML conecta la llamada entrante (llamante) con el destinatario
(llamado), con un posterior feedback de la aplicacin con el llamante. Esto
significa que una vez terminada la conexin entre llamante y llamado
(independientemente de si se ha podido o no establecer la llamada), el
llamante puede continuar el curso de la aplicacin que estaba navegando.

Conexiones en una transferencia bridge: <transfer bridge="true">

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.

Cuando en una aplicacin VoiceXML se produce una transferencia


consultation, el servicio de VoiceXML conecta la llamada entrante (llamante)
con el destinatario (llamado), manteniendo la opcin de feedback de la
aplicacin con el llamante, para el caso en que no se pueda establecer la
llamada (destinatario ocupado, no contesta o hay un error en la transferencia).

Conexiones en una transferencia consultation: <transfer type="consultation"/>


Las siguientes tablas resumen las transferencias soportadas por la plataforma
Verbio VoiceXML, para los distintos dispositivos de telefona integrados
actualmente con la plataforma:

transferencias estndar definidas por el W3C en la versin 2.0 de VoiceXML

transferencias aadidas por el W3C en la Candidate Recommendation de la


versin 2.1 de VoiceXML.

transferencias no estndar aadidas en la plataforma Verbio VoiceXML.

o Intel Dialogic (Digital BRI boards)

blind bridge consultation queryblind (1)


sin PBX X X - X

con PBX * X - X X

o Intel Dialogic (Analog boards)


blind bridge consultation queryblind (1)
sin PBX X X - X

con PBX * X - X -

o Eicon Diva Server (Digital BRI & Analog boards)

blind bridge consultation queryblind (1)


sin PBX X 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

3.1 Verbio VoiceXML Logging Monitor

Logging Monitor es una herramienta de monitorizacin de la plataforma Verbio


VoiceXML.

Para monitorizar Verbio VoiceXML, en primer lugar debe seleccionarse el host


(la IP) dnde se encuentra instalado el servicio. Para ello, debe utilizarse la
opcin connect to server del men desplegable de server:

Aparecer un cuadro de dilogo dnde se pide la direccin IP de la mquina


donde esta ejecutndose Verbio VoiceXML.
Tambin debe proporcionarse el nombre de usuario, el password i el dominio
del cliente que desea monitorizar dicho servicio:
El estado de la conexin con el servidor se muestra en barra de estado de
la ventana (en la parte inferior izquierda).

Una vez conectados a un servidor Verbio de VoiceXML, se pueden abrir tantos


monitores de canales como se desee. Basta con seleccionar la opcin new de
la barra de herramientas i seleccionar los canales que se desean monitorizarse
en el cuadro de dilogo que aparece.

botn new

Pueden seleccionarse rangos de canales (por ejemplo: 1-4 = monitorizar


canales del 1 al 4) o puede seleccionarse * para monitorizar todos los canales.

Una vez seleccionados los canales a monitorizar aparece una nueva ventana
monitor. sta organiza la informacin en 6 columnas:

time: hora en la que se ha producido la traza


id: identificador interno del canal del motor
channel: identificador fsico del canal de telefona
log type: identificador del tipo de traza que se ha producido
reference: contexto del motor en el que se produce la traza
description: breve descripcin de la traza

Las ventanas monitor pueden reconfigurarse, limpiar sus trazas, guardarlas o


imprimirlas mediante las opciones configure, clean, save y print de la barra
de herramientas:
Por ltimo el men principal nos permite seleccionar algunas opciones de
visualizacin (view) as como las preferencias a la hora de organizar las
ventanas monitor (window).
3.2 Verbio IP Audio Device

IP Audio Device es un simulador de telfono IP que permite llamar a una


plataforma Verbio VoiceXML siempre que sta haya habilitado para ello a ste
tipo de dispositivos.

Para navegar por las aplicaciones, el usuario debe utilizar un micrfono para
hablar y altavoces para escuchar el audio provinente del servidor.

Para iniciar una llamada deben especificarse:

o el host (IP) dnde se encuentra el servicio


de Verbio VoiceXML al qu desea
contactarse
o identificarse con un nmero o DNIS
o el nmero al que se desea llamar.

Al pulsar el botn Call se iniciar la llamada.

Signal communication muestra la intensidad de


la seal recibida por parte del usuario y por parte
del servidor de VoiceXML.