canHearYou.dsl 1.59 KB
library

preprocessor digression can_hear_you_preprocessor
{
    conditions { on true priority 100; }
    var retriesLimit=2;
    var counter=0;
    do
    {
         if (digression.can_hear_you.resetOnRecognized)
        {
            set digression.can_hear_you.counter = 0;
            #log(digression.can_hear_you.counter);
        }
        set digression.can_hear_you.resetOnRecognized = true;
        #log(digression.can_hear_you.resetOnRecognized);
        return;
    }
    transitions
    {
    }
}

digression can_hear_you
{
        conditions { on #messageHasAnyIntent(digression.can_hear_you.triggers) priority -100; }
        var retriesLimit = 2;
        var counter = 0;
        var resetOnRecognized=false;
        var triggers = ["can_you_hear_me"];
        var responses: Phrases[] = ["i_can_hear_you"];
        do
        {
                set $cjm = external performed_stage($cjm, "can_hear_you_dig");
                if (digression.can_hear_you.counter == digression.can_hear_you.retriesLimit)
                {
                  goto bye;
                }
                set digression.can_hear_you.counter = digression.can_hear_you.counter + 1;
                #log(digression.can_hear_you.counter);
                set digression.can_hear_you.resetOnRecognized = false;
                for (var item in digression.can_hear_you.responses)
                {
                        #say(item, repeatMode: "ignore");
                }
                #repeat(accuracy: "repeat");
                return;
        }
        transitions
        {
                bye: goto dont_understand_hangup;
        }
}