At the O’Reilly Emerging Telephony conference, Mark Spencer spoke for 15 minutes on the future of Asterisk, with questions at the end. The audience, packed into a ballroom at the San Francisco Airport Marriott, actually left time on the table at the end, reflecting how Asterisk has become the community platform for innovation.
Somebody asked a question about integrating speech recognition into Asterisk. In 1.4, Digium is selling the proprietary LumenVox speech interface. There is also the option to use the free Sphinx engine, but Mark’s experience is that it is challenging to build a multi-channel Asterisk system with the performance characteristics necessary to run Sphinx.
Somebody asked about the fate of the “Asterisk device” that was announced at last year’s VON conference. Mark said that the appliance is available now as a developer kit, but doesn’t know when it will be available as a customer product.
There was a question about the GUI; somebody wanted to know if it would be web based. It will be. The whole GUI sounds cool, since all Digium is doing is providing a framework to build a GUI with. Any changes made on the GUI will be reflected in the configuration files, and changes to the configuration files will be available to any GUIs built with the framework. Mark spoke of two goals for the fundamental design: (1) it should be easy to add additional commands in to the management interface, and (2) management should be possible over HTTP. I’m particularly pleased with the second point. I’ve experimented with the Asterisk manager, and while it’s nice, it’s hard to use across the network. Tunneling management over HTTP will enable use of an existing security framework. Using the manager will also enable GUIs to start or terminate calls.
The Q&A came to a close with a couple of questions on voicemail. Mark began his presentation with an apology for voicemail and queuing, and said that they would be changing. Somebody (Jim van Meggelen, I think!) asked if they would break apart into lots of smaller functions. Mark said that the functionality of voicemail wasn’t bad, but the code has grown to be unmaintainable. He would like to be able to add “personalities” to the system and enable more administrative configuration. He and Kevin differ slightly as maintainers of the code; he believes that the idea that voice mail must be configured properly to work is not appealing. Separately, one of the problems with implementing voicemail personalities (to make Asterisk sound like a Nortel or Avaya PBX) is that recording all the prompts and getting different control flows is hard to do.
In terms of queues, the fundamental problem is that the time that queues were developed there was nothing that reported state changes. The queue manager can only poll for status, but it doesn’t get events. While this works adequately when all agents are readily available, it breaks down a bit for remote agents because presence informamtion may not be handy.
Separately, I got a chance to talk to Mark. Jay Phillips introduced us once he realized that we’d both contributed to the March 2007 issue of Linux Journal. (Thanks, Jay!) Aside from the overwhelming smartitude, the thing that struck me most about Mark was his genuine interest in what everybody was doing with Asterisk.