News:

On Tuesday September 6th the forum will be down for maintenance from 9:30 PM to 11:59 PM PDT

Main Menu

Using Google Voice for Long Distance and Local Carrier for Local Calls

Started by ssturner66, April 24, 2012, 01:18:18 PM

Previous topic - Next topic

drgeoff

Quote from: Sophia on January 11, 2014, 03:47:37 PM
Sorry to revive this super old topic, but I too am running into a problem now. We have a friend in Florida whose number starts with 863, but we can't get through to him.

Our current LINE DigitMap says:

([2-9]11S0|<250>[2-9]xxxxxx|250xxxxxxx|<1:>250xxxxxxx|1800xxxxxxx|188xxxxxxxx|1877xxxxxxx|1866xxxxxxx|1855xxxxxxx|
1844xxxxxxx|1833xxxxxxx|1822xxxxxxx|<**1>1[2-79]xxxxxxxxx|<**1>011xx.)

I'm thinking the error is in the <**1>1[2-79]xxxxxxxxx bit, but unclear how to change it.

What we're after is that all numbers starting with 1-xxx including 1-8xx (EXCEPT the toll free numbers starting with 800, 88x, 877, 866, 855, 844, 833 and 822) are routed through Google Voice. The exceptions should go through the landline. Is it possible to set it up that way? :)
I puzzled that you say the digit map you show is your LINE Port Digit Map.  Are you sure it isn't the PHONE port digit map?

Try adding |<**1>1863xxxxxxx| into the map.  It can go anywhere but perhaps the "nicest" place would be just after the bit you think the error is in.

Sophia

I'm only following instructions :D I am quite happy to put it anywhere but initially I was told to put it in the LINE digit map... and it seems to work :)

Somebody just kindly sent me a PM with this information:

([2-9]11S0|<1250>[2-9]xxxxxx|<1>250xxxxxxx|1250xxxxxxx|(18(00|88|77|66|55|44|33|22)xxxxxxx|<1>8(00|88|77|66|55|44|33|22)xxxxxxx)|<**1>(1xxxxxxxxxx|011xx.))

It looks really nice to me so I guess I'll try that  ;D Will keep you posted!

Sophia

Unfortunately that code doesn't seem to work at all  ???

But I changed it into

([2-9]11S0|<250>[2-9]xxxxxx|250xxxxxxx|<1:>250xxxxxxx|1800xxxxxxx|188xxxxxxxx|1877xxxxxxx|
1866xxxxxxx|1855xxxxxxx|1844xxxxxxx|1833xxxxxxx|1822xxxxxxx|<**1>1xxxxxxxxxx|<**1>011xx.)

Which is probably not as clean but it seems to work  ;D

ProfTech

Hi Sophia, good to see you're using the Obi again. I don't know how many 800 numbers there are for your location, but a trick that RonR posted way back when is great for them. Create a "User Defined map" that looks something like this (18(00|55|66|77|88)xxxxxxx) and name it TFree. Then any place you need to specify 800 numbers simply use (MTfree). Be sure and include the M and the parenthesis. If your 800 numbers are different, simply change the User defined map. Works like a charm and greatly simplifies things if 8xx numbers would happen to change. You only need to change one place!

Sophia

Hi ProfTech, thanks  ;D I couldn't stay away anyway, I like Obi too much :D

I got the list of 800 numbers from http://en.wikipedia.org/wiki/Toll-free_telephone_number#North_America "Toll-free numbers in the North American Numbering Plan (NANP) are commonly called "800 numbers" after the original area code which was used to dial them. They include the area code 800 since 1967, 888 (since 1996), 877 (since 1998), 866 (since 2000), 855 (since 2010), and 844 (December 7, 2013).[18] Area codes reserved for future expansion include 833, 822, 880 through 887, and 889.[19]"

I thought I might as well include them all now :D

Got another PM from the anonymous benefactor that the code they provided

([2-9]11S0|<1250>[2-9]xxxxxx|<1>250xxxxxxx|1250xxxxxxx|(18(00|88|77|66|55|44|33|22)xxxxxxx|<1>8(00|88|77|66|55|44|33|22)xxxxxxx)|<**1>(1xxxxxxxxxx|011xx.))

should work (I probably copied it wrong) so I'll be giving that a second try :)

Edit: while I'm typing this, I actually think I know what might be wrong with that code... this is what the explanation was:

Quotex11 -> LINE Port
7-digits -> LINE Port (with 1250 prepended)
250xxxxxxx -> LINE Port (with 1 prepended)
1250xxxxxxx -> LINE Port
Toll Free -> LINE Port (with 1 prepended if not present)
All other 1xxxxxxxxxx -> SP1
011+ (international) -> SP1

But the 7 digits should actually not add 1250, just 250.
Likewise, 250xxxxxx should not prepend a 1
and 1250 should be treated like all other numbers, meaning using SP1.

So I think this is what it should read:

Quotex11 -> LINE Port
7-digits -> LINE Port (with 250 prepended)
250xxxxxxx -> LINE Port (with 1 prepended)
1250xxxxxxx -> LINE Port
Toll Free -> LINE Port (with 1 prepended if not present)
All other 1xxxxxxxxxx -> SP1
011+ (international) -> SP1

Another edit, I got a reply back already!!!

QuoteIn that case:

Physical Interfaces -> LINE Port -> DigitMap:

([2-9]11S0|<250>[2-9]xxxxxx|[2-9]xxxxxxxxx|18(00|88|77|66|55|44|33|22)xxxxxxx|<1>8(00|88|77|66|55|44|33|22)xxxxxxx|<**1>(1xxxxxxxxxx|011xx.))

x11 -> LINE Port
7-digits -> LINE Port (with 250 prepended)
10-digits -> LINE Port
Toll Free -> LINE Port (with 1 prepended if not present)
All other 1xxxxxxxxxx -> SP1
011+ (international) -> SP1

ianobi

Hmmm - anonymous benefactor and a digit map style that looks familiar - I reckon I could take a guess who that might be! Of course, I'm too much of a gentleman to mention a name   :)

Sophia


carl

Quote from: ianobi on January 17, 2014, 12:11:01 PM
Hmmm - anonymous benefactor and a digit map style that looks familiar - I reckon I could take a guess who that might be! Of course, I'm too much of a gentleman to mention a name   :)
never mention an unperson. ;D

ssturner66

Hi Everyone,

My OBI110 has been working fine until I updated it the other day. Now my call routing that was set up no longer works. When I call from the local phone line connected to my OBI110 to my cell phone, the caller ID that shows up is my Google Voice Number whereas it used to be my local number as the call was a local call, not a long distance call.
I looked through the thread and found the posts by RonR about configuring my Primary Line and DigitMap. I looked at my OBI110 and the lines that used to be there are definitely different. I have tried on several occasions to replace the new lines with the ones that were in RonR's post but after I make the change, click submit at the bottom of the configuration page and reboot the OBI110, when it comes back on line, the line I entered is gone and replaced by what used to be there.
I need to change the PrimaryLine from SP1 Service to PSTN Line but nomatter what I do, it always reverts back to SP1 Service. Same thing for the DigitMap under the Physical Interfaces -> LINE Port -> DigitMap:.

Any suggestions?

Thanks.

Scott Turner

BB88

Quote from: ianobi on November 27, 2012, 09:47:04 AM
Sophia,

With FPL on sp1 and GV on sp2. Set:

Physical Interfaces -> PHONE Port -> PrimaryLine : SP1 Service

Service Providers -> ITSP Profile A -> General -> DigitMap:

([2-9]11S4|<250>[2-9]xxxxxxS4|[2-9]xxxxxxxxxS0|1xxxxxxxxxxS0|<**2>011xx.)

Service Providers -> ITSP Profile B -> General -> DigitMap:

(1xxxxxxxxxx|<1>[2-9]xxxxxxxxx|011xx.)


Calls will route as follows:

[2-9]11  ->  three digit numbers starting with 2 to 9 > sp1
 7 digits  ->  Obi adds 250 > sp1
10 digits  ->  that start with 2-9 > sp1
11 digits  -> that start with 1 > sp1
   011+  ->  sp2

How do you change the DigitMap to route certain Canadian calls (11 digits) with specific area codes to SP1, and all other Canadian and US calls (11 digits) to SP2?

e.g.
10 digits -> 250, 530 > SP1
11 digits -> 1-234-xxxx, 1-567-xxxx > SP1 (the dashes are for reading purpose only)
all other 11 digits -> SP2

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.

BB88

I tried your settings and it appears to be working. However, I still want to tinker things myself to keep SP1 as primary line, and I came up with the following, while keeping many settings as default:

Physical Interfaces -> PHONE Port -> DigitMap:
([1-9]x?*(Mpli)|[1-9]S9|[1-9][0-9]S9|911|**0|***|#|##|**70(Mli)|**8(Mbt)|**81(Mbt)|**82(Mbt2)|**1(Msp1)|**2(Msp2)|**3(Msp3)|**4(Msp4)|**9(Mpp)|*98|(Mpli))
this is the device default setting

Physical Interfaces -> PHONE Port -> OutboundCallRoute:
{([1-9]x?*(Mpli)):pp},{911:sp1},{(<##:>):li},{(<**70:>(Mli)):li},{(<**82:>(Mbt2)):bt2},{(<**81:>(Mbt)):bt},{(<**8:>(Mbt)):bt},{**0:aa},{***:aa2},{(<**1:>(Msp1)):sp1},{(<**2:>(Msp2)):sp2},{(<**3:>(Msp3)):sp3},{(<**4:>(Msp4)):sp4},{(<**9:>(Mpp)):pp},{((00|011)xx.):sp1},{(1(250|530)[2-9]xxxxxx|(250|530|234|567)[2-9]xxxxxx):sp1},{(18(00|88|77|66|55)[2-9]xxxxxx|8(00|88|77|66|55)[2-9]xxxxxx):sp1},{(1[2-9]xx[2-9]xxxxxx):sp2},{([2-9]xx[2-9]xxxxxx):sp1},{([2-9]xxxxxx):sp1},{(Mpli):pli}
this is where I set up all the routing rules, inspired by RonR's OBi Configuration Utility

Physical Interfaces -> PHONE Port -> PrimaryLine: SP1 Service

Service Providers -> ITSP Profile A -> General -> DigitMap:
(911|[2-9]xxxxxx|[2-9]xx[2-9]xxxxxx|1[2-9]xx[2-9]xxxxxx|(00|011)xx.|*98|[6-7]x*xxxxxxxxxxx.)
this is the default setting when I set it up through OBiTalk Compatible Service Provider freephoneline.ca)

Service Providers -> ITSP Profile B -> General -> DigitMap:
(1xxxxxxxxxx|<1>[2-9]xxxxxxxxx|011xx.|xx.|(Mipd)|[^*#]@@.)
this is the default setting when I set it up through OBiTalk Approved Service Provider Google Voice)

Star Codes -> Star Code Profile A -> Code28 -> *95, Blind Transfer, coll($Bbxrn)

These settings also seem to do what I want.
I have a couple questions:
1. In the ITSP Profile B (Google Voice) DigitMap, I believe the <1>[2-9]xxxxxxxxx|011xx. are redundant, since they will be routed to SP1.
What does (Mipd)|[^*#]@@. do?  Again, they are the default settings from the automatic setup process.
2. Star Codes
In the PP DigitMap, there is a ***. Does it already cover the *98 in the later part of the PP DigitMap?
Also, Star Code28 has been changed to *95. Is *98 still valid?  Which one is needed in which DigitMap (PP and/or ITSP profile)?  I copied these setting from other's.

azrobert

Physical Interfaces -> PHONE Port -> OutboundCallRoute:
{([1-9]x?*(Mpli)):pp},{911:sp1},{(<##:>):li},{(<**70:>(Mli)):li},{(<**82:>(Mbt2)):bt2},{(<**81:>(Mbt)):bt},{(<**8:>(Mbt)):bt},{**0:aa},{***:aa2},{(<**1:>(Msp1)):sp1},{(<**2:>(Msp2)):sp2},{(<**3:>(Msp3)):sp3},{(<**4:>(Msp4)):sp4},{(<**9:>(Mpp)):pp},{((00|011)xx.):sp1},{(<1>(250|530)[2-9]xxxxxx|1(234|567)[2-9]xxxxxx):sp1},{(18(00|88|77|66|55)[2-9]xxxxxx):sp1},{(1[2-9]xx[2-9]xxxxxx):sp2}

{(Mpli):pli} The primary line is redundant since all the checks are hard coded previously. Removed.
{([2-9]xxxxxx):sp1} 7 digit dialing not required. Removed.
{([2-9]xx[2-9]xxxxxx):sp1} Any 10 number not required. removed.
8(00|88|77|66|55)[2-9]xxxxxx 10 digit 800 numbers not required. Removed.
{(18(00|88|77|66|55)[2-9]xxxxxx):sp1} 800 numbers to SP1?
250 and 530 11 digits not required. Removed.
International calls to SP1?

{(1(250|530)[2-9]xxxxxx|(250|530|234|567)[2-9]xxxxxx):sp1}
This is invalid. Allows 11 digit 250 and 530. Allows all 10 digit area codes. Does not prefix 10 digits with "1". It was modified.

The whole SP2 DigitMap is not used and redundant. Unless you want to force a call out SP2 by dialing a **2 prefix.

(Mipd) is a User Defined Digit Map and is checking for an IP address dialed like xx*xx*xx*xx and changes it to xx.xx.xx.xx
[^*#]@@. is checking for a character string Not beginning with * or # usually a URI.
Both are usually not needed and should be deleted.

*** is used to access the Auto Attendant 2 for config commands.

There are two types of Star Codes. The codes in the Star Code profile are commands for the OBi to perform. The codes in the PP DigitMap are Star Codes sent to a provider. The Star Codes in the PP DigitMap get priority and will disable a matching code in the Star Code Profile. That is why a different number was assigned.


BB88

{([2-9]xx[2-9]xxxxxx):sp1} Any 10 number not required. removed. Can I keep it for 10 digit dialing, or your <1> prefix take care of it?
8(00|88|77|66|55)[2-9]xxxxxx 10 digit 800 numbers not required. Removed. Can I keep it in case anyone want to call a 10-digit toll free, or is it invalid? I want to call from SP1, because many of these service numbers have Caller ID to verify I am calling from my primary number.
{(18(00|88|77|66|55)[2-9]xxxxxx):sp1} 800 numbers to SP1? Yes, I want to have 800 numbers to SP1 because many of these service numbers have Caller ID to verify I am calling from my primary number.
250 and 530 11 digits not required. Removed. Please see explanation below
International calls to SP1? Yes, I want to use the SP1 carrier to handle international call, because of called id.

{(1(250|530)[2-9]xxxxxx|(250|530|234|567)[2-9]xxxxxx):sp1}
This is invalid. Allows 11 digit 250 and 530. Allows all 10 digit area codes. Does not prefix 10 digits with "1". It was modified.
Sorry, I meant to have this:
{((250|530)[2-9]xxxxxx|1(250|530|234|567)[2-9]xxxxxx):sp1}
which allows 10 digit dialing on 250 and 530, and at the same time 11-digit on 250, 530, and a couple other area codes. The reason is even with the same area code, some are local calling and some are long distance for my previous PSTN carrier. I assume the new VOIP carrier will have the same rule.


Thanks again!

azrobert

Some providers allow 10 digits, others don't.
It can't hurt to add the prefix like this:
{(<1>[2-9]xx[2-9]xxxxxx):sp1}

The 800, 250, 530, 234 and 567 10 digit tests are redundant and can be removed.
The above generic 10 digit test will include these.
If you keep them, add the "1" prefix.

If you want 7 digits to default to an area code do this:
{(<1250>[2-9]xxxxxx):sp1}

BB88

Quote from: azrobert on January 09, 2015, 08:35:20 AM
Some providers allow 10 digits, others don't.
It can't hurt to add the prefix like this:
{(<1>[2-9]xx[2-9]xxxxxx):sp1}

The 800, 250, 530, 234 and 567 10 digit tests are redundant and can be removed.
The above generic 10 digit test will include these.
If you keep them, add the "1" prefix.

If you want 7 digits to default to an area code do this:
{(<1250>[2-9]xxxxxx):sp1}


If I have this: {(<1>8(00|88|77|66|55)[2-9]xxxxxx):sp1},{(1[2-9]xx[2-9]xxxxxx):sp2}
Will both 10 and 11-digit 800 numbers got routed to SP1?