2017-06-20 3 views
0

Je rencontre un problème avec un formulaire VXML, j'ai un champ avec une invite initiale et un ensemble de blocs nomatch noinput utilisant des compteurs pour lire différentes invites en fonction du nombre d'événements noinput/nomatch lancés. J'ai besoin de rapporter sur chaque tentative afin que la confiance ASR soit établie assez bas et dans l'élément rempli je vérifie le niveau de confiance et de ce que je voudrais accepter, reprompt si la confiance est basse ou si la confiance est limite, jouer une invite de confirmation. La question que j'ai est que dans le bloc rempli, je suis une action pour vérifier la confiance et si elle est trop faible, je fais ce qui suit (nom du champ est collection):Dans VXML, existe-t-il un moyen de ressaisir un champ à partir d'un bloc rempli sans effacer les compteurs nomatch/noinput?

<clear namelist="collection"/> 
<throw event="nomatch"/> 

Le problème est que cela efface le nomatch/noinput mais j'ai besoin de ceux-ci pour rester. Si je supprime l'étiquette d'effacement, l'événement nomatch est frappé mais comme le champ est toujours 'rempli', il n'accepte pas l'entrée.

Existe-t-il un moyen de ressaisir le champ à partir du bloc rempli sans effacer les compteurs ou existe-t-il un moyen d'accéder aux compteurs via le script ECMA pour les redéfinir ou quelque chose de similaire? Puis-je seulement effacer certaines valeurs du champ "collection" afin que l'élément rempli ne soit pas immédiatement réinscrit mais conserve les compteurs?

Vive

Répondre

0

J'ai découvert la réponse à cette question - la solution simple est de déplacer le nomatch noinput gestionnaires d'événements hors de la portée du champ de collection à la portée du document - cela signifie que lorsque j'ai appelé clairement sur le champ de collecte, les compteurs de noInput et nomatch ne sont pas effacées

0

il est pas un problème, il est la norme: https://www.w3.org/TR/voicexml20/#dml5.3.3

« en outre, si le nom de la variable correspond à un élément de forme, puis le compteur d'invite et les compteurs d'événements de l'élément de formulaire sont réinitialisés. "

Vous pouvez ajouter votre propre compteur avec une variable. Incrémenter dans le bloc de processus et tester la valeur avec ou l'attribut "cond" pour les invites.