News:

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

Main Menu

Shortcut to city calls

Started by janitorjoe, February 22, 2013, 09:49:31 AM

Previous topic - Next topic

janitorjoe


  • OBi-202
  • SP1 - Provider A
  • SP2 - Google Voice

My international format for local calls: +123 4 5555 5555
(123 is country code, 4 is area code, city numbers are 8 digit such as 5555 5555)

What I want to achieve:
To dial 5555 5555 using SP2 (GV), currently I have to dial **2 00 123 4 5555 5555.
I'd like to dial some shortcut and then 4 5555 5555, to eliminate a bunch of keystrokes **2 00 123.

I am using the default DigitMap setting for SP2:
(1xxxxxxxxxx|<1>[2-9]xxxxxxxxx|011xx.|xx.|(Mipd)|[^*#]@@.)

Notes:
1. I don't mind to swap Google Voice with Provider A, but I figure I'd still have the same problem as only **2 would become redundant and I'd still have to dial 00123 before I could dial the area code and phone number.
2. If this question gets answered I hope to use the same approach to call mobile phones as well (+123 0444 5555 5555) but that's less important.

azrobert

Place the following at the beginning of your Phone1 DigitMap after the parenthesis:
0xxxxxxxxx|0xxxxxxxxxxx|

Place the following at the beginning of your Phone1 OutboundCallRoute:
{(<0:00123>xxxxxxxxx):sp2},{(<00123>0xxxxxxxxxxx):sp2},

The first rule I'm having you dial a zero before the 9 digit number. You could just check for 9 digits. I did the zero to lessen the chance of a misplaced call. For example dialing a 10 digit domestic number, but having a finger check and only dialing 9.

Felix

a few assumptions that I am going to make:

  • you use provider A for US calls
  • provider A is the primary
  • you are OK dialing 11 digits for US calls. That is, 1-212-555-1212; not 555-1212 or 212-555-1212
  • you are using Google Voice for international calls only.
  • country code actually doesn't start with 1 (that is, you are not calling Canada or Caribbean)

in such case, you can set up a very simple digit map:
PHONE Port - OutboundCallRoute: {(Mpli):pli},{(Msp2):sp2}
ITSP Profile A - DigitMap: (1[2-9]xxxxxxxxxS0)
ITSP Profile B - DigitMap: (<0:2341>xxx.|[2-9]xxx.)

This way all calls starting with 1, will go to provider A; calls starting with 0 will dial 2341+whatever number you dialed after 0; and all calls that start with 2-9 will go to Google Voice. The risk (as azrobert mentions) is that if you miss 1, you can end up in Somali instead of Texas. My 82-year old dad has a very similar setup, and he thinks that convenience is worth it (granted, he only got to 2c/min Japan, not 50c/min Somalia...)

janitorjoe

Quote from: Felix on February 22, 2013, 11:10:47 PM
a few assumptions that I am going to make:

  • you use provider A for US calls
  • provider A is the primary
  • you are OK dialing 11 digits for US calls. That is, 1-212-555-1212; not 555-1212 or 212-555-1212
  • you are using Google Voice for international calls only.
  • country code actually doesn't start with 1 (that is, you are not calling Canada or Caribbean)

in such case, you can set up a very simple digit map:
PHONE Port - OutboundCallRoute: {(Mpli):pli},{(Msp2):sp2}
ITSP Profile A - DigitMap: (1[2-9]xxxxxxxxxS0)
ITSP Profile B - DigitMap: (<0:2341>xxx.|[2-9]xxx.)

This way all calls starting with 1, will go to provider A; calls starting with 0 will dial 2341+whatever number you dialed after 0; and all calls that start with 2-9 will go to Google Voice. The risk (as azrobert mentions) is that if you miss 1, you can end up in Somali instead of Texas. My 82-year old dad has a very similar setup, and he thinks that convenience is worth it (granted, he only got to 2c/min Japan, not 50c/min Somalia...)


Excellent points, both you and @azrobert. I should obviously revise and revisit some assumptions!
Due to my inexperience I didn't know that I should have been even more specific.

1. I have OBi-202, so no phone lines are connected. The OBi-202 is connected to LAN router and then to the Internet, but I assume the path to OutboundCallRoute in the Web GUI is:
Physical Interfaces -> PHONE1 Port -> OutboundCallRoute

(As my question wasn't clear enough, I think in my case this should be PHONE2 - see the final assumptions below)

2. You're right, my country code doesn't start with 1, it starts with 8 (Taiwan). I thought that using "easy to read" fictional numbers was easier to read, but my inexperience shows.

3. I was using **2 (see my Note #1 above) even though SP2 is the default for outgoing calls, but that's a very good point - why not set each SP2 differently?
Since SP2 is my default SP for all outgoing calls, I guess I don't really need to dial **2 every time (maybe <intl><area><number> should be enough - I need to verify that) and also, that's why I should modify OutboundCallRoute PHONE2, right?

OK, so to clarify all assumptions:

* OBI-202 with SP1 as Provider A (I'm not actually using it, but it's configured) and SP2 as Google Voice (Currently SP2 is the default for all outgoing calls. I can change these settings if necessary or swap GV with Provider A - I set it that way simply because I'm clueless - I started with Provider A, didn't get anywhere, tried GV and got it to work, then made it the default and perhaps unnecessarily kept using **2 with it).
* I am OK with dialing full-length numbers for US calls (and international calls in general) as I don't make those frequently. I don't have any US area code set in OBi-202 settings since I'm not in the US.

I bought the device recently (it turns out a wrong model, but hey, that was my fault and that's great for business because now I am thinking to also buy a OBi-110 :-)) and I haven't made much progress in making it work (I'm satisfied with the product and less so with the time and skill I've invested in using it).

Thank you!

janitorjoe

#4
Quote from: azrobert on February 22, 2013, 03:27:33 PM
Place the following at the beginning of your Phone1 DigitMap after the parenthesis:
0xxxxxxxxx|0xxxxxxxxxxx|


OK. My Phone2 (SP2) is the default so I changed DigitMap there. Now it looks like this:
0xxxxxxxxx|0xxxxxxxxxxx|(1xxxxxxxxxx|<1>[2-9]xxxxxxxxx|011xx.|xx.|(Mipd)|[^*#]@@.)
After that, I rebooted.

Quote

Place the following at the beginning of your Phone1 OutboundCallRoute:
{(<0:00123>xxxxxxxxx):sp2},{(<00123>0xxxxxxxxxxx):sp2},

The first rule I'm having you dial a zero before the 9 digit number. You could just check for 9 digits. I did the zero to lessen the chance of a misplaced call. For example dialing a 10 digit domestic number, but having a finger check and only dialing 9.


I added that  to Phone2 OutboundCallRoute (since Phone2 is my default line):
Before:
{([1-9]x?*(Mpli)):pp},{(<#:>):ph1},{(<**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},{(Mpli):pli}
After (change 123 to 886, my actual country code):
{(<0:00886>xxxxxxxxx):sp2},{(<00886>0xxxxxxxxxxx):sp2},{([1-9]x?*(Mpli)):pp},{(<#:>):ph1},{(<**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},{(Mpli):pli}

Now when I dial **2 0<city code> 5555 5555, or 0<city code> 5555 5555, I get a busy tone (it's weekend so office phone lines aren't busy, I also verified by calling from my mobile phone).
(Will I be able to dial mobile phone numbers (0 followed by a 3 digit telco code + 5555 5555) with this rule? If not, doesn't matter, but I'm curious so that I don't have to guess).

Thank you for your help. Although this isn't working yet, I'm already getting a better understanding of what needs to be done.

azrobert

#5
You are changing the wrong DigitMap. Change the DigitMap under Physical Interfaces/Phone2.
You also didn't place the rules after the beginning parenthesis.
It should look like this:
(0xxxxxxxxx|0xxxxxxxxxxx|[1-9]|[1-9][0-9]|911|**0|***|#|(Mpli).....................

If I didn't screw up mobile calls will work.

Edit:

If your Primary Line for Phone2 is SP2 (Physical Interfaces/Phone2/Primary Line = SP2) you can keep the rules where you put them, but it should look like this:
(0xxxxxxxxx|0xxxxxxxxxxx|1xxxxxxxxxx|<1>[2-9]xxxxxxxxx|011xx.|xx.|(Mipd)|[^*#]@@.)

Either place will work.


janitorjoe

#6
Cool, it's working (both local and mobile phones are ringing).

BTW, for the next guy who gets stuck, when you change these settings, you may need to change them thru ObiTalk.com (in Expert Settings) and not directly over LAN to your OBi device....
I had big issues with this (settings sometimes would and other times wouldn't get saved!). See http://www.obitalk.com/forum/index.php?topic=1503.0 for another guy's story.

Summary of actions (note, my default phone and SP phone are "Phone 2" and "SP2" (provider "B"), respectively, and that is visible in your device's Obitalk.com settings.

1. Modified my SP2 phone's DigitMap
In obitalk.com go to Expert Settings for your device, find Service Providers > ITSP Profile B > General Settings (uncheck both checkmarks, then paste this line and save:
(0xxxxxxxxx|0xxxxxxxxxxx|1xxxxxxxxxx|<1>[2-9]xxxxxxxxx|011xx.|xx.|(Mipd)|[^*#]@@.)
It appears the first two make it possible to call city and mobile phones (0x 5555 5555 and 0xxx 5555 5555) in my area.
At first I pasted the additional part outside of the left parenthesis - I took the advice to paste the addition at the beginning too literally!

2. Modified my Phone2's OutboundCallRoute
I had one failure where I incorrectly modified DigiMap as I was trying to figure this out based on http://www.obitalk.com/forum/index.php?topic=1792.0 and also Felix mention "digit map" so I simply strayed away.
In obitalk.com go to your device, go to Expert Config > Physical Interfaces > Phone 2 > Outbound Call Route (uncheck the both checkmarks, then overwrite the default and save). In my case the first two 886's are my country code.
{(<0:00886>xxxxxxxxx):sp2},{(<00886>0xxxxxxxxxxx):sp2},{([1-9]x?*(Mpli)):pp},{(<#:>):ph1},{(<**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},{(Mpli):pli}

3. It seems each save action will make obitalk.com push the new settings to your device and reboot it. To be on the safe side I waited 5 minutes between the changes as I didn't want to have any unexpected situations with settings not taking effect.

Thank you for your help and hope this helps others in a similar situation!

janitorjoe

Quote from: janitorjoe on February 24, 2013, 09:38:47 AM
Cool, it's working (both local and mobile phones are ringing).


Today I discovered what's not working: in-country toll free numbers in the following format:
0080-123-4567 (0080-xxx-xxxx)

I get "we could not complete your call, please try again" (I don't know if that's from my OBi or from the toll free number operator).

Does anyone has idea how to modify the rules to make this work?

zapattack

Dial the failing number and immediately check Status/Call Status before hanging up.
It should show what digits were sent and where.

If the call actually went to the Service Provider, then Call History will show 'Call Connected'.

janitorjoe

Good idea. But "expect the unexpected": the call did connect, but it didn't connect:

02:36:32   From PH1   To GT2(00801231234)
02:36:33      Call Connected
02:36:37      Call Ended

The "We could not complete your call - Please try again." thing makes the call "connected".
I didn't know whether the message comes from OBi or the 0080 provider, but I just googled it and:
https://productforums.google.com/forum/?fromgroups=#!topic/voice/zZCtLu1Em30
As one of the comments say, there are known issues of GV integration with 3rd party systems. This 0080 isn't a Sprint number, but obviously integration between this 0080 provider and GV doesn't work and the message is from Google Voice.

At least now I know the rule is correct and it's a Google Voice problem.
Thanks!

zapattack

You now know:
-the Obi connected to GT2
-the Obi sent digits  00801231234
-the Service Provider rejected the digits.

Is GT2 Google Voice access? If so, go to your Gmail account and dial the number there.
That is all the Obi is doing.

janitorjoe

Correct, that's Google Voice and that looks like a GV problem...