«

»

Mar 24 2012

How to use the Obihai OBi100, OBi110, OBi200, or OBi202 VoIP device as a gateway between Asterisk/FreePBX and Google Voice and/or the OBiTALK network (UPDATED)

Important!

This is an edited version of a post that originally appeared on a blog called The Michigan Telephone Blog, which was written by a friend before he decided to stop blogging. It is reposted with his permission. Comments dated before the year 2013 were originally posted to his blog. In order to comply with Federal Trade Commission regulations, I am disclosing that he received free product samples of the OBi100, OBi110, and OBi202 VoIP devices prior to writing this article, and that any links to Amazon.com in this article are affiliate links, and if you make a purchase through one of those links I will receive a small commission on the sale.

Warning!

Please be aware that Obihai devices will no longer have the ability to natively connect to Google Voice after May 15, 2014 – see “Important Message About Google Voice and Your OBi Device” and “What’s really happening with Google Voice?” for additional information. The technique shown here should continue to work for calls to and from the OBiTALK network. For another way to use Google Voice with Asterisk/FreePBX that may continue to work after May 15, please see “How it used to be done: How to use Google Voice for free outgoing calls on an Asterisk/FreePBX system (the no-XMPP way)“.

EDIT: The title of this article has been edited to reflect the fact that this technique should also work with the OBi200, which was released more than a year after this article was originally written. Before implementing this, you will want to read this Obihai blog post about the changes in May, 2014. For an alternative method of connecting Asterisk/FreePBX to Google Voice that may work after May, 2014 see this post.

About a year ago I wrote an article entitled How to use the Obihai OBi100 or OBi110 VoIP device as a gateway between Asterisk/FreePBX and Google Voice and/or the OBiTALK network and followed it up with How to use the Obihai OBi100 or OBi110 VoIP device as a gateway between Asterisk/FreePBX and Google Voice and/or the OBiTALK network — Part 2: Using the Phone port as an Asterisk extension. The problem with those articles was that although the method I used worked, it was pretty cumbersome to implement, and a lot of folks either couldn’t get it working, or they had issues with it.  Now that I have a shiny new OBi202 courtesy of the fine folks at Obihai Technology, Inc., I decided to take another whack at this project and have developed what I believe is a simplified approach.  You’ve already seen half of it if you read this article (and if you haven’t, you’ll need to refer back to it, so keep it open in a browser tab):

How to divert incoming Google Voice calls from an Obihai VoIP device to an Asterisk server for additional processing (such as Caller ID lookup)

As always, this article is intended for experimental purposes only — if it works for you, great, but I make no guarantees. Don’t use this in a production environment until you have satisfied yourself that it works the way you need it to. If you use my instructions and have lost income due to missed calls, or if someone manages to hack into your device and runs up your phone bill, you agree that by using these instructions all the liability for that rests on you and nobody else! If you’re the type of person who wants to sue someone else when things go wrong, then you absolutely may not use these instructions. We’re all experimenters here, and nobody’s offering insurance that nothing will go wrong.

This is actually pretty simple. The first thing you need to do is make sure that you have at least one Google Voice account and one SIP account configured – the SIP account will be an extension off your Asterisk server.  Unlike the old method, here you start by configuring both Google Voice and your Asterisk extension in the usual manner.  If you need any help with that, see this article:

First look at the Obihai OBi202 VoIP device: Setting up a Google Voice and/or a SIP account (Part 2)

While that article was specifically written with the OBi202 in mind, most of it (starting around the part where the screenshots begin) is equally applicable to the earlier Obihai models, the only difference being that on those models you only can access two Service Providers and you only have a single PHONE port.  I refer you to that article because it contains the most up-to-date advice about configuring your device using the OBiTALK portal, which is what I recommend.

Once you have your Google Voice account and your SIP extension configured, go back to:

How to divert incoming Google Voice calls from an Obihai VoIP device to an Asterisk server for additional processing (such as Caller ID lookup)

Note the points at the top of the page (they are incorporated herein by reference, as the lawyers like to say) and then follow the instructions there.  The only possible difference is that you can make the destination of your Inbound Route in FreePBX anything you want, so if you want it to go to an IVR or a Ring Group or anything else other than an extension, that’s fine.  Once you are done, place a test call or two to your Google Voice number and make sure it goes where you want it to.

The only thing left to do is get outbound calling to work.  And just as I tried to avoid using one of our precious Service Provider accounts for sending incoming calls to Asterisk, I wanted to do the same when receiving calls from Asterisk.  The method shown here will work as long as the Asterisk server and the Obihai device are on the same local network (or possibly on the same VPN).  It requires that your Obihai device be at a fixed IP address.  If you run an Asterisk server, I’m going to assume you’re familiar with the concept of a fixed IP address.  You do NOT have to disable Auto Provisioning or OBiTalk Provisioning, and if anyone tells you that you do, they don’t know what they’re talking about.  There are many pieces of very bad advice floating around out there, and that’s one of them.  And yes, I know that a year ago I said you had to do it, but I was wrong!

To set up a fixed IP address, browse to the device (you can call * * * 1 from a connected phone to get the IP address, and when asked to log in the user name is admin and the password is whatever you set it to using the OBiTALK portal) and then on an OBi100 or OBi110 navigate to System Management | Networks settings where you can set up a fixed IP address.  Use sane settings for your network, not the settings shown here:

Where to set a static IP address and other network settings

On an OBi202 you’ll find this screen under Router Configuration | WAN Settings.  Once you have made and submitted the changes, you can reboot the device and then go back to the Expert Configuration mode of the OBiTALK portal to finish the configuration.  Changing the IP address to a fixed IP is the ONLY thing you should do directly on the device (unless you do all your configuration manually, which is not something I’d recommend).

Now a word of explanation.  At least one of your Service Providers must be configured as a SIP account.  If you have configured one as an extension off of your Asterisk server, that qualifies.  The point is that you can’t have all your accounts on the OBi device as Google Voice accounts, at least ONE must be going to a SIP provider, and you need to know which one it is (SP1, SP2, and on the OBi202, SP3 and SP4). You need to navigate to the Service Providers – ITSP Profile x SIP page (where x is A for SP1, B for SP2, C for SP3, and D for SP4) that is associated with your Asterisk extension or another SIP account, and set the X_AccessList setting to the address of your Asterisk server.  This is a security measure so that not just anyone can place calls through your Google Voice account.  Note that if the Service Provider account you are using here is NOT an extension off your Asterisk server, then you’ll also need to add the address of the server you are connecting to for that service (separated by a comma).  So it’s a bit easier if you’re looking at a Service Provider account that’s an extension off your Asterisk server.

Set X_AccessList to the address of your Asterisk server

For those wondering if this is really necessary, I will simply draw your attention to this (slightly edited) note in the original thread on the OBiTALK forum:

NOTE: [Obihai devices do] not challenge inbound INVITE [from the Asterisk server]. However you can setup a list of trusted IP addresses in the X_AccessList parameter (under ITSP Profile – SIP) to limit who can send SIP messages to the OBi [Service Provider]. Usually the gateway (OBi) and Asterisk machines are in the same subnet; normally not a big issue.

But it could be an issue if the OBi device is not behind a firewall, and therefore could be accessed from the wide open Internet — in that case, anyone could make calls on your Google Voice account unless you use the X_AccessList parameter to limit access. So to be safe, I strongly suggest putting the IP address of your Asterisk server in the X_AccessList parameter.

After you submit your change, go to Voice Service | SPx Service.  Be sure it’s the one associated with the ITSP Profile that you visited above.  Here we’ll be changing one setting and making note of another:

Change the X_InboundCallRoute (example for U.S.A./Canada calls only) and note (but don’t change) the X_UserAgentPort

On the above page we want to change the X_InboundCallRoute setting. On an OBi100 or OBi110 it should be changed to this (but read down first if the value you see there is not {ph}):

{>(011x.|1xxxxxxxxxx):spx},{ph}

Or if you don’t want to use Google Voice for international calls, then just:

{>(1xxxxxxxxxx):spx},{ph}

In the above line, replace spx with sp1, sp2, sp3, or sp4 — it should be the one associated with your Google Voice account, NOT the one shown at the top of the page (remember, you’re configuring an SP associated with a SIP account now).  This tells the Obihai device to direct incoming calls that have a destination that matches the pattern 1xxxxxxxxxx (and optionally 011x.) to Google Voice, while causing all other incoming calls (normal calls to the extension) to go through to the phone as usual.  If the setting above has already been changed from {ph} to something else, or if you have an OBi202, just replace the {ph} in the above line with whatever is there now.  To put it another way, you want to prepend {>(011x.|1xxxxxxxxxx):spx}, or {>(1xxxxxxxxxx):spx}, (including the comma, and with the correct substitution for spx) to whatever is already there.

In case you are wondering, yes, it would be possible to tweak this setting to send calls to other places.  For example, if you added {>(xxxxxxxxx):pp}, to the above (so it looked something like {>(011x.|1xxxxxxxxxx):spx},{>(xxxxxxxxx):pp},{ph} but with the necessary substitutions) then any nine digit numbers sent to the device would be assumed to be OBiTALK network numbers and would be bridged to the OBiTalk network.  And on an OBi110 only, if you substituted li (that’s lowercase LI) for spx then the calls should go to the phone line attached to the device’s LINE port instead of Google Voice.  I haven’t tested those changes here, but you should be aware that you can do things like that.

Also on this page, make a note of the X_UserAgentPort setting — you’ll need it when setting up your trunk.  Submit the page if you haven’t already.

Also, keep in mind that if you want to route outbound calls from your Obihai device through your Asterisk server you’ll need to configure one of your service providers on your Obihai device as an Asterisk extension, if you have not done so already — see First look at the Obihai OBi202 VoIP device: Setting up a Google Voice and/or a SIP account (Part 2) for more information on how to configure your Obihai device. The main thing is to make sure that your Primary Line is set as your Asterisk extension, and that your calls are not going directly to Google Voice. You do that by going to the configuration for your Asterisk extension in the OBiTALK portal and making sure that the “Make This Service the Primary Line to Call Out From” checkbox(es) are checked:

OBiTALK portal showing the "Make This Service the Primary Line to Call Out From" setting

OBiTALK portal showing the “Make This Service the Primary Line to Call Out From” setting

That’s basically all we have to do on the Obihai device!

Next, we need to go into FreePBX and create a CUSTOM trunk.  So go to Trunks, Add Trunk, Add Custom Trunk and you only need to enter four settings:

Adding a Custom Trunk for Asterisk — Obihai — Google Voice gateway

Add these settings:

  • Trunk Name: Whatever you like
  • (Optional, not shown): Set the Maximum Channels to 2
  • Dialed Number Manipulation rules: (1)+ | NXXNXXXXXX  (enter it as shown above)
  • Custom Dial String: sip/$OUTNUM$@ip_address_of_OBi:X_UserAgentPort

Replace ip_address_of_OBi with the fixed IP address of the Obihai device and X_UserAgentPort with the X_UserAgentPort setting that I told you to take note of above.  You may want to set the maximum channels to two, since each Google Voice account only allows two simultaneous calls, but that’s up to you.

Basically that’s about all there is to it, other than modifying one or more of your Outbound Routes to use the Trunk.  Please make sure that the Outbound Route is configured to send only valid ten or eleven digit numbers in the USA or Canada to the trunk if you don’t want to allow additional types of calls such as international calls — it’s your system, and your bill if you make non-free calls.  And, make sure you send the calls to the Custom trunk that we created in this article, not the inbound-only SIP trunk for calls coming FROM the OBi device.

To me, this seems a lot less complicated than the previous method!  Plus, it lets you configure your Asterisk extension in the normal manner, which means you don’t have issues with things like Message Waiting Indication not working.

As I said in the previous article, I may have more to add to this later, or may discover a more elegant way to do this, but for now, it works for me.  If you can’t get it to work for you, you have my sympathy, but I’m afraid that’s about all.

EDIT: If you have an issue where callers to your Google Voice number sometimes are sent to an extension’s voicemail, but then while attempting to leave a message get cut off after about 20 – 25 seconds, use a text editor to go into /etc/asterisk/asterisk.conf and find the [options] section (create it if it doesn’t exist), and within that section make sure that this line is present and is not commented out:

transmit_silence_during_record = yes

If you need to modify or add that line, be sure to restart Asterisk afterwards so that it becomes effective.

EDIT: The above article assumes that if you have an OBi202, you only have one Google Voice account on your OBi202 (or at least, only want it to act as a gateway between Asterisk and Google Voice for a single Google Voice account). However, a reader of the PBX in a Flash forum going by the handle “frederic” raised the possibility of using a single OBi202 as a gateway between Asterisk and up to three Google Voice accounts. While this is theoretically possible, I haven’t fully tested this scenario, so for now I will simply refer you to that thread on the PBX in a Flash forum, and in particular my post that attempts to make an educated guess at how this may be accomplished. If I get any feedback that this works, I may incorporate it into this article. EDIT 2: That thread has disappeared from the PBX in a Flash site due to a server crash, however here is Google’s cached copy of the entire thread in PDF format.

25 comments

Skip to comment form

  1. Leo

    Nice article.. I follow each steps and it worked on my first try. Newbie here on asterisk. I especially like “How to divert incoming Google Voice calls from an Obihai VoIP device to an Asterisk server for additional processing (such as Caller ID lookup).”

    I do have two questions maybe I’m newbie here and asterisk so I haven’t figure it out yet.
    1. Q. When the incoming calls from GV to asterisk and forward to SP2 after caller id lookup, I do see name and number on the phone. However, in asterisk Reports call logs I see Person/city name and but not the number? Not sure if that way it suppose to be? Is there way in Reports calllogs to show the name & number?

    2. With above setup I’m not sure if it is even possible to dial out from another asterisk extension configured via gateway on Obi110 so call goto asterisk and back to obi110 to gv? This way the call get record in call log for out going in the Report.( Maybe my questions is silly )
    I like to see how many incoming and outgoing calls the family makes. I did try with another extension via softphone and it worked. But via Gateway on obi110 it failed and got 503 error.

    1. Admin

      Leo, in answer to your first question, that’s not how it works for me — here I see the name supplied by Caller ID Superfecta in my CDR (the “Reports” page). I have no idea why you are not seeing the same.

      Regarding your second question, it makes no sense to me, so I can’t answer it. Don’t know if it’s that your question is poorly worded, or if I’m just particularly dense tonight. Sorry.

  2. Leo

    Thanks for replying back so fast.
    I might have to look into my setting again to see if I made some typo error.

    My second question is poorly worded. Sorry about it.
    After looking at what I asked it not even possible and I’m make it too complicated.

    This is what I was testing.

    I configure gateway 5 on obi110 as follows:
    Name: GVOutViaAsterisk
    Access Number: SP2(IP for my asterisk)
    DigitiMap: (1xxxxxxxxxx|xx.)
    AuthUserID: extension id from my asterisk server (e.g 9999)
    AuthPassword: password

    With this gateway setup I assumed when I pick the phone connect on obi110 and dial **5 and number the the call number will go to asterisk (SP2) –> asterisk outbound route –> (SP2) back to obi110 –> (SP1) GV.
    However after I looked it my own flow if I’m already using SP2 to connect to asterisk to make outbound call, asterisk can’t come back to obi110 (SP2)to call out via gv.

    1. Admin

      Leo, that’s a bit clearer but now I don’t understand why it wouldn’t work for you. By default you have two channels per service provider so there is no technical reason the call couldn’t go to Asterisk and then come back via the same SP, as long as you have the inbound routing (X_InboundCallRoute) set correctly (to redirect the calls to Google Voice).

      I actually suggest increasing the “MaxSessions” value for any SP that is an extension off an Asterisk server – go into “OBi Expert Configuration” (or your device’s web interface if you don’t use the OBiTALK portal, but the following assumes you are using the portal), and then navigate to Voice Service | SPn Service where SPn is the one you have set up to be an Asterisk extension (SP2 in your case). Then scroll down to the “Calling Features” section and UNcheck the boxes next to the “MaxSessions” option. Go to the bottom of the page and click “Submit”, then come back to the “MaxSessions” option and change the value to something higher than the default of 2 (I used 10 just to be safe). Go to the bottom of the page and click “Submit” again. Now you will be able to have 10 simultaneous connections (or as many as the device allows, up to 10) so you should not run into an issue of calls being blocked because no more channels are available.

      If it still doesn’t work, I’d check your X_InboundCallRoute setting to make sure it’s redirecting the incoming calls to Google Voice properly.

  3. Admin

    My apologies to anyone who tried to use the instructions in this thread between about April 4 and April 7 – I had added a change suggested by a user in the OBiTALK forum and I later discovered it didn’t work quite as expected so I’ve changed it again. The changes are to the X_InboundCallRoute setting mentioned in the article, and also to the Dialed Number Manipulation rules of the F—PBX trunk. If you got the “bad” settings you may not be able to use the device as a gateway to Google Voice from other extensions on your server. Again, I apologize for the error.

  4. Admin

    Just a quick note for anyone who followed these instructions on or before the evening of April 8 (Easter Sunday) — in the companion article that I referred you to at the top of this article (to assist you in setting up inbound calling) you were instructed to create a [custom-from-Obihai] context in extensions_custom.conf. In that context, right after the line:
    exten => _X!,1,Set(CALLERID(num)=${CUT(EXTEN,/,2)})
    add this line:
    exten => _X!,n,Set(CALLERID(ani)=${CALLERID(num)})
    If you don’t (and you are running Asterisk 1.8 or later) you’ll see the trunk name in the CDR rather than the calling number.

  5. Leo

    michigan, thanks for the updated on extension.conf
    exten => _X!,n,Set(CALLERID(ani)=${CALLERID(num)})

    This is what I was talking on my first question on my first comment post I made. After I made the change above, now I see the name and number. ;o)

    I’m still have issue when place call after I increase the max connection to 10.
    Maybe I’m doing some wrong on Obi setting or Asterisk.

    Do you think I might need to create a custom extension instead of SIP extension?

    1. Admin

      Leo, I honestly don’t understand the problem you are still having. What I understood that you wanted to do was route both incoming and outgoing calls through Asterisk. To do that you’d set up one service provider account as an Asterisk extension (as explained in First look at the Obihai OBi202 VoIP device: Setting up a Google Voice and/or a SIP account (Part 2)) and make that line the PRIMARY line (and that would be a regular SIP extension, not a “custom” one). You’d then use the instructions in this article to set up a pair of trunks that would use your Obi device as a gateway to and from Google voice. Where you may be getting confused is that the trunk used for outbound calling is a custom TRUNK (not custom EXTENSION — they are two very different things).

      The reason we use separate trunks for incoming and outgoing calls is that in this method we’re trying to avoid using one of our Service Provider accounts on the Obihai device for the Asterisk trunk. This is particularly desirable on an Obihai OBi100 or OBi110 because there are only two available Service Provider accounts available and we need to use one for our Asterisk extension. On an OBi202 you might prefer to use a Service Provider account and a single SIP trunk that handles both incoming and outgoing calls, but I don’t cover that method in this article because I figure that no matter how may Service Provider accounts you have available, sooner or later you’re probably going to wish you had another. So with this method we “split” incoming and outgoing calls (to and from Google Voice) and use separate trunks for each, and only the one that handles outgoing calls TO Google Voice is a custom trunk.

      Increasing the max connections won’t help if you can’t even get one connection to work! I’m just wondering if you made your Asterisk extension account your PRIMARY line rather than your Google Voice account. But if that’s not the issue you’re having now, then I honestly don’t understand your explanation of your issue. Sorry.

  6. Leo

    This is my setup on Obi110:
    SP1 GV and SP2 SIP Extension 1234 to Asterisk
    VG1
    Access Number: SP2(IP for my asterisk)
    DigitiMap: (xx.)
    AuthUserID: Obi110
    AuthPassword: password

    ITSP Profile B->X_AccessList->IP for my asterisk
    Voice Services->SP1 Service->X_InboundCallRoute->vg1(GV#here/$1)
    Voice Services->SP2 Service->{>(1xxxxxxxxxx):sp1},{ph}

    Asterisk Setting:
    SIP Trunk Obi110 got to SP2 SIP extension.

    Custom Trunk Name OutviaObi
    Custom Dial String: sip/$OUTNUM$@obi110ipadress:X_UserAgentPort

    Outbound route->Named it OutviaGV->Trunk used OutviaObi

    Made SP2 primary line for out call.

    Did test call for incoming call to my GV and it worked I see caller id number and name.

    I pick phone connected to phone port on obi110 and dial any number and I get call can not be completed as dial check number and dial again follow by 503 service message.

    However, if I connect a softphone to my asterisk via different extension and place a call it is success. I don’t get call not be completed as dial or 503 service message.

    I’m think maybe some setting on Asterisk at this point is missing but can figure which setting I might be missing.

    1. Admin

      Leo, it sounds like the issue is either that extension 1234 is not registering with Asterisk, or it’s not sending the number you’re calling to Asterisk in a format that matches the pattern in your Outbound Route (may your outbound route only expects 10 digit numbers but the OBi110 is sending 11 digits or something like that). Since the softphone works as expected and incoming calls work as expected (if I’m reading correctly) then it is only outbound calls from the phone connected to the OBi110 that are an issue.

      The thing I would wonder is if Extension 1234 is registering with Asterisk properly. You DID configure your SIP extension as shown in First look at the Obihai OBi202 VoIP device: Setting up a Google Voice and/or a SIP account (Part 2), right? Can you call from extension 1234 to another extension? Can you call extension 1234 from another extension (such as your soft phone)? If you do sip show peers from the Asterisk CLI, does it show extension 1234 as registered (Status: OK) and show the correct host (OBi110) IP address?

      If you are satisfied that it’s registering, try dialing an outgoing call using all 11 digits and watch the Asterisk CLI as you do that. When you have finished dialing, does Asterisk react to the call in any way? Does it give you any kind of error message?

      If it’s NOT registering then make sure you have created a SIP extension on your Asterisk server and then make sure you have set up SP2 properly on your Obihai. You may be able to discover the issue by looking at your Asterisk log file. For example, if it’s trying to register but you entered the password incorrectly, the log file should show you that Asterisk is refusing the registration. Another way to look at that would be to to do sip set debug ip 192.168.0.123 (replace 192.168.0.123 with the actual IP address of the OBi110) from the Asterisk CLI (use sip set debug off to turn it off). You should see each sip packet coming in from the OBi110 and what you want to try and find is a registration attempt for extension 1234 and then see what Asterisk’s response is. Very often it’s a simple matter of a typo someplace (particularly in the password, since you can’t see what you are typing).

      I hope you get it figured out — it sounds like you are most of the way there!

  7. Leo

    Problem resolved.
    culprit “Dial Patterns that will use this Route” for outbound
    I had this (1)+ | NXXNXXXXXX in my outbound route. When I changed it to 1NXXNXXXXXX without prepend (1) the phone was able to dial out via SP2 to GV.

    Thanks for your help and appreciate your time trying guide me fix the issue I was having.

  8. Rick

    I am not seeing all outbound calls recorded in the Asterisk call report.

    SP1 GV
    SP2 SIP extension to Asterisk

    Using this setup, any call made from the phone attached to the ph port on the obi110 is not logged in Asterisk. All other extensions (SIP) registered to Asterisk is being logged.

    Any other settings we might have missed?

    Rick

    1. Admin

      Rick, if you have SP1 selected as your primary line then your outgoing calls will bypass Asterisk and go directly to Google Voice. What happens if you dial **2 before dialing the number – do you see the call in the CDR then? If so, then perhaps you want to make SP2 your primary line for outgoing calls, so they will be diverted to Asterisk and recorded there before going back to the OBi110 and out to Google Voice. Please read my April 3 comment to Leo (above) about increasing the “MaxSessions” option (on SP2 in your case) if you do this.

  9. Rick

    Trying to dial with **2 gives me “your call cannot be completed as dialed” and nothing new shows up in the log. Max sessions are set at 10. Found the Primary setting for (PHONE) and changed to SP2. Do I need something in the outbound call route to point to sp2?

  10. denon

    Hello there I need help to configure my 2 obi110 so that I can call from obi number 1 to obi number 2 and get AA to call INTERNATIONAL numbers in the form of 00……………. where 00 is the international access then i woul enter countrry code city code and numbers typically some 12 numbers or more. the 2 units have already been set up with google voice which I have no need for.OBI NUMBER 2 has a telco cable box connected to the line port. THANKS in advance for your help and regards

    1. Admin

      denon, more than likely it’s not working because the DigitMap for the service provider you are using for the outgoing calls has the rule 011xx. in it but you need 00xx. instead. So, look under Service Providers, ITSP Profile A or B (depending on which is used for the outgoing calls), General, and then find the DigitMap setting and change the string as menioned above. Note that ITSP Profile A is associated with Service Provider 1 and ITSP Profile B is associated with Service Provider 2. If you normally use the OBiTALK portal to configure your device then you can make this change from the Expert Configuration mode.

      If that doesn’t fix the problem then you may have to look under Voice Services, Auto Attendant, Auto Attendant 1 section and modify the DigitMap and/or OutboundCallRoute settings there, but try the above first — I suspect that will be sufficient to fix the problem (though I might be wrong; I’m not that up on Obihai dial plan configuration).

      1. denon

        Hello again;can you possibly care to share the AutoAttendant proper digitmap settings?I know it sounds stupid but I have no idea whatsoever as to what the formula there means so if i could have the settings so that i can COPY PASTE in the proper area that would be most helpfull;the same for Outbound call route:I DO USE the obitalk portal to configure. thanks

        1. Admin

          By default, it appears that the Auto Attendant DigitMap is:

          ([1-9]x?*(Mpli)|[1-9]|[1-9][0-9]||0|**1(Msp1)|**2(Msp2)|**8(Mli)|**9(Mpp)|(Mpli))

          And the OutboundCallRoute is:

          {([1-9]x?*(Mpli)):pp},{0:ph},{((Msp1)):sp1},{((Msp2)):sp2},{((Mli)):li},{((Mpp)):pp},{(Mpli):pli}

          Not you see the references to Msp1 and Msp2 – my understanding is that those incorporate by reference the DigitMaps you have assigned to those service providers, SO, it should not be necessary to change any of these settings as long as you modify the Service Provider DigitMap. That would be the correct place to do it because each Service Provider may have different expectations (if you have one based in the USA or Canada they would likely expect an 011 prefix, whereas in many other parts of the world the want to see 00 as the prefix. So if you had two different service providers, each might use a different international prefix).

          Again, Obihai device dial plans are not exactly my area of expertise, and I don’t personally use the Auto Attendant. If I’m not giving you enough information, or if what I’m suggesting isn’t working, then I suggest you try the OBiTALK forum. I’d try posting in the Installation and Set-Up (Devices) section.

  11. denon

    Thanks a mill for your help guys;i will try and report here

  12. Modul8

    I’m looking to host audio conference calls for up to 10 participants on a home-based asterisk pbx and GV. Can I do this with this OBIHAI hardware in between?

    1. Admin

      Modul8, the only problem with that is that last I heard, Google Voice only allows two simultaneous calls per account, and to be honest I wouldn’t depend on getting more than one to go through, at least not without testing first. So you might need several Google Voice accounts, and each participant would need to call a different GV number. With an OBi202, you could have three or four Google Voice accounts coming in on the device (depending on whether you need to reserve a service provider slot for the connection to your Asterisk server) so at a minimum you’d need three of them, and then you are depending on Google Voice which is not always reliable.

      If you are going to set up an Asterisk server anyway, a better approach might be to buy an OBi100 or OBi110 for each participant (or at least each one that has broadband) and let them directly connect to your server and to your conference bridge, thereby skipping Google Voice and its associated hassles. Some participants might elect to use a SIP-based softphone on their computer or wireless phone, and many of those are free (for example, the free version of Zoiper will let you have one SIP account and one IAX account per Zoiper user connected to your server, and Asterisk is happy to use either, though IAX works better in some challenging firewall situations).

      Of course you could always get a DID number from a commercial VoIP service provider (NOT usually free, although there still may be one or two free DID providers out there) but even with them the thing you need to watch out for is a limit on the number of simultaneous channels. Some, like Google, will limit you to two, while others may have a much higher limit. And, some will charge you a per-minute usage charge, while others will let you just pay so much per month for the DID. If you want advice on that, see this page on the voip-info.org wiki (but beware of out-of-date information), or you could search for previous posts or post your own questions on the BroadbandReports VoIP forum.

      If it’s for a one-time or very occasional use, you might be able to get a Tropo developer Account and get one or more DID’s routed to your Asterisk server. Be aware, though, that they will disable your account if they think you are abusing it, so don’t go hog wild on the usage if you go this route, and I have absolutely no idea if they have a maximum number of simultaneous connections per DID or account. On the other hand, if that option works well for you, you may want to consider switching to a full paid account.

      I’m not trying to discourage you from using an Obihai device for this application — they are great devices, but when used with Google Voice you need to be aware of the limitations of that service, since there is nothing that Obihai can do to increase the number of simultaneous calls that Google Voice will allow on each account. And note that I’ve never personally tried to put more than two simultaneous calls through on the same Google Voice account, so that limit may or may not still be in effect.

      1. Modul8

        Wow Thanks for the immediate feedback!
        OK. If they are unreliable, Forget the Obi and Google voice- Lets assume I am a private homeowner that said goodbye to Ma Bell (PSTN) years ago in favor of a voip offering from an ISP over broadband – Cable or ADSL.
        I want to host a conference 4-5 times a week for a couple hours at a time for up to 10 persons as a free service to persons who can’t attend a meeting in person. Since they are often elderly/infirm, the participants are not tech-savvy, nor are they always the same persons, but I want them to sign in via a simple PIN (obtained form me prior to the event). All of the inbound calls will be local, so a 1-800 # is not necessary.
        I have a reliable linux-capable box kicking around in the basement, dreaming of PBX stardom.
        What do I need to add to the mix hardware-wise to make its dream come true, at truly minimal monthly cost? Talk slowly, please, I’m new to asterisk, but I’m determined to learn :) Thanks a pile for your help and advice.

        1. Admin

          First, just to be clear, I am NOT saying that Obihai devices are unreliable. Rather, it’s the Google Voice service itself that is SOMETIMES unreliable for SOME users (and often this can be corrected by creating a new Google Voice account tied to a brand new Google Mail account that’s not used for everyday e-mail). There are many users that never seem to have a problem but then there are others that have more frequent issues with making or receiving calls.

          Regarding your question, again you’d need to experiment (or ask in a forum where people might know about such things) to see who can provide you a DID with unlimited channels. You did not say where you are located (it might make a difference in your situation) but it sounds like you want a local inbound number so your callers don’t incur toll charges.

          Why don’t you do this – send me an e-mail at the address in the right-hand column (way down near the bottom of the column) and give me some idea of where you are located, what PBX software you are planning on using, and how experienced you are with Linux and how much you enjoy troubleshooting minor issues that may arise. The reason I ask that is because if you have not yet picked a distribution, you may find that the Asterisk-based ones are easier to set up and configure, but the FreeSWITCH-based ones (and I am particularly thinking of FusionPBX) may offer better conferencing capabilities, but the latter is not nearly as easy to set up and get running if you are not a Linux geek or don’t enjoy the “good learning experience” of getting some obstinate thing to work. If you are up for the challenges, though, I think that FusionPBX would give you a bit more control over your conferences (then again, I don’t know what they may have done to add capabilities to conferences in Asterisk 11, so there is that). Anyway, I may or may not have useful suggestions for you — no guarantees but I won’t know until I have some idea where “local” is for you and your callers.

  13. Admin

    NOTICE: All comments above this one were imported from the original Michigan Telephone Blog and may or may not be relevant to the edited article above.

  14. stev

    I’d like to see more of these advanced configurations for people NOT-using gv. :) The cost of gv is too high for me; my privacy is not for sale or use as payment.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

%d bloggers like this: