agi-node - Asterisk FastAGI and AsyncAGI server for Node.js

  •        533

Sets the point in the dialplan to continue the call after the AGI script is done. extension is optional and, if missing, is set the current channel extension. priority is optional and, if missing, is set to 1. Reads DTMF input from user. Plays the file prompt. Times out at timeout milliseconds and allows up to maxDigits to be read. It can be ended with #.


asterisk-manager : ^0.1.15
fibers : ^1.0.5
sprintf-js : ^1.0.2
syncho : ^0.2.3



Related Projects


  •    C

AGI Audio File Transfer Addons for Asterisk - this is a module for Asterisk that extends Asterisk's AGI interface by adding commands that allow the transfer of audio files to and from Asterisk via the AGI session. Very useful for FastAGI connections.


  •    C

Quivr - quot;Quick IVRquot; A small Asterisk AGI Library for C programmers, it is a simple ansi-c based, posix styled C library for Asterisk AGI programming. Quivr handles passing commands to Asterisk and testing the return status of the AGI command.

pyst: Python for Asterisk

  •    C

Pyst consists of a set of interfaces and libraries to allow programming of Asterisk from python. The library currently supports AGI, AMI, and the parsing of Asterisk configuration files. The library also includes debugging facilities for AGI. 2013-05-29: Maintainers of github fork quot;pyst2quot; contacted to join forces. Note that the last release here fixes the same bug as on github, otherwise github version seems to only contain cosmetic changes and examples. 2012-07-06: An offer to mai

Asterisk C AGI Toolkit


CAGI is an API for writing AGI applications in the open source Asterisk PBX software. It was developed to integrate a medical dictation system in to Asterisk in 2005 and has been used in a production environment since then.

AGI Studio

  •    C++

QT AGI Studio is an IDE that allows developers to create games using Sierra On-Line's AGI system that was used in the early 80s to create games such as King's Quest 1, 2, and 3, Space Quest 1 and 2, Police Quest 1 and Leisure Suit Larry 1.

wAlnut - research into how to solve the AGI problem


The answer is you can not. I now believe AGI should not be built privately or publicly and instead one possible solution is to increase human intelligence with a privately built neural lace like Neuralink which you can read about here. Q2: How do you create a safe neural lace for anyone who wants one?.

mileage track

  •    PHP

Gas mileage tracker, asterisk agi application. Requires Asterisk, mysql and a webserver capable of serving php documents. User inputs data through the application and views data on the web.


  •    PHP

PHPAGI is a PHP Class for writing AGI applications for use with the open source Asterisk PBX software.


  •    Java

Java CTI application server for the open-source Asterisk (TM) PBX (includes GUI). OrderlyCalls supports both the AGI / FastAGI amp; Manager protocols, and includes a WebDeployer that allows you to create your own integrated VOIP and HTML applications.

Adventure Game Interpreter

  •    Java

AGI was a game engine used on old games made by Sierra On-Line. (Like King's Quest I to III, Space Quest I, II, etc...) This release of the AGI engine is entirely written in Java and is completly OS Independant.

opencog - A framework for integrated Artificial Intelligence & Artificial General Intelligence (AGI)

  •    Scheme

OpenCog is a framework for developing AI systems, especially appropriate for integrative multi-algorithm systems, and artificial general intelligence systems. Though much work remains to be done, it currently contains a functional core framework, and a number of cognitive agents at varying levels of completion, some already displaying interesting and useful functionalities alone and in combination. With the exception of MOSES and the CogServer, all of the above are in active development, are half-baked, poorly documented, mis-designed, subject to experimentation, and generally in need of love an attention. This is where experimentation and integration are taking place, and, like any laboratory, things are a bit fluid and chaotic.

agi - Android GPU Inspector

  •    Go

Visit for information about Android GPU Inspector. The developer documentation contains some hints for AGI developers. See also the README files under some source directories.


  •    C

Sarien is a portable implementation of the Sierra On-Line Adventure Game Interpreter (AGI), and is able to run games such as Leisure Suit Larry in the Land of the Lounge Lizards and Space Quest I and II.

atomspace - The OpenCog hypergraph database, query system and rule engine

  •    C++

The OpenCog AtomSpace is a knowledge representation (KR) database and the associated query/reasoning engine to fetch and manipulate that data, and perform reasoning on it. Data is represented in the form of graphs, and more generally, as hypergraphs; thus the AtomSpace is a kind of graph database, the query engine is a general graph re-writing system, and the rule-engine is a generalized rule-driven inferencing system. The vertices and edges of a graph, known as "Atoms", are used to represent not only "data", but also "procedures"; thus, many graphs are executable programs as well as data structures. The AtomSpace is a platform for building Artificial General Intelligence (AGI) systems. It provides the central knowledge representation component for OpenCog. As such, it is a fairly mature component, on which a lot of other systems are built, and which depend on it for stable, correct operation in a day-to-day production environment.

CherryTree - A hierarchical note taking application

  •    C++

A hierarchical note taking application, featuring rich text and syntax highlighting, storing data in a single xml or sqlite file.

redis_failover - redis_failover is a ZooKeeper-based automatic master/slave failover solution for Ruby

  •    Ruby

redis_failover provides a full automatic master/slave failover solution for Ruby. Redis does not currently provide an automatic failover capability when configured for master/slave replication. When the master node dies, a new master must be manually brought online and assigned as the slave's new master. This manual switch-over is not desirable in high traffic sites where Redis is a critical part of the overall architecture. The existing standard Redis client for Ruby also only supports configuration for a single Redis server. When using master/slave replication, it is desirable to have all writes go to the master, and all reads go to one of the N configured slaves. This gem (built using ZK) attempts to address these failover scenarios. One or more Node Manager daemons run as background processes and monitor all of your configured master/slave nodes. When the daemon starts up, it automatically discovers the current master/slaves. Background watchers are setup for each of the redis nodes. As soon as a node is detected as being offline, it will be moved to an "unavailable" state. If the node that went offline was the master, then one of the slaves will be promoted as the new master. All existing slaves will be automatically reconfigured to point to the new master for replication. All nodes marked as unavailable will be periodically checked to see if they have been brought back online. If so, the newly available nodes will be configured as slaves and brought back into the list of available nodes. Note that detection of a node going down should be nearly instantaneous, since the mechanism used to keep tabs on a node is via a blocking Redis BLPOP call (no polling). This call fails nearly immediately when the node actually goes offline. To avoid false positives (i.e., intermittent flaky network interruption), the Node Manager will only mark a node as unavailable if it fails to communicate with it 3 times (this is configurable via --max-failures, see configuration options below). Note that you can (and should) deploy multiple Node Manager daemons since they each report periodic health reports/snapshots of the redis servers. A "node strategy" is used to determine if a node is actually unavailable. By default a majority strategy is used, but you can also configure "consensus" or "single" as well.

node-gyp - Node.js native addon build tool

  •    Python

node-gyp is a cross-platform command-line tool written in Node.js for compiling native addon modules for Node.js. It bundles the gyp project used by the Chromium team and takes away the pain of dealing with the various differences in build platforms. It is the replacement to the node-waf program which is removed for node v0.8. If you have a native addon for node that still has a wscript file, then you should definitely add a binding.gyp file to support the latest versions of node.Multiple target versions of node are supported (i.e. 0.8, ..., 4, 5, 6, etc.), regardless of what version of node is actually installed on your system (node-gyp downloads the necessary development files or headers for the target version).

node-fibers - Fiber/coroutine support for v8 and node.

  •    C++

Fibers, sometimes called coroutines, are a powerful tool which expose an API to jump between multiple call stacks from within a single thread. This can be useful to make code written for a synchronous library play nicely in an asynchronous environment. Note: node-fibers uses node-gyp for building. To manually invoke the build process, you can use node-gyp rebuild. This will put the compiled extension in build/Release/fibers.node. However, when you do require('fibers'), it will expect the module to be in, for example, bin/linux-x64-v8-3.11/fibers.node. You can manually put the module here every time you build, or you can use the included build script. Either npm install or node build -f will do this for you. If you are going to be hacking on node-fibers, it may be worthwhile to first do node-gyp configure and then for subsequent rebuilds you can just do node-gyp build which will be faster than a full npm install or node-gyp rebuild.

nodock - Docker Compose for Node projects with Node, MySQL, Redis, MongoDB, NGINX, Apache2, Memcached, Certbot and RabbitMQ images

  •    Shell

The docker Node.js image is very simple, you give it an entrypoint and it runs it. This is fine for very simple/small scripts but for larger projects you'll probably want something a bit more robust. The goal of NoDock is to provide a complete environment for your node project: Node.js service(s), databases, web servers, queues, etc. while doing the "wiring" for you.

We have large collection of open source products. Follow the tags from Tag Cloud >>

Open source products are scattered around the web. Please provide information about the open source projects you own / you use. Add Projects.