How To's & Linux & Trixbox 08 Jul 2008 09:25 am

trixbox Appliance IP forwarding

trixbox Appliance

Ok, so I’ve been doing a lot of testing with a trixbox Appliance running trixbox Pro CCE v2.0. The Appliance is configured with a Sangoma A200 (4 FXO) card, an onboard NIC, and a 4 port NIC card. By default, the onboard NIC is the WAN, and the 4 port NIC card is the LAN. In my case, I have the onboard NIC plugged into my LAN, and I am using the 4 port card as a separate LAN for my phones.

One of the issues I ran into was that I couldn’t get to the web interfaces of my phones through my Appliance. I could ping the ‘WAN’ side of my Appliance (the onboard NIC), but none of my traffic could get through to the back-end LAN. Phones were working fine, but sometimes I need to get to their GUIs…and I don’t want to have to put a computer on the other side of the Appliance in order to do so.

To do this, I had to enable IP forwarding which is turned off by default. This is done in the sysctl.conf file…but I’m getting ahead of myself. First, I had to make sure that my NICs were properly set up.

/etc/sysconfig/network-scripts/ifcfg-eth0:

DEVICE=eth0
ONBOOT=yes
IPADDR=192.168.200.18
NETMASK=255.255.255.0
BROADCAST=192.168.200.255
BOOTPROTO=static

ifcfg-eth0 is my onboard NIC, or WAN side of the Appliance.

/etc/sysconfig/network-scripts/ifcfg-eth1:

DEVICE=eth1
ONBOOT=yes
IPADDR=192.168.201.18
NETMASK=255.255.255.0
BROADCAST=192.168.201.255
NETWORK=192.168.201.0

ifcfg-eth1 is the LAN side of my Appliance. Notice that there are a couple of differences…NETWORK for instance is only in eth1…it is my understanding that the important pieces are DEVICE, ONBOOT, IPADDR, and NETMASK. The other stuff can be there or not…defaults are assumed if they are not there.

The next file I have to edit is /etc/sysconfig/network:

NETWORKING=yes
GATEWAY=192.168.200.254
HOSTNAME=trixbox124282
DOMAINNAME=mydomain.local
GATEWAY=192.168.200.254
GATEWAYDEV=”eth0″
FORWARD_IPV4=yes

This is where I set up my gateway, and hostname/domain name. Here’s something interesting…notice the line that says FORWARD_IPV4=yes? It doesn’t appear to do anything in actuality…maybe someone with more Linux networking experience than I have understands why…but when I added that line, I thought for sure my IP forwarding issue would be resolved…not true. But…I left it in there anyway just to be safe.

The conf file that DOES matter when it comes to IP forwarding is /etc/sysctl.conf. First, let’s run a command to see if IP forwarding is turned on (from the Linux CLI):

/sbin/sysctl net.ipv4.ip_forward

You should get something like:

net.ipv4.ip_forward = 1 (or 0…0 means IP forwarding is off…1 means it is on)

By default, you should get the value of 0. To fix it, edit /etc/sysctl.conf.

————————————–
# Kernel sysctl configuration file for Red Hat Linux
#
# For binary values, 0 is disabled, 1 is enabled. See sysctl(8) and
# sysctl.conf(5) for more details.

# Controls IP packet forwarding
net.ipv4.ip_forward = 1

# Controls source route verification
net.ipv4.conf.default.rp_filter = 1

# Do not accept source routing
net.ipv4.conf.default.accept_source_route = 0

# Controls the System Request debugging functionality of the kernel
kernel.sysrq = 0

# Controls whether core dumps will append the PID to the core filename.
# Useful for debugging multi-threaded applications.
kernel.core_uses_pid = 1
—————————————-

The first setting (net.ipv4.ip_forward) under ‘Controls IP packet forwarding’ needs to be set to 1. That’s it.

Save and close the file, and then do ’service network restart’ and you should now be able to get across to the other side of your Appliance.

Keep in mind that there also may be some routes that need to be on your network so that it knows where to go for the other LAN.

[Slashdot] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

How To's & Linux & Trixbox & mysql 17 Jun 2008 02:52 pm

trixbox CE v2.6 security settings

So, when you log into trixbox CE v2.6 and go to ‘PBX Settings,’ you are told that your default admin and mysql passwords should be changed…here’s how to do it. A cleaner, HTML version of these instructions can be found at http://sureteq.com/asterisk/trixbox_CE_v2.6_security.htm.

Change default passwords:

Let’s change our passwords. We need to do this at the Linux CLI.

Update maint password by typing ‘passwd-maint’ at the command line. Enter the password twice.

Update Web meetme password by typing ‘passwd-meetme’ at the command line. Enter the password twice.

FreePBX admin pass:

To change the FreePBX manager pass, you need to edit two separate files and put in the new password.

nano /etc/asterisk/manager.conf

Find ’secret = amp11′ under the [admin] section. Change ‘amp11′ to your new desired password. CTRL+X followed by ‘Y’ to save and exit.

Now, we need to edit the /etc/amportal.conf to use our new password.

nano /etc/amportal.conf

Find the line that says ‘AMPMGRPASS=amp11′ and change the ‘amp11′ to the new password you just set. CTRL+X followed by ‘Y’ to save and exit.

amportal restart

*** NOTE: I have found out the hard way that FreePBX does not like having an exclamation point (!) in the admin password. There may be other special characters that it doesn’t like also.

MySQL passwords:

Update the MySQL asteriskuser password by doing the following at the Linux CLI:

mysqladmin -u asteriskuser -p password new_password_here

Replacing ‘new_password_here’ with your desired password. When you hit ‘Enter’ you’ll be prompted for a password…enter in the default password of ‘amp109.’

Now, we need to edit the /etc/amportal.conf to use our new password.

nano /etc/amportal.conf

Find the line that says ‘AMPDBPASS=amp109′ and change the ‘amp109′ to the new password you just set. CTRL+X followed by ‘Y’ to save and exit.

***NOTE: In the amportal.conf, there are TWO places to change the amp109 password…near the top of the file, and at the very end. The one at the top is commented out, so changing that one doesn’t really do anything…but to be consistent, make sure you change the password in both places.

You will also need to update the password in the /etc/asterisk/cdr_mysql.conf file for call detail records (cdr).

nano /etc/asterisk/cdr_mysql.conf

Find the line that says ‘password=amp109′ and change the ‘amp109′ to the new password you just set. CTRL+X followed by ‘Y’ to save and exit.

service mysqld restart
amportal restart

*** NOTE: I have found out the hard way that FreePBX/MySQL does not like having an exclamation point (!) in the password. There may be other special characters that it doesn’t like also.
It is also a good idea to change the default mysql root user password. To change the default mysql root password, do the following:
mysqladmin -u root -p password new_password_here

Replacing ‘new_password_here’ with your desired password. When you hit ‘Enter’ you’ll be prompted for a password…enter in the default mysql root user password of ‘passw0rd’ (with a zero)

You will also need to update the password in the /etc/asterisk/cbmysql.conf file for meetme settings.

nano /etc/asterisk/cbmysql.conf

Find the line that says ‘password=passw0rd’ and change the ‘passw0rd’ to the new password you just set. CTRL+X followed by ‘Y’ to save and exit.

service mysqld restart
amportal restart

[Slashdot] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

Hardware & Trixbox 21 May 2008 07:26 pm

All about Aastra

So, I haven’t had much experience with Aastra phones, but for years now, I have heard that they are great phones, and since they are a trixbox Platinum certified partner, I have really wanted to try them out for some time now. Well…I finally got my hands on an Aastra 9133i, a 480i, and a 55i, so let’s set ‘em up, tear ‘em apart, and generally find out all about Aastra…

Aastra 9133i Aastra 9133i

The first phone I tested out is the 9133i. This is what I guess is considered their entry level phone, or more accurately, ‘standard’ phone. It is what an employee without any special telephone needs would have sitting on their desk…very basic 3 line phone. The back has 4 ports, one for the handset, one for a headset, and a two port switch (from LAN, to computer). It has the capability to use PoE inline, or with a PoE injector sold separately, and retails for about $124.99. Initial impressions are positive for an entry level phone. It definitely looks more professional than the Grandstream GXP-2000, and has a nice, well lit 3 line display which pops up at an angle for easy reading.

Since Aastra is a trixbox Platinum Certified partner, setup of this phone in trixbox Pro was a snap. I plugged it into the network, and it automatically DHCP’d an IP address, updated itself to the latest firmware, and configured itself as extension 102 on my trixbox Pro (the next available extension). Basically, at that point, you simply edit the extension in ‘Extensions > view extensions’ and personalize it for your user. You can then reboot the phone, and it picks up all of the settings via trixbox Pro’s TFTP server.

Manual configuration is pretty simple as well. Through the phone, you just hit ‘Options’ and then use the 4 arrow keys to navigate through the different options…it is fairly intuitive, and easy to understand if you already have a standard knowledge of SIP and network settings. The default admin password (needed to change some of the settings) is ‘22222’.

The web interface can be accessed via the phone’s IP address (which can be found on the phone, option 11 Phone Status > Option 1 Network port 1). The default username / password is ‘admin / 22222’. The initial screen shows the phone’s status and firmware versions, and the menu down the left hand side clearly lays out all of the phone’s options.

An interesting note, this phone has 3 ‘line’ buttons, and 7 configurable softkeys. The softkeys are the blank spots in the label on the right hand side of the phone. Going from top to bottom, trixbox Pro automatically configures these as follows:

Soft key 1: voicemail (8555 using line 1)
Softkey 2: do not disturb
Softkey 3: open
Softkey 4: open
Softkey 5: line appearance 4 (extension)
Softkey 6: line appearance 5 (extension)
Softkey 7: line appearance 6 (extension)

If you want to add a line appearance or speed dial that uses one of the softkeys, this can be done in the phone’s web GUI. Connect into the GUI and click on ‘Programmable Keys.’ Then, choose one of the open spots and select BLF (Busy Lamp Field - for another extension’s line appearance) or speed dial from the drop down box, and set the ‘Value’ field accordingly. For speed dial, you need to put the phone number in the format that you would dial the number from your phone (ie. with a 9 for an outside call).

Pros:

Clear, well-lit display.
Great price.
Super simple configuration.

Cons:

Handset cord plugs into the opposite side of the phone.
Physical assembly of the phone may be a bit tedious if you have a large number of these phones.

Aastra 480i Aastra 480i
The first thing that struck me about this phone is how great it looks…it’s got a HUGE display, and would look impressive sitting on anyone’s desk. This is Aastra’s (what I call) ‘executive’ phone, and retails for about $164.99. Like the 9133i, it can run on the power adapter, with inline PoE, or with a PoE injector. When I plugged the phone into the network and powered it up, it automatically got a DHCP’d IP address, updated its firmware from trixbox Pro’s TFTP server, and showed up in ‘Extensions > phones’ just like the 9133i. Very simple plug-n-play operation. It also automatically came up as the next extension in my list (x103). Right away, I see that the upper-left two softkeys were configured for voicemail and DND.

The first thing I do is go into ‘Extensions > view extensions > 103’ and set up my voicemail and other settings. Really, at this point, I’m done, but I want to add a couple of line appearances to customize it a bit further. To do this, I need to go into the 480i’s web GUI. The default username and password for the web GUI is ‘admin’ and ‘22222’. The configuration GUI looks very similar to the 9133i’s, which isn’t surprising, but is also great for administration…you don’t have to learn a new GUI if you’re already familiar with other Aastra phone GUI’s.

To configure the softkeys, click on ‘Softkeys and XML’ in the left hand menu. For softkey 3, select BLF to add a line appearance. Since this is a softkey, it gives you two fields…label and value. The beauty of this is that you can personalize the line appearances. Instead of just having an extension number, if your CEO’s is George at extension 100, you can put ‘George’ in for the label, and set the value to 100 to monitor that extension…very slick.

One other item of note…you can program up to 20 softkeys. When you get past softkey 5, a ‘more’ option appears as the 6th softkey. Pressing ‘more’ takes you to the next page of softkeys.

Pros:

Great big display.
20 programmable softkeys.
Great sounding speakerphone.

Cons:

Can be tedious to set up if you are doing a large number of these phones, but better than the 9133i.
The BLF indicators in the softkeys aren’t real clear…but chock that up to available pixels on the screen.

Aastra 55iAastra 55i

That Aastra 55i is Aastra’s receptionist-level phone and retails for about $189.99. This is a really sleek looking phone, and has a great, easy to see backlit main display. You can also add on up to 3 Aastra 536M sidecar modules ($142.49 each) with 36 line appearances each for a total of 128 line appearances if you want. That’s a lot of lines to manage, but I’m sure your receptionist is top notch.

Same easy trixbox Pro plug-n-play configuration as the 9133i and 480i. The phone downloaded the latest firmware automatically and came up as extension 104. After customizing the extensions in the trixbox Pro, this phone was ready to rock ‘n roll. Love it.

I then decided to program some of the softkeys, and realized that this phone has a lot more softkey options that receptionists would need such as paging/intercom functionality, park, pickup, and phone lock. The phone lock feature is pretty cool…it allows you to lock your phone (obviously), and the phone will not be able to make calls until it is unlocked (the default unlock code is 22222). Even though it is locked, you can still configure special numbers that the phone cal still dial in the ‘phone lock’ settings in the phone’s web GUI (such as 911, or perhaps some internal extensions only). It would be nice if this feature could use wildcards for all internal extensions (such as 1xx), but it doesn’t look like it has that capability…regardless…it’s a cool feature.

One thing to note about making changes to the 55i in the phone’s web GUI…most settings don’t require a reboot of the phone (unlike the 480i and 9133i). This is great for making changes to your reception phone without missing any calls. The only thing that required a reboot was the BLF functionality…the phone didn’t actually require it, but the little phone icons didn’t work until it was rebooted.

Pros:

Very sleek looking.
Beautiful backlit display screen.
Changes can be made on the fly.
Extra features not included on the other standard Aastra phones.

Cons:

More expensive than other phones…I wouldn’t recommend this phone except for a receptionist, or for someone who could take advantage of the extra features such as phone locking (for instance, if only certain extensions in your company can call international…you could lock them so employees can’t call their mom in England at will).
The hardkey label installation (top of the phone) is a bit clunky, but stays in place once you get it right.

In conclusion, these phones are great, but the best part about them is their ease of setup in trixbox Pro. They are truly plug ‘n play, and you can’t get better than that for ease of administration. The 480i would be my recommended choice out of the three that I reviewed…or the one that I would most like to keep on my desk. The 9133i is great for end users who don’t require any special functionality or perhaps call centers, and the 55i is perfect for receptionists. Way to go Aastra…great product line!

[Slashdot] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

Asterisk & How To's & Trixbox 12 May 2008 02:00 pm

trixbox Pro v2.0 (all editions) Complete Setup Guide for Small Business

Hey everyone,

I have just finished a new document detailing the installation and configuration of trixbox Pro v2.0. You can see the new document here: http://sureteq.com/asterisk/trixbox_pro_v2.0.htm

Enjoy! Comments/suggestions are always appreciated!

-Schw00d

[Slashdot] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

How To's & Linux 26 Apr 2008 03:22 pm

HOW TO: Secure RSA Authentication for Linux

So, like most folks out there, I’m concerned with security, but I love having remote access to servers so that I can work from anywhere. Opening up SSH (TCP port 22) is fairly common when administering trixbox, or any Linux server for that matter, but leaving it open also increases your chances that someone can exploit that service and compromise your server.

One way to stop a hacker from having their way with your SSH port is to disallow password authentication, and allow RSA public/private key pair authentication only. A key pair in conjunction with a strong passphrase brings the chances of being compromised to almost zero.

I have posted a new article on how to create your public/private key pairs in two popular SSH programs (PuTTY and SecureCRT), how to install the public key on your Linux server, and finally, how to configure SSH to accept key pair authentication only.

Configuring secure RSA authentication for Linux

Enjoy!

-Schw00d

[Slashdot] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

How To's & Trixbox 25 Apr 2008 09:50 am

HOWTO: Set up a Voipjet trunk in trixbox Pro

Hey everyone,

So I’m pretty jazzed about trixbox Pro, and I was able to successfully set up my Voipjet outbound trunk yesterday…for anyone interested, I’ll post the settings here.

First, log into your trixbox control panel at http://cp.trixbox.com. Then click on Options –> Voip. Add a new trunk and use the following settings:

Route name: voipjet
Username: #### (your Voipjet username)
Password: ############## (your Voipjet password)
Provider: Other / IAX2
Register: No
Server: west.voipjet.com (adjust this to the voipjet server closest to you)

Under Advanced, you’ll want to check the following:

Direction: Out (peer)
Qualify: 5000ms
Authentication: md5

All of the rest of the settings should auto-fill for you. See the screenshot:

Trixbox Pro Voipjet trunk setup

That’s it…pretty easy.

-Schw00d

[Slashdot] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

Asterisk & Trixbox 23 Apr 2008 10:56 pm

FtOCC Tech certification class review

Hey everyone,

I just spent the last 3 days at Fonality’s FtOCC Tech certification course right here in sunny Los Angeles. I was pretty excited about this course as I knew that it dealt mainly with trixbox Pro, which I have had next to no experience with so far. I am mainly experienced with the stand-alone CE version of the trixbox product, so it was great to get a good inside view of the other trixbox.

trixbox Pro in a nutshell is a Hybrid-Hosted(TM) PBX solution. What does that mean? Basically, a customer puts the trix plus any PSTN connectivity cards necessary at their location…so far, architected exactly like CE…but the Hybrid-Hosted part is where we start to see some definite differences. The configuration GUI (FreePBX in CE, but Fonality’s proprietary GUI in Pro) is NOT hosted at the customer premise, but rather at Fonality. When changes are made to the GUI at Fonality, it pushes the changes to the trixbox Pro. There are some real advantages for customers with this setup…mainly that all configuration is stored securley, and therefore backed up regularly (except for all recordings, voicemails, etc.). This makes disaster recovery a breeze if best practices have been followed. In addition, Fonality’s servers hold all of the CDR and ACD data meaning that reporting load is offloaded from your server. This frees up CPU cycles allowing higher call volume…pretty damn cool.

Day 1 started out with the standard course overview stuff, and went into a description of the differences between CE and the 3 flavors of Pro. The three flavors are Standard Edition (SE), Enterprise Edition (EE), and Call Center Edition (CCE). SE is free, EE is $9.99/user per month (with a user essentially being any endpoint device), CCE is $19.99/user per month. There is volume pricing available I’m sure, but we didn’t get into what the different tiers are. We also went over what hardware is certified for use with the Pro systems…some hardware is Platinum certified (read: works perfectly), while other hardware is Gold certified (read: yea it works…but…eh…we’d much prefer you use the Platimum certified stuff). I’m not sure whether there are agreements in place with hardware vendors to make themselves Platinum certified or not, but it seemed to me that Fonality has loyalty towards vendors (Sangoma, Aastra, Polycom) that are MOST responsive to it’s development needs. Cisco hits the bottom of their list (just like mine)…so that logic works fine for me. I’d rather see trixbox form STRONG relationships with reliable hardware vendors rather than trying to mold itself to fit with the more popular hardware…fine by me. The only thing I would have liked to see would be Digium as a Platinum certified vendor…but I guess Fonality and Digium don’t quite see eye to eye on things AsteriskNow! . Actually, I shouldn’t use dated references…looks like AsteriskNow is defunct and they now have some sort of Switchvox appliance…I haven’t really been keeping up with them. But, bottom line is that Digium and Fonality are competitors, so I’m not surprised that Digium isn’t going out of their way to make Fonality’s product successful.

Later in day 1, we got into some of the new features of trixbox Pro v2.0…and they are definitely slick. I had to sign an NDA so I hope I don’t get sued about any of this, but what the hell. The feature it seemed they were most proud of is Find Me. It works a lot like Follow Me in CE does, but it is user customizible…each extension on the system has a user GUI where each user can set up their own Find Me settings. Set it to call your extension, then float over to your receptionist…then to your cell phone…then to your mobile…then, if no answer, back to the trixbox voicemail system. It even gives you the option of receiving the call on your mobile and accepting or denying the call with a star code…if denied, it goes back to trixbox. You can also have callers record their name to make it easier to choose who to hang up on. Another feature is enhanced scheduling (day/night modes, holiday schedules that can span days)…pretty cool, but not too much improved over what has always been there. The latest and greatest also supports BRI and E1 connections which should make anyone living outside of the US pretty happy. The day went on with an in-depth explanation of the Hybrid-Hosted architecture and how we (the resellers) can make the most out of an installation by properly sizing up the environment where we’re going to install Pro.

We also covered each page in the Pro GUI, and there are a couple of items of note in there that really caught my eye. The first was the ‘cards’ section. It gives you a graphical representation of the TDM or PRI hardware in the system, and allows you to configure (per port) the cards in the GUI. Basically, someone finally came up with a real nice looking zaptel/zapata GUI interface…you can still edit the zap files manually…but I was left thinking ‘why the hell would I do that now?’ It reminds me of the time I found Webmin and realized I never had to manually configure Sendmail anymore…phew…what a freakin’ relief. Another feature I liked a lot is the auto-provisioning for Aastra and Polycom phones. I’m a big Polycom guy, but I HATE having to set up a system to work with a large number of phones…it’s REAL tedious. I guess I’m not the only one who feels this way, or else Fonality wouldn’t have spent so much R&D on making it so that you can simply plug these phones into the network and BOOM…you’re done. All of the detection, configuration, extension assignment, TFTP BS…everything is done for you. You can certainly adjust settings later if, for instance, you wanted your phone to be a specific extension…but this is a HUGE advantage for a call center environment where setting up a ton of phones can take a lot of time. I’d rather just bill for the time, let trixbox do the work, and spend the afternoon playing Xbox360 (if any of my clients are reading this, I’m just joking of course ;) ). There were some more cool new features, but just download it and try it out…I’m not going to go into the whole thing unless I do another set of documentation for this flavor of product.

Day 2 was where the ‘Tech’ in FtOCC Tech started coming in. There was an in-depth look at all types of carrier connectivity from POTS lines to PRI’s…and I mean IN DEPTH. It got into the different types of framing/signalling, and even down to the bit level description of a PRI…information that I had never known in all of my years dealing with PRI’s and T1’s…and probably don’t need to know. It was interesting, but unless you’re doing some seriously high level troubleshooting of some sort of crazy problem…you probably won’t need to know it. Let Fonality know this stuff, and I’ll call them when I need help. They then went into another in-depth discussion, but this time, it was all about echo and how to fix it. This is a great part of this class because echo is one of the biggest problems any trixbox tech will face…basically, it’s a real bitch, and if you learn well what the class taught, it only becomes a minor bitch. A+ for including this in the training. I believe they glossed over it in the Admin class, and I had suggested that they spend more time on it…I like to think that my suggestion is why it is now a 2 hour discussion…but then, I like to think a lot of things. The class then got into some more good topics such as how to read the Asterisk CLI (very underrated skill in this field), and some Linux hardware troubleshooting. It was a lot of good info.

I first realized that I was wrong about the ‘Tech’ in Tech training on day 2 when I got to day 3. We went over some seriously hardcore advanced Asterisk/trixbox shit. Pardon my french there, but god damn it was technical…I loved it. We first got into some of the more advanced features as HUD such as URL launching and FonCall. URL launching is pretty slick, and to me, it seems ‘Tivo-ish’ (patent pending on that phrase). By Tivoish, I mean that it’s one of those things that you’d never think you need, but as soon as you start using it, you don’t know what you did without it. I can picture it being especially helpful to sales people, and I think it was designed with them in mind. Basically, you can set up HUD so that when you send or receive a call, it can launch a web application based on specific variables in HUD. For instance, if you use SugarCRM or Salesforce.com, you can use the caller’s name or caller ID to perform an HTTP lookup of the caller. So when Bob Smith calls in, all of Bob Smith’s information and notes are popped up on your screen automatically. Or, if you want, just have it do a Google search on the name or phone number. Alternatively, you can even have it automatically write to the contact (date/time stamp, call duration, etc.) upon hangup. Another Tivoish feature is the FonCall application. It is a FireFox plug-in that basically parses every webpage you visit and highlights phone numbers…mouseover the phone number and you get a ‘click to call’ pop up window where you can (you guessed it)…click to call that phone number. Sounds simple, and it is…it also just happens to be a genius idea, and whomever at Fonality thought of it deserves a raise…or a 6-pack of beer at the very least.

The majority of the day was taught by Mike Joyce, who also did about 1/2 day worth of instruction in the Admin class (not sure if he’s still doing that or not). He really knows his stuff when it comes to Asterisk, trixbox, and all related technologies, and is a really impressive guy. He taught us the basics of AGI scripting…one of the most overlooked and underused features of Asterisk. Just like Linux and Windows, what you can do with AGI exponentially opens up what you can do with Asterisk. I consider myself an intermediate level Linux user because I don’t know much about scripting, and I would NEVER be able to consider myself (or anyone else) an expert unless they were fairly well versed in it…same concept applies here. He showed us how to create a basic script to accept numbers (such as an account number) from a caller and read the data back, store it in a database, retrieve it from the database, and really opened up everyone’s eyes on how powerful this tool can be. It left my head spinning as much from the possibilities this opened up as it did from the technical level of the discussion…this is really high-level stuff, but seriously cool.

As much as I have rambled on about this class, there are a few more points I have to make before I wrap up. I definitely only covered here a small portion of what the entire class encompasses, and it was well worth my time to attend. So here are my final thoughts:

trixbox Pro is really freakin’ cool. I have always been a strong CE believer, but as of tomorrow, I’m going to rebuild my personal CE box as Pro and give it a whirl in a real-world test. Basically, they sold me on it 100%. I’ll start with the free version personally, but I can see myself upgrading to at least SE in the near future because at 10 bucks a seat…it’s worth it. I don’t think I’d be able to take advantage of all of the features of the Call Center Edition, but I would definitely recommend it to clients who have the need. They mentioned that they will eventually have an LCD wallboard-type display for call centers which is something that EVERY call center I have ever worked in has been able to take full advantage of…I’m really looking forward to that. In addition (and being careful not to be violating the NDA here), they talked a bit about what’s coming in HUD v3.0, and it sounds really exciting.

The main instructor, Tyler, deserves some special props for the job he did teaching the course. He is a valuable asset to Fonality, and was extremely knowledgeable about the subject matter, and about Asterisk/trixbox in general. I don’t think he was stumped even once when any of the class know-it-alls would argue with him…he was always able to back up his arguments with real-world experience and case studies, and shared many of my same beliefs about trixbox architecture…the main one being that VoIP over the WAN is not quite ready for prime time. If anyone I run into on the forums or in the real world tells me that VoIP is better than the old school POTS or PRI connections to the PSTN, I know they’re full of it before they even finish the sentence…but this was something that Tyler couldn’t stress enough…and I take my hat off to the guy for it.

Fonality is doing good things for the world. Sound cheesy? Maybe it is…but everyone I have met from Fonality is top-notch, and really believes in their company. You can tell that they aren’t trying to sell you a plate of crap to turn a profit…they honestly care about the community and the customer experience above all, and other companies could learn a thing or two from that strategy. From the experiences I’ve had dealing with Microsoft, Cisco, and tons of other tech companies, it is really refreshing to feel this from Fonality, and I promise you, I’m not on their payroll. I was skeptical just like most of you when Fonality purchased the trixbox project, but now I can see that they had the best intentions all along, and have come a long way in furthering trixbox. Spectacular job guys…rock on.

In conclusion, if you are thinking about taking this class…do it. It’s worth it.

-Schw00d

[Slashdot] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

Uncategorized 11 Feb 2008 04:51 pm

State of the VoIP address 2008

I wrote this article for a different resource, but it applies, so I figured I would post it…enjoy!

-Schw00d
————————————————–

Voice over IP (VoIP), or the process of transmitting voice calls over a computer network is no longer a new concept. VoIP has been around for many years now, and has promised to revolutionize the telecommunications industry for just as long. The question is…has VoIP yet proven itself to be a viable alternative to legacy voice and PBX solutions? The answer is yes and no.

There are many companies such as Vonage and Road Runner now offering unlimited long distance for a small monthly fee for consumers as well as numerous VoIP providers offering calls to anywhere in the world for pennies per minute. In theory, this is a great concept, and has made these companies millions of dollars in revenue for the consumer market. The business market however, is another story. The smallest of businesses can certainly take advantage of this type of solution, but any small to medium business making more than 5 simultaneous calls will have problems switching to VoIP for one main reason. Internet bandwidth is still too small and too expensive. Most small to medium businesses have DSL/Cable or T1 connections to the Internet where the upload speed is no more than 1.5 Megabits per second (Mbps). At 60 Kilobits per second (Kbps) per voice call, this starts to really add up, and when you factor in normal Internet usage and SoHo routers that can’t prioritize VoIP traffic, you will soon be dropping calls and having ‘tinny’ voice quality. This causes employees and customers to become frustrated, and potentially lost business due to poor voice quality and company representation.

That being said, there is one huge advantage to running VoIP in your business, and that is as an alternative to a legacy PBX. PBX systems from companies such as Lucent, NEC, and Mitel can be horrendously expensive even at entry level pricing. Companies can spend in excess of $25,000 for a PBX that has minimal features beyond providing dial tone and voice mail capability. For additional features, or to run a reliable call center, the price can skyrocket to anywhere from $100,000 to $500,000. By replacing a legacy PBX with an Asterisk based solution such as Fonality’s Trixbox system, you can make literally hundreds of calls within your LAN without reduction in voice quality, and you can get premium PBX features such as conference calling, call queuing, an auto attendant, voice mail to email, paging and intercom, and music on hold for a fraction of the cost of a legacy PBX.

When used as what I like to call a ‘hybrid’ PBX system, this solution can be a huge advantage in both features and cost savings. If you use standard (POTS) phone lines or a voice T1/PRI for connectivity to the outside world in conjunction with a VoIP based PBX for your internal call routing and functionality, you are getting the best of both worlds, and an extremely reliable telephony solution. Asterisk-based PBX systems have their foundation in Linux which has already proven itself to be the most stable enterprise level operating system available today. I have had Linux servers in production data centers online for in excess of 400 days straight without a reboot. Linux web servers running Apache serve the largest percentage of web pages on the Internet today. I am completely comfortable using it for telephony as well. Used with the proven reliability of the ‘Ma Bell’ telecommunications infrastructure that has been in place for decades now, hundreds of companies are switching to this type of solution…and the stock prices of legacy PBX providers going into the toilet is proof positive that the paradigm is shifting.

There is one sector where the hybrid PBX solution falls short, and that is for companies with call centers larger than 20 agents. The problem for those companies is not so much the lack of VoIP technology, but rather the lack of management and reporting tools for medium to large call centers. VoIP has tremendous potential in this industry when you consider options such as work-at-home agents, seamless cross-country or international call routing, and cost reduction, however no one has yet created tools robust enough to compete with the agent and call detail reporting and management you can get with a legacy PBX solution. Attention investors! There is a huge opportunity in this market if you don’t mind battling the big boys.

So what does the future hold for VoIP? In my opinion, it can only get better. As we are starting to see Internet connections of 10Mbps and higher coming into homes and businesses, using VoIP for both internal and external voice calls will become a much more viable solution within five years. Once huge fiber links straight to the home and office are commonplace, and Internet bandwidth is sufficient to handle both normal web traffic and tens if not hundreds of simultaneous voice calls with ease, there will be a new paradigm in place to the benefit of home users as well as small to medium businesses. Within our lifetimes I believe we can expect to see the downfall of the legacy telephony infrastructure. Just as analog broadcast television is finally dying out to digital cable, VoIP will reign supreme before we know it.

[Slashdot] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

Uncategorized 02 Feb 2008 03:02 pm

Trixbox CE v2.4 Complete Setup Guide now available!

Hey everyone…I have posted my Trixbox CE v2.4 Complete Setup Guide for Small Business on the Asterisk page. Enjoy!

http://www.sureteq.com/asterisk

-Schw00d

[Slashdot] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

Asterisk & How To's & Octasic 14 Nov 2007 05:12 pm

The wonders of echo cancellation troubleshooting

Ok, so one of the most common requests I get is people complaining about echo. This problem has plagued Asterisk since the beginning, and is one of those annoying types of problems that is intermittant and not the easiest thing to track down.

First things first, if you want to try to completely eliminate echo cancellation from the git-go, do yourself a favor and spend a few extra bucks on a hardware card with a built-in echo cancellation chip. Digium and Sangoma both have models available with a chip from Octasic onboard. Rhino has an echo cancellation daughterboard that can be placed on their T1 cards.

If you already have a hardware card, there are also echo cancellation software modules availabe from Octasic (and others as far as I know…I haven’t heard of any though). These run about $10 bucks USD per channel, and are pretty easy to install (see my other blog post on this topic).

Ok, so what if you already have a card and don’t want to spend any money on software modules, but still want to try to reduce echo? Here’s a few troubleshooting tips.

The first thing I usually do when faced with this problem is try to gauge the extent of the echo problems. I usually try to have the client give me an estimate of how many calls have bad echo in terms of the percentage of total calls. The echo troubleshooting at 10% is much different than it is at 90% echo. At above 50% echo, you most likely have a hardware issue…the primary culprit would be the computer Asterisk/Trixbox is running on. Not enough RAM? CPU too slow for the volume of calls? It’s probably something like that. That’s not the type of echo problem I’m talking about.

I’m talking about the 10-20% type of intermittant echo problem in this blog…this can usually be fine tuned to less than 5% with some adjustment to the Zaptel settings.

The first (and easiest) thing to run is fxotune. This utility analyzes the TDM characteristics of your device and fine tunes them. This is also known as ‘balancing the hybrid.’ I don’t know why.

To run fxotune, do the folloing in the Linux CLI (with Asterisk/Trixbox STOPPED):

fxotune -i 4

This takes 4-5 minutes per Zaptel channel, so be prepared for a little bit of downtime.

The next thing you want to do is run the ztmonitor tool. This can be done at the Linux CLI by running ‘ztmonitor [channel number] -v’. So if you wanted to run it on channel 1 of a T1 card, the command would be ‘ztmonitor 1 -v’. You will see a graph on the screen which shows the Tx and Rx (transmit and receive) volume of a call.

It should look something like this:

Visual Audio Levels.
——————–
Use zapata.conf file to adjust the gains if needed.

( # = Audio Level * = Max Audio Hit )
<----------------(RX)----------------> <----------------(TX)---------------->
* ########### *

The level of the audio (while a call is in progress…if the line is on the hook, you’re not gonna get any levels…drrrr) is marked by the pound signs (###). The peak level is marked by an asterisk (*). There can be two problems here that lead to echo. The gain (volume) is too high, or too low. If you are watching a call in progress, and the peak is all the way to the right, you need to reduce your gain. If the levels are barely registering, you need to boost your volume. In general, you want the level to be right in the middle (on average)…I use the (RX) and (TX) labels on the graph as my desired average point.

The Zaptel echo and gain settings are in /etc/asterisk/zapata.conf. By default, they look like this:

echocancel=yes
echocancelwhenbridged=no
echotraining=800
rxgain=0.0
txgain=0.0

First, let’s deal with the gain. If you’re too low on Rx or Tx, try to boost it by 2.0db like this:

echocancel=yes
echocancelwhenbridged=no
echotraining=800
rxgain=2.0
txgain=2.0

The rxgain and txgain settings go from -100.0 to 100.0…but you never want to adjust them more than 10.0db either direction (usually no more than 5.0db). So make a call, run ztmonitor, and then watch the levels again. They should be a little bit higher. You can keep adjusting the Rx and Tx levels until they are at the midpoint average of the graph. Keep in mind that not ALL calls are gonna be perfect, but this should give you a good general idea. Also, keep in mind that the Rx and Tx levels can be adjusted individually. Let’s say that you feel your Rx (receive) volume is too low, but your Tx (transmit) volume is too high…your settings may look like this:

echocancel=yes
echocancelwhenbridged=no
echotraining=800
rxgain=3.0
txgain=-2.0

(Note that the Tx gain is set to -2.0. Sometimes the minus sign is hard to see).

Having the appropriate gain levels will usually do the trick when it comes to echo cancellation, but you may want to adjust the echo settings as well…here is what they do:

echocancel=(yes/no) - This turns on/off the Zaptel echo cancellation.
echocancelwhenbridged=(yes/no) - This turns on/off the echo cancellation when on a bridged call. It is best to keep this off.
echotraining - this is the amount of time Asterisk uses to try to ‘learn’ echo on a line. I usually set this to 128 instead of the default 800.

If you still have echo…buy a legacy PBX. :)

-Schw00d

[Slashdot] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

Next Page »