Using Google Voice for Long Distance and Local Carrier for Local Calls
azrobert:
Physical Interfaces -> Phone Port -> Primary Line: SP2 Service.
Physical Interfaces -> Phone Port -> DigitMap
Add AFTER the beginning parenthesis:
(Msp1)|
Physical Interfaces -> Phone Port -> OutboundCallRoute
Add to the beginning:
{(Msp1):sp1},
Service Providers -> ITSP Profile A -> General -> DigitMap:
((250|530)xxxxxxx|1(234|567)xxxxxxx)
Service Providers -> ITSP Profile B -> General -> DigitMap:
(1xxxxxxxxxx)
10 digit numbers other than 250 and 530 will fail.
Did you want international numbers?
BB88:
Quote from: azrobert on January 06, 2015, 02:02:30 pm
Physical Interfaces -> Phone Port -> Primary Line: SP2 Service.
Physical Interfaces -> Phone Port -> DigitMap
Add AFTER the beginning parenthesis:
(Msp1)|
Physical Interfaces -> Phone Port -> OutboundCallRoute
Add to the beginning:
{(Msp1):sp1},
[/quote]
I want the SP1 to be my primary line, are these settings still valid?
Quote from: azrobert on January 06, 2015, 02:02:30 pm
Service Providers -> ITSP Profile A -> General -> DigitMap:
((250|530)xxxxxxx|1(234|567)xxxxxxx)
Service Providers -> ITSP Profile B -> General -> DigitMap:
(1xxxxxxxxxx)
10 digit numbers other than 250 and 530 will fail.
Did you want international numbers?
This is a little tricky. Let me explain my usage. I'm using freephoneline as my SP1, it covers most of Canadian area codes for free. However, I'm not sure if there is a reliable way to determine if an area code is Canadian or US. 250 and 530 are "examples" local area codes. 234 and 567 are "examples" of covered Canadian area codes. All other area codes, I'll have to consider them as non-covered Canadian/US area codes, which is why it will require users to explicitely dialing "1".
I have modified profile A to:
(911|<1>(250|530)xxxxxxx|1(234|567)xxxxxxx|*98|[6-7]x*xxxxxxxxxxx.)
Is this correct?
Also I left the default [6-7]x*xxxxxxxxxxx. there. What is it?
Thanks!
azrobert:
I'm not sure what [6-7]x*xxxxxxxxxxx. is used for.
It might be used for routing calls over the OBiTalk network to a 2nd OBi.
What you are doing will not work without additional code.
You said "These are examples".
That means there are additional area codes. Correct?
Are you going to code all the Canadian area codes into the configuration?
It looks like all the numbers will be sent to the providers as 11 digits.
Will the users know what all the local Canadian numbers are?
If yes, you can route all 10 digit numbers to FPL.
Will the users know what all the covered Canadian numbers are?
If yes, they can dial those as 10 digit numbers.
Then 11 digit numbers can be routed to SP2.
I have a feeling you won't like the above.
This is how an OBi works.
First, the ITSP DigitMaps do NOTHING on their own.
After a number is dialed the Phone Port (PP) DigitMap gets control.
The PP DigitMap validates the dialed number.
The last rule (Mpli) points to the Primary Lines's (PL) DigitMap.
So if the PL is SP1, the ITSP A DigitMap is included with the PP DigitMap.
If you add a prefix, the dialed number is changed now.
If the number is validated by the PP DigitMap, it is passed the PP OutboundCallRoute.
Rule {(Mpli):pli} points to the PL DigitMap and the PL.
If the PL is SP1 and the dialed number matches a rule in the ITSP A DigitMap the call is routed out SP1.
If PL is SP1:
If you dial a 10 digit 250 number it is changed to 11 digits in the PP DigitMap.
Now it won't match rule <1>(250|530)xxxxxxx in the OutboundCallRoute and fail.
That rule is looking for a 10 digit number and will prefix it with "1".
If you make the PL SP2 you won't have this problem, but you might have other problems.
The PL is normally used to route un-prefixed calls to a specific trunk.
You would use a **n prefix to route calls to other trunks.
You are trying to eliminate the **n prefix, so which trunk is the PL is basically irrelevant.
Anyway, try this:
Physical Interfaces -> Phone Port -> Primary Line: SP2 Service.
Physical Interfaces -> Phone Port -> DigitMap
Add anywhere
(250|530)xxxxxxx|*98|
Physical Interfaces -> Phone Port -> OutboundCallRoute
Add to the beginning:
{(Msp1):sp1},
Service Providers -> ITSP Profile A -> General -> DigitMap:
(911|<1>(250|530)xxxxxxx|1(234|567)xxxxxxx|*98)
Service Providers -> ITSP Profile B -> General -> DigitMap:
(1xxxxxxxxxx)
You are verifying 10 digit numbers in the PP DigitMap without adding a prefix.
Now it will match the OutboundCallRoute.
By placing {(Msp1):sp1} at the beginning of the OutboundCallRoute, you are actually making SP1 the PL.
SP1 will have priority over SP2.
BB88:
Thank you for the very detailed information. I'll try this out tonight.
Do I still need to do this:
Physical Interfaces -> Phone Port -> DigitMap
Add AFTER the beginning parenthesis:
(Msp1)|
When I said "These are examples", you are correct that I mean there may be additional area codes. But I'm not going to code all the area codes to the configuration. I am only coding the current local area codes with my old local carrier. I'm in the process of porting out and dumping the local carrier, but don't want to change the family's habit in dialing.
azrobert:
Quote from: BB88 on January 07, 2015, 07:59:23 am
Do I still need to do this:
Physical Interfaces -> Phone Port -> DigitMap
Add AFTER the beginning parenthesis:
(Msp1)|
No, you should not add (Msp1) to the PP DigitMap.
I replaced this by adding "(250|530)xxxxxxx"
Previously (Msp1) did not add a "1" prefix.
Now with adding "1" it would screw up routing in the OutboundCallRoute.
You want to pass the dialed number unchanged to the OutboundCallRoute.
Navigation
[0] Message Index
[#] Next page
[*] Previous page