All posts by John Goerzen

Asterisk At Work

It’s been a little while since I wrote about Asterisk. It’s about time to update the story.

I’ve been using Asterisk at home for awhile, but now we’re going to use it at work.

The need

We have approximately 150 internal extensions here, and they are being supported by a Nortel PBX. This PBX is being end-of-lifed, and it would cost well over $100,000 to replace it, once the cost of the two required Windows servers (!) was factored in. Not only that, but it still isn’t as flexible as Asterisk.

Along with that, we have a need for internal wireless phones. We have a large manufacturing area, and we have people that would like to be able to use a wireless phone anywhere on the shop floor or office areas. No single cellphone company provides a signal that is strong enough to reach everywhere in the building — not to mention that there would be big airtime fees. So we are planning to deploy 802.11b wireless phones for this purpose.

Hardware

The decision was made to go ahead with Asterisk. We will be replacing all office phones with Polycom IP501 units. This means running about 90 new runs of CAT5 to people’s desks.

For our Asterisk server, we got a HP DL385 2U server with dual dual-core Opteron 2GHz CPUs. We’ve really had good luck with Linux on these DL385s, and with HP’s support. We got redundant power supplies, disks, fans, etc. on that machine. The CPU on here is probably more than we need, but telephones are very important to us and we wanted to make sure that we don’t have any issues down the road.

We purchased two A104d quad-T1 interface cards with hardware echo cancellation. Very nice cards. The drivers have been a little troublesome. But Sangoma’s tech support is awesome. They logged onto our box and I was watching as they were hacking on the kernel module right there. Tech support like that is rare. I highly recommend Sangoma.

We really need only one of those cards, but they’re the only component of the Asterisk server that isn’t completely standard. So the second is on hand as a spare.

For our analog phones, we are using two Adtran TA 750 channel banks. Each has a T1 interface and a 50-pin telco (“Amphenol”) connector for a punch block. So we can run 24 channels off each of those. Our consultants (see below) suggested getting them used from Colspar Communications. We found them fully loaded with FXS cards for $250 each. We bought three — two for production use and one for a hot spare.

These are very solid and nice units. The only problem we had is that the voicemail indicator lamps (MWI lights) on our old analog phones wouldn’t light up. Turns out that Asterisk with a T1 channel bank uses digital FSK lamp, whereas our older analog phones expected a certain line voltage to indicate messages waiting. After some Googling, I found add-on FSK lamps from American Science & Surplus for $1.50 each. Nice.

In our other building, we have a gigabit fiber-optic link, so we purchased an AudioCodes MP124 SIP-analog gateway. It’s working well so far, except it’s not working with voicemail indicator lamps at all. It seems to be a firmware issue that is incompatible with Asterisk in some way. We’re investigating now.

For wireless phones, we’re using the Hitachi IP5000. We’re not terribly pleased with the quality of wifi phones in general, but this one seems pretty solid. And it doesn’t crash every few minutes like the Zyxel model we tried.

The Telco

Our current phone system has about 23 analog lines for interaction with the outside world. We wanted to get a voice T1 with PRI channel for the Asterisk system.

Our local telephone company is Sprint, and this has been the annoying part. First they tried to quote us an Internet connection. Then it took a very long time for them to even get us a quote for the voice T1. And now we have signed the contracts but are still waiting for an install date.

Consultants

While I had used Asterisk before, it was in a home setting. Not exactly business-critical, and not dealing with hundreds of extensions, T1 lines, and all the rest. So it seemed reasonable to get someone experienced with that sort of thing to help us out and make sure we weren’t making mistakes that would cost us down the road.

I posted on the asterisk-biz mailing list describing what we would like to do. I got a bunch of supplies from consultants, and we wound up selecting Asteria Solutions Group. At the beginning, we wanted some advice about server sizing, phones that work well in business settings, etc.

I think that most consultants are not used to working with people that have significant Linux experience, and a good deal of Asterisk experience, already. Asteria was a little surprised with our situation at first, I think, but has been very helpful. They’ve educated us on the ins and outs of T1 technology, pointed us to Colspar (which saved us a ton of money on analog gateways), and helped us with some obscure questions. They were also fine to have a much smaller involvement with our project than they would probably normally have. I highly recommend them.

Surprises

You’ll never believe just how hard it is to buy phones from Polycom. They won’t sell directly to people, nor will they even list authorized retailers on their website. You have to call them, leave a message, and in a few days they’ll let you know where to go.

Some online retailers such as atacomm sell Polycom phones, but they’re not authorized to do so, so you don’t get any warranty or have the right to get firmware from Polycom.

What’s more, Polycom usually expects people to need configuration assistance with their phones. But I think that when I told them we need 90 IP-501s, had already configured 5 on our network, and needed no assistance, they were happy to work with us.

Reactions

We’ve deployed desk phones all over by now. So office workers have two phones on their desk right now (one from the old system, one from the new). We’ve heard a lot of positive comments from people about the new phones. And all the features of Asterisk — music on hold, flexible queues, etc — will be really helpful here.

Cost

Even with the cost of all new phones, new CAT5 runs and labor for that, consulting time, etc., we still expect Asterisk to be far cheaper than the latest Nortel PBX.

Also…

I recently wrote an article about Asterisk for Free Software Magazine. I’ll let you know when/if it gets published.

My new podcast: The Sound of History

Well, it’s finally time to announce my new podcast, Sound of History!

The Sound of History is a weekly podcast featuring full-length, unedited, and uncut historic audio. You’ll hear speeches, broadcasts, and events from around the world. Sometimes you’ll hear famous people, sometimes not.

Episode 1 is up now. On this episode, you’ll find John F. Kennedy cracking jokes about Marx in front of a bunch of newspaper publishers, Ronald Reagan talking about the Challenger, some blues from 1922, and an Edison recording from 1902.

Thanks to Cliff for mentioning that Reagan speech in a comment. That prompted me to go find it.

I’m finding material for this podcast from around the Internet. Some of that music comes from archive.org, and there are various sources for presidential speeches.

I’d like to find some British prime minister’s speeches as well, but I’m having difficulty with that. If any of you Brits reading this know of a good site for uncut audio, accessible to Americans, please do let me know.

Cliff, This Link’s For You

I haven’t had a chance to check this out much yet, but it sounds interesting, and I think Cliff would love it:

The Fray is a site where people tell stories and others comment on those stories, and once a year there are worldwide gatherings to do open-mic storytelling live. (from a post on the Creative Commons blog)

UPDATE: I should have linked directly to the audio archive, which looks like the really interesting part of the site, and the one that CC linked to.

Today’s Pet Peeve: Stupid GTK File-Open Dialogs

Have you noticed the incredibly annoying dialogs appearing in new Gnome/GTK apps in sid? They no longer allow you to use the keyboard to enter a filename. Not only that, but they are *incredibly* slow when working with large directories. You better go get some caffeine when if you need to open something under /usr/share/doc.

Here’s an example from Firefox:

Other apps, such as Gimp, also have this problem.

I have one thing to say to these people: WHAT WERE YOU THINKING?

The keyboard is still a useful part of a computer, and I have absolutely no inclination to wait 45 seconds for some annoyingly slow dialog to populate because you prefered to remove the ability for me to enter a filename in a dialog box myself.

Nebraska Photos

I’ve uploaded our photos from our trip to Nebraska. Don’t worry, I’ve limited it to 43 items.

In this fantastic collection, you will learn such immeasurably useful morsels of knowledge, such as:

  • Why people think Nebraska has more trees than Kansas
  • The shocking encroachment of nationwide department stores onto rural areas
  • Traffic congestion in rural Kansas
  • Nebraskan vowel usage
  • Silo painting tips

Click here to start, and make sure to hit “next” so you see all the different photos.

Haskell #1 in the Shootout

Wow. Some Haskell hackers have started paying a small bit of attention to the Great Computer Language Shootout site, and the results are impressive.

Haskell now takes first place in the lines of code competition. In the CPU time competition, Haskell is also doing quite respectably: it beats out OCaml by a small margin, and defeats Java, C++, Python, Perl, Erlang, Ruby, Mono, Tcl, etc. by significant margins.

These links are all using the Shootout default weightings for individual tests.

The only downside to the Shootout is that the programs — for all languages — are not really idomatic and don’t show off a language’s natural beauty. Sounds like it’s time to gather up some Haskell hackers to rally around the PLEAC effort as well.

We need better audio support in Linux

Yesterday I had the frustrating experience of trying to configure a machine so I could use the internal soundcard while simultaneously recording sound from a USB iMic.

While ALSA appears to fully support this setup, I discovered quite a few annoyances about what should be trivial:

  • There appear to be no GUI sound recording apps that support ALSA directly.
  • KDE’s artsd normally provides good ALSA support, but it provides neither a systemwide nor an app-specific way to select either the recording or the playback source with ALSA.
  • Some apps appear to use Jack, but configuration of it is extraordinarily complex and it seems to die in subtle and odd ways from time to time.
  • ecawave segfaults on start, every time.
  • audacity doesn’t even support anything other than OSS! (A shame from what’s otherwise a great program)
  • The mechanics of OSS support in ALSA are anything but clear. There is the aoss LD_PRELOAD wrapper, and then there is also a kernel module, which appears to be rather under-documented. For whatever reason, ALSA is managing only one PCM device under /dev, despite having two PCM cards in the system.

Now this is probably no worse than the situation in Windows, but it is certainly not where we should be, and isn’t where MacOS X is either.

Note that most of these problems are with the apps not supporting the second audio source *at all*.

New Mic Equipment

I wrote yesterday that I’m looking for a nice microphone.

I decided to go mostly with the setup suggested by The Roadhouse:

  • MXL 990 Condensor Mic ($50)
  • Behringer eurorack UB802 Mixer/Preamp ($50)

After assorted accessories (mic stand, XLR cable, pop filter, etc.) I wound up spending $143 at Musician’s Friend. I just need a 1/4″ to 1/8″ adapter cable yet from RadioShack to hook this up to the audio input on a sound card (or my iMic USB gadget).

Librivox sounds great and I look forward to volunteering.