Page 1 of 1

Enter a Code before proceeding in a IVR

PostPosted: Mon Feb 06, 2017 5:15 am
by jikseyres16
Hi All,

As said on the subject line, how should I enter a code before proceeding on a call/IVR.

Here's the scenario.

Caller -> IVR (Let's say he/she Presses 1) -> Press 1 -> (Here he/she need to enter a code like "1234" to proceed) -> if the code is correct then go to a agent or ingroup.

Is this possible to vicidial?

Thank you looking forward to your assistance :)

Re: Enter a Code before proceeding in a IVR

PostPosted: Mon Feb 06, 2017 7:10 am
by mflorell
Yes, you can do that in a Call Menu by using a Custom Dialplan entry. Make sure you have enabled Custom Dialplan Entries in System Settings, then you will see them appear in the modify Call Menu screen.

From there, it's just standard Asterisk dialplan. The easiest thing to do is use it to direct "exten => 1234,1,Goto(next_callmenu,1)" where next_callmenu is the next Call Menu that sends the call on to the in-group.

Re: Enter a Code before proceeding in a IVR

PostPosted: Mon Feb 06, 2017 4:02 pm
by jikseyres16
mflorell wrote:Yes, you can do that in a Call Menu by using a Custom Dialplan entry. Make sure you have enabled Custom Dialplan Entries in System Settings, then you will see them appear in the modify Call Menu screen.

From there, it's just standard Asterisk dialplan. The easiest thing to do is use it to direct "exten => 1234,1,Goto(next_callmenu,1)" where next_callmenu is the next Call Menu that sends the call on to the in-group.



I tried it but now I'm lost, here my setup for the meantime.
---------------------------------------------------------------------
1st callmenu

Test_Insert callmenu

option 1, send to second callmenu(is this correct or should I loop it back to this callmenu)

custom dialplan = exten => 1234,1,Goto(Test_Pass,1)
---------------------------------------------------------------------

---------------------------------------------------------------------
2nd callmenu

Test_Pass callmenu

option 1, send to Agent/Ingroup
---------------------------------------------------------------------

Now if the caller calls the DID he/she will be prompted with the 1st IVR, then press 1 then insert passcode, if correct wil be redirected to 2nd callmenu.

caller -> 1st IVR -> press 1 -> insert passcode -> if correct redirect to 2nd IVR

but every time I press a number (specifically 1234) on 1st IVR after I press 1. It always redirect to 2nd IVR even though I insert wrong passcode it just need number 1 in it (eg 2134) does it have to do to the option I made? but if I loop it back to itself after pressing 1 it will not redirect to 2nd Callmenu. What did I miss about this?

----Edit----
I have observe this on asterisk CLI once I enter the passcode, please help on analyzing this as I'm still learning about this asterisk code :)

[Feb 7 05:22:21] == CDR updated on SIP/digiumisdn002-000a4d33
[Feb 7 05:22:21] -- Executing [1234@Test_Pass:1] Goto("SIP/digiumisdn002-000a4d33", "Test_Insert,1") in new stack
[Feb 7 05:22:21] -- Goto (Test_Pass,Test_Insert,1)
[Feb 7 05:22:21] -- Sent into invalid extension 'Test_Insert' in context 'Test_Pass' on SIP/digiumisdn002-000a4d33
[Feb 7 05:22:21] -- Executing [i@Test_Pass:1] Goto("SIP/digiumisdn002-000a4d33", "s,4") in new stack
[Feb 7 05:22:21] -- Goto (Test_Pass,s,4)
[Feb 7 05:22:21] -- Executing [s@Test_Pass:4] BackGround("SIP/digiumisdn002-000a4d33", "custom/New_IVR_9172869_July_29_2016") in new stack
-------------
---Edit 2----

Okay I made it now hehehe. Just insert s on the dialplan

from exten => 1234,1,Goto(Test_Pass,1)
into exten => 1234,1,Goto(Test_Pass,s,1)
-------------

Thank you