VoIPowering Your Office: Trixbox, the Complete PBX-in-a-Box
It's been awhile since we had a look at Trixbox, which used to be Asterisk@Home, and which was really a business-grade PBX, not a hobbyist's toy as the name implied. Then it changed to Trixbox, which to me says "tasty unnaturally-colored sweet crunchy cereal" and not "business-grade PBX." Don't let the name get in your way; whatever you want to call it, it's a powerhouse. Trixbox 2.2 was released in March 2007; a noteworthy release cram-full of improvements.
The transition away from Asterisk@home was bit bumpy; the project moved from http://asteriskathome.sourceforge.net/ to Trixbox.org and all of the forums and help documents on the old Asterisk@Home site were left behind. New documentation was slow to develop, and the new forums were mostly posts from puzzled users wondering where everything went.
Then the fine folks at Fonality acquired Trixbox, hired founder Andrew Gillis, hired Kerry Garrison as Product Manager, and once again there is all manner of good documentation and helpful forums and mailing lists. But that's not all. A number of interesting things are happening:
- The Trixbox Appliance
- Paid support
- Flash tutorials
- The Trixbox Buyer's Club
- Training and certification for resellers
The IP-PBX landscape is quite cluttered. There is more software, hardware, free and commercial service providers, startups, and resellers than you can count. The Asterisk software IP-PBX spawned a genuine revolutionTrixbox is based on Asterisk. Trixbox is far more than re-packaged Asterisk; it's a big integrated bundle that includes the FreePBX graphical administration interface, the HUDlite user's interface, SugarCRM (customer relationship management), and Trixbox 2.2 even gives you the option of using the AsteriskNOW graphical interface.
A considerable amount of thought and work has gone into overhauling the Web interface. It has been completely redesigned, reorganized, and streamlined.
The first thing that caught my eye was the Yum repository manager. Something I have personally invested considerable energy in grumbling about over the years is that configuring software download repositories requires too much black magic, especially on Red Hat-type Linux distributions. (Trixbox runs on CentOS, the excellent Red Hat Enterprise Linux clone.) The URL syntax is confusing, and you have to visit your distribution Web pages to find lists of download mirrors. So as I have oft grumbled, why not just make a nice checklist of prefab mirrors? Then all you have to do is manage click checkboxes instead of going off on mad download mirror hunts. Well, in Trixbox 2.2 you get that. You choose from three different options: stable, beta, or experimental. Easy peasey.
My favorite page is the at-a glance system status. This shows network load, memory and disk statistics, and user activity, all on a clean, easy-to-read page.
Other nice labor-saving pages let you generate call data reports with a click, and provide good wizards for setting up your accounts with VoIP service providers. IP phone integration is getting better all the time, and provisioning phones is almost plug-and-play. Hardware support continues to improve, and Trixbox supports Digium, Sangoma, and Rhino interface cards.
Installing or upgrading Trixbox
Installing Trixbox from scratch is easy; just download your chosen image, burn it to a CD, boot it up and let 'er rip. If my aging memory is remembering correctly, Trixbox was the first Asterisk "appliance"; the first all-in-one implementation that included the operating system and that provided a nearly intervention-free installation. The trixbox-2.2.iso overwrites your entire hard drive, installs CentOS Linux, and all the Trixbox goodies. trixbox-2.2-vmware.zip contains a VMWare guest image that runs on Windows. This is fine for testing, but it's probably too slow for production systems.
Upgrading from Trixbox 2.0 is now different than in the olden days. Don't
use the trixbox-update.sh upgrade script! If you do you will be sorry!
First, back up /etc/asterisk. /etc/trixbox, and /var/lib/asterisk/sounds,
assuming you have custom soundfiles you don't want to lose. Then use Yum:
[root@asterisk1 ~]# yum update
This could take some time; mine downloaded 186 megabytes of new packages. After it's all finished, reboot and then run this command:
[root@asterisk1 ~]# yum install tbm-GUIcore
This installs the updated Web interface, which you may now see by logging into it. You should see the tasteful pale green theme, which is similar to the Trixbox.org theme.
If this is a fresh installation, you have three passwords to change right away: the CentOS system password, which is the root password you set during installation, the Web administration password, and the MySQL password. Try this script for managing all of your passwords at once: setup-passwords.
Trixbox 2.2 is a bit more modular than previous versions; HUDLite and phpmyadmin are not installed by default, and there are a number of FreePBX modules that are not installed. You can manage all of these from the Web interfaces.
Next time we'll take a quick look at some post-installation chores, and investigate the possibilities of basing a business on Trixbox.