For those of you who don't know about Adhearsion, it brings a simple, elegant grammar to the world of VoIP. It's an object-oriented DSL (domain specific language) written in Ruby. But that's what's going on underneath. Here's what's going on for you, the user:
# This is an example extensions.rb file which
# would handle how calls are processed by
# Asterisk. This is all completely valid Ruby
callee = User.find_by_extension extension
unless callee.busy? then dial callee
when 111 then exec :meetme
play weather_report('Dallas, Texas')
play %w(a-connect-charge-of 22
Obviously this is much more palatable than what you might find in your average asterisk extensions.conf file.
Chad, Marcel, and Rich are some of the biggest names in the Ruby & Rails communities. Ed Guy is a legend in Open Source telephony. Jay is the originator of Adhearsion. Glenn, Ed, Jay, and I all work together for the project's sponsor, Truphone. There is some thought that with all of us on the job, Adhearsion might just become the next big thing to come out of the Ruby community.
We'll see about that; it could certainly happen. One thing that is for sure though is that our efforts should bring a level of beauty and clarity heretofore unrealized in the VoIP/telephony/collaboration world, and that certainly is a good thing.