News:

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

Main Menu

Need help with forwarding only one specific caller, and after x rings

Started by FeloniusMonkey, April 06, 2012, 11:47:01 AM

Previous topic - Next topic

FeloniusMonkey

My first post here...

The majority of our incoming calls are via PSTN to our GV phone number.  The rest are from my wife's sister in Russia, calling from her computer.  I set her up with a Callcentric account, a simple SIP client, and a Callcentric quick dial to our SP2 port's SIP address.  The reason for this complex setup is because her sister's dialup connection requires a narrowband codec to have a reliable conversation.  The G729 codec @ 8 kb/s has been working great so far.

So the next step: to have my OBi100 forward ONLY my sister-in-law's calls to my wife's cell phone when no one is home to answer the phone.  I would really appreciate if someone would help guide me through this one.

Additional info:

SP1 - Google Voice - Incoming calls, and outgoing domestic calls
SP2 - BetaMax SIP account - Incoming calls, and outgoing international calls, due to BetaMax's exceptional rates.  FYI: I successfully set up OutboundCallRoute on Phone and AA to catch any outgoing phone calls starting with "001xx.", and send them through SP2.

1. Due to battery life, my wife will not be running a SIP client on her cell phone, so we'll have to hand off via PSTN.
2. I noticed the CallForwardOnNoAnswerNumber feature in the OBiTalk settings.  Unfortunately, since I ONLY want forwarding to happen for my sister-in-law, I can't utilize it.
3. I'd prefer not to use OBiON, nor have my sister-in-law interact directly with the OBi menus.  First-off, she doesn't speak English.  And second, I don't want to provide her (or users of her computer) with any additional calling options at my expense.  And thirdly, the forward/handoff should be 100% passive.
4. It would be nice to forward via SP1 (GV), so the forwarded call would be free.  However, PC->USA calls via SP2 only cost 0.5 cents/min, so I'm ok with that.  Given that the call will come in via SP2, the latter may cut down on latency.
5. I know that somewhere I'll need a rule that matches her SIP username.  I'm just not sure of the place (within the route) and timing to intercept the request and work the magic.
6. I'm curious what kind of route would be established once the connection is bridged between my sister-in-law's computer, and my wife's cell phone.  I'd imagine that once the connection is made, my OBi device can be eliminated from the route (thus improving any latency).

Any help, even just a nudge in the right direction, is much appreciated.

Thanks!

RonR

Quote from: FeloniusMonkey on April 06, 2012, 11:47:01 AM
So the next step: to have my OBi100 forward ONLY my sister-in-law's calls to my wife's cell phone when no one is home to answer the phone.  I would really appreciate if someone would help guide me through this one.

Voice Services -> SP2 Service -> X_InboundCallRoute : {17771234567:ph,sp1(12341234567;d=15)},{ph}

where 17771234567 is the CallerID for your sister-in-law's calls (as shown in the OBi Call History) and 12341234567 is your wife's cell phone number (to be bridged via Google Voice).

Incoming calls from your sister-in-law should be bridged to your wife's cell phone using Google Voice if they're not answered on the OBi PHONE Port within 15 seconds (you can change the d=15 to a value of your liking).

Stewart

I agree with RonR; latency won't be any better by forwarding via SP2 -- if anything, it may be worse by proxying the audio through a Betamax server in Europe.

However, the dial-up modem connection has lots of latency, and depending on your sister-in-law's location and phone service, there may be a way to avoid it.  Take a look at the access numbers in Russia from iNum http://www.inum.net/what-is-inum/voice-reach/ and SIPBroker http://www.sipbroker.com/sipbroker/action/pstnNumbers .  If she can call one of those for free (or for no more than it costs to dial up the Internet), she can reach your OBi at no cost to you (or forward to wife's cell phone for no cost other than airtime).

For the iNum gateway, get a free iNum for your Callcentric account and have it ring your OBi.  At the "Welcome to iNum" prompt, she would dial the last nine digits of your CC iNum, followed by #.

For SIPBroker, she dials *4621777xxxxxxx at the prompt (substituting the last 7 digits of your CC number for xxxxxxx).

You may be able to reduce latency further by getting a free VoxOx account that rings your wife's cell phone (and home phone if desired).  Get an iNum for the VoxOx account and have your sister-in-law dial that via the iNum gateway.

Stewart

Another possibility for a (relatively) low latency connection is to set up the OBi so when your sister-in-law calls it, the auto-attendant calls her back via your Betamax provider.  You could restrict the AA, so she could reach only your OBi phone and wife's cell phone.  Her "trigger" call would not be answered, so she could dial directly and not have to fuss with the softphone.

FeloniusMonkey

Lots of great advice here.  Thank you both for helping me solve the problem.  Now I'm just on a mission to optimize (and have some fun in the process)!

So here are a few follow-up questions:

1. Regarding RonR's solution: I tested this out, and it definitely works.  Upon examining the log, I can see that it "forked", prior to ringing my cell phone.  I'd like to better understand what that does to the route.
a. Home Phone Scenario: CALLER (SIP) -> [CLOUD] -> SP2 -> PH
b. Cell Phone Forward Scenario: CALLER PC -> [CLOUD] -> SP2 -> SP1 -> [CLOUD] -> [PSTN/CELL NETWORK] -> CELL PHONE
In scenario (b), does the media stream (UDP) have to hop through the cloud twice?  Or is the protocol smart enough to route the media stream directly from the server to the caller endpoint, and circumvent SP2?  I'm most curious about this because I know that GV doesn't use the G729 codec (which my sister in law must use to call the OBi).  Oh, did I mention that her dialup is via cellular USB stick?  Yeah, I just refer to it as "dialup" because it's not much faster than 57.6kbps.

Stewart, I made use of SIPBroker/iNum back when I had a voxalot account, and it would certainly be a viable option now, if my sister-in-law actually had a landline.  I'm pretty sure any number she calls in Russia will charge her by the minute.  Your VoxOx suggestion sounds interesting.  I just visited the website, but I can't quite digest it all right now.

2. So, Stewart, your latest suggestion about restricting the AA has me über-intrigued.  I had to read it 10 times before I finally caught the gist of it.  Would the OBi act as a "conference center" between the two legs of the call?  I'd imagine it would first call my sister in law back via SP2.  And if she answers, it would then ring PH.  If PH doesn't answer after 15 seconds, it would call my wife via SP1?  Then it'd be like a little conference call?  Do I understand this correctly?

3. In a scenario very similar to RonR's solution, if my sister in law calls in on SP2... instead of forwarding to my wife's cell on SP1, can I do it through SP2, so that SP2 would be holding two different legs at the same time?  And similarly, can I use the OBi's "Gateways and Trunk Groups" feature to define an additional service for outgoing-only, and use that for the forwarding?

Thanks again for all the great ideas.  I already love this place!

RonR

FeloniusMonkey,

When your sister-in-law uses her SIP client that's registered with Callcentric to call you, Callcentric is initiating a SIP URI call to your OBi.  The OBi sees this as an incoming call from Callcentric number 1777xxxxxxx.  When the OBi sees a call on SP2 from this number, it simultaneously rings the OBi PHONE Port and places an outgoing call to your wife's cell phone using SP1.  The call to your wife's cell phone is delayed for 15 seconds.  Whichever answers first gets bridged to the incoming call from Callcentric and the other is abandoned.

Using the Auto Attendant callback approach Stewart suggested, your sister-in-law would call your OBi from some recognizable phone number.  When the OBi sees a call from this number, the call is routed to the Auto Attendant, but with a longer than usual answer delay.  If she hangs up before the Auto Attendant answers, she will not be charged for the call and the Auto Attendant will call her back using one of your service providers.  At that point, she could press 1 to ring the OBi PHONE Port or press 2 to initiate a new outbound call using one of your service providers, presumably to call your wife's cell phone (which could simply be a one- or two-digit Speed Dial for her to enter).

Many service providers do support multiple sessions.  Google Voice allows 2.  You can add additional providers for outgoing calls on Voice Gateways provided they don't require SIP registration.  Regardless of the number of providers you have, the OBi is limited to four simultanous call bridges.

FeloniusMonkey

Thanks again for this info!

RonR, I think I need to tweak something.  When the call is forwarded to my wife's cell phone, the home phone keeps ringing.  I presume once either phone is answered, the ringing on the other stops.  I infer this because our answering machine picks up after a few more seconds, and the cell phone stops ringing.  That basically means that my wife only has a couple seconds' window to answer her cell phone once it starts ringing.  Is this a limitation of the X_InboundCallRoute solution, or is there something additional I can do to prevent the home phone line from continuing to ring?  I really don't want to disable the answering machine... we kinda need it.

Thanks!

RonR

Quote from: FeloniusMonkey on April 09, 2012, 09:14:58 AM
I presume once either phone is answered, the ringing on the other stops.

That's correct.  The first one to answer gets the call.

You may want to shorten the d=15 parameter to have the cell phone start ringing sooner.

FeloniusMonkey

So there's no way to stop the phone from ringing at home once it starts ringing the cell?

RonR

Quote from: FeloniusMonkey on April 09, 2012, 11:26:25 AM
So there's no way to stop the phone from ringing at home once it starts ringing the cell?

Only by answering the cell.

FeloniusMonkey

Quote from: RonR on April 09, 2012, 09:29:16 AM
That's correct.  The first one to answer gets the call.
You may want to shorten the d=15 parameter to have the cell phone start ringing sooner.
Might as well just ring 'em both at the same time.  That way, if my wife is home, and she hears both phones ringing (and sees her sister's username on either phone), she'll know to pick up the home phone first.  If I see her name on the home phone, and my wife is out, I'll just let it ring through... or even turn off the home voicemail so her cell VM will pick up.

Yes, I think this is the way to go.

Thanks again.

RonR