As I race across Tennessee from my sister’s house to my brother’s house on a family vacation, Jay penned a post that skewered Asterisk, and Mark Spencer responded. Jay shared his work with me last week, and I told him I would blog my opinion on it… I’m glad that I waited and now have a chance to do it after Mark posted his. To catch everyone up, and in full disclosure, I am an active adhearsion developer, most of my CEBP work last year was based on adhearsion running on Asterisk, I am active supporter and user of Jay’s work, and for what seems like large stretches of 2005 and 2006, I was an active and vocal critic of Asterisk. I would also tell you that I not only deeply respect the accomplishments and capacity of Mark and the Asterisk community, but everyone owes them a world of thanks for the door they opened. I use Asterisk weekly, if not daily, and depend upon it, as tens of thousands of others do.
In short, this is a first row seat to the clash between the old world and the new, writ small. If there is a single thing that is driving the change in telephony, it is the movement from computer-as-platform to web-as-platform. Nearly every point made by both Mark and Jay can be understood through this lens, with the possible exception of Mark’s mother’s inability to distinguish between perception and reality. From my perspective and estimation, Asterisk is a wonderful PBX for the SMB. It’s a lousy platform for applications, and more than that, for any web based application. Asterisk is the quintessential example of what telephony technology used to be: single purposed and stovepiped, written to be run a single computer with custom hardware and/or protocols. Adhearsion is a ruby library built to what applications are to become: using the Internet as a platform, to be integrated into a thousand applications which are not necessarily telephony, without custom hardware or protocols. As a developer who writes applications that use telephony for a living, I have rejected Astersisk as my primary application API, and use Adhearsion when I can, and when I can’t, I use VoiceXML – normally from Voxeo.
Jay’s post comes straight from the frustration that anybody feels when they try to integrate Asterisk into an application other than PBXs. Mark’s post comes directly from his experience in developing a software PBX for the SMB. Jay’s post falls down when viewed in the light of a particular market (and Mark is right, it does not make an argument for any particular market segment), but Mark’s post falls down in it’s myopia. It simply does not follow that a piece of technology designed for one application must be equally appropriate to another application simply because it’s software. Asterisk does a great job at it’s one thing, making a PBX, but really creaks when you try to apply it to something else. Adhearsion is no better, except that it’s one thing is to be a platform for web based applications that use voice. What Jay was trying to say was that Asterisk will never be that platform; and he’s right. What will it be? My bet is that it’s Freeswitch running Adhearsion, hosted by something that looks like a blend between CloudVOX and Amazon’s EC2.
Part of me wants to tell people that, as far as technology goes, Asterisk has been left far behind, and the old-school plumbing behind it is leaking and creaking. But at the same time, I want to smack the new web-guys around and remind them that until they have downloads and installs of in the tens of thousands each month they should keep their mouths shut and their heads down. Again, just like the old world and new: Google is mighty impressive, but Verizon has conviced every household to fork over $30 a month.
Asterisk is tired, and Adhearsion is wired.


FreeSWITCH is the platform of the future.
>Diego Viola
>Posted August 17, 2008 at 1:27 am
>FreeSWITCH is the platform of the future.
Lol i guess people dont read the article where it says when people are able to match Asterisk’s success then they can ‘crow’.
Diego….whilst Asterisk may or may not be the future… at the moment it leads the pack in downloads an implementations…until Freeswitch can match it in number of global users. As a watcher of both technologies I can tell you Freeswitch has a long way to go in documentation/deployment/development – all pretty critical areas it’s lagging Asterisk in.
Cheers,
Dean Collins
http://www.Collins.net.pr/blog
Stick my neck out here:
All 3 of you don’t get it.
The huge majority of developers want to learn as little new as possible to get the job done.
With Asterisk you have to learn loads before you can use it as an application platform. Once you have it can do a lot for you.
With Freeswitch you can get started quicker, especially if you use the excellent xml-curl interface and move all your application coding to a web service you already know.
With adhersion you have to learn a new language (Ruby) and a new dialect (adhersion)
which will scare many folks off.
VoiceXML is interesting but too clumsy for tight integration and there is quite a bit to learn.
What do we use ? – Freeswitch if we are in a hurry, or Asterisk if we need the features. Either way we offload the application to an environment we know (usually oracle/tomcat/servlets) and communicate between them with http.
We have a facebook app (in beta) that is done
this way, mashing facebook, a database and asterisk to provide a simple user experience.
http://apps.facebook.com/phonefromhere/
Even Teliax is switching to FreeSWITCH now, this is so awesome… it means better services with greater quality, happier customers, better for Teliax and FreeSWITCH.
“We are actually in the process of moving to FreeSWITCH right now. It has taken several months of development and testing but it is currently in production on the atl.teliax.net proxy. Once we get a few more bugs worked out we will be deploying it on the rest of the proxies our 2.0 system use. We are very excited about the transition and have found FreeSWITCH wonderful to work with.
Thank you,
Josh”
Yay for Teliax and FreeSWITCH!