News:

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

Main Menu

How to (or how I did): Sending 911 (or x11) calls from one Obi to another (-110)

Started by user17600, September 28, 2012, 06:56:32 PM

Previous topic - Next topic

user17600

Hello, all. I've seen a number of posts around dialing between Obi units, specifically "single stage dialing" or "pooling".

In some cases (as with mine), folks wanted to have a second Obi be enabled to send 911 (or another x11 number) through a POTS-connected Obi110.

I read and re-read the posts for "single stage" and "Obi pooling" (use these as search terms), fiddled with the digitmaps and call routes, before achieving success.

Disclaimer: what follows below routes the 911 call via the Obitalk service, which we all know can be, um, somewhat unreliable. If the call fails, it will give a SIT tone and a cryptic message. In my family, they've been trained which phones have the most reliable 911 service (corded, plugged directly into the NID-connected jack, bypassing cordless and the OBI units). I did this exercise  partially to see if it could be done, partially to see if I learned anything from reading this site and the admin guide, and partially for convenience (if I need 911 and a cordless phone is handy, I'll try that first). As they say: YMMV.

Anyway, here are the steps I took, for anyone else who is interested.  This may not be the most elegant way of doing it, but it works. And I'm always open to suggestions about how to "continuously improve".

Note: In my case the "remote" Obi is a 202, the "POTS" Obi is a 110 (obviously).

Note 2: I did all these configuration using the configuration pages on the devices themselves, not via the Obi portal pages.

1) Set up single stage dialing: On the 202 I set up speed dial 2 as pp(ob200789234) This is the Obi110 "Obi number"

2) On the 110, set the Obitalk inbound call route to {500234789>(Mli):li}  This is the Obi202 "Obi number"
 
NOTE: We don't use Obitalk service to call between these units. You may be able to make changes to the incoming call route to allow for being able to answer a call, but I didn't care about calls going only to the "li" port.  Both units are at the same location, so we have no need to talk between units.

3) On the 110 phone port digitmap, add |911S0| to ensure calls are passed immediately.  S0 means no pause before sending the call.

Note: there will be a 2-3 second pause while the remote Obi connects to the POTs Obi and places the call to 911.

4) On the 110, On the line port digitmap, add xxx| to ensure 3 digit numbers are passed.

5) On the 110, the PSTN line is my "Primary Line", though this may not matter, since you are specifying sending the call to the "li" port.

6) On the 202, add xxx| to the digitmaps for each of the ISTP Profiles (A-D on the 202) in the General tab.  This will ensure 3 digit numbers are passed.

7) On the 202, phone ports (both 1 and 2!) digitmap, add |911S0| to ensure calls are passed immediately.  

8) On the 202, outbound call route, add {(<911:2*911>):pp1}, at the front of the digits for each of the phone ports.  

Note: This reads "if 911 is dialed (on the 202 connected phone), ring speedcall 2 via the Obitalk service and pass the digits 9 1 1".  Because this is "single stage dialing", the 2 and * are not passed along to the 110.

Note 2: recall above that calls from the 202 to the 110 via the Obitalk service route only to the "li" port, they do not ring the "ph" port.

Note 3: for testing, you should change the {(<911:2*911>):pp1} ring something else to ensure it works; I used {(<911:2*211>):pp1} for testing purposes unti I was ready to commit. 211 is our local information line.

I think these are all the changes that I made to accomplish this. I made so many different attempts that it is possible that I made some other change that is not reflected in the above. If that is the case (someone cannot reproduce the above) I will dig back through all of my digitmaps and dialing rules and try to figure out what else I might have done.

You can also use the same approach for 211, 311, 411, etc., if these are offered by your POTS company/community.

Someone else may have already achieved this, but I couldn't find a straight how-to in the forum via search.  This is my 0.02 contribution for all the help the forums have already given me.  Hope you find it helpful.

Cheers!

jimates

Thanks so much for the detailed info. The other day when I was working on this I was lacking the XXX| details to pass the exact 911 through.

Thanks again, I am sure this will be very helpful for others also.

QBZappy

user17600,

Nice job.

Can I suggest that there are potentially two points of failure for the 911. The two dependencies in this setup (other than your own lan) is the OBiTALK service and your ISP. I think by limiting the 911 calls over the lan will eliminate these dependencies, since 911 by implication is supposed to work reliably. By using a peer to peer strategy using the sip uri approach (1234@OBi110_IP:port) in the dial plan by addressing the ip of the OBi110 would  be interesting for an Obi 110 located inside your lan. Your approach is excellent as a WAN solution, although a 911 solution like this over the WAN would mean that the caller is not next to the OBi 110.
Owner of the 1st OBi110/100 units in service in Canada & South America. 1st OBi202 on my street. 1st OBi1032 in Montreal.

ianobi

Very neat job.

I particularly liked the use of the specific {(<911:2*911>):pp1}  derived from the general rule {([1-9]x?*(Mpli)):pp}. This could be useful for other non 911 routings.

CoalMinerRetired

Very interesting. I understand the S0 because I've been using it.

Would you also put it here {(<911S0:2*911>):pp1}?

user17600

Quote from: QBZappy on September 28, 2012, 11:20:28 PM
By using a peer to peer strategy using the sip uri approach (1234@OBi110_IP:port) in the dial plan by addressing the ip of the OBi110 would  be interesting for an Obi 110 located inside your lan. 

Zap, this is exactly what I was trying initially to do.  My network is actually set up quite well for this since the -110 and -202 have IP addresses reserved by the router (1.2.3.100 and 1.2.3.101).

However, I could not find a way to successfully send x11 via direct IP connection, hence the workaround above.  I *can* create a speed dial like ob200789234@1.2.3.100:5061 and successfully ring the -110 port, but can't seem to get it to send x11 (or any number for that matter).  It seems that creating a "single stage dialing" for direct-IP doesn't seem to work the same way as with Obitalk services.  I also tried adding it to the outbound call route (both ob_num@ip_addy:port and speedcall*x11) without success.

I would much preferred to, as you note, control the failure points, containing them to my internal (and fairly robust) network.

If you or others have any ideas, perhaps based on the above, to send digits peer-to-peer, I'd love to try to upgrade my above approach.

Thanks

jimates


ianobi

user17600,

I have made the following work from a softphone to my Obi110. I see no reason it should not work Obi to Obi:

No need for the ob200789234 in the speed dial ob200789234@1.2.3.100:5061. If 5061 is the UserAgentPort of sp2 of your Obi110, then just @1.2.3.100:5061 will get the call through to sp2 of your OBi110.

911@1.2.3.100:5061 would get 911 to the line port if the sp2 InboundCallRoute has a rule to direct it there. Something like:
{911:li},{ph}
or if the obi202 caller id is present:
{(500123456)>(911):li},{ph}

Maybe a few experiments along these lines using 211 would be worth a try  :)

ianobi

P.S. I think you will need sp2 on the OBi110 set up for SIP for this to work. That is explained in the post jimates pointed you to.

QBZappy

Quote from: ianobi on September 29, 2012, 07:33:42 AM
or if the obi202 caller id is present:
{(500123456)>(911):li},{ph}

I setup the OBi making the outgoing call with a speed dial this way:
1) SP1(1234@172.16.240.183)

2) Calling Features->Parameter Name->CallerIDName = Whatever

The OBi receiving the call shows "Whatever" as the CID. This might work as Ian suggested.

{(Whatever)>(911):li},{ph}
Owner of the 1st OBi110/100 units in service in Canada & South America. 1st OBi202 on my street. 1st OBi1032 in Montreal.

user17600

Okay, after a lot of experimentation, I can get the -202 to direct-IP the -101 and to send x11 to the {li} port.

These are the changes made:

1) On the -202, set speedcall 5 to SP3(611@1.2.3.100:5061)

Note: 611 is my test number; once I have all the issues solved (see below), I'll swap out 911 and disable the Obitalk methodology above)

2) On the -202, set the SP3 Calling Features CALLERIDNAME field to some recognizable name.  Let's say NAME_202

Note: SP3 is an active SIP account (sipsorcery in this case)

3) Because I'm sending the call to port 5061, this will come in on SP2 on the -101.  Therefore on SP2 on the -101, add {('NAME_202')>(Mli):li}, to the X_INBOUNDCALLROUTE

Note: the single quotes are critical if the name has a special/reserved character in it.  See page 180 of the Obi Admin Guide.  This oversight haunted me iand could have been avoided if I'd just used the Obinumber in that field.

Quote: m, M, s, S, x, X which have special meaning in the digit map syntax

Otherwise (in the end) I made no changes other than those described in my original post (at least that made a note of).  The two changes are compatible the way I have them set up now (via Obitalk and direct-IP via speedcall).

HERE'S THE PROBLEM:  while I can get the -202 to dial out via the -101 {li} port, I HAVE NO AUDIO ON THE -202.  I can pick up the phone line connected to the NID (not connected to either Obi) and hear the 611 menu, but can hear nothing on the -202.  And the -202 cannot send tones, so this is apparently a 2-way problem.

I have reviewed many of the reports of no audio on the forums and elsewhere, have tried some port forwarding and the like, without success.  Because both units are inside the firewall, nothing should be blocked, so I'm let scratching my head.

For those that have done direct-IP calling, how did you work-around the no-audio issue (if you had it at all)?

I'm nearly there but need to crack this audio nut.

Thanks for everyone's insight.



QBZappy

user17600,

It may not be the cause however something to try.

Audio issues are sometimes related to the codec used. Have a look on the Call status of both units in a call. You will be able to see what voice codecs both units are attempting to use. Try forcing the codec to G711U Codec by disabling all other the other codecs.
Owner of the 1st OBi110/100 units in service in Canada & South America. 1st OBi202 on my street. 1st OBi1032 in Montreal.

user17600

Both showing g711u during the call.  Of note, the -202 is transmitting packets, but the -110 is not receiving them and vice versa.  So beyond the transmitting the x11 number, no packets are being exchanged.

Even tried to specify the RTP port as part of the @1.2.3.100:5061 --rtp-port=61000 (and 16XXX series) without success.

Thanks for the idea, tho.


user17600