Options   Conditional function

Board index  >  Categories  >  3CX Voice Application Designer (VAD)

Post Reply
Conditional function

Quote
Conditional function
by uk26 » Thu Nov 17, 2011 9:31 pm
Trying to build a VAD App to do the below

Caller calls in and then is asked to enter a password, if the correct password is entered then the caller is transferred, if the password is incorrect, it will ask the caller to enter the password again.

am at at the conditional component

If i use a conditional VAD Expression such as equal and enter the desired password it builds ok and gets applied to 3cx, however when testing it out it does not take note of the password and just transfers the call anyway.

What am i doing wrong?

Quote
Re: Conditional function
by VAD_Support » Thu Nov 17, 2011 10:33 pm
Can you post a ZIP with your project?

Quote
Re: Conditional function
by uk26 » Thu Nov 17, 2011 11:26 pm
http: //essex-webs.co.uk/Support.zip

Quote
Re: Conditional function
by VAD_Support » Thu Nov 17, 2011 11:37 pm
Well, the application that you have created does exactly what you described. If the PIN is invalid, you play the Invaliedpin.wav file, but then you transfer the call. You're not requesting to enter the PIN again. You should use a Loop component to do that.

Also, the user input component is configured to get exactly 4 digits. You will have to validate it against a 4 digits PIN, otherwise it will never match.

Quote
Re: Conditional function
by uk26 » Thu Nov 17, 2011 11:40 pm
so i got the basics right.

ok so how would i get it to check to make sure the pin matches?

only want the call to be transffered if the pin is correct.

Quote
Re: Conditional function
by VAD_Support » Thu Nov 17, 2011 11:47 pm
Then you need to move the Transfer component into the Conditional component branch that is executed when the PIN matches.

Quote
Re: Conditional function
by uk26 » Thu Nov 17, 2011 11:51 pm
ok done that, but still does the call transfer.

Quote
Re: Conditional function
by VAD_Support » Fri Nov 18, 2011 12:34 am
Of course, that expression will always evaluate to true. 500 is always equal to 500...
You need to compare the input buffer against the right PIN value. Use the expression editor to change the first 500 with the right variable (Support_Line.Buffer).

Quote
Re: Conditional function
by uk26 » Fri Nov 18, 2011 12:49 am
ok that works :)

now i have it, if caller enters 5000 the call now gets transferred but if they enter 5561 for example they get the message invalid pin, which is good, but now disconnects the call.

so i need to put a loop on the Invalid_Pin.

Quote
Re: Conditional function
by uk26 » Fri Nov 18, 2011 1:11 am
sorry to be a pain, but how do i get the loop to play the first prompt again

Quote
Re: Conditional function
by VAD_Support » Fri Nov 18, 2011 1:53 pm
Just put the User Input component into the Loop component. And configure the Condition to continue looping for example counting how many times the user has tried to enter the PIN. You would have to define a variable for that counter, and increment it on each loop.