• Stars
    star
    175
  • Rank 213,802 (Top 5 %)
  • Language
    Ruby
  • License
    GNU Lesser Genera...
  • Created about 16 years ago
  • Updated over 12 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Open-source framework for writing voice-enabled applications using Ruby.

Repo Deprecation Warning

This is no longer the official repository for the Adhearsion project. The official source code repository is now located at http://github.com/adhearsion/adhearsion. Please watch that repository going forward.

Adhearsion

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, for example Asterisk or Voxeo PRISM, and provides a framework for integrating with various resources, such as SQL, LDAP and XMPP (Jabber).

Features

  • An elegant system of call controllers for writing the code which controls a live phone call.
  • An events subsystem which maintains a Thread-pool for executing your namespaced callbacks.
  • 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
  • Strong test coverage
  • Much more

Requirements

  • Ruby 1.9.2+ or JRuby 1.6.7+
  • A VoIP platform:
    • Asterisk 1.8+
    • Prism 11+ with rayo-server
  • An interest in building cool new things

Install

gem install adhearsion

Examples

An Adhearsion application can be as simple as this:

answer
say '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.

Documentation

Visit Adhearsion's website for code examples and more information about the project. Also checkout the Adhearsion wiki on Github for community documentation.

If you're having trouble, you may want to try asking your question on the IRC channel (#adhearsion on irc.freenode.net), mailing list or, if you've found a bug, report it on the bug tracker.

Author

Original author: Jay Phillips

Core team:

Contributors: https://github.com/adhearsion/adhearsion/contributors

Contributions

Adhearsion has a set of contribution guidelines which help to smooth the contribution process. There is a pre-commit hook that runs encoding checks available in pre-commit. To use it, please copy it to .git/hooks/pre-commit and make it executable.

Copyright

Copyright (c) 2011 Individual contributors. GNU LESSER GENERAL PUBLIC LICENSE (see LICENSE for details).

More Repositories

1

superators

Superators add new operators to Ruby
Ruby
60
star
2

ami-ragel

The new Asterisk Manager Interface implementation that uses Ragel and EventMachine
Ruby
16
star
3

sillyio

Open-source interpreter for Twilio's TwiML realtime call control grammar
Ruby
15
star
4

sandbox-infrastructure

Contains the infrastructure used by the publicly available Adhearsion sandbox for testing Adhearsion applications without Asterisk
Erlang
9
star
5

desk-pbx

This is the Adhearsion app I use for my own phone system. At the moment it's pretty useless to people other than me.
Ruby
7
star
6

threejs-collada-physics

Example showing how to import a COLLADA file into ThreeJS and wire it up to the Ammo.js physics engine. Other branches use jiglibjs2 and physijs.
JavaScript
6
star
7

stomptomanagerbridge

An experiment I did to bridge the Stomp protocol with the Asterisk Manager Interface using AsteriskJava
Java
6
star
8

visual-dialplans

An example Adhearsion app which demonstrates creating dialplans visually.
Ruby
6
star
9

Enchantment

Experimental WebGL EverQuest-like MMO.
JavaScript
5
star
10

click-to-call

Adhearsion Click to Call Example Application
Ruby
5
star
11

adhearsion-website

Official Adhearsion.com website
JavaScript
5
star
12

tankerpop

Playful TinkerPop3 graph database laboratory using Docker Compose
Groovy
5
star
13

theatre

A library for choreographing a dynamic pool of hierarchically organized actors on Ruby v1.8
Ruby
5
star
14

ranked-pairs-voting

Working implementation of the Tideman Ranked Pairs (TRP) Condorcet voting method
JavaScript
4
star
15

project-manager

Simple personal project management system
JavaScript
2
star
16

vegan_data_scraper

Scrapes Barnivore.com for all of its data.
Ruby
2
star
17

sync-evernote

Dockerized Evernote synchronizer
Ruby
2
star
18

clj-genetic

Experimenting with genetic algorithms in Clojure
Clojure
1
star
19

syndicated-cloud

JavaScript
1
star
20

openapi-typescript-improved

OpenAPI-to-TypeScript Code Generator, Written in TypeScript + Node.js
TypeScript
1
star
21

vegan_data

Ruby
1
star
22

etsy-veganized

Website for browsing Etsy.com, optimized for vegans wanting to buy local, indie clothing
JavaScript
1
star