NOTE: The system referenced in this article is no longer supported by Nerd Vittles as this version of Asterisk® has been phased out. For the latest and greatest, please consider our new PBX in a Flash offering.
It's birthday week at Nerd Vittles, and today you get the party favor as we introduce the second generation of our free turnkey (aka preconfigured) Asterisk system: nv-TrixBox-1.1.2. As with the first version, it runs on the desktop of any Windows XP home or office computer. If you want a state-of-the-art phone system, look no further. Out of the box, it supports eight extensions and two lines with integrated voicemail and immediate email delivery of your incoming voicemail messages. To add additional extensions takes about 5 seconds. This PBX features the latest build of Asterisk (1.2.12.1) and is just the ticket for a small business or a school or even a fraternity or sorority house. It's also perfectly suited for your home. You get every imaginable PBX telephony feature including music on hold, call forwarding, and call transfer as well as a preconfigured AutoAttendant which lets your friends and colleagues direct an incoming call to any of your extensions or even your cellphone. For those with the magic password, you can even dial in and get dialtone to make five hours of free calls each week to dozens of countries around the world including all of the U.S. and Canada, most of Europe, South and Central America, Australia and all your Far East favorites including China, Taiwan, Russia, and Japan. And the total cost: about $12.50 for each three months of service. All incoming calls are free, and you even get your very own area code and phone number to pass out to your friends that are still chained to plain old telephones or cellphones.
And, yes, all your favorite Nerd Vittles applications are preinstalled and ready to go including weather forecasts for 1,000 airports, MailCall for Asterisk to read you your email messages, NewsClips for Asterisk to read you the news, the AsteriDex robodialer complete with a web interface to place your outbound calls and to serve up customized CallerIDs for your incoming calls, and our new GabCast (podcasting) Player for Asterisk. Last but not least, you get all of the bundled TrixBox 1.1 applications including the latest upgrade of freePBX (2.1.2), SugarCRM, Samba for Windows networking, FTP and SSH support, WebMin, PHP, MySQL, Perl, Apache, SendMail, integrated fax-to-email support, calling card billing, and more. And it all runs quite peacefully in a CentOS 4.3 Linux wrapper with the 2.6.9-34 Linux kernel which doesn't appear to have the timing problems that reared their ugly heads in CentOS 4.4 and TrixBox 1.2. We've used Andrew's trixbox numbering scheme to indicate that this build began with TrixBox 1.1 and includes the 1.1.1 updates as well as the latest versions of Asterisk and freePBX. Hence, version 1.1.2 is born. While it's not quite the latest and greatest everything that you'd find in TrixBox 1.2, it has one advantage running on almost all VMware Windows platforms: it works! And, to the Tinkerers of the World, a word of caution: don't attempt to run yum update or trixbox-update.sh on this build, or you'll break it. freePBX updates are safe using Tools->ModuleAdmin->Connect to Online Repository.
Prerequisites. To take advantage of all this magic, there are only three things you really need that aren't provided here. First, you'll want a desktop computer from a reputable manufacturer that is less than two years old. It should be running a fully-patched, current version of Windows XP with at least 384MB of RAM and 3 spare gigs of disk space. The more RAM the better, and 1GB is ideal if you'll be using your Windows desktop for other simultaneous tasks. Second, a broadband Internet connection with a network firewall/switch that hands out internal IP addresses using DHCP is required. Finally, you'll need to set up accounts with two Internet Telephony Hosting Providers (ITHPs). And we recommend you go for three! That's where the $12.50 comes in. Everything else you'll need can be downloaded at no cost using links in this article. So let's get started.
Installing the VMware Player. VMware is virtualization software which lets you run another operating system on your desktop. The TrixBox/Asterisk PBX application runs under CentOS Linux which is a RedHat Linux derivative. Your desktop is Windows XP, hence the need for VMware. The VMware Player software is free, and it lets you "play" the nv-trixbox-112 prebundled Linux application in a window on your Windows Desktop. On a current generation PC with plenty of RAM, this VMware application runs as fast as Asterisk on a dedicated Linux machine so don't worry too much about performance. Based upon our testing, it's a non-issue. We're going to provide the preconfigured application (all 658.29 megabytes of it!), but you'll first need to download the free VMware Player and install it on your Windows system. Just follow the prompts and accept the defaults. Once the install completes, reboot your Windows machine.
Today's Game Plan. As was true in version 1 of nv-trixbox, what we've done is build a TrixBox 1.1 system from the ground up. Then we loaded all the Linux, TrixBox, and freePBX updates through version 1.1.1 in addition to the latest builds of Asterisk and freepBX. Then we added the dozens of enhancements which we write about each week. Finally we configured the system so that it's ready to go ... out of the box! Once you secure the system with your own passwords and plug in the account names and passwords provided by your ITHPs, you're all set. We'll walk you through plugging in IP telephones, or regular cordless telephones such as our Vtech favorite (below) using a Sipura SPA-1001 (under $60 on Froogle), or downloading a free IP softphone. And, in about 15 minutes, you're done! Phones ring, voicemail works, voicemail messages get delivered to your email account, and music on hold works. We've even provided a working Stealth AutoAttendant that we'll tell you about shortly. And, for all our Mac fans, not to worry. VMware will have a player for your shiny, new Intel-based Mac shortly. Sign up for the beta here.
While you're enjoying your new phone system, you can read all about TrixBox and Asterisk and freePBX using our Quick Reference Guides, and then you can reconfigure the system to your heart's content. If you happen to break something, simply start over by reinstalling the VMware image (which hopefully you will zip up and burn to a CD for safekeeping). In exchange, you'll avoid the all-day knuckle drill of getting everything set up again from scratch. For those that are already TrixBox addicts, you may want to install this version just to take a look at how we've integrated most of the tips and tricks we've written about this past year. And feel free to share your own enhancements as comments to this article. We'll update the VMware image from time to time to take advantage of everyone's suggestions.
Let me also offer my usual apology to our foreign friends. This project necessarily required some assumptions in order to preconfigure everything. So here they are. We've assumed that you live in the United States, and that you place calls by dialing a 1 + a 3-digit area code + a 7-digit number or by dialing a 3-digit area code and a 7-digit number. Our out-of-the box configuration can be easily changed to support other telephone systems and dialplans around the world. Ninety per cent of our readers are in the United States so the system was built with that in mind. We've also left international calling out of the dialplan. It, too, can be added easily. The reason we left international calling out was to minimize the risk of abuse and associated financial problems. While many international calls are free or almost free with the providers we are recommending, there are numerous locations (including most countries surrounded by water not to mention cruise ships circling the globe) where telephone calls are still VERY expensive. Our recommendation is to adjust your dialplan to accommodate international calls where you know what the cost of the calls will be and you're willing to absorb those costs. One other cautionary note, and we'll get started. As configured, this system does not support 911 calls. Some ITHPs support 911, but the ones we're going to be talking about today do not. So plan accordingly NOW!
Finally, a word about bandwidth. This application is huge. The download weighs in at over 700MB. Don't even try it with a modem! Bandwidth to cover downloads costs money. We've sprung for a terabyte of bandwidth each month just to support downloads of this application ... which is and always will be free. Funding for this bandwidth was provided by some generous readers of our past columns. Thank you! If there are sufficient future donations during the coming months, we'll buy additional bandwidth. Otherwise, the application will vanish when the terabyte of bandwidth is exhausted. It will be available again on the 11th day of the coming month until the terabyte is once again exhausted. So, as they say, the early bird ...
Installing nv-TrixBox 1.1.2a. After you have the VMware Player installed, you're ready to download today's application. If you know how to use BitTorrent, please grab the torrent file from here and save our precious bandwidth. Otherwise, our good friends at VMwarez.com and MojoMonster.com have agreed to host this download. So just click here or BubbaPCguy's mirror, and download the file. If, for some reason, those sites are down, you can download the image from our site by clicking here. Then save the zipped file to your Windows Desktop.
Once the download finishes, click on the nv-trixbox-112a.zip file on your Desktop. Choose extract all files. When prompted for the destination to unarchive the files, type C:trixbox and press Enter. Have a cup of coffee while the archive decompresses. When it's finished, run the VMware Player. Accept the license agreement and then browse to the trixbox folder on Drive C and select trixbox.vmx. If you get an error about a missing IDE drive, just tell VMware not to look for it again and continue. When prompted whether to create a new identifier, choose Create and click OK. The Linux Kudzu Configuration Utility may load advising you that it can't find my network card in your computer. Move your cursor to the VMware Player window and click once to give it focus. Then press Enter to run the utility. With Remove Configuration highlighted for the network card, press Enter again. When Configure your network card is highlighted, press Enter again. Finally, when the Configure TCP/IP screen appears, press the Space Bar to select Use Dynamic IP Configuration. Then tab to the OK button and press Enter. Linux will whir away for a minute or two and boot your TrixBox system.
At the Linux login prompt, type root for your username and press Enter. Then type password for your password and press Enter again. We're not going to remind you to press Enter any more. After entering commands in Linux, you press Enter to execute them. Now you're an expert! Once you're logged in, your TrixBox server will tell you the private IP address for your system (to access it with a web browser). Write it down! Now issue the command ifconfig and write down the MAC address of your network card: HWaddr. We'll need them both in a minute.
NOTE: If, for some reason, you get an error about a mismatched IP and MAC address when trixbox-112a loads or if no IP address is shown once you log in as root, it means you've lost Internet connectivity. You can restore it easily once you're logged into your system as root. Just issue the following commands:
cd /root
./fixmacaddr
Securing Your TrixBox System. You don't leave your keys in your car at a shopping center, and you don't run a Linux system with a root password of password. There are numerous passwords on this system. If you're going to be the one and only administrator, we recommend setting them all to the same, secure password. Don't forget it, or you go back to Go! Now enter the following commands to reset the passwords:
passwd
passwd admin
passwd-maint
passwd-amp
passwd-meetme
We don't recommend exposing your Asterisk system to the public Internet unless you are an expert in all things Internet ... especially security. This is even more true with this TrixBox system. There are lots of applications running that crackers love to attack: SendMail, FTP, Windows Networking, Apache Web Server, PHP, and even Asterisk. As delivered, this system includes a Windows share of the entire TrixBox system which is wide open and requires no password to access it. This makes it easy for you to copy stuff to your new system from any Windows, Mac, or Linux machine. It also makes it incredibly easy for an outsider to totally destroy your system. That's why you made a backup CD of the nv-trixbox-112.zip file. Right?
Securing and Activating A2Billing. This web-based application allows you to generate and issue calling cards to individuals so that they can place calls remotely through your Asterisk server. If you've always wanted to be just like AT&T, here's your Big Chance! There's very little that you can do with an AT&T calling card that can't be done as well or better by you using A2Billing. And, it won't take an M.B.A. to undercut AT&T's calling card rates and still make buckets of money. All you need now are a few customers. But first, a word of caution. Assuming your Asterisk server has web exposure on the Internet, you need to secure the admin and root passwords in this application whether you use it or not. To access the application, go to http://trixboxIPaddress/a2billing/ using the actual internal IP address of your Asterisk server which you wrote down. Log in as root with a password of myroot. Click on the ADMINISTRATOR tab in the left column and then click Show Administrator. Now click on the Edit button beside each of the two administrator accounts and change the passwords to something secure. If you really would like to learn more about it, documentation for the application is available here. And, if you decide to use the application, you'll need to uncomment six actual dialplan lines in extensions_trixbox.conf and reload Asterisk. But we'll save that for another day.
Securing SugarCRM Contact Management. TrixBox includes the best open source contact management application on the planet, SugarCRM. You access the application with a web browser: http://trixboxIPaddress/crm/ substituting the private IP address of your Asterisk box, of course. Specify admin for your username and password for your password. Whether you use the application or not, change the admin password. It's easy. Just click the Administrator link under Welcome admin. Then click the Change Password button. Complete documentation for the application is available here. If contact management is your thing, knock yourself out, and we'll talk to you next spring when you finish getting everything set up to run your business. It's a great product, but be prepared to invest lots of time in the project if you expect to use it productively.
Reserving An IP Address in Your Router. Your PBX has to consistently boot up with the same IP address or your phones (and calls) won't be able to find the Mother Ship. Since we're using DHCP to initially obtain the IP address, we need to tell your router to always hand out this same address to your TrixBox system. Almost all routers make it easy to preassign DHCP addresses. Use a web browser to access your router's configuration screens. What we're looking for is generally under the tab for LAN IP Setup or DHCP Configuration and is usually called something like Reserved IP table. Just add an entry and call it Asterisk PBX and specify the IP address and MAC address that you wrote down above. Now each time you reboot your Asterisk server, your router will assign it this same IP addreess.
Linux 101. If you're new to Linux and/or Asterisk, here are a few commands you'll need from time to time. And, if you didn't already know, you don't just pull the plug on a Linux system ... even if it's running in a window on your Windows Desktop. Linux caches lots of stuff to speed up processing. So always shut things down gracefully if your data matters.
df -h ... Free disk space remaining on your Linux system. Be sure you always have the required 3GB of Windows space for this app!
logout ... Logs you out of the Linux system.
Ctrl-Alt ... Gives your Windows cursor back and lets you run other Windows apps until you click again in the nv-TrixBox window.
asterisk -r ... Runs the Asterisk Command Line Interface (CLI) after you've logged in as root.
quit ... Exits gracefully from the Asterisk CLI
amportal restart ... Restarts Asterisk.
/etc/webmin/start ... Starts up WebMin, the Swiss Army Knife of Linux. Access it with a web browser: https://TrixBoxIPaddress:10000/
shutdown -h now ... Shut down your Linux system right now. Wait for VMware Player window to close!
shutdown -r now ... Reboot your Linux system right now.
nano -w filename ... Edit any file in your Linux system. Ctrl-X, Y, then Enter saves your changes.
cd dirname ... Changes to another directory below current directory.
cd /dirname ... Changes to another directory below the root directory.
ls ... The Linux equivalent of dir to get a directory listing.
cd /var/www/html ... Home of the TrixBox web server files accessed at http://TrixBoxIPaddress/ or https://TrixBoxIPaddress/
cd /var/lib/asterisk/agi-bin ... Home of the TrixBox and Asterisk scripts for Asterisk apps.
cd /var/lib/asterisk/sounds ... Home of Allison and all the voices prompts that make up the Asterisk system.
cd /etc/asterisk ... Home of all the Asterisk, TrixBox, and freePBX configuration files.
Adding Plain Old Phones. Before your new PBX will be of much use, you're going to need something to make and receive calls, i.e. a telephone. For today, you've got three choices. Option #1 and the best home solution is to use a Plain Old Telephone or your favorite cordless phone set (with 8-10 extensions) if you purchase a little device (the size of a pack if cigs) known as a Sipura SPA-1001. It's under $60. Be sure you specify that you want an unlocked device, meaning it doesn't force you to use a particular service provider. Once you get it, plug the SPA-1001 into your LAN, and then plug your phone instrument into the SPA-1001. Your router will hand out a private IP address for the SPA-1001 to talk on your network. You'll need the IP address of the SPA-1001 in order to configure it to work with Asterisk. After you connect the device to your network and a phone to the device, pick up the phone and dial ****. At the voice prompt, dial 110#. The Sipura will tell you its DHCP-assigned IP address. Write it down and then access the configuration utility by pointing your web browser to that IP address.
Once the configuration utility displays in your web browser, click Admin Login and then Advanced in the upper right corner of the web page. When the page reloads, click the Line1 tab. Scroll down the screen to the Proxy field in the Proxy and Registration section of the form. Type in the private IP address of your Asterisk system which you wrote down previously. Be sure the Register field is set to Yes and then move to the Subscriber Information section of the form. The preconfigured extensions are set up as 500 through 508 with voicemail activated for extension 500 presently. To keep things simple, enter House Phone as the Display Name. Enter 500 as the User ID. Enter 1234 as the Password, and set Use Auth ID to No. Click the Submit All Changes button and wait for your Sipura to reset. In the Line 1 Status section of the Info tab, your device should show that it's Registered. You're done. Pick up the phone and dial 611 to get a current weather report or dial 511 to get today's news headlines.
Using an IP Softphone. If you're like us, you've gone to all this trouble downloading your fancy new PBX, and you sure as hell don't want to wait a week for your Sipura 1001 to arrive before trying it out. So here's the quick and dirty solution. There's software that will run on your Windows, Mac, or Linux desktop that acts like a telephone. You obviously need speakers and a microphone on your system for this to work. Assuming you have those, go to CounterPath's web site and download X-Lite for your favorite OS. There's a manual there, too, but you probably won't need it. Once the download completes, click on it to start the install. Accept the obnoxious license agreement and install the software in the default directory. Unless you want X-Lite to load every time you restart your machine, uncheck the Launch on Startup checkbox. Reboot your system and, if it's also running your TrixBox system, restart it first. Then run the X-Lite application. Click No to turn off X-Lite's spyware. When the "SIP Accounts" window opens, click the Add button and fill in the following data:
Display Name ... House Phone
User name ... 500
Password ... 1234
Auth. User Name ... 500
Domain ... the IP address of your TrixBox system
Leave the other defaults and click on the Check Voicemail tab. For the Number to Dial to Check Voicemail, enter *97. Then click OK and Close. If your Windows Firewall is doing what it's supposed to, it will probably block the connection to your Asterisk system. When prompted, tell it to allow future connections. If this happens and X-Lite does not register with your Asterisk system, click the Down Arrow at the top of the softphone (Show Menu). Click SIP Account Settings, Properties, OK, and Close again. You now should be registered. Dial 611 and get your first weather report. To exit from X-Lite, click the Down Arrow and then Exit.
Using a SIP Phone with Your System. There's loads of SIP Phone hardware in the marketplace, some better than others. We've written about some of them on Nerd Vittles, and you can use Google or the Asterisk forums to get a good feel for which ones work and which ones are a waste of money. If you want the bleeding edge phone that supports virtually every feature that Asterisk has to offer, then the GrandStream GXP-2000 is the phone for you. We use one and love it. Some of my colleagues think it is better suited for the non-business environment. In any case, it's a great phone to learn about Asterisk. With careful shopping, you can find one for about $80. Don't buy support or an extended warranty. They're both a waste of money. You configure the phone almost identically to softphone shown above. For home use, we still think the SPA-1001 and a good 5.8 GHz cordless phone system with multiple handsets is the way to go.
Adding Internet Telephony Hosting Providers. Just as you need an account with an Internet Service Provider to reach Google or Yahoo or Dreadful AOL, if you want to make phone calls to folks with Plain Old Telephones outside your Asterisk system, then you've got to have telephone trunks to carry conversations from you to them and back again. For the default system today, we've preconfigured it to support an outbound trunk from VoipDiscount.com and an inbound and outbound trunk from StanaPhone.com. Before you sign up for anything, read our two articles about these providers by clicking on the links in this paragraph. In a nutshell, VoipDiscount.com provides incredibly cheap outbound calling to a number of countries. However, you have to cough up about $12.50 every three months to keep your account "current." They're also a little slick in that they frequently change calling rates and calling locations which are free. Having said all that, it's still the best calling deal on the planet. You just need to understand the ground rules and the slippery slope issues so you don't get blind-sided. StanaPhone provides free DID numbers in a New York area code and free incoming calls for those with an account. Even their charges for outbound calls are quite reasonable. To get your system working, you'll need to go to each of these providers' web sites using Internet Explorer on a Windows PC, sign up for an account, and download their softphones. That's the only way you can figure out what your account name and password are. We also recommend you put $10 in your StanaPhone account. Then, based upon reports from lots of users, you'll never have to worry about them disconnecting your free incoming service or your free phone number. Again, read our two articles which will tell you everything you need to know. Don't worry about all the settings, we've taken care of all of that for you. The objective is to get your free phone number and your account names and passwords. Then we'll plug those into your Asterisk system so you can start enjoying free incoming calls and mostly free outbound calls. Once you get your account numbers and passwords, move on to the next step, and we'll show you how to plug them into your Asterisk system and begin making and receiving calls.
There are others who want a local phone number and more reliable service. For them, we continue to recommend TelaSIP. $14.95 a month gets you unlimited calling in the U.S. and a local phone number in your choice of area code. If you want to start out on a pay-as-you-go plan, $5.95 a month gets you a local phone number and 2¢ per minute calls in the U.S. They don't provide a lot of hand-holding, but their service is rock-solid reliable. For a list of all our service provider reviews, go here. Or just read our Internet Telephony Provider Shootout to see why TelaSIP remains our top pick. If you decide to go with TelaSIP, our Newbie's Guide to TrixBox will show you how to configure it.
Configuring Your TrixBox System. This should take you less than five minutes! We've eliminated most of the configuration hassles with your new Asterisk system by preconfiguring almost everything. About all that you'll need to do to get a fully-functioning system is to plug in your account names and passwords for your two ITHPs and enter your email address for delivery of your voicemails and faxes. Here's how.
Using a web browser, point it to the IP address of your new TrixBox system. When the TrixBox Main Menu appears, click System Administration. When prompted for your username, enter maint followed by the password you configured for your system above. When the Configuration and Administration Menu appears, click freePBX. freePBX is another open source project that puts an incredibly simple but complete web interface on your Asterisk PBX. When the freePBX Main Menu displays, click Setup. Now click Trunks in the left column of the display. On the Trunks setup screen in the right column, you'll see that we've preconfigured two trunks: one for voipdiscount and one for stanaphone. Click on SIP/voipdiscoun to display the voipdiscount setup screen. Scroll down to the PEER Details section. Replace yourname with your account name in three places: authuser, fromuser, and username. Replace yourpassword with your password in the line which reads secret=yourpassword. Now scroll to the Registrationsection at the bottom of the screen. Replace yourname:yourpassword@sip.sipdiscount.com with your actual account name and password. Leave everything else as it is. When you finish, click the Submit Changes button and then the Red Bar to reload Asterisk.
We're going to make similar changes in the Stanaphone trunk settings. Click on SIP/stanaphone to display the StanaPhone setup screen. In the Outbound Caller ID field, enter the 10-digit phone number you were assigned by Stanaphone. In the Peer Details section, replace youraccountnumber in username=youracctnumber with your assigned account number, not your phone number! Replace yourpassword in secret=yourpassword with your assigned password. Repeat the drill in the User Details section on the form. Then, in the Registration String, carefully plug in your account number, then a colon, then your password, then @sip.stanaphone.com/, then your assigned 10-digit phone number. Leave everything else as it is. When you finish, click the Submit Changes button and then the Red Bar to reload Asterisk.
If you want voicemails delivered to you by email, you'll need to plug in your email address. Click on Extensions in the left column of freePBX. Then click Home - 500 in the right column to display the settings for extension 500. Scroll down to the VoiceMail and Directory section of the form, and enter your email address in the email address field. Then change the Email Attachment field to Yes. If you'd like the system to automatically delete your voicemails after emailing them to you (with the message), change the Delete Vmail option to Yes. When you finish, click the Submit Changes button and then the Red Bar to reload Asterisk. Your system now is fully operational.
If you'd like to add support for transferring calls to your cellphone, click Misc Destinations in the left column of freePBX, and then click Cellphone in the right column. Enter your 10-digit cellphone number in the Dial field. When you finish, click the Submit Changes button and then the Red Bar to reload Asterisk.
If you'd like to add fax support so that incoming faxes to your Stanaphone number get emailed to you, click on General Settings in the left column. Scroll down to Email address to have faxes emailed to and plug in your email address. Do NOT change the origination email address, or you won't receive anything. When you finish, click the Submit Changes button and then the Red Bar to reload Asterisk.
Setting the Default Time Zone. Your TrixBox system is set to use Eastern daylight or standard time (depending upon the time of the year) as the default time zone. This matters when you're scheduling reminders and wake up calls. If it's not correct for your location, the easiest way to change the time zone is using WebMin. Log into your server as root and issue the following command to start WebMin: /etc/webmin/start. Then, using a web browser, go to: https://TrixBoxIPaddress:10000/. Log into WebMin with the username root and the password you assigned to your root account. At the WebMin Main Menu, click Hardware then System Time. Scroll down to the TimeZone section and use the pull-down menu to select the desired time zone. Then click the Save button immediately below the Time Zone field. When you restart your TrixBox system, the time zone will be correct, and WebMin will automatically be shut down.
Taking Your TrixBox For A Spin. For a list of Feature Codes supported by your new system, click on Feature Codes in freePBX and print the list. Pick up a phone and dial any one of them. To make an outgoing call, take a phone off-hook and dial either a 10-digit number in the U.S. or 1+10-digit number. Then, using a cellphone or someone else's POTS phone, dial your Stanaphone number to be sure it's working. You should get a welcome message, and then your phone or softphone will ring.
We call the welcome message a Stealth AutoAttendant. What that means is that, while the message is playing, you can do some other things with your system. For example, by pressing 1, your call will immediately ring extension 500 on your system. Pressing 2 will ring extension 501. Pressing 3 will ring your cellphone. Pressing 8 and entering 56789# will give you dial tone to make a long distance call through your PBX. Pressing nothing will cause all of the extensions on your system to ring two seconds after the message completes.
DISA Security. Getting remote dialtone can be a dangerous thing in the wrong hands so let's put your own password (of any length) on the DISA function that is triggered by pressing 8 above. Click DISA in the left column of freePBX and then DialTone in the right column. Now enter a PIN that will let you sleep well at night ... knowing that you are paying for all outbound DISA calls. When you finish, click the Submit Changes button and then the Red Bar to reload Asterisk.
What Time Is It? On some computers (mostly high end ones as it happens), VMware has a hard time keeping the correct time. Since many telephony applications are time sensitive, you'll want to monitor this for a few days and see if your system is having problems. Logging in to your server and typing date will display what time your computer thinks it is. We've added a cron job to this application that updates the time using NTP every 10 minutes. That should resolve the problem. If not, post a comment and let us know.
The Nerd Vittles Collection. We'll wrap it up for this week by pointing you to some tutorials for the Nerd Vittles applications that are preloaded in this TrixBox build. AsteriDex and MailCall require some quick configuration so take a look at the tutorials. You also may want to change the Telephone Reminders default password of 123 in line 28 of /etc/asterisk/extensions_trixbox.conf. If you do, remember to restart Asterisk for the change to take effect.
AsteriDex - The Poor Man's Rolodex (http://TrixBoxIPaddress/asteridex/)
NewsClips for Asterisk - Get the News By Telephone (Dial 511)
MailCall for Asterisk - Get Your Email By Telephone (Dial 555)
Weather Reports by Airport Code - Get the Latest Weather Forecasts for 1,000 U.S. Cities (Dial 611)
Telephone Reminders for Asterisk - Appointment Reminders By Telephone (Dial 123)
GabCast Studio for Asterisk - Create and Play PodCasts Using Your Phone (Dial *422 and 422)
Where To Go From Here. If you're new to the Asterisk world, you have lots of fun (and learning) ahead of you. The best place to start is our Newbie's Tutorial. We've already done most of the work for you. It's an easy read which covers many topics that we didn't get to today. So start there. You'll also want to get plugged into the TrixBox Forums. That's the place to ask questions after you do some reading. Posting support questions on Nerd Vittles just doesn't work because of the cumbersome blog format. Don't email me questions either! We only accept thank you notes. Finally, take a look at our catalog of articles, projects, and Asterisk resource links. You'll find just about everything you'll ever need there. Enjoy!
Nerd's Corner. If you've been following TrixBox developments recently, you know that there were some technical problems with TrixBox 1.2 on some platforms, especially VMware builds such as our bundle. We don't work under the hood of our car, and we're not especially comfortable under the hood of Linux or Asterisk either. So, it's been a difficult couple of weeks trying to come up with a mix of products that provides the latest Asterisk and frePBX builds as well as a stable operating environment. Thanks to Rob of freePBX fame and Bubba, one of the very best troubleshooters in the TrixBox business, we've come up with a compromise package that works great with VMware and the Nerd Vittles goodies, but could still use a little debugging for anyone that wants to run it on a standalone Linux machine. Why? Because we got everything to work reliably except zaptel which never would compile on our VMware platform. Our solution was pretty simple. We just disabled it in /etc/asterisk/modules.conf because zaptel isn't supported under VMware anyway. And, no, Asterisk doesn't use it for timing any longer so the missing zaptel module shouldn't cause you any headaches. If one of the geniuses gets it working again, we'll post an update in a comment to this article. But, as we said, zaptel is an academic exercise in the VMware world anyway so ... not to worry! Zaptel has been fixed in the version 2a image which is now available for download.
Nerd Vittles Demo Hot Line. You now can take a number of Nerd Vittles projects for a test drive... by phone! The current demos include NewsClips for Asterisk (latest news headlines in dozens of categories), MailCall for Asterisk with password 1111 (retrieve your email by phone), and Nerd Vittles Weather Forecasts by U.S. Airport Code. Just call our number (shown in the left margin) and take any or all of them for a spin. The sound quality may not be perfect due to performance limitations of our ancient Intel 386 demo machine. But the price is right.
Nerd Vittles Fan Club Map. Thanks for visiting! We hope you'll take a second and add yourself to our Frappr World Map compliments of Google. In making your entry, you can choose an icon: guy, gal, nerd, or geek. For those that don't know the difference in the last two, here's the best definition we've found: "a nerd is very similar to a geek, but with more RAM and a faster modem." We're always looking for the best BBQ joints on the planet. So, if you know of one, add it to the map while you're visiting as well.
Hosting Provider Special. Just an FYI that the Nerd Vittles hosting provider, BlueHost, has raised the bar again on hosting services. For $6.95 a month, you can host up to 6 domains with 30GB of disk storage and 750GB of monthly bandwidth. Free domain registration is included for as long as you have an account. That almost doubles last month's deal, and it really doesn't get any better than that. Their hosting services are flawless! We oughta know. We've tried the best of them. If you haven't tried a web hosting provider, there's never been a better time. Just use our link. You get a terrific hosting service, and we get a little lunch money.
Some Recent Nerd Vittles Articles of Interest...
…and Uncle Ward figured out a way to give us a new version, without the ugly stuff of CentOS4, and it was good!
Ward, is there any chance that we may get an article on ClarkConnect with FreePBX? I’ve been playing with it since I read a comment that mentioned it… installation was easy, but configuration has been a pain!
Also, some of us are still hoping for a script to install all of the NV goodies to our Dedicated Machine Trixbox…
Thanks again for your hard work and support, not only here, but in most of the forums we visit Uncle Ward is there to help!
I notice this version has the same problem as building trixbox1.2 manually on VMware has – choppy and broken sounds (receptionist / etc).
I’ve had to go back to 1.1 to fix it (and dont run trixbox-update).
[WM: What kind of box? You also might want to take a look at Rob Thomas’ article: Un-TrixBox your trixbox for some other workaround tips.]
For some reason this VM doesn’t work for me. I don’t get the Kudzu utility, when I login it just says "http://" ifconfig shows my IP as 127.0.0.1 and a MAC address is no where to be seen. Any ideas?
[WM: We put it in the article, but here’s a replay. Log in as root. Then issue the following commands: cd /root and then ./fixmacaddr ]
Wow. Your column just gets better and better.
Will your Teleyapper work as-is with this new build of Trixbox? It refers to Asterisk versions, and I don’t know how they map to Trixbox vesions. Thanks!
[WM: Rumor has it that it works just fine.]
I have just done the installation and am getting a strange problem from my eyebeam phone. When i try to dial another extension or voicemail i get a voice saying "The person you are calling is unavailable, please try again"
This is only on sip extensions, i have created an iax2 extension and that works fine. Also i have tried using the snom softphone.
in the asterisk cli the error message when i try to dial is:-
— Got SIP response 503 "service unavailable: cli is wrong, check your configuration, switch to 08 number" back from 204.147.183.18
[WM: Sounds like a bad account name and/or password.]
I have checked that, the phone registers ok, i also tried creating another extension 5004 which also registers ok but i get the ssame issue. If i close down the virtual server then i get registration error 408 – Request timed out. I have disabled the windows firewall. I will try moving them VM to another physical machine.
[WM: Before you do that, use trixbox->System Administration->Asterisk Info with your web browser to check whether your SIP account is getting registered. That will tell you whether it’s an internal problem or a registration problem with the provider.]
Ward, FYI, Zaptel is required for MeetMe conferencing – it’s not just for timing. app_conference doesn’t require it, but I’m not sure if trixbox is using that. I’ll see if I can build you some zaptel modules that work properly under VMWare. –Rob
[WM: So I’ve heard. Bubba’s already put together a zaptel build that I just haven’t had time to try yet. Give me one more day before you waste any time on this…. We’ve got zaptel working as well as some other minor fixes including repairs to the 1,000-airport weather application. So a new download should be ready shortly.]
So what does this version have that the previous did not? What new features?
[WM: New version of Asterisk. New version of freePBX. And, in a few hours, full zaptel support (important if you move this to a dedicated machine), working weather reports for 1,000 U.S. cities), and loads of bug fixes.]
As luck would have it, there were some bugs in the original version 2 build including the lack of zaptel support which also broke MeetMe conferencing. Then there was the missing database for the 611 Weather System. And there were a few other rough edges. In any case, we’ve fixed them all with tons of help from Bubba and Rob. At your convenience, you may want to replace your 1.1.2 copy if you downloaded the image between last Friday and now. The new filename is nv-trixbox-112a.zip. Our apologies.
I don’t get it. Unless you need all those whiz-bang extras, why not just go with Vonage and get 911 support? TelaSIP is the same price as the Vonage basic service. I’m very intrigued and might just spend the time to see if I can get this up and running…but am having a hard time justifying it.
[WM: Andy, do a little reading. If not here, somewhere. Then you’ll get it.]
Hi, I love your software, I do not know if it is me or not, but when I try to record via dialing a ext. It says it cannot find the file, I have tried 2 different "installs" if the file, when I do a full iso install, it works without any problems and it works on your first version 1.1.1, any thoughts? I also notice that it is not keeping my sip registered like it should, might be me, but, again, on other installs it is working fine. THnaks, keep up the good work guys!!!!!
[WM: Doesn’t sound like such good work to me. The symptoms you are describing are similar to the problems which have been raised with TrixBox 1.2. Assuming you haven’t done any trixbox or yum updates on the image after installing it, then it’s starting to sound like there may be a problem in the latest Asterisk build as well as the latest CentOS version (4.4). Please confirm that you didn’t make any changes or install any updates before seeing this behavior. Then briefly describe the type of system you are running and the version of Windows including the service pack version. Hopefully, that will be helpful in finding the problem. Suffice it to say, it only rears its ugly head on certain types of machines. The only problem is that we don’t know which types… yet. nv-trixbox-112a solved the problems on our HP test machines running Windows XP Pro while a VMware version of trixbox 1.2 had all of the problems you’ve described and more. Thanks for your note.]
Hi Ward, I have it on a p4 2.4 ghz, windows media sp2, I have done NO updates what so ever. I did have a question about a update, is there a reason that freepbx was left at 2.1.2? Thought of upgrading that but I did not. It actually says cannot write file, and I did double check to make sure I typed in the right ext. I hope asterisk or centos gets the bugs worked out soon. THanks, anything else just let me know.
[WM: If you didn’t download the image from our site, you might try that just to rule out the corruption problem.]
Ward, you don’t have to print this, if you don’t want to, but I did some testing, installed it on my other computer (athlon64x2) and it did the same thing, I copied the error and here it is: "Unable to add /var/lib/asterisk/sounds/custom/test.wav – Can not read file!" Hope this helps on that issue. Thanks!
[WM: If it can’t read a file during the install, then there’s definitely a bad image or a defective CD. Be sure to take a look at this link.]
Ward, it installed fine, I downloaded it from the direct link with no problems, it shows that error in freepbx when you go to record using your sip phone. Backed down to 1.1.1 everything is fine.
[WM: If you’re getting a read error, there IS a disk problem somewhere. Either the hard disk has a bad place, the VMware image has exhausted its space, or there’s a bad CD during the install. Glad 1.1.1 works, but 1.1.2a should as well.]
I downloaded the vmware file and use vmware importer to import into my esx 3.0.1 server. Now the problem is that when I go to boot it gives me a kernel panic. The picture to the error is here.
http://cmuench.com/kernel.jpg
[WM: Drop back to 1.1.1 and see if that helps.]
Dropping back to 1.1.1 did not help. And I’m on esx 3.0.1
[WM: Sorry. That about exhausts my bag of tricks. Andrew has promised a new 1.2 VMware Build in a week or so. Perhaps you’ll have better luck with that one.]
Any way to do an easy upgrade from 1.1.1 to 1.1.2a?
[WM: ‘fraid not.]
A few when ago, when I discovered your site, docs, and Trixbox distro I was enthralled. I couldn’t stop or sleep until I got Asterisk making calls for me, (had problems, until I learned to disable Hamachi which seemed to conflict with the DHCP the Trixbox expects). v1.1.1.
Just wanted to add I use voipcheap.com, and easily swapped out the rules for voipdiscount.com, and smiled as it all worked. Voipdiscount is free to most 1st tier contries’ landlines, and otherwise quite good rates. 10 euros buys credit that will expire in 6 months; so that’s the bottom cost. Oh, 300 min. of free calls a week, max; and every 60 minutes it automatically disconnects. Still, that’s a lot of nearly free international calls.
…And the Trixbox, oh I just love it. Now I’m lusting for a SMC7908VoWBRB voip/router to go with it!
I have installed the latest version of VMWare and downloaded your trixbox build. When I start up VMWare and run the image, VMWare tells me that something is wrong with the image and it needs to fix it. That goes fine, then during the linux boot, it stops and and asks me for a runtime level. I have tried 1 through 5 with no results. It completely stops at that point.
I have installed Trixbox on a regular computer and know what it should like and never had any problems. This has just stumped me… Any ideas?
[WM: The VMware image is corrupted. Try another source.]
Ward,
This is really great. I am thinking of maybe using it in my small office. I would want the ability to go out through PSTN at least at the beginning. I searched your instructions and did not find anything about that. I found some docs from Australia, but it was quite cumbersome. You are great at making procedures straight-forward. Do you have any docs for making this work with PSTN lines?
[WM: What you need is an SPA-3000. Here’s the link to show you how to set it up.]
Great Articles. I was able to setup the system painlessly. The only problem I am having is with voicemails. When I try to retrieve the voicemail using the IP_ADDRESS/recordings webpage, it throws the following errors:
Warning: file(/var/spool/asterisk/voicemail/default/21/INBOX/msg0000.txt): failed to open stream: Permission denied in /var/www/html/recordings/modules/voicemail.module on line 525
Warning: file(/var/spool/asterisk/voicemail/default/21/INBOX/msg0000.txt): failed to open stream: Permission denied in /var/www/html/recordings/modules/voicemail.module on line 525
Warning: file(/var/spool/asterisk/voicemail/default/21/INBOX/msg0000.txt): failed to open stream: Permission denied in /var/www/html/recordings/modules/voicemail.module on line 770
On checking the directory, the files are created with id root.root and permission 600. Obviously the the httpd daemon running as user asterisk will not be able to read these files. I dont know which process creates these files. Could you please help on this issue.
[WM: Go to the file /etc/rc.d/init.d/asterisk and uncomment the following line and then reboot:
AST_USER="asterisk"
That should fix it. For more info, click here.]
Awesome work WM!
We are busy playing with the latest VM image of Trixbox and love it.
We seem to be running out of disk space due to some log files growing large, which we use to help verify that our system is working good.
How would you suggest we increase the space available?
We thought that the VMware virtual disk could grow as it needed or is it fixed at a maximum size?
Any help would be greatly appreciated.
[WM: See Comments #24 and #25 below for some ideas.]
Awesome! I had my voipbuster.com DIDs working in no time to accept incoming calls. I live in Europe and since I do not make any calls to the US I need to figure a way to dial out.
In europe, people dial 00+countrycode+rest of phone number for international calls so I added an outbound route for 00X. and added 00X. to each trunk.
Every time I call I get the "number called + number not found in our database, goodbye" message and then the call is disconnected.
What am I doing wrong here? I tried every setting in freepbx to fix this.
Kind regards, Martijn
If you are running out of disk space another option would be to switch to add a new disk using vmware. If you are using Vmware Player you’ll need to use one of the free utilities on the web to create the file. If you are using Vmware Server just edit the virtual machine and add another drive that is identical to the original one except make it whatever size you desire. Once you’ve got the new drive just format it, create whatever directories you want for log, monitor, or voicemail directories. Move you files over and create the symbolic links.
We did some testing on letting the Virtual disk grow to 4GB, but it would not grow past 2.3GB. We dug around and found that the linux-swap partition was blocking its growth, at least that is what we thought. So we booted up our virtual machine with the gparted LiveCD, and moved the linux-swap partition to the far right portion of the disk, and resized the trixbox partition to the maximum size. BTW, if you want to increase the overall size of the virtual disk, use the command line tool from vmware, vmware-vdiskmanager.exe (just use the demo version of vm workstation to get a copy).
Worked quite nicely, and may help someone else out who needs a bit more space.
Thanks again WM, nice work on the VMware edition of Trixbox!
Outstanding site! Incredible tutorials! thumbs up for you guys!.
One question if I may. I’d like to install your ‘all bells and whistles’ version of tribox, but on a P1 machine.. no windows or VM. Do you have an ISO image? or which would be the best image to install a Trixbox.. your recommendation?
[WM: At the moment, the all-you-can-eat version only runs as a VMware image, but we’re working on it. See today’s column for more details.]
The nerdvittles guides to configuring asterisk looks pretty good, I downloaded the latest version nv-trixbox-112a.zip it boots directly to Centos and takes to Asterisk prompt asking you to input the userid/password. This is where i got struck and couldn’t proceed….and had to shut down the system.
Please provide the userid/password.
[WM: Username is root. Password is password. It’s in the article.]
Regarding the VMWare time stuff, it’s a little tricky–but once everything’s correct, it’ll keep time, just fine. You need to do this:
1) Install VMWare-tools. Very important.
2) Disable NTPD completely. NTPD and vmware-tools will both fight to add ticks to the system interrupt timer to compensate for VMWare’s time slicing. If you run both, the result will be a fast-running clock.
3) In your .vmx file, add the line: tools.syncTime = "TRUE"
4) In your VM, edit /boot/grub/grub.conf and add "clock=pit" to the kernel boot line.
Doing all the above will fix your time issues, and VMWare will keep it in sync to the host almost perfectly.
[WM: Thanks, Brian. I’ll try it on our test machine and report back how it goes. If anyone uses this, you probably will need to disable the cron job we have running using WebMin (under Hardware, Time).]
[Update on VMware Timekeeping Disparity: I actually decided to first try a less complicated tip from the TrixBox Forum that appears to work equally well. I skipped recommendations 1, 2, and 3 above and replaced the kernel boot line (line 16) in /boot/grub/grub.conf (nano -w /boot/grub/grub.conf) with the following. Then I started WebMin and disabled our cron timesetting job in WebMin->Hardware->System Time->Synchronize on Schedule=no, and rebooted. VMware has been keeping perfect time ever since.]
kernel /vmlinuz-2.6.9-34.0.2.EL ro root=LABEL=/ acpi=off noapic nosmp nolapic clock=pit
Hey guys, thank’s for your contribution. I’ve only encountered on problem so far. I’m able to check the voicemail through the web interface, but whenever i try to access it from *67 is says password incorrect. Any ideas?
Does tribox 2.0 play well with all the Nervittles scripts? If not, what is the recomended version?
[WM: We haven’t yet tested trixbox 2.0 fully. TrixBox 1.2.3 works perfectly fine with all of our applications, and the PBX-in-a-Flash utility will preconfigure almost all of them.]
Can’t find any torrent seeds for nv-TrixBox-1.1.2 , tried all the above links?
Dan
[WM: TrixBox 1.2.3 is the only version we’d stake our phone system on. There’s a link to the articles at the top of the Nerd Vittles page.]
Well thenks for all your help first of all
I’m wondering if there is a way to run trixbox under virtual machine with all pci card capabilities so it could work properly. A few weeks ago, I mounted trixbox on vmware and I culdn’t set up the E1 on pci cards. Is there any additional driver to use?
thanks again uncle Ward
[WM: Sorry. You can’t use PCI cards with VMware.]