Adhearsion

Last updated
Adhearsion
Adhearsion.jpg
Developer(s) Adhearsion Team
Stable release
2.6.1 / June 15, 2015 (2015-06-15)
Repository
Written in Ruby
Operating system Cross-platform
Type Telephony application framework
License Expat License
Website adhearsion

Adhearsion is an open source voice development framework for the Ruby programming language. It is intended to be used to create rich voice applications integrated with other technologies, such as web applications, databases and instant messaging.

Contents

History

Adhearsion was created in 2006 and released by Jay Phillips in December of that year as an open source project. [1] In August 2007 O'Reilly Media published the Asterisk The Future of Telephony book that included Adhearsion. [2] In December 2009 Pearson Education published the Practical Asterisk 1.4 and 1.6: From Beginner to Expert book that included a section on installing Adhearsion and configuring it for use with Asterisk (PBX) 1.4 and 1.6. [3] The latest major version, 2.0.0, was released in April 2012 and includes many substantial improvements over 1.x. [4] The current development target is 3.0.0. [5]

Overview

Adhearsion is an entirely independent framework, including application and code generators and a plugin system. Today Adhearsion works with the Asterisk telephony engine, [2] as well as with Tropo's PRISM and FreeSWITCH through the open source Rayo protocol and requires Ruby 1.9.3 or higher.

The framework allows developers to create stand-alone voice applications, or add voice functionality to existing applications or systems using a modern dynamic programming language, Ruby, as opposed to requiring the use of VXML or CCXML. Adhearsion provides a set of classes and facilities that enables a developer to work with voice with little knowledge of the voice development domain.

Since both Adhearsion and all of its dependencies are open source, developers have the ability to develop sophisticated voice applications without significant up front costs that have been the historical norm in telephony development.

The current members that make up the core team are Ben Klang and Ben Langfeld.

Related Research Articles

Cocoa is Apple's native object-oriented application programming interface (API) for its desktop operating system macOS.

Visual Basic .NET Object-oriented computer programming language

Visual Basic, originally called Visual Basic .NET (VB.NET), is a multi-paradigm, object-oriented programming language, implemented on .NET, Mono, and the .NET Framework. Microsoft launched VB.NET in 2002 as the successor to its original Visual Basic language, the last version of which was Visual Basic 6.0. Although the ".NET" portion of the name was dropped in 2005, this article uses "Visual Basic [.NET]" to refer to all Visual Basic languages released since 2002, in order to distinguish between them and the classic Visual Basic. Along with C# and F#, it is one of the three main languages targeting the .NET ecosystem. As of March 11, 2020, Microsoft announced that evolution of the VB.NET language has concluded.

NetBeans Integrated development environment software for software development

NetBeans is an integrated development environment (IDE) for Java. NetBeans allows applications to be developed from a set of modular software components called modules. NetBeans runs on Windows, macOS, Linux and Solaris. In addition to Java development, it has extensions for other languages like PHP, C, C++, HTML5, and JavaScript. Applications based on NetBeans, including the NetBeans IDE, can be extended by third party developers.

Eclipse (software) Software development environment

Eclipse is an integrated development environment (IDE) used in computer programming. It contains a base workspace and an extensible plug-in system for customizing the environment. It is the second-most-popular IDE for Java development, and, until 2016, was the most popular. Eclipse is written mostly in Java and its primary use is for developing Java applications, but it may also be used to develop applications in other programming languages via plug-ins, including Ada, ABAP, C, C++, C#, Clojure, COBOL, D, Erlang, Fortran, Groovy, Haskell, JavaScript, Julia, Lasso, Lua, NATURAL, Perl, PHP, Prolog, Python, R, Ruby, Rust, Scala, and Scheme. It can also be used to develop documents with LaTeX and packages for the software Mathematica. Development environments include the Eclipse Java development tools (JDT) for Java and Scala, Eclipse CDT for C/C++, and Eclipse PDT for PHP, among others.

In computer programming, unit testing is a software testing method by which individual units of source code—sets of one or more computer program modules together with associated control data, usage procedures, and operating procedures—are tested to determine whether they are fit for use.

Processing (programming language) Free graphics library

Processing is a free graphical library and integrated development environment (IDE) built for the electronic arts, new media art, and visual design communities with the purpose of teaching non-programmers the fundamentals of computer programming in a visual context.

FOSDEM Annual event in Brussels centered on free and open source software development

Free and Open source Software Developers' European Meeting (FOSDEM) is a non-commercial, volunteer-organized European event centered on free and open-source software development. It is aimed at developers and anyone interested in the free and open-source software movement. It aims to enable developers to meet and to promote the awareness and use of free and open-source software.

Asterisk (PBX) PBX software

Asterisk is a software implementation of a private branch exchange (PBX). In conjunction with suitable telephony hardware interfaces and network applications, Asterisk is used to establish and control telephone calls between telecommunication endpoints, such as customary telephone sets, destinations on the public switched telephone network (PSTN), and devices or services on voice over Internet Protocol (VoIP) networks. Its name comes from the asterisk (*) symbol for a signal used in dual-tone multi-frequency (DTMF) dialing.

Call Control eXtensible Markup Language (CCXML) is an XML standard designed to provide asynchronous event-based telephony support to VoiceXML. Its current status is a W3C Proposed Recommendation, adopted May 10, 2011. Whereas VoiceXML is designed to provide a Voice User Interface to a voice browser, CCXML is designed to inform the voice browser how to handle the telephony control of the voice channel. The two XML applications are wholly separate and are not required by each other to be implemented - however, they have been designed with interoperability in mind

Ruby on Rails Server-side open source web application framework

Ruby on Rails, or Rails, is a server-side web application framework written in Ruby under the MIT License. Rails is a model–view–controller (MVC) framework, providing default structures for a database, a web service, and web pages. It encourages and facilitates the use of web standards such as JSON or XML for data transfer and HTML, CSS and JavaScript for user interfacing. In addition to MVC, Rails emphasizes the use of other well-known software engineering patterns and paradigms, including convention over configuration (CoC), don't repeat yourself (DRY), and the active record pattern.

AppFuse

AppFuse is an open-source Java EE web application framework. It is designed for quick and easy start up of development, while also using open-source Java technologies such as Spring Framework, Hibernate and Struts. AppFuse was originally created by Matt Raible, who wanted to eliminate the "ramp up" time in building new web applications.

JRuby is an implementation of the Ruby programming language atop the Java Virtual Machine, written largely in Java. It is free software released under a three-way EPL/GPL/LGPL license. JRuby is tightly integrated with Java to allow the embedding of the interpreter into any Java application with full two-way access between the Java and the Ruby code.

A web framework (WF) or web application framework (WAF) is a software framework that is designed to support the development of web applications including web services, web resources, and web APIs. Web frameworks provide a standard way to build and deploy web applications on the World Wide Web. Web frameworks aim to automate the overhead associated with common activities performed in web development. For example, many web frameworks provide libraries for database access, templating frameworks, and session management, and they often promote code reuse. Although they often target development of dynamic web sites, they are also applicable to static websites.

Google Web Toolkit Free Java library

Google Web Toolkit, or GWT Web Toolkit, is an open-source set of tools that allows web developers to create and maintain JavaScript front-end applications in Java. It is licensed under the Apache License 2.0.

MonoRail, a component of the Castle Project, is an open source web application framework built on top of the ASP.NET platform. Inspired by Ruby on Rails Action Pack, MonoRail differs from standard ASP.NET Web Forms development by enforcing separation of concerns using a model–view–controller (MVC) architecture. The framework is commonly used in conjunction with Castle ActiveRecord, an ORM layer built on NHibernate. In January 2010, version 2.0 of MonoRail was released, however, many projects use the trunk version of the source to take advantage of new features without waiting for official releases.

Lift (web framework)

Lift is a free and open-source web framework that is designed for the Scala programming language. It was originally created by David Pollak who was dissatisfied with certain aspects of the Ruby on Rails framework. Lift was launched as an open source project on 26 February 2007 under the Apache License 2.0. A commercially popular web platform often cited as being developed using Lift is Foursquare.

Google App Engine is a cloud computing platform as a service for developing and hosting web applications in Google-managed data centers. Applications are sandboxed and run across multiple servers. App Engine offers automatic scaling for web applications—as the number of requests increases for an application, App Engine automatically allocates more resources for the web application to handle the additional demand.

Sinatra (software)

Sinatra is a free and open source software web application library and domain-specific language written in Ruby. It is an alternative to other Ruby web application frameworks such as Ruby on Rails, Merb, Nitro, and Camping. It is dependent on the Rack web server interface. It is named after musician Frank Sinatra.

Voxeo Corporation was a technology company that specialized in providing development platforms for unified customer experience (self-service) and unified communications applications. Voxeo was headquartered in Orlando, Florida with main offices in Cologne, Germany; Beijing, China; London, UK and San Francisco, US.

Wiring is an open-source electronics prototyping platform composed of a programming language, an integrated development environment (IDE), and a single-board microcontroller. It was developed starting in 2003 by Hernando Barragán.

References

  1. "What is Adhearsion?" . Retrieved 2007-02-10.{{cite web}}: CS1 maint: url-status (link)
  2. 1 2 Meggelen, Jim Van; Smith, Jared; Madsen, Leif (28 August 2007). Asterisk - The Future of Telephony. ISBN   9780596551629 . Retrieved 2007-08-27.
  3. Wintermeyer, Stefan; Bosch, Stephen (20 December 2009). Practical Asterisk 1.4 and 1.6: From Beginner to Expert. ISBN   9780321701565 . Retrieved 2014-10-30.
  4. "Adhearsion 2.0.0: It's ALIIIIVE!" . Retrieved 2012-04-11.
  5. "Adhearsion 3 is coming!" . Retrieved 2015-09-24.