Home » Posts tagged '3CX'

Tag Archives: 3CX

The Most Versatile VoIP Provider: FREE PORTING

Adding SIP URI Dialing to Asterisk for Free Worldwide Calling


blank

Since giving up on Google Voice, we’ve been extolling the virtues of SIP URI dialing which gives you unlimited free calls to anyone else in the world that happens to have their own SIP URI address. SIP URIs look very much like email addresses except they’re used to share phone conversations instead of email messages. And, as we’ve mentioned previously, if everyone in the world had their own SIP URI, paying for phone calls would become a thing of the past. We hope you’ll join us in making that happen. As a fallback, give our $50 credit at Skyetel a try.

One of the drawbacks of Asterisk® PBXs using the FreePBX® GUI has been the inability to place outbound SIP URI calls from SIP phones registered as extensions on the PBX. Today we first want to address that shortcoming. Our SIP URI dialing solution for Asterisk should work with any FreePBX-based implementation including Incredible PBX® and Issabel as well as on Raspberry Pi platforms. We’ll wrap things up by providing some tips on obtaining and deploying your own SIP URI at little or no cost and pointing you to some excellent resources that facilitate calling millions of SIP phones around the world at zero cost. All you need is an Internet connection, and we’ll point you to a terrific softphone to begin your adventure.

Let’s begin by examining why SIP URI dialing is a problem with FreePBX. The reason is pretty simple. FreePBX interprets dial strings by matching them against some rules to determine whether you’re making an internal call or a call outside your PBX. It matches internal calls against a list of available internal extensions. External calls are matched against rules defined in your outbound routes which are associated with trunks. Since SIP URI calls don’t match any extension or outbound route, the caller receives a congestion tone.

The traditional workaround has been to define a custom extension using the FreePBX GUI which points to a SIP URI. Then the user can dial the custom extension, and the call will be routed to the defined SIP URI. These custom extensions also can be defined in extensions_custom.conf within the from-internal-custom context. For example, the following dialplan code would let users dial 411 to reach AT&T’s Toll-Free Directory Assistance: exten => 411,1,18005551212@switch.starcompartners.com.

But there’s a better way. Wouldn’t it be nice to be able to dial any SIP URI from a softphone or to store SIP URI addresses in the phonebook of your SIP phone?1 Well, now you can. Before we actually put the dialplan code in place, let us explain how this will work. First, FreePBX still needs to be able to distinguish a SIP URI call from a "regular call." The reason this gets tricky is because Asterisk typically throws away the destination hostname when you place a call. For example, calls to 8005551212 and 8005551212@sip2sip.info are processed by Asterisk in exactly the same way, i.e. dropping the host address before dialing.

Using the new dialplan code in the next section, here’s how calls will be processed:

User dials                    Asterisk processes call as
------------------------      ---------------------------------------------
701                           internal call to local extension 701
4045551212                    external call using NXXNXXXXXX outbound route
2233435945@sip2sip.info       SIP URI call to Lenny by acct at sip2sip.info
lennybgood@sip2sip.info       SIP URI call to alias lennybgood@sip2sip.info 

Cautionary Notes: Our code should work fine with any Asterisk 13 and FreePBX 13 or Incredible PBX deployment on any Linux platform; however, with servers other than Incredible PBX, make sure you have added the following entries to sip_general_custom.conf, or you can configure them in the GUI by making the changes in Settings -> Asterisk SIP Settings -> Chan SIP Settings:

srvlookup=yes
allowguest=yes

You also need to test a traditional outbound call (e.g. 8005551212) immediately after you finish the install procedure. Monitor the Asterisk CLI (asterisk -rvvvvvvvvvv) and observe the first few lines of the log after you place a call. The second line will show SIPDOMAIN which should be either the FQDN of your server or an IP address depending upon how you registered your softphone extension. The first line should display the MyDomain variable. If it is empty or doesn’t match the SIPDOMAIN entry, the outbound call will fail. To fix it, add an entry to the Asterisk database from the Asterisk CLI using syntax like the following: database put MyDomain FQDN 10.0.0.11 or database put MyDomain FQDN sip.me.com where 10.0.0.11 or sip.me.com matches the SIPDOMAIN entry shown on the second line. Then retry your outbound call, and it should complete successfully. We’ve tested this back to the early Asterisk 11 days with FreePBX 2.11 without any problems. If your calls still fail, then you will probably need to remove the new code from your platform until you upgrade to a more current version of Asterisk and FreePBX. The code hasn’t been tested with FreePBX 14 and 15.

Finally, you may want to manually set the CallerID for your outgoing SIP URI calls. From the Asterisk CLI, issue a command for every extension from which you will be placing SIP URI calls, e.g. extension 701 syntax: database put 701 user_sipname "Nerd Uno"

Enabling SIP URI Dialing with FreePBX

To enable SIP URI dialing from phones registered with your Asterisk PBX, we’ll modify the dialplan in order to detect SIP URI dial strings entered into a softphone or retrieved from a phonebook associated with almost any SIP phone. When a SIP URI dial string is detected, we’ll send the call out as requested rather than passing the call through the outbound routes and trunks associated with your PBX. All of this dialplan code is open source and is licensed pursuant to the GPL2 license.

SECURITY ALERT: Never use the SIP URI MOD on a server with a publicly-exposed SIP port as it is possible for some nefarious individual to spoof your FQDN in the headers of a SIP packet and easily gain outbound calling access using your server’s trunk credentials.

FEB. 21 UPDATE: There was a bug in the original code which caused some internal calls to fail including calls to a DISA extension. Simply install the application again, and it will overwrite the previous version.

MAR. 5 UPDATE: A bug was discovered in previous releases that treated 911 and 933 calls as internal calls when, in fact, they should have been routed out using your outbound trunks. Simply install the application again, and it will overwrite the previous version.

MAR. 13 ALERT: This software is not compatible with the Debian, Raspbian, and Ubuntu platforms.

To begin or update your installation, log in to your PBX as root using SSH or Putty and issue these commands:

cd /tmp
wget http://incrediblepbx.com/sipuri-mod.tar.gz
tar zxvf sipuri-mod.tar.gz
rm -f sipuri-mod.tar.gz
./install-sip-uri-mod.sh

Obtaining Your Own SIP URI

There are a number of ways to obtain your own SIP URI. Perhaps the easiest is to set up the open Incredible PBX cloud platform that we introduced several weeks ago. Then you can create as many SIP URIs as you like, and they can be used to perform any task that’s available with Asterisk. If you’re not quite ready to make that leap, a free or almost free SIP URI is available from the following sources. VoIP.ms provides a SIP URI for every subaccount you create. Just set up an internal extension number for the subaccount, and that becomes a SIP URI to connect back to your registered server or SIP phone. In the alternative, VoIP.ms will also provide you with a free iNUM DID which can be reached at the following IP address: 81.201.82.50. CallCentric provides a SIP URI matching your account number which can be reached @in.callcentric.com. CallCentric will also provide you with a free iNUM DID which can be reached at the following IP address: 81.201.82.50. LocalPhone provides the same two options as CallCentric: you can be reached by your account number @localphone.com. Or the LocalPhone-assigned iNUM DID can be reached @81.201.82.50. Then there’s pbxes.org. Your account name can be used for SIP URI access @pbxes.org. And, of course, if you’re a 3CX user, you can set up a SIP URI for each extension on your PBX. Just navigate to the Options tab of the desired extension(s) and enter a unique SIP ID for each extension. The SIP URI becomes SIPID@YOUR-3CX-FQDN. SIP URI calls to 3CX Clients on smartphones are also free! This list is not exhaustive. There are now more than 2,000 VoIP networks that support SIP URI access. Using a SIP URI dialing prefix, call any of the referenced networks @sipbbroker.com.2

Choosing a SIP Phone or Softphone

You can find dozens of recommendations for hardware-based SIP phones both on Nerd Vittles and the PIAF Forum. For today we’ll get you started with one of our favorite (free) softphones, YateClient. It’s available for almost all desktop platforms. Download YateClient from here. Run YateClient once you’ve installed it and enter the credentials for an extension on your PBX. You’ll need the IP address of your server plus your extension number and its password. Fill in the Yate Client template using the IP address of your PBX as well as your extension credentials. Click OK to save your entries.

Once the Yate softphone shows that it is registered, try a test call to Lenny using one of the following SIP URIs: 2233435945@sip2sip.info or 883510001198938@81.201.82.50. Better yet, try out a few Incredible PBX samples from the public server we previously deployed:

Yahoo News Headlines    - news@demo.nerdvittles.com
Weather by Zip Code     - weather@demo.nerdvittles.com
Directory Assistance    - information@demo.nerdvittles.com
Lenny for Telemarketers - lenny@demo.nerdvittles.com

Originally published: Monday, February 11, 2019


blank
Need help with Asterisk? Visit the VoIP-info Forum.


 

Special Thanks to Our Generous Sponsors


FULL DISCLOSURE: ClearlyIP, Skyetel, Vitelity, DigitalOcean, Vultr, VoIP.ms, 3CX, Sangoma, TelecomsXchange and VitalPBX have provided financial support to Nerd Vittles and our open source projects through advertising, referral revenue, and/or merchandise. As an Amazon Associate and Best Buy Affiliate, we also earn from qualifying purchases. We’ve chosen these providers not the other way around. Our decisions are based upon their corporate reputation and the quality of their offerings and pricing. Our recommendations regarding technology are reached without regard to financial compensation except in situations in which comparable products at comparable pricing are available from multiple sources. In this limited case, we support our sponsors because our sponsors support us.

blankBOGO Bonaza: Enjoy state-of-the-art VoIP service with a $10 credit and half-price SIP service on up to $500 of Skyetel trunking with free number porting when you fund your Skyetel account. No limits on number of simultaneous calls. Quadruple data center redundancy. $25 monthly minimum spend required. Tutorial and sign up details are here.

blankThe lynchpin of Incredible PBX 2020 and beyond is ClearlyIP components which bring management of FreePBX modules and SIP phone integration to a level never before available with any other Asterisk distribution. And now you can configure and reconfigure your new Incredible PBX phones from the convenience of the Incredible PBX GUI.

blankVitalPBX is perhaps the fastest-growing PBX offering based upon Asterisk with an installed presence in more than 100 countries worldwide. VitalPBX has generously provided a customized White Label version of Incredible PBX tailored for use with all Incredible PBX and VitalPBX custom applications. Follow this link for a free test drive!
 

blankSpecial Thanks to Vitelity. Vitelity is now Voyant Communications and has halted new registrations for the time being. Our special thanks to Vitelity for their unwavering financial support over many years and to the many Nerd Vittles readers who continue to enjoy the benefits of their service offerings. We will keep everyone posted on further developments.
 



blank

  1. Special thanks to Olivier Adler and voip-info.org for their early work on SIP URI dialing with Asterisk. []
  2. Some of our links refer users to sites or service providers when we find their prices are competitive for the recommended products. Nerd Vittles receives a small referral fee from these providers to help cover the costs of our blog. We never recommend particular products solely to generate commissions. []

VoIP 101: Developing a Cost-Effective SIP Strategy

blank

In the lead up to the demise of Google Voice XMPP service next week, we wanted to offer what we have found to be a cost-effective SIP strategy which takes advantage of the best of all worlds. We would divide SIP offerings into five broad categories: business-class unlimited SIP trunks, Old Faithful SIP providers, Mom-and-Pop SIP services, dirt-cheap termination services, and Gee Whiz SIP providers. As we have said many times, the beauty of setting up an Asterisk® PBX such as Incredible PBX® is you don’t have to put all your VoIP eggs in one basket. In our particular case, that has included a mix of Google Voice trunks plus all five of the SIP categories above. Today we want to document why we’ve personally made the selections we’ve made and hope that it provides a roadmap for your own VoIP setup while encouraging you to venture out of your safe zone and try some new VoIP options.

The all-you-can-eat business plans, which we previously have covered, make little sense for most home and small business users. Then there are the rock-solid, long term pay-as-you-go providers such as Vitelity and CallCentric that make perfect sense as your primary DID and SIP provider. While they may not always be the cheapest VoIP providers, the tradeoff is dependability and long-term reliability for your VoIP platform. In the case of Vitelity, it turns out the Nerd Vittles DID special (detailed below) from our Platinum Sponsor is perhaps one of the best VoIP deals on the planet.

The third category of SIP providers and our personal favorite is what we would call the mom-and-pop providers. These are typically one or two-person operations that offer incredible deals on all-you-can-eat VoIP plans for home users. Included in this category are Vestalink (available to existing customers only), Future-Nine and CircleNet. VestaLink originally began as OBiVoice and morphed over trademark issues. While the service is no longer available to new customers, it remains the best bargain at $72 for two years of unlimited inbound and outbound residential calling services. A close second goes to Future-Nine and their "Future 5 Grey" plan which provides 1,500 inbound and 1,500 outbound minutes a month for only $5. You can sign up here. Be sure to read the Terms of Services carefully, especially item #18. The New Kid on the Block is CircleNet. In addition to very attractive pay-by-the-minute offerings of $.005 per minute to most of the U.S. and Canada, they also have an $8 a month all-you-can-eat plan for residential customers that includes a very reasonable 5,000 minutes a month for calls to the following countries: United States, Canada, Australia, Bangladesh, Belgium, Brazil, Chile, Cyprus, Denmark, Finland, France, Germany, Greece , Guam, Hungary, India,Ireland, Italy, Japan, Latvia, Mexico, Netherlands, New Zealand, Norway, Poland, Puerto Rico, Singapore, Spain, Sweden, Taiwan, Thailand, United Kingdom, and Vatican City. Just let them know that you plan to use it with an Asterisk-based PBX. CircleNet also is offering Nerd Vittles readers a free month of the $8/month service to kick the tires. Simply send an email to sales@circlenet.us with your valid email address to take advantage of the offer. One free trial per customer/email address. CircleNet also offers a $15 a month business plan with even more minutes.

A fourth class of VoIP providers is the dirt-cheap termination services including Anveo Direct, TelecomsXchange, V1VoIP and the Betamax companies for low-cost international calling. These providers make terrific additions for supplementing your other VoIP services. TelecomsXchange is our personal favorite because of the special deal they have extended to Incredible PBX users. You get access to 300 VoIP wholesalers and can read about their services in this Nerd Vittles article. V1VoIP also has some terrific deals with 15¢/mo. DIDs from 13,000 Rate Centers and incoming and outgoing U.S. call pricing as low as $.003 per minute (not a typo!). Anveo Direct was perhaps the first provider to offer wholesale pricing to consumers, and they remain a terrific service both for DID and origination services with T.38 fax support as well as many of the lowest cost SIP terminations worldwide featuring user-configurable least-cost routing. Check out their pricing and rates here.

Finally, there are the SIP providers such as VoIP.ms that offer a rich collection of special features that you won’t find in many places and certainly not under the same roof. These features include SMS messaging, SIP URI proxying and iNUM for free worldwide calling, and fax support. Every one of these features is free when you sign up for an account at VoIP.ms. We encourage you to take advantage of these little known free services to enhance your PBX.

Putting It All Together. Now that we’ve covered the options, let’s go over how we would actually implement this. For the inbound trunk and primary DID, we’d recommend a SIP trunk from either Vitelity, VoIP.ms, or CallCentric. If you have multiple, simultaneous inbound calls, then the Nerd Vittles Vitelity special below can’t be beat because it provides four call paths. In addition, you get SMS support on the same trunk. Many people now assume your primary number supports SMS. We actually get dozens of unsolicited SMS messages on our home number from schools, churches, and political groups. If incoming call volume isn’t an issue, then VoIP.ms and CallCentric also offer a free iNUM number for your account. And VoIP.ms throws in a SIP URI as well.

For outbound calling for home and SOHO deployments, we recommend at least one of the mom-and-pop, all-you-can-eat providers: Future-Nine or CircleNet. If international calling is a requirement, you can’t beat the CircleNet offering. In addition to using your primary incoming provider, we also recommend you set up SIP accounts with a couple of the dirt-cheap termination providers. These don’t cost you anything other than a modest deposit unless you actually use them to place calls. And, when your primary outbound service has an outage, your PBX will never miss a beat.

The icing on the cake always has been several Google Voice trunks which work well for IVRs, Stealth AutoAttendants with DISA support, and faxing. While this may change with the demise of XMPP support, it appears that Bill Simon’s SIP Gateway to Google Voice will live on. With the Nerd Vittles sign-up link, you can migrate your existing Google Voice XMPP connections to the Simonics gateway for $4.99 each should the need arise. Enjoy!

Originally published: Monday, June 11, 2018


CircleNet SIP Setup for FreePBX/IncrediblePBX/VitalPBX/Issabel:

username=acct-id
type=friend
trustrpid=yes
sendrpid=yes
secret=acct-pword
qualify=yes
nat=yes
insecure=port,invite
host=sip.circlenet.biz
fromuser=acct-id
context=from-trunk
disallow=all
allow=ulaw

Registration String: acct-id:acct-pword@sip.circlenet.biz:5060/did-num

Future-Nine SIP Setup for FreePBX/IncrediblePBX/VitalPBX/Issabel:

username=acct-num
type=friend
trustrpid=yes
sendrpid=yes
secret=acct-pword
qualify=yes
nat=yes
insecure=port,invite
host=incoming.future-nine.com
fromuser=acct-num
context=from-trunk
canreinvite=no
disallow=all
allow=ulaw

Registration String: acct-num:acct-pword@incoming.future-nine.com/acct-num

blank
Need help with Asterisk? Visit the PIAF Forum.


 

Special Thanks to Our Generous Sponsors


FULL DISCLOSURE: ClearlyIP, Skyetel, Vitelity, DigitalOcean, Vultr, VoIP.ms, 3CX, Sangoma, TelecomsXchange and VitalPBX have provided financial support to Nerd Vittles and our open source projects through advertising, referral revenue, and/or merchandise. As an Amazon Associate and Best Buy Affiliate, we also earn from qualifying purchases. We’ve chosen these providers not the other way around. Our decisions are based upon their corporate reputation and the quality of their offerings and pricing. Our recommendations regarding technology are reached without regard to financial compensation except in situations in which comparable products at comparable pricing are available from multiple sources. In this limited case, we support our sponsors because our sponsors support us.

blankBOGO Bonaza: Enjoy state-of-the-art VoIP service with a $10 credit and half-price SIP service on up to $500 of Skyetel trunking with free number porting when you fund your Skyetel account. No limits on number of simultaneous calls. Quadruple data center redundancy. $25 monthly minimum spend required. Tutorial and sign up details are here.

blankThe lynchpin of Incredible PBX 2020 and beyond is ClearlyIP components which bring management of FreePBX modules and SIP phone integration to a level never before available with any other Asterisk distribution. And now you can configure and reconfigure your new Incredible PBX phones from the convenience of the Incredible PBX GUI.

blankVitalPBX is perhaps the fastest-growing PBX offering based upon Asterisk with an installed presence in more than 100 countries worldwide. VitalPBX has generously provided a customized White Label version of Incredible PBX tailored for use with all Incredible PBX and VitalPBX custom applications. Follow this link for a free test drive!
 

blankSpecial Thanks to Vitelity. Vitelity is now Voyant Communications and has halted new registrations for the time being. Our special thanks to Vitelity for their unwavering financial support over many years and to the many Nerd Vittles readers who continue to enjoy the benefits of their service offerings. We will keep everyone posted on further developments.
 



Some Recent Nerd Vittles Articles of Interest…