1.0.0 - Fall back to using Asterisk's context if the AGI URI context is not found - Enable configuration of :auto_reconnect parameter for AMI - Replace all uses of Object#returning with Object#tap - Add support for loading Adhearsion components from RubyGems - Fix long-running AMI session parser failure bug (#72) - Support for Rails 3 (and ActiveSupport 3.0) 0.8.6 - Fix packaging problem so all files are publicly readable - Improve AMI reconnecting logic; add "connection refused" retry timer - AGI protocol improvements: parse the status code and response text 0.8.5 NOTE: If you are upgrading an Adhearsion application to 0.8.5, note the change to how request URIs are handled. With 0.8.4, the context name in Asterisk was required to match the Adhearsion context in dialplan.rb. Starting in 0.8.5 if an application path is passed in on the AGI URI, it will be preferred over the context name. For example: [stuff] exten => _X.,1,AGI(agi://localhost/myapp) AHN 0.8.4- will execute the "stuff" context in dialplan.rb AHN 0.8.5+ will execute the "myapp" context in dialplan.rb If you followed the documentation and did not specify an application path in the URI (eg. agi://localhost) you will not be impacted by this change. Other changes: - Added XMPP module and sample component. This allows you to easily write components which utilise a persistent XMPP connection maintained by Adhearsion - Prefer finding the dialplan.rb entry point by the AGI request URI instead of the calling context - Added :use_static_conf option for "meetme" to allow the use of disk-file-managed conferences - Logging object now shared with ActiveRecord and Blather - Fixed a longstanding bug where newlines were not sent after each AGI command - Fixed parsing of DBGet AMI command/response - Better shutdown handling/cleanup - Attempt to allow the AMI socket to reconnect if connection is lost - Improved support for Ruby 1.9 - Numerous smaller bugs fixed. See: https://adhearsion.lighthouseapp.com/projects/5871-adhearsion/milestones/76510-085 0.8.4 - Add configurable argument delimiter for talking to Asterisk. This enables Adhearsion to support Asterisk versions 1.4 (and prior) as well as 1.6 (and later). - Fixed using ActiveRecord in Adhearsion components - Daemonizing no longer truncates the Adhearsion log file - Add support for using ActiveLdap - Misc improvements to support Asterisk 1.6 changes - Escape commands sent to Asterisk via AGI - Manager Events now work when daemonized 0.8.3 - The "uniqueid" call channel variable available in dialplan.rb is now *always* a String - Renamed interruptable_play to interruptible_play and made interruptible_play() public instead of protected. - Fixed an Asterisk Manager Interface parsing issue in which colons sometimes got stuck into the key name. - AGI "request" variable coercer will not blow up if no request is given. (Helps in testing with netcat/telnet) 0.8.2 - When a call hangs up, Adhearsion will no longer show random exceptions (that were okay) and instead allows the user to rescue a Hangup exception. - ManagerInterfaceResponse now include()s DRbUndumped, allowing send_action() to be called directly over DRb. - Fixes an inconsequential bug when CTL-C'ing Adhearsion. 0.8.1 - The sandbox component now comes - Minor bug fixes 0.8.0 rev 2 - Added a few non-critical files to the .gemspec. They were ignored Notes from before 0.8.0: - (NOTE: This is obviously not a comprehensive list of pre-0.8.0 work. 0.8.0 was a complete rewrite of the previous version) - Adding a deprecation warning about Fixnum#digit and Fixnum#digits - Removed the AMI class and replaced it with the ManagerInterface class. - The old AMI high-level instance methods are available in the new ManagerInterface class, but a deprecation warning will be logged each time they're used. When the SuperManager class is implemented, they'll be removed entirely. - Moved Theatre into Adhearsion's lib folder.