Adhearsion is an open-source voice application development framework. Adhearsion users write applications atop the framework with Ruby and call into their code.
Adhearsion rests above a lower-level telephony platform, namely Asterisk, and provides a framework for integrating with various resources, such as SQL, LDAP and XMPP (Jabber).
- An elegant dialplan system for writing the code which controls a live phone call
- A sophisticated Asterisk Manager Interface library with a lexer written in Ragel.
- An events subsystem which maintains a Thread-pool for executing your namespaced callbacks. (supports AMI events too!)
- A very useful plugin architecture with which you may write Adhearsion plugins and share them with the world via RubyGems.
- JRuby compatibility for running atop the Java Virtual Machine and using virtually any Java library.
- Ability to re-use existing Ruby on Rails database models with ActiveRecord/ActiveLDAP
- Easy interactive communication via XMPP instant messages using the Blather library
- Good regression test coverage
- Ruby 1.9.2+ or JRuby 1.6.5+
- A VoIP platform:
- Asterisk 1.8+
- Prism 11+ with rayo-server
gem install adhearsion
An Adhearsion application can be as simple as this:
answer speak 'Hello, and thank you for your call. We will put you through to the front desk now...' dial 'tel:+18005550199' hangup
For more examples, check out the website.
Original author: Jay Phillips
Adhearsion has a set of contribution guidelines which help to smooth the contribution process.
Copyright (c) 2011 Individual contributors. GNU LESSER GENERAL PUBLIC LICENSE (see LICENSE for details).