Home » Technology » Tricking Out Your TrixBox

The Most Versatile VoIP Provider: FREE PORTING

Tricking Out Your TrixBox

With apologies to the original Comic BookNOTE: 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.

For those that thought we’d dropped off the face of the planet, good news. Not yet. If you haven’t heard, there’s a new version of TrixBox, 1.2. And we’ve given it the old college try for a week or two with about that same results pictured in this old comic book. On some platforms, it runs just fine. On others, including our VMware for Windows machines, it’s a nightmare. The voice synthesis system is again broken, freePBX can’t reload Asterisk without completely shutting down and restarting Asterisk (amportal restart). And there appear to be all sorts of interrupt or timing problems that we’ve never seen before … going back to Asterisk@Home 1.2. We attribute many of the problems to a new version of CentOS and Asterisk, both of which are bundled into the TrixBox 1.2 package, but who knows. What we do know is TrixBox 1.2 is a little too Bleeding Edge for our taste, and most of the Nerd Vittles goodies that depend upon the Flite speech engine no longer work on many machines. We have seven systems in our testing lab (aka home) so it’s not like we haven’t tried. And others are reporting much the same thing. Our testing primarily focused on VMware builds for Windows implementations using the .iso image, and that was a total bust. So, at least for now, TrixBox 1.1.1 and the Nerd Vittles VMware Build are the way to go if you want to run a TrixBox system and Asterisk PBX on your Windows Desktop. And, steer clear of the trixbox-update shell unless you’re damn sure you have a system that is compatible with the new 1.2 code. How do you know? Beats me. With that disappointing intro, we thought we’d step back this week and cover some tips and tricks for configuring your TrixBox 1.1.1 system for the real world. And, if you’re one of the lucky ones with a machine that works reliably under 1.2, most of this stuff should work for you as well.

One other comment about TrixBox 1.2, and we’ll shut up about it. Andrew Gillis almost single-handedly puts these TrixBox builds together. And he does an incredible job with it. The issues that sometimes arise are rarely of his making. It’s usually a bug in a product he’s bundling that causes the bundle to come down like a house of cards. So, just to be clear, these problems are not of Andrew’s making. We’re confident that he put together the 1.2 build with the same attention to detail that he always employs. It just happens that this time we ended up with a rotten apple somewhere in the mix. Within a couple weeks, someone will find the culprit and there will be another clean build without the problems. Having said all that, these problems do highlight the need for Andrew to consider opening up the development process a bit so that he can get some talented assistance. Folks can’t live without a phone system for several weeks while bugs are sorted out. And, unfortunately, the old adage still applies: “You can always spot the pioneers by the arrows in their backs." The arrows in our back account for the brevity of this week’s column. Our apologies!

freePBX Feature Codes. Thanks to freePBX, your TrixBox system comes with dozens of PBX bells and whistles. These include call forwarding of many flavors, call waiting, zap barge, do not disturb, gabcast, talking clock, talking extension numbers, and more. For a list of the codes, open freePBX with a web browser (http://yourIPaddress/admin/) and navigate to Setup->Feature Codes. You also can disable any of them if you’d like.

Transferring an Answered Call to Another Extension. To transfer a call you’ve already answered, press the pound key (#), and then dial the extension number using your permissible dialplan dial strings. This can be another extension, or it could be an outside call (e.g. to your cellphone) as long as your dialplan supports it.

Transferring an Answered Call to Your VoiceMail. To transfer an incoming call that you’ve already answered to your voicemail, press the pound key (#), and then dial your own extension number.

Transferring an Unanswered Call to Your VoiceMail. Suppose you want to not answer a call and immediately transfer the call to your voicemail. Just press the Hangup button with X-Lite or with a cordless phone connected to an SPA-1001. Note: You must have voicemail activated on the extension that’s receiving the call.

Retrieving Your VoiceMail Messages. If you want to access voicemail messages for the extension from which you are calling, just pick up the phone and dial *97. To access voicemail for any other extension, pick up any phone and dial *98. You’ll be prompted for the voicemailbox number and password for the desired account.

Returning VoiceMail Message Calls With One Button. Calling back a person that left you a voicemail is easy. When setting up VoiceMail for the extension, be sure to include callback=from-internal in the vm-options field in freePBX. Then, once you listen to a voicemail message, choose advanced options (3) and then option 2 to return the call.

Putting Calls on Hold with Asterisk. You can easily put any call on hold with Asterisk by quickly pressing and releasing the switchhook or flash button. Your caller will get your default Music on Hold until you return to the call by pressing the flash button again.

Communicating with the freePBX Developers for Online Support. If you have a problem that you can’t find an answer to after Googling and visiting both the TrixBox and freePBX forums, you may want to take advantage of the IRC client built into freePBX. Just open up freePBX with your browser and navigate to Tools->Online Support. Then click Start IRC and enter a nickname that’s unique to you. When prompted for username and password, enter maint and the password you assigned when you set up your system. HINT: The reigning PBX King lives in Australia so evenings (Australia time) are a good time to pose hard questitons.

AsteriDex for Smartphones. For those of you using our AsteriDex RoboDialer for Asterisk, we’ve got a new piece of code for you if you happen to have a smartphone or PDA phone and want access to your AsteriDex database for dialing. You’ll need something like a Blackberry, 6700 smartphone, Treo 650 or 700 that includes a real web browser (not WAP!) and web service from your cellphone provider. Install AsteriDex using the link above. Then open up port 80 on your firewall and point it to the private IP address of your TrixBox system so that you can access the web server running on your TrixBox system. To install the software, log into your server as root and execute the following commands:

cd /var/www/html
mkdir cellphone
cd cellphone
wget http://nerdvittles.com/wp-content/cellphone.zip
unzip cellphone.zip
rm -f cellphone.zip
chown asterisk:asterisk index.php
chmod 775 index.php

Now you can access your AsteriDex database entries from the web browser on your cellphone by pointing the browser to: http://PublicIPaddress/cellphone/ or http://AsteriskFQDN/cellphone/. If your smartphone is fairly "smart" you can also dial any number in your AsteriDex database by simply clicking on the desired phone number. At least with Sprint cellphones, you also have the option of sending a text message to anyone with a cellphone by clicking on any phone number entry. Please note that these outbound calls will be made directly through your cellphone provider, not through your Asterisk system (as was the case with the original AsteriDex web-dialing project). The reason is pretty simple. Most smartphones don’t support simultaneous use of your web browser and phone so there’s no way for your Asterisk box to call you without getting your voicemail. Yes, we did try it!

Additional Tips and Tricks. Have you got a favorite trick you use with your TrixBox system? Add it as a comment below and share it with the rest of your nerdly brethren.

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.

Want More Projects? For a complete catalog of all our previous Asterisk projects, click here. For the most recent articles, click here and just scroll down the page.

Headline News for the Busy Executive and the Lazy Loafer. Get your Headline News the easy way: Planet Asterisk, Planet Gadget, Planet Mac, and Planet Daily. Quick read, no fluff.

Got a PDA or Web-Enabled Smartphone? Check out our new PDAweather.org site and get the latest weather updates and forecasts from the National Weather Service perfectly formatted for quick download and display on your favorite web-enabled PDA, cellphone, or Internet Tablet. And, of course, it’s all FREE!


  1. FWIW, removing the trixbox supplied asterisk and compiling a nice fresh from source fixes all of the problems. I’m somewhat tempted to roll up my own asterisk RPM and try to figure out some way to stick it into the FreePBX online updates.


    [WM: Problem-solving RPMs are always appreciated! And, for those that don’t know, Rob’s claim to fame is an open source product called freePBX.]

  2. The coolest thing that I have done with AAH/Trixbox is to implement an x10 interface to control my home lights. I used an x10 firecracker available for very cheap and a program called bottlerocket http://www.linuxha.com/bottlerocket/ to add x10 capability to Asterisk. I setup extentions that run scripts to turn lights on and off in my house. I then went as far as implemnting the bluetooth proximity to turn on and off lights at certain times in the evening by using a cron job. I love Asterisk!

  3. Two questions:
    1. I want to follow Rob’s advice. How do I remove asterisk and all its files from my TB system?
    2. If I compile from source will the trixbox-update script still work in the future?

  4. As part of an install of ZAPHFC drivers on my box a recompile of Asterisk sorted out all the problems. However, my carefully backed up config files and databases were all not readable – initially.

    I also had problems with the online module update indicating that I did not have the latest version of FreePBX – a quick visit to the site and following their instructions sorted that one out too.

    I did manage to bodge the old backed up database settings back into the box, and they worked – mostly, but in the end I had to resort to a complete virgin install followed by install-ZAPHFC (reverting to asterisk 1.2.10).

    So far, touch wood, is stable and working as expected. Have not noticed any of the symptoms descibed elsewhere. So perhaps not a complete house of horrors, but certainly a bit too cutting edge for a proper production box I think.

    Off now to look into the x10 stuff Ryan mentions above, looks cool!

  5. If you’re using X10 (or Insteon) with a Mac, the new beta of Indigo is hard to beat in terms of functioanlity and slickness. For more info check out http://www.perceptiveautomation.com/indigo/index.html. I’ve got it and a Linux based asterisk install tied together via ssh and AppleScript.

    The "on the phone" light (triggered in asterisk, dispatched to Indigo before and after the call) comes in handy with the kids and my home office line. XTension is another alternative with about the same potential, but Indigo seems to be pushing the boundaries and has always felt more polished and it has been much more stable in my experience.

    Keep the vittles coming!

  6. I see you still haven’t registered your test line number in any of the ENUM services. My guess is you get a cut of the PSTN charges and your test line is simply another revenue stream. Seems to me you used to show people how to NOT spend money on their phone calls.

    [WM: Sorry to disappoint you but we provide all the sample numbers to demo our "creations" with no financial benefit to us. A "cut of the PSTN charges"? What does that mean? You think we get money when someone calls our PSTN numbers? Great idea. If you find out a way to make that work, please share it with the rest of us so we can all share the wealth. ]

  7. Great site and because of it I have a very good working version of Trixbox 1.1.1. However, I notice that you are unhappy with the next version just released and you wondered if it was centos, trixbox or the build or the combined cd package.

    I built my trixbox, not from the CD package but from a full everything base centos 4.2 installation to which I added trixbox and I have kept the centos updated independantly of any asterisk trixbox updates. So far all is working very well but I am reluctant now to upgrade the trixbox asterisk part following your article and I will wait for any issues to be sorted out. Just wanted to say that I don’t think the problems you describe are in the Centos area.


    P.S. I use my CentOS PC also for testing other software, as a media player, for browsing the web on my TV, and it runs a version of the old mrhouse home automation software.

    [WM: Thanks for your note. We’re getting closer to finding the problem, I think. We also have done some further testing. Starting with a base install of TrixBox 1.1.1 from our ISO snapshot that was used to build the VMware image, we manually upgraded to Asterisk 1.2.11 using the 2.6.9-34.0.2 kernel with no problems. But then we tried two new VMware builds using Clark Connect (just to make sure this wasn’t a problem in Andrew’s TrixBox builds) and guess what. Builds using ClarkConnect 3.2R1 with the 2.6.9-27 kernel and Asterisk as well as ClarkConnect 4 with the 2.6.9-42 kernel and Asterisk BOTH FAIL with the choppy sound problems exactly like TrixBox 1.2. It would be easy enough to blame this on Asterisk except TrixBox 1.2 used Asterisk 1.2.11. So it’s something in the interaction between the two latest Asterisk builds and latest Linux kernels, both of which may be increasing the processor load to the point that VMware simply no longer works reliably on machines which previously were acceptable. What we have ruled out, I think, is that this was somehow caused by Andrew’s building skills because the exact same symptoms appear in both of the ClarkConnect builds which do much the same bundling that Andrew does.]

  8. Ward, apparently there’s been a whole pile of asterisk/zaptel updates come through via RPM today, that seems to fix the issues that people were having with with originally distributed rpms. You might want to try an update and then check it again.

    Also, I should point out, you are the one who is personally responsible for convincing me to change the front page of FreePBX.org to WordPress (after thinking about it for a while and umming and aahing – and I’m pretty happy with how it looks! So thanks.

    [WM: I will try the updates today! FYI: I shun being personally responsible for much of anything, but WordPress is a pretty neat product. Glad you like it. Here’s a pretty cool neighborhood web site that we put together using WordPress, and it, too, has worked pretty well.]

  9. I’ve tried the latest yum updates mentioned above by Rob and I’ve gotten exactly the same results as before, i.e. lousy, choppy audio with Allison prompts, voicemail messages (creating and listening), and all Flite apps. Haven’t gone searching for further bugs because this one’s a deal breaker in my book. I’m going to play with some other toys for a bit until this gets sorted out. I’m just tired of wrestling with it. It still looks like an Asterisk timing problem to me. But I’m amazed that something this bad has slithered into an otherwise stable product, especially this far down the road. Sure makes us want to hurry to install 1.4. Oh well.

    The good news: TrixBox 1.1.1 works and works well on most platforms including VMware builds so there’s really no pressing need for the later versions of CentOS or Asterisk except for the one voicemail bug, and there are published workarounds for that. And, of course, freePBX can be brought current using the 1.1.1 build with minimal effort which we’ll try to cover in an article shortly.

  10. Looks like Ward’s been testing – I was going to post up that the choppy audio issue isn’t strictly on trixbox. Ran a clean install on debian and dropped freepbx on and have the same issue with 1.2.12. Bummer, really as this makes the build virtually unusable. I’m still trying to figure out what could be causing it but it’s a bit over my head. Something though seems to be eating up the processor (& this isn’t a p3 500 so what gives? Xeon 2.6ghz with 2gb ram) because you’ll notice that on certain occasions the audio is perfect. A simple reboot while the audio is playing demonstrates that it is capable of playing perfect audio. As the system begins to kill processes the "Voice" picks up and gets back to normal speed & quality.

    Please (pretty please?) – if you do happen to find a workaround on this – do share!


Comments are closed.