triggering a callback without Obi answering the call

Started by lk96, January 08, 2012, 08:29:49 PM

Previous topic - Next topic

lk96

Hello
first of all apologies if this topic was discussed before. I do recall seeing some
comments on a similar thread but can't locate any relevant topics anymore.

Suppose the following scenario:
lets say I'm in Europe, with a European mobile # having only voice service
(not data, no voip). I'd like to be able to initiate low cost calls from that mobile by being able
to reach the Obi auto-attendant back home (based in US), and
then have the auto attendant capture the mobile # *without answering*
the call, and immediately proceeding to call back the european mobile # using the SP1 or SP2 service
so that when I answer the call on the mobile I will be connected to the AA.

I'm thinking that the first step would be to have Obi route an incoming call from the mobile with
European number to the AA applying a inbound routing rule like the following to the appropriate interface:
{(12345678912):AA},{ph}

How do I configure the AA (if I do need to do something extra) to return a call to the originating #
(12345678912 in this case)  but without answering the call in first place?

thanks

L.


lk96

indeed there was is a popular thread already on this which addresses this question.

Sorry for the redundant post.

http://www.obitalk.com/forum/index.php?topic=66.0

RonR

Assuming you're calling your OBi on the SP1 Service:

Voice Service -> SP1 Service -> X_InboundCallRoute : {12341234567:aa($1)},...

Upon receiving a call on SP1 from 12341234567 that is aborted before the Auto Attendant answers, the Auto Attendant will call back to 12341234567 using the Auto Attendant PrimaryLine.

You can have the Auto Attendant use a different trunk for the callback by altering the incoming number:

Voice Service -> SP1 Service -> X_InboundCallRoute : {(<**2>12341234567):aa($1)},...

In this case, the Auto Attendant would call back to 12341234567 using SP2.

Also see this post:

http://www.obitalk.com/forum/index.php?topic=2102.msg13284#msg13284

lk96

In the event the caller id captured is not the complete (or dial-able) phone # (ie the country code
was stripped), what would be the proper syntax to re-construct a proper call back #?

Assume the country code is "nn", and also assume that these 2 digits are the only digits that were stripped.
Then if I want to be able to dial back the international mobile # that initiated the call, will
the following modification suffice?

{(<**2nn>12341234567):aa($1)}

where "nn" is the country code?

thanks

RonR

Quote from: lk96 on January 09, 2012, 12:30:24 PM
{(<**2nn>12341234567):aa($1)}

That should cause the Auto Attendant to dial nn12341234567 using SP2.

I believe you could also do it as:

{12341234567:aa(**2nn12341234567)}

As long as the incoming CallerID is 12341234567, the Auto Attendant would dial nn12341234567 using SP2.

lk96

thanks.

I like replacing the $1 variable with the fully expanded and unambiguous phone # to be dialed
when the left hand rule is matched.

L.

RonR

Quote from: lk96 on January 09, 2012, 12:55:35 PM
I like replacing the $1 variable with the fully expanded and unambiguous phone # to be dialed
when the left hand rule is matched.

In this case, so do I.

The $1 variable can be quite useful, however, in cases where you have multiple or wild-card matches, such as:

{(12341111111|12342222222|12343333333):aa($1)}

or

{(12341234xxx):aa($1)

lk96

one follow up question:

suppose I want the AA to call back through 2 accounts/interfaces simultaneously (ie through both SP1 and SP2).
Does the Obi config allow such a possibility ?

The use case here would be as follows: in my case I tend to use really cheapo
providers when I'm in the US because I have plenty of options and choices
and ways to recover when some provider is out.
When I'm in Europe with a mobile in my hand, it will be critical to
get the call back. By forking the outbound calling from Obi through two providers,
the chances that at least one of the two providers is operational is much better.

I'm thinking that instead of using the variable $1 or the exact phone number in the AA( ... ) parameter,
a trunk group could be used instead? in this case the trunk group would consiste of the
2 cheapo SIP providers. If so, what does a TG syntax/config looks like ?

thanks

L.

Stewart

I don't believe that you can fork two AA instances.  However, the AA could call back into the OBi via the loopback address, e.g. 55555@127.0.0.1:5061.  Then, the inbound route for SP2 could detect the 55555 and fork via two VGx.  However, I suspect that you'll have problems with that approach.  For example, a call with no or one-way audio arrives first, preventing the "good" path from getting through.

IMO, you should simply have two (or more) ways to trigger a callback, which would then use different providers.  Possibilities include what number you call, e.g. your GV or IPKall DID, or what caller ID is sent, e.g. calling direct or via Rebtel.  You might make use of free DIDs from UKDDI, ippi.fr or messagenet.it, or set up Localphone so calling a local number rings to your iNum (with any provider).

RonR

Quote from: lk96 on January 13, 2012, 11:34:00 AM
suppose I want the AA to call back through 2 accounts/interfaces simultaneously (ie through both SP1 and SP2).
Does the Obi config allow such a possibility ?

No.  There is only one instance of the Auto Attendant and it can only initiate a single callback.

Quote from: lk96 on January 13, 2012, 11:34:00 AM
When I'm in Europe with a mobile in my hand, it will be critical to
get the call back. By forking the outbound calling from Obi through two providers,
the chances that at least one of the two providers is operational is much better.

The OBi does not support forking outbound calls.

Quote from: lk96 on January 13, 2012, 11:34:00 AM
I'm thinking that instead of using the variable $1 or the exact phone number in the AA( ... ) parameter,
a trunk group could be used instead? in this case the trunk group would consiste of the
2 cheapo SIP providers. If so, what does a TG syntax/config looks like ?

A Trunk Group doesn't guarantee that a call goes through.  It simply allows specifying multiple trunks to be used in case the resources of one or more trunks are not available.  You can set the Auto Attendant PrimaryLine to Trunk Group 1 and then define multiple trunks at Trunk Group1 -> TrunkList.

lk96

thanks for the responses on the trunk group. Will experiment shortly.

However, I just tried a basic experiment to see if I will get a call back and
the Obi doesn't seem to call back. Below is the inbound call route config:

{kkkkkkkkk|mmmmmmmmm):aa},{(nnnnnnnnnnnn):aa(xxxxxxxxxx)},{ph}

where:
kkkkkkkkk is an Obi #
mmmmmmmmm is another Obi #
nnnnnnnnnn: is the 12 digit incoming international phone  exactly as captured in the Obi call history
xxxxxxxxxx: is a US based GV # (I didn't want obi to call back a european # that is in roaming). This
# should have been dialed over the primary line (LINE in this case). I also did an experiment
to send that call over SP1 (by prefacing the number with **1).

Do I miss something ?

L.

RonR

Quote from: lk96 on January 13, 2012, 01:06:46 PM
{(nnnnnnnnnnnn):aa(xxxxxxxxxx)}

The parenthesis around nnnnnnnnnnnn isn't needed (they do no harm).

A call from nnnnnnnnnnnn which is aborted before the Auto Attendant answers should cause the Auto Attendant to initiate a callback to xxxxxxxxxx using the Auto Attendant PrimaryLine.  This is assuming that the Auto Attendant DigitMap and OutboundCallRoute match the xxxxxxxxxx number.

You can test the nnnnnnnnnnnn CallerID match by not hanging up and seeing if the Auto Attendant answers.

You can test the Auto Attendant's ability to call xxxxxxxxxx by dialing **0, pressing 2, then entering xxxxxxxxxx#.

lk96

I figured out why I was not getting the callback: even the 10sec interval was too short.
In fact (and unfortunately) the AA was picking the real call (it will be
a really expensive one). So once I increased this
and kept track of the time I was on the phone while getting the ring back
I did get the call back.

However, it seems that I hit some issue related to the use of trunk groups for the call back:

so I used a syntax like aa(tg1(1nnnnnnnnnn)) to tell the AA to use TG1 to callback the indicated number.
In the configuration of TG1 i replaced the default sp1, sp2 with li1 in order to force
the call out of LINE interface (just as an experiment).
The net result is that I did get the call back but not through the
LINE interface. When I went in the call history, the call was shown that went out through
TG1(1nnnnnnnnnn). But this does not tell me which actual interface was used.
Based on my Obi config I'm fairly certain though that the call went out through SP1
(because the above destination number would not be dialable through SP2 and have
validated that manually).

May be I'm pushing my luck here but ...any ideas ?
Is it possible that you can't have the AA use a TG to call back ?

lk96

sorry but this was a false alarm. The history did show the call used LINE1 interface.
And when I picked up the *correct" handset to "eavesdrop" on the returned call, I confirmed
that thing worked out fine.

So this is good news that using a TG in the AA callback definition worked as expected.

L.

Stewart

What services do you have set up on your OBi?  Which country SIM(s) do you have? In which countries will you be traveling?

I'm asking this, because there are probably ways to set up the OBi to have two or more callback choices, using local numbers dialed from the EU mobile.  I live part time in France and use a prepaid phone there.  My OBi is set up so I can dial one Paris number and get a callback via Voxbeam, or dial a different Paris number and get a callback via Orange.

There are also commercial callback services (more expensive than using the OBi, but still fairly reasonable) that can serve as a backup.  Take a look at Fonworld and Future-Nine.

lk96

Quote from: Stewart on January 13, 2012, 06:51:32 PM
What services do you have set up on your OBi?  Which country SIM(s) do you have? In which countries will you be traveling?

I have two Obis (100 and 110) currently located in the US. I have GV setup
on the 100 where SP1 is the GV service and SP2 is occupied to forward GV calls to a Grandstream IP phone.
The 2n Obi which is an 110 is in front of a Vonage adapter (which is my default family line). I have setup
easyvoip and voipalot on the SP1 and Sp2 services of the 110 respectively.
In the next few months I will install also one in Greece which I intent to use also for some
local mobile-to-mobile calls (through callback) so that calls are not backhauled back to my USA obi.

My calling needs are mostly in Greece and India at this stage (yes I know that India is not Europe.. was trying to keep the example cases limited).
In Greece I do have a SIM that I renew on each travel (so effectively I maintain the same phone #).
In India I get a new SIM every time I land there. Also occassionally I need similar service in
France and UK.

Quote from: Stewart on January 13, 2012, 06:51:32 PM
I'm asking this, because there are probably ways to set up the OBi to have two or more callback choices, using local numbers dialed from the EU mobile.  I live part time in France and use a prepaid phone there.  My OBi is set up so I can dial one Paris number and get a callback via Voxbeam, or dial a different Paris number and get a callback via Orange.

Can you please elaborate on this? I don't see how the Obi is in the call path.

Also: after seeing some of your posts I checked a bit Voxbeam. Do they offer their service
retail to individuals? or they mostly do wholesaling to companies/businesses. They do
have fairly aggressive pricing and if the do offer service to individuals I'm willing
to setup an account with them as well.

Quote from: Stewart on January 13, 2012, 06:51:32 PM
There are also commercial callback services (more expensive than using the OBi, but still fairly reasonable) that can serve as a backup.  Take a look at Fonworld and Future-Nine.

Thanks. Will do.

L.

lhm.

@lk96

You may want to look at LocalPhone.com (a Voxbeam company) as rates are pretty good also. They will give you a UK# for free.

Stewart

#17
Quote from: lk96 on January 14, 2012, 07:58:11 AMCan you please elaborate on this? I don't see how the Obi is in the call path.
I live part time in Paris and have an OBi there.  It's configured with an Orange pseudo-POTS line (like your Vonage) on the LINE port, PBXes (sub-PBX) on SP1, Phonepower on SP2 and Voxbeam on VG1.  For example, my prepaid mobile in France is 0612345678.

InboundCallRoute for the LINE port is: {(xx.612345678):aa(**80612345678)}, ...
So when I call the Orange number from my mobile, I hang up before the AA answers and it calls me back, using the LINE port, i.e. Orange.

InboundCallRoute for SP1 is: {(<**30011101>(33612345678)):aa($1)}, ...
I have a PBXes trunk registered to ippi.fr, with a free Paris number.  When I call the ippi number from my mobile, I hang up before the AA answers and it calls me back, using Voxbeam and adding the Premium prefix.

Once I answer the callback, I can dial 2, then call out through any of the configured services.

Although my setup uses local numbers, you could use any DIDs anywhere in the world, as long as your mobile carrier doesn't charge you for an unanswered international call (and if that's a problem, see below workaround using Localphone).  For example, you could route a free IPKall DID to your OBi110 SP1 and another to SP2.  Calling one DID might trigger an Easyvoip callback and the other a Voipalot callback.

Both Easyvoip and Voipalot will accept unregistered (but authenticated) calls, so you can put them on a VGx and use the SPx for something else, e.g. Callcentric or Localphone, who provide free iNum DIDs.  Then, you can set up a Localphone or Rebtel account to ring the iNum when you call an access number in your current country.  Calls through Rebtel modify the caller ID; you can set the OBi to recognize the modified number and take a different action.

Voxbeam is the Costco or Sam's Club of wholesale VoIP, with lots of small customers.  You get a $1 credit at startup, which is enough for lots of testing.  Then, the minimum payment is $50, which expires after one year, implying minimum usage of $4+ per month.  There is a 2.5% surcharge for credit card or Paypal payments, but you can pay by ACH to avoid that, if you have electronic bill payment with your bank, broker, credit union, etc.  Also, they authenticate by IP only; if yours changes frequently, I can post a script that updates the site automatically.  You might also look at FlowRoute, with slightly higher rates but fewer gotchas.


lk96

@lhm: thanks. Will keep that in mind.

@Stewart: thank for the detailed description. I got the idea.
What I didn't pay much attention to (even though I did come across
some posting) that were mentioning that some of the SIP services don't need
registration). This is actually very powerfull as I thought I couldn't use
my Obi100 (which had both ports occupied) to return my call back.

With that said, I'll take a look to see how I define such VG.

L.

lk96

after some more thinking on Stewart's response and advice, I'm trying to figure out the following:

Consider my case where both SP1 and SP2 of my Obi100 are used/occupied for GV and bridging GV calls
to an IP phone. As per Stewart's response, I can configure a VG to be the one
to be used by the AA to call me back through a SIP service that doesn't require
registration. So far so good.

Once I get the call back at the mobile phone, I will be on the Obi AA prompt. At that point
I will have to dial the destination number I desire to reach. How can I instruct the Obi
to use a VG or a trunk *other* than the SP1 and SP2 to dial out the destination number ?

I thought as a workaround that I could pre-program some speed dials.
But upon checking the admin guide it seems
that a speed dial cannot be a VG (only SP1, SP2, LINE and PP are allowed).

Any ideas how this can work ?

thanks

L