Вопрос

Я смотрю на одном образце сценариев VXML из VXML.ORG. Когда я называю сценарий, играет подсказки, но это вообще не поднимает никаких моих входов. Когда я говорю, это отвечает «без ввода». Могу ли я пропустить некоторую тег, который указывает на вход от пользователя. Это пример сценария с веб-сайта:

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

У кого-нибудь есть подсказка? TIA

Это было полезно?

Решение

Вы не упомянули использовать платформу. Поскольку вы используете Inline GSL, мое первое предположение для платформы будет Cleanme или NVP, но я думаю, что были другие, которые поддерживали встроенные GSL.

В любом случае убедитесь, что вы не получаете ошибку компиляции. Я видел несколько платформ, просто игнорируйте грамматики, которые не скомпилировали. Фрагменты выглядят правильными, но с учетом того, что вы не используете стандартный синтаксис (SRGS), я предполагаю, что это более старая реализация и старая реализация, тем больше причудливых и предупреждений, которые вы обычно видите.

Вообще, я не вижу ничего плохого с голосовой частью вашего синтаксиса, чтобы объяснить поведение. Хотя он не связан с вашими симптомами, ваши формы назначения могут вызывать проблемы на некоторых платформах, учитывающих отсутствие грамматиков и определенные выходы (ваши полагающиеся на обработчики по умолчанию). Чтобы просто воспроизвести информацию, полевые разделы должны быть блоками. И обратите внимание, что если блок просто играл в аудио и выручил грамматики ссылок, могут быть неактивными (спецификация подразумевает, что они должны, но должны переключаться на платформы между обработкой и аудио и выполнением и выполнением распознавания. Распознавание и непрерывное включение Активные грамматики редки ...

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top