Go Back   CodingForums.com > :: Server side development > Perl/ CGI

Before you post, read our: Rules & Posting Guidelines

Reply
 
Thread Tools Rate Thread
Enjoy an ad free experience by logging in. Not a member yet? Register.
Old 05-20-2011, 12:24 PM   PM User | #1
konyak
New to the CF scene

 
Join Date: May 2011
Posts: 7
Thanks: 5
Thanked 0 Times in 0 Posts
konyak is an unknown quantity at this point
Menu Navigation based on DTMF Input Digits

Hi All,

I am trying to implement a menu navigation functionality based on the DTMF input digits. That is, user has to enter specific DTMF input digit to navigate through the Menu Tree. Following is how the Menu tree would be structured.

Main Menu
--SubMenu1(assign DTMF 1)
--SubSubMenu1(Assign DTMF 1)
--SubSubMenu2(Assign DTMF 2)
--SubSubMenu3(Assign DTMF 3)

--SubMenu2(Assign DTMF 2)
--SubSubMenu1(Assign DTMF 1)
--SubSubMenu2(Assign DTMF 2)
--SubSubMenu3(Assign DTMF 3)

--SubMenu2(Assign DTMF 3)
--SubSubMenu1(Assign DTMF 1)
--SubSubMenu2(Assign DTMF 2)
--SubSubMenu3(Assign DTMF 3)

I am clueless as to how to implement the menu functionality this way. The same DTMF input is assigned both in the Sub Menu context and Sub Sub Menu context. This could possibly raise a functionality issue because the application will have no idea as to which option to go next unless we hack around someway. That is, for example, when you press 1, how to decide where to go--Sub Menu option or Sub Sub Menu option. If you're in the Main Menu screen, you should be taken to Sub Menu option. On the other hand, if you are already in the Sub Menu screen, you should be taken to the Sub Sub Menu option.

Thanks in advance.

Last edited by konyak; 05-20-2011 at 12:29 PM..
konyak is offline   Reply With Quote
Old 05-20-2011, 01:46 PM   PM User | #2
FishMonger
Super Moderator


 
Join Date: May 2005
Location: Southern tip of Silicon Valley
Posts: 2,753
Thanks: 2
Thanked 149 Times in 144 Posts
FishMonger will become famous soon enoughFishMonger will become famous soon enough
Are you working on a VoIP IVR menu?
FishMonger is offline   Reply With Quote
Users who have thanked FishMonger for this post:
konyak (05-22-2011)
Old 05-20-2011, 02:55 PM   PM User | #3
konyak
New to the CF scene

 
Join Date: May 2011
Posts: 7
Thanks: 5
Thanked 0 Times in 0 Posts
konyak is an unknown quantity at this point
Yes. that's right. I am trying to figure out how to implement a menu functionality for an IVVR Application.

How to i go about building a good menu interface for such system?
konyak is offline   Reply With Quote
Old 05-20-2011, 03:06 PM   PM User | #4
FishMonger
Super Moderator


 
Join Date: May 2005
Location: Southern tip of Silicon Valley
Posts: 2,753
Thanks: 2
Thanked 149 Times in 144 Posts
FishMonger will become famous soon enoughFishMonger will become famous soon enough
What VoIP system are you using?

Are you building this menu via a Perl script? If not, then you've posted your question in the wrong forum.

If you have a Perl script that you're developing, then please post it.
FishMonger is offline   Reply With Quote
Users who have thanked FishMonger for this post:
konyak (05-22-2011)
Old 05-20-2011, 03:37 PM   PM User | #5
FishMonger
Super Moderator


 
Join Date: May 2005
Location: Southern tip of Silicon Valley
Posts: 2,753
Thanks: 2
Thanked 149 Times in 144 Posts
FishMonger will become famous soon enoughFishMonger will become famous soon enough
If you setup each menu in its own context, then the DTMF digits used in the IVR navigation should be private to the context that they are in, so duplicates should not be a problem.

If you want, I can work up a short example based off of a portion of one of my Asterisk IVR's.
FishMonger is offline   Reply With Quote
Users who have thanked FishMonger for this post:
konyak (05-22-2011)
Old 05-22-2011, 12:13 AM   PM User | #6
konyak
New to the CF scene

 
Join Date: May 2011
Posts: 7
Thanks: 5
Thanked 0 Times in 0 Posts
konyak is an unknown quantity at this point
"If you setup each menu in its own context, then the DTMF digits used in the IVR navigation should be private to the context that they are in, so duplicates should not be a problem.
If you want, I can work up a short example based off of a portion of one of my Asterisk IVR's.
"

Yes that's exactly how i want to setup the menu. The navigation should be private to the context they are in and we should be able to use the same DTMF digit at different level/depth of the menu tree. As cited in my earlier post, if you are in the main menu context, pressing DTMF digit 1 should take you to the SubMenu screen. While if you're in SubMenu context, then pressing DTMF digit 1 should take you to SubSub Menu option.


It would be of great help if you could work out a short code example based on your Asterisk IVR's and post it here for my reference.
konyak is offline   Reply With Quote
Old 05-22-2011, 01:18 AM   PM User | #7
FishMonger
Super Moderator


 
Join Date: May 2005
Location: Southern tip of Silicon Valley
Posts: 2,753
Thanks: 2
Thanked 149 Times in 144 Posts
FishMonger will become famous soon enoughFishMonger will become famous soon enough
Quote:
pressing DTMF digit 1 should take you to the SubMenu screen
Does that mean that you're developing a GUI? If so, then that's not an IVR.

You still haven't answered my other questions.

1) What VoIP system are you using?
2) Are you developing this menu in Perl?

If the answer to Q2 is no, then you should post your question in a telephony forum such as http://www.experts-exchange.com/Netw.../IP_Telephony/ or if you're using Asterisk, then post it here http://www.experts-exchange.com/Netw...ony/Asterisk_/

I'm off for the next 2 days so I can't access the servers until Tuesday, but will try to work up some type of an example.
FishMonger is offline   Reply With Quote
Users who have thanked FishMonger for this post:
konyak (05-23-2011)
Old 05-22-2011, 02:10 AM   PM User | #8
FishMonger
Super Moderator


 
Join Date: May 2005
Location: Southern tip of Silicon Valley
Posts: 2,753
Thanks: 2
Thanked 149 Times in 144 Posts
FishMonger will become famous soon enoughFishMonger will become famous soon enough
This is the syntax used in the asterisk extensions.conf file. This can be scripted using Perl, which is called an AGI (Asterisk Gateway Interface) script.

Code:
[incoming_sip]
; caller dialed 408 555-5555
exten => 4085555555,1,Goto(main_menu,s,1)


[main_menu]
exten => s,1,Answer
exten => s,n,Background(main_menu) ; play the main_menu IVR recording and allow caller to press a menu option dtmf digit (1, 2, or 3) during the recording
exten => s,n,WaitExten(1.5)  ; allow upto 1.5.seconds beyond the completion of the IVR recording for the caller to dial a menu option
exten => s,n,Playback(thank_you_for_calling)
exten => s,n,Playback(goodbye)
exten => s,n,Hangup

exten => 1,1,Goto(Sales,s,1)
exten => 2,1,Goto(Marketing,s,1)
exten => 3,1,Goto(Support,s,1)

exten => i,1,Playback(invalid)  ; recording that informs the caller that they pressed an invailid option number
exten => i,n,Goto(2) ; goes back to priority #2, which is the main_menu IVR recording


[Sales]
exten => s,1,Background(sales_menu)
exten => s,n,WaitExten(1.5)

exten => 1,1,Goto(corporate)
exten => 2,1,Goto(consumer)
exten => 3,1,Goto(main_nemu,s,2)

exten => i,1,Playback(invalid)
exten => i,n,Goto(1)


[Marketing]
exten => s,1,Background(marketing_menu)
exten => s,n,WaitExten(1.5)

exten => 1,1,Dial(SIP/sue,30,t)  ; dials sue's phone and if unanswered or is busy, allows the caller to leave a voicemail
exten => 1,n,Voicemail(sue)
exten => 1,n,Hangup

exten => 2,1,Dial(SIP/bob,30,t)
exten => 2,n,Voicemail(bob)
exten => 2,n,Hangup

exten => 3,1,Dial(SIP/1234,30,t) ; dials internal extension number 1234
exten => 3,n,Busy
exten => 3,n,Hangup


[Support]
exten => s,1,Background(support_menu)
exten => s,n,WaitExten(1.5)

; you get the idea
FishMonger is offline   Reply With Quote
Users who have thanked FishMonger for this post:
konyak (05-23-2011)
Old 05-23-2011, 03:18 PM   PM User | #9
konyak
New to the CF scene

 
Join Date: May 2011
Posts: 7
Thanks: 5
Thanked 0 Times in 0 Posts
konyak is an unknown quantity at this point
Well, I am not developing any GUI. I am working on an IVVR system in PHP.
Anyway, thank you so much for your help and references. Will get back to you if i need any further assistance.
Cheers
konyak is offline   Reply With Quote
Old 07-04-2011, 02:30 PM   PM User | #10
Awon
New to the CF scene

 
Join Date: Jun 2011
Posts: 1
Thanks: 0
Thanked 0 Times in 0 Posts
Awon is an unknown quantity at this point
Thumbs up page based navigation menu

Hello! there

I come to know you about page based navigation menu.

I have a url which can help you.

Click here: http://www.raiseitsolutions.com/foru...d6db80bd17a461

I hope it is enough for you.

Thank You
Awon is offline   Reply With Quote
Old 03-29-2012, 01:19 PM   PM User | #11
JN609
New to the CF scene

 
Join Date: Mar 2012
Posts: 2
Thanks: 0
Thanked 0 Times in 0 Posts
JN609 is an unknown quantity at this point
Hello,

I am currently using the followings: http://www.*****************/p_78-fl...ript-voip.html

I wanted to add features to my web application and this SDK helped me a lot.

I just shared it because there are other samples that might prove useful for you as well.

Hope I could help you.

Regards.
JN609 is offline   Reply With Quote
Old 03-29-2012, 01:23 PM   PM User | #12
JN609
New to the CF scene

 
Join Date: Mar 2012
Posts: 2
Thanks: 0
Thanked 0 Times in 0 Posts
JN609 is an unknown quantity at this point
Sorry, for that I did not want to spam. Just google for: 'How to add a Flash SIP softphone to a web application'.

Regards.
JN609 is offline   Reply With Quote
Old 04-03-2012, 08:17 AM   PM User | #13
frankdd
New to the CF scene

 
Join Date: Apr 2012
Posts: 1
Thanks: 0
Thanked 0 Times in 0 Posts
frankdd is an unknown quantity at this point
you put the last number of a at the beginning of b. multiply by 10 so the next number goes at the end.
Super Slim Berry
frankdd is offline   Reply With Quote
Reply

Bookmarks

Tags
dtmf, ivvr, menu, navigation, perl

Jump To Top of Thread


Thread Tools
Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 01:02 AM.


Advertisement
Log in to turn off these ads.