Need help with dial plan
ianobi:
VoipAndre,
I should have been more clear. The "automatic" routing with no ** codes is built into my configuration. The **1 and **2 codes are there for when you wish to force any call to GV or voip.ms. This does the automatic routing:
Physical Interfaces > LINE Port > DigitMap:
(xxxxxxxS4|xxxxxxxxxx|18(00|88|77|66|55|44)xxxxxxx|<**1>1[2-79]xxxxxxxxx|<**2>011xx.|x11)
These rules <**1>1[2-79]xxxxxxxxx|<**2>011xx. automatically prepend the required prefix without the user having to dial them. So dialling normally with no ** codes all calls route as you wish.
azrobert:
O.K. Shower done and I have a little time, but not enough time to start playing with my OBi.
I don't like the way I setup the OutboundCallRoute. Too busy.
Try this:
ITSP Profile A (Google voice)
Digitmap: (1[2-9]xx[2-9]xxxxxx)
ITSP Profile B (voip.ms)
Digitmap: (011.xx|<2:1>[2-9]xx[2-9]xxxxxx|<2:1480>xxxxxxx)
PHONE Port
DigitMap: ([12][2-9]xx[2-9]xxxxxx |2xxxxxxx|(Mli)|#|[2-9]11)
OutboundCallRoute: {(Mli):li},{(Msp1):sp1},{(Msp2):sp2},{(<#:>|[2-9]11):li}
LINE Port
(xxxxxxx|xxxxxxxxxx|18(00|88|77|66|55|44)xxxxxxx)
Update:
Do you want to be able route international calls out SP1?
VoipAndre:
Azrobert:
We have liftoff! Thank you for your help, it is now doing exactly what I wanted. I can now start tearing this apart and modify, as well as digest ianobi post as well! For the time being I do not need to route international to SP1 since I don't have credits with GV to allow those, and I rarely do international. I would use SP2 for those calls anyways. I could get this achieved by having this as digitmap for GV:
ITSP Profile A (Google voice)
Digitmap: (011.xx|1[2-9]xx[2-9]xxxxxx)
and by modifying to
ITSP Profile B (voip.ms)
Digitmap: (<2>011.xx|<2:1>[2-9]xx[2-9]xxxxxx|<2:1480>xxxxxxx)
Do I understand the <2:> properly? My understanding is that <2:> will be matched but not passed to the provider, and that <2:1> will match 2 and pass 1 + whatever follows...
Again, thanks for the help, I really appreciate!
Cheers!
azrobert:
Your understanding is not correct.
Anything to the left of the colon is used to compare to the dialed number. Upon a match the left portion is removed from the dialed number.
Anything to the right of the colon is NOT used to compare to the dialed number. Upon a match the right portion is prepended to the dialed number. I should say it's added to the dialed string.
(1<2:7>3456)
The above is comparing for "123456" upon a match it will change the dialed number to "173456".
If you are only adding a string (right of colon) the colon is optional.
<2> is the equivalent of <:2>
You are not showing your complete configuration, but I don't think it's working correctly. Your international calls will route out SP2, but it looks like it will have a "2" prepended.
This is how things work and how I code.
First the Phone Port DigitMap gets control and verifies the dialed number.
I do not make any changes to the dialed string here.
In my last example I do not reference Msp2 because I don't want to make any changes.
If the dialed number passes verification it is passed to the Phone OutboundRoute unchanged.
Again, it's only unchanged because of the way I code.
The Phone OutboundRoute compares to the dialed number. Upon a match it makes any changes and then routes the call to a Trunk.
I think not changing the dialed number in the Phone Port DigitMap simplifies the logic. You can look at the trunk DigitMap and see exactly what happening for that trunk. I'm in the minority on the forum with this coding technique and most people code like ianobi.
The bottom line is there is no wrong way of coding as long as it works. The correct way to code is what the end user is most comfortable with.
Anyway, I made a couple of errors in my last post. I forgot about verifying international numbers and I inserted a blank, plus the Phone Port DigitMap is starting to get busy. Let me show you more closely how I code. I setup a user defined DigitMap to verify the dialed number in Phone Port DigitMap.
ITSP Profile A (Google voice)
Digitmap: (1[2-9]xx[2-9]xxxxxx)
ITSP Profile B (voip.ms)
Digitmap: (011.xx|<2:1>[2-9]xx[2-9]xxxxxx|<2:1480>xxxxxxx)
PHONE Port
DigitMap: ((Mver)|(Mli)|#|[2-9]11)
OutboundCallRoute: {(Mli):li},{(Msp1):sp1},{(Msp2):sp2},{(<#:>|[2-9]11):li}
LINE Port
DigitMap: (xxxxxxx|xxxxxxxxxx|18(00|88|77|66|55|44)xxxxxxx)
User Settings -> User Defined Digit Maps
User Defined Digit Map 2
Label: ver
DigitMap: ([12][2-9]xx[2-9]xxxxxx|2xxxxxxx|011.xx)
[12][2-9]xx[2-9]xxxxxx verifies dialed 11 digit numbers for SP1 and SP2.
You don't need the User Defined DigitMap. I think it organizes things better and makes the configuration more readable.
You don't prefix international numbers with the above configuration. You only prefix long distance numbers and 7 digit numbers with "2" to route them out SP2.
I hope I didn't make any errors with the above.
Update:
I misread your last post. Your understanding of <> is correct.
If your config is working you must be removing the "2" prefix for international numbers in the OutboundRoute.
ianobi:
Quote
I think not changing the dialed number in the Phone Port DigitMap simplifies the logic. You can look at the trunk DigitMap and see exactly what happening for that trunk. I'm in the minority on the forum with this coding technique and most people code like ianobi.
I am indeed a graduate from the RonR School of Digitmapping 8) However, I always look forward to an azrobert digit map - it makes me look at things from a fresh point of view - always a good thing. I like to think that we pick up ideas from each other. Long may the difference continue :)
One thing to point out about the azrobert/VoipAndre versions of the Phone Port DigitMap and OutboundCallRoute is that some functions have been lost. You may be happy to keep it simple and not worry about those functions - it's always a personal choice. Here's some to think about:
[1-9]S9|[1-9][0-9]S9 These rules are there to prevent anyone dialling 911 very slowly (maybe you are injured) from getting speed dial 9 or speed dial 11.
**0 Gives access to the Auto Attendant - I accept of limited value, but can be useful for testing.
*** Gives access to Auto Attendant 2 - This can be very valuable for changing settings.
One last consideration is Auto Attendant 1. It has its own DigitMap and OutboundCallRoute. One day it might be needed for single-stage dialling from OBiON etc.
Quote
I want to add that I am very interested in understanding the OBI110 dial plan config
VoipAndre - Good luck with that :)
Navigation
[0] Message Index
[#] Next page
[*] Previous page