Over the next two weeks, Jay Phillips, Chad Fowler, Marcel Molina, Rich Kilmer, Ed Guy, Glenn Dalgliesh and myself are getting together to work on advancing Adhearsion, the open source VoIP technology.
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 Rubyinternal { case extension when 100...200 callee = User.find_by_extension extension unless callee.busy? then dial callee else voicemail extension
when 111 then exec :meetme
when 888 play weather_report('Dallas, Texas')
when 999 play %w(a-connect-charge-of 22 cents-per-minute will-apply) sleep 2.seconds play 'just-kidding-not-upset' check_voicemail end}
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.
