Etiquetas Speech Macros


En este artículo escribiré sobre las etiquetas Speech Macros dando una breve descripción de ellas para la construcción de nuestros propios macros.

Para entender más de lo que hablo, puedes pasarte por estos enlaces:

Etiquetas y descripción

<?xml version="1.0" encoding="UTF-16"?>

Esta es la etiqueta principal de nuestro archivo xml.

<speechMacros></speechMacros>

Dentro de estas etiquetas irá nuestra programación de comandos por voz.

<Signature><Signature>

Dentro de estas etiquetas va nuestra firma RSA. Esto no se debe editar.

<command></command>

Dentro de estas etiquetas se ingresan los códigos para cada comando.

<listenFor></listenFor>

Dentro de estas etiquetas va el comando por voz que debemos decir para que se ejecute la actividad o programa que configuraremos.

También es posible incluir reglas o comodines, los cuales se pueden ingresar en estas etiquetas de la siguiente forma: [comodin].

También es posible incluir una opción para que nuestro asistente reciba una frase no predeterminada de la siguiente forma: […].

<speak></speak>

Dentro de estas etiquetas va la respuesta que nos dará nuestro asistente virtual.

También podemos incluir comodines, sin embargo es de la siguiente forma: {[comodin]}. Esto también se hace para que el asistente reciba las frases no predeterminadas: {[…]}.

<sendKeys></sendKeys>

Dentro de estas etiquetas se ingresan teclas o combinaciones de teclas, por ejemplo: ALT+F4 para cerrar una ventana.

La forma de incluir las combinaciones de teclas es la siguiente: {{CTRL}}{RWin}.

<rule></rule>

Dentro de estas etiquetas van reglas o comodines mencionados anteriormente. La forma de ingresarlos es la siguiente:

<rule name="comodin">
   <list>
      <p>comodin 1</p>
   </list>
</rule>

Se pueden ingresar los comodines que uno estime conveniente continuando la lista entre las etiquetas <p></p>. También se puede incluir un comodin para cualquier palabra (<p>*</p>) y un comodin para omitir una palabra (<p></p>).

<script language="JScript"> </script>

Dentro de estas etiquetas se puede incluir programación en javascripts.

<script language="VBScript"></script>

Dentro de estas etiquetas se puede incluir programación en VBscripts.

<setState name="nombre" value="valor"/>

Con esta etiqueta es posible dejar una pregunta o valor activo y darle un nombre de variable “nombre”.

Para que deje de mantenerse la variable, se ingresa la siguiente etiqueta al final del command:

<setState name="nombre" />

Si deseamos reutilizar la variable en otro comando, debemos ingresar la siguiente etiqueta:

<stateIsSet name="nombre" value="variable" />

Para que la pregunta se desactive, debemos ingresar la siguiente etiqueta al final del command donde se desea desactivar:

<setState name="nombre" />
<listenForList></listenForList>

Dentro de estas etiquetas es posible crear variables similar a la etiqueta rule. pero con más opciones.

La forma que trabaja es la siguiente:

<listenForList name="Pais" propname="Ciudad">
   <item propval="Santiago">Chile</item>
   <item propval="Ottawa">Canada</item>
</listenForList>

Si preguntamos por la capital de “x” pais, la variable [Pais] incluida en la etiqueta ListenFor será examinada en la etiqueta ListenForList y dará de resultado el propval del item del pais. Por ejemplo si preguntamos por la capital de Chile:

<ListenFor>Dime la capital de [Pais]</ListenFor>
<Speak>La capital de {[Pais]} es {[Ciudad]}</Speak>
<waitFor seconds="0.2"/>

Con esta etiqueta se puede dar un tiempo en segundos para que continúe el comando.

<run command="ruta aplicación" params="parametros"/>

Con esta etiqueta se puede abrir un programa e incluir parámetros. Por ejemplo:

<run command="chrome.exe" params="https://www.google.cl"/>

Estamos diciendo que abra el navegador chrome y al abrirlo, que abra la página google.cl.

<insertText></insertText>

Dentro de esta etiqueta podemos incluir texto que insertará automáticamente el comando que lo incluya.

<setTextFeedback></setTextFeedback>

Dentro de esta etiqueta podemos ingresar el texto que se visualizará en la aplicación reconocimiento de voz cuando el asistente nos responda alguna pregunta o comando.

<emulateRecognition></emulateRecognition>

Cambia un comando predeterminado.