News:

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

Main Menu

Possible to use Obi as analog to VOIP bridge without other hardware?

Started by GnatGoSplat, August 17, 2017, 10:13:41 PM

Previous topic - Next topic

GnatGoSplat

Is there an Obi device that will let me easily make and receive calls on an analog (PSTN) line using a standard business VOIP phone on one line, and connect to my personal Google Voice on a 2nd line?

I've seen Obi110 has an FXO port, and also OBILINE seems to add an FXO port to Obi's with USB port.  A lot of tutorials I've seen use FreePBX or some other PBX or SIP server along with analog to VOIP gateway.  I'm wondering if an Obi device can work as a gateway without the addition of some other hardware/computer running a PBX software.  I'd only need to use one single VOIP phone, not manage a whole bunch of them.

ProfTech

Yes, the Obi 110 can do what you want if you can find one. They have been discontinued by Obihai and will not have any more firmware updates going forward. However if you need an FXO port they are one of the best devices out there, IMO. The current models 200/202 can use the USB adapter but there have been mixed reviews with it's use. Make sure you have the latest firmware in the 200 or 202 if you intend to try the adapter. My daughter uses a 200 but doesn't use the adapter. The newer devices definitely have more features and options.

GnatGoSplat

I have since acquired a Grandstream GXV3275 IP phone and an Obi110 to try this out.
I followed the instructions here:
https://voxilla.com/2011/02/15/how-to-obify-your-ip-phone-no-asterisk-involved/
Managed to get Google voice incoming and outgoing calls working on the phone on line 2.
I'd like to associate PSTN with line 1 on the phone, but it appears as though it's necessary to dedicate one SIP profile per line on the IP phone.  With Google Voice on SP1 and SP2 dedicated to line 2 on the IP phone, it doesn't seem like it would be possible to map PSTN to line 1 on the phone.  I've read it's possible to set up an InboundCallRoute rule, but wouldn't that just send the landline to the same line as Google voice is routed to?  I would like these to be 2 separate lines on the phone.

Is what I want to do not possible with the Obi110 alone?

drgeoff

Unfortunately for you the OBi212 became available about one month after you were advised about the OBi110.  The OBi212 is a newer replacement for the 110 but with some improvements including 4 rather than 2 SP slots.

One solution for the OBi110 would be to put GV directly on the Grandstream line 2.  Sign up and pay the one-time fee of US$6 or whatever it is these days at simonics.com to use his GV-SIP gateway.  You then have all the 110's resources for PSTN and Grandstream line 1.  (You also get Caller ID NAME which you won't get with GV-OBi.)

Another method which might work with the 110 is:

a. Send incoming PSTN calls to the Grandstream line 1 using a Voice Gateway on the 110 rather than a SP slot.

b.  Dial out from the Grandstream to PSTN by using line 2 on the Grandstream but using a prefix code to make the 110  use the LINE port instead of GV.

(Or do the "vice-versa" of a and b.  1 SP slot configured for GV.  The other SP slot configured for Grandstream line 1.  The Voice Gateway sending incoming GV to Grandstream line 2.  The prefix for dialling GV calls from Grandstream line 1.)

azrobert

Use SP2 for both Line 1 and Line 2. Route calls depending on userid.
Set the IP phone userid for Line 1 to "line1" and Line 2 to "line2".

OBi110
Voice Services -> SP2 Service -> X_InboundCallRoute:
{line1:li},{line2:sp1}

azrobert

Route inbound Line calls to Line 1 and OBi110 phone port:

Physical Interfaces ->Line Port -> InboundCallRoute:
ph,sp2(line1@xx.xx.xx.xx:5060)

Pass inbound callerid:

Service Providers -> ITSP Profile B SIP -> X_SpoofCallerID: Checked

GnatGoSplat

@drgeoff, thanks for the suggestions.  That'll be helpful if I can't get this Obi110 working exactly the way I want. 

@azrobert, thanks for the stuff to try.  It comes close to working, line 2 on GoogleVoice works, but line 1 on PSTN jack works only for incoming.  I figured it's because InboundCallRoute for Line Port, I can specify the port for line 1 which is 5060, while SP2 is linked to the port for line 2 on port 5062 via ProxyPort setting.  I tried setting ports for both lines to 5060 and set SP2 ProxyPort on the Obi110 to match, hoping the phone can use userid to sort them out, but it gets confused and displays incoming call on line 2 when it's actually coming in from the line port.  Any ideas?

azrobert

I'm assuming when you send an outbound call to PSTN, nothing happens.
For outbound I changed the inbound route to default to the Line port if not "line2".

Both Line1 and Line2 should point to port 5061 (OBi110 X_UserAgentPort)

Voice Services -> SP2 Service -> X_InboundCallRoute:
{line2:sp1},{li}

If still not working, check the OBi110 Call History.
If you don't see anything in Call Hhistory, you probably have something defined wrong on the IP phone.
To access Call History:
Log directly into the OBi using the local interface.
Key the IP address of the OBi into a Web Browser and hit Enter.
The UserID and default Password are both "admin".
Click Status on the left column then click Call History.

I'm no IP phone expert, but I think you need different ports for line1 and line2.

Both lines should be defined the same except:
Line1:
userid: line1
Port: 5060

Line2:
userid: line2
Port: 5062

Voice Services -> SP1 Service -> X_InboundCallRoute:
ph,sp2(line2)
or
ph,sp2(line2@xx.xx.xx.xx:5062)

Physical Interfaces -> InboundCallRoute:
ph,sp2(line1@xx.xx.xx.xx:5060)

Since you can only have 1 Proxy Port defined on the OBi110 SP2, you need to send the call to the IP address specifying a different Proxy Port.

xx.xx.xx.xx is the IP address of the phone.

GnatGoSplat

Thanks azrobert, it works!
I had forgotten to fill out the ProxyServer and ProxyPort on the phone's line 1.  Everything seems to work, but unfortunately, seems the Obi110 won't ring if I have my Obi200 connected.  Looks like that's a limitation of the Obi110. https://www.obitalk.com/forum/index.php?topic=11143.0

Was happy to see a possible workaround (https://www.obitalk.com/forum/index.php?topic=10717.0) also by azrobert.  Will have to try it tomorrow.

azrobert

OBi200:

Voice Services -> SP1 Service -> X_InboundCallRoute: ph,pp(123456789)

OBi110:

Voice Services -> OBiTalk Service -> InboundCallRoute: ph

Replace 123456789 with the OBi number of the OBi110

GnatGoSplat

azrobert, you're a genius, thanks!

I had to make a small change on the Obi110:

Voice Services -> OBiTalk Service -> InboundCallRoute: ph,sp2(line2)

Works great though, which is fantastic because the Obi110 cost me only a quarter what a new Obi212 will cost.

I don't suppose you know a clever way to make the Obi110 ring the IP phone distinctively OR display something in Caller ID based on distinctive ring on the PSTN line port?  My work doesn't have caller ID, but does have distinctive ring: normal for on-campus calls, 2 short rings for outside calls.  It would be great to have either an audible or visual indicator of on-campus or outside calls.  This seems to be outside the capabilities of an Obi device, but I figure if anyone knows, it would be you.

azrobert

You can set distinctive ring on a phone connected to the OBi110 or OBi200 Phone port.  See below for your IP Phone.

I'm assuming the Line port is on-campus and GV is outside calls. What are you currently seeing for callerid? Did you enable X_SpoofCallerID? See my reply#5 above. You should see the GV callerid on Line2. If the line port isn't supplying callerid the Line1 callerid should be blank.

You can set a literal for the callerid on line1 like this:
ph,sp2(line1@xx.xx.xx.xx:5060;ui=5551212)

You can set distinctive ring on the GXV3275 based on callerid. See pages 63-4 of the admin guide.
http://www.grandstream.com/sites/default/files/Resources/gxv3275_administration_guide.pdf

_________________________________

Are you having any GV Email problems when routing calls to the OBi110?

Steve posted there is a GV email problem using this method. I'm not aware of any problem and Steve didn't describe it, but I thought I should warn you.

See:
http://www.obitalk.com/forum/index.php?topic=13039.msg83545#msg83545

GnatGoSplat

Sorry, I didn't explain it very well.  Caller ID works fine for the GV calls on line 2.

My current question only deals with line 1, the PSTN line.  There is no caller ID on line 1, not because of any configuration issue, but because it's just not available on my PSTN line.  However, with a standard phone connected to this line, I can tell a call from an on-campus phone as it rings normally, or an outside phone as it has 2 short rings.  What would be great is if the Obi could recognize the 2 different ring cadences and either ring my IP phone distinctively so I can tell, or somehow display (perhaps via caller ID) whether the call is from on-campus or outside based on the ring that was detected.  I like to know, because all on-campus calls are probably work-related and must be answered, while outside calls are likely phone spam.

Hopefully, that makes more sense what I'd like to do.

Right now, the only solutions I can think of are to 1) buy an external ringer box, or 2) Use a splitter and leave my old phone connected so I can hear its ring types.

A voicemail issue would not be good.  I'll give that a try tomorrow.

azrobert

I don't know any way the OBi110 can detect or pass a distinctive ring to the IP phone. I would use your idea of plugging another phone or ringer into the wall jack.

GnatGoSplat

Thanks, I had a feeling that was too much to ask of it.

I tried out the voicemail.  Called my #, was able to leave a voicemail with no problems.  Was able to retrieve the voicemail using Hangouts app with no problems, which is what I usually use for voicemails.  Looks like it'll work fine for my usage case.  I don't know Steve's usage case, but doesn't seem like it'll apply to me.  I think this setup will work just fine for me, thank you so much, Azrobert!

GnatGoSplat

Azrobert, I could use your brain again.
Obi110 doesn't work with GV any more, but what I had with using my Obi200 to forward GV calls to the 110 works fine for incoming calls.  However, I can no longer make outgoing calls using GV.  Is it possible to forward outgoing calls through the Obi200 without affecting how the Obi200 works with the phones currently connected to it?

azrobert

OBi200

Voice Services -> OBiTalk Service -> InboundCallRoute:
{200222222>(Msp1):sp1},{ph}

Replace 200222222 with the OBi number of the OBi110

OBi110

Physical Interfaces -> Phone Port -> OutboundCallRoute:
The 1st rule is: {([1-9]x?*(Msp1)):pp}
Change it to: {(<510111111*>(Msp1)):pp}

Replace 510111111 with OBi number of the OBi200

Any number dialed on the OBi110 that matches the SP1 digit map will be prefixed with "510111111*" and routed to the OBiTalk network.
This will send the call to the OBi200 where it will be routed to SP1.

azrobert

I forgot about the IP phone.

OBi110
Voice Services -> SP2 Service -> X_InboundCallRoute:
{line1:li},{line2>(<510111111*>(xx.)):pp}

Edit:

All the above requires the OBiTalk network to be functioning.
You could change the IP phone to send line2 calls directly to the OBi200.

OBi110 outbound calls could be routed directly to the OBi200 over the local network.

You would have to define a dummy SIP trunk on the OBi200, like you did on the OBi110.

GnatGoSplat

Thanks azrobert!

I don't have anything plugged into the FXS port of the Obi110 and probably won't use it, I'm just using its FXO port to connect PSTN to the IP phone line 1.

So maybe your suggestion to change the IP phone to send line 2 calls directly to the OBi200 and bypass the OBi110 for line 2 entirely is a more direct way to go.  I'm guessing I just need to configure my router to port forward the correct ports to the OBi200 and define the dummy SIP trunk.

I'll play around with that and see if I can make any magic happen.

GnatGoSplat

I had this working great on my home network with GXV3275 IP phone, Obi110, and Obi200 connected to the same network.  I used Obi110 as the SIP-to-landline gateway for line 1, and Obi200 as SIP-to-GV gateway for line 2.

Now I have taken the phone and Obi110 to my workplace, where they are behind NAT.  The phone and Obi110 can communicate directly so no issues there, I just had to reconfigure their new IP addresses.  I have the SIP port range 5060-5063 forwarded at home and also forwarded at work.  I have set both devices to communicate with the public IP addresses.  I can make outgoing calls, but there is no sound, so seems like RTP not working.  Incoming calls don't work at all.  The Obi200's ITSP RTP defaults to ports 17100-17198, so I'm port forwarding those on both ends.  Phone has a "local RTP port: 5004", so I'm port forwarding that at work.  Still not working.  I think it has something to do with needing NAT translation.  I don't have a STUN server.  Any ideas on how to make this work?

Would going through the Obitalk network be the only solution?  I'd prefer to reduce lag by having the phone communicate as directly with the Obi200 as possible so that's why I was hoping there might be a solution outside of Obitalk.