Pregunta

Estoy buscando en algunos scripts de ejemplo de VXML vxml.org. Cuando llamo a la secuencia de comandos desempeñan las instrucciones, pero, duerma recoger cualquiera de mis entradas en absoluto. Cuando hablo responde "no de entrada". i podía faltar alguna etiqueta que indica la entrada del usuario. este es el script de ejemplo de la página web:

<?xml version="1.0" encoding="UTF-8"?>
<vxml version = "2.1">
   <link next="#MainMenu">
      <grammar type="text/gsl">[main back begin]</grammar>
   </link>

   <form id="MainMenu">
      <block>
         <prompt bargein="false">
            This is the Hello World Main Menu.
         </prompt>
      </block>

      <field name="MeatOrPlant">
         <prompt>
            Are you a "Carnivore" or "Vegetarian".
         </prompt>

         <grammar type="text/gsl">
            <![CDATA[[
              [vegetarian plant veggie] {<MeatOrPlant "plant">}
              [meat carnivore flesh animal] {<MeatOrPlant "meat">}
            ]]]>
         </grammar>

         <noinput>
            <prompt>
               I did not hear anything. Please try again.
            </prompt>
            <reprompt/>
         </noinput>

         <nomatch>
            <prompt>
               I did not recognize that lifestyle choice.  Please try again.
            </prompt>
            <reprompt/>
         </nomatch>

      </field>
      <filled>
         <if cond="MeatOrPlant == 'meat'">
            <goto next="#Meat"/>
            <elseif cond="MeatOrPlant == 'plant'"/>
            <goto next="#Plant"/>
         </if>
      </filled>
   </form>

   <form id="Meat">
      <field name="BackToMain">
         <prompt>
            PETA is coming for you, be afraid.
            If you wish to try again, please say Main.
         </prompt>
      </field>
      <filled>
         <!-- no way this will get hit -->
      </filled>
   </form>

   <form id="Plant">
      <field name="BackToMain">
         <prompt>
            Protein is the spawn of the devil.
            If you wish to try again, please say "Main".
         </prompt>
      </field>
      <filled>
         <!-- no way this will get hit -->
      </filled>
   </form>
</vxml>

Alguien tiene una pista? TIA

¿Fue útil?

Solución

No se mencionó la plataforma que se utilice. Dado que está utilizando GSL en línea, mi primera suposición para la plataforma sería Tellme o NVP, pero creo que hubo otros que apoyaron GSL en línea.

En cualquier caso, asegúrese de que usted no está recibiendo un error de compilación. He visto un par de plataformas simplemente ignoran las gramáticas que no se compilan. Los fragmentos son correctos, pero dado que no está utilizando la sintaxis estándar (SRGS) Supongo que se trata de una aplicación más antigua y la más antigua de la aplicación, los más peculiaridades y advertencias que suelen ver.

En general, no veo nada malo con la parte de la sintaxis de VoiceXML para explicar el comportamiento. Mientras que no se asocia con sus síntomas, sus formas de destino pueden causar problemas en algunas plataformas, dada la falta de gramáticas y salidas definidas (el depender de los manipuladores de captura por defecto). Para jugar sólo la información, las secciones de campo deben ser bloques. Y tenga en cuenta, si el bloque no ha jugado un audio y salió de las gramáticas de enlace puede estar o no estar activa (la especificación implicarían que son, pero cambiar de plataforma obligada entre el procesamiento y gestión de colas de audio y efectuar un reconocimiento. El reconocimiento y la conmutación continua dentro y fuera de gramáticas activas es raro ...

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top