Skip to content
node-shift8 is an asynchronous asterisk manager interface based on the powerful node.js. The library in essence is a port (or will be) of my PHP version of the library, but with the twist of EventEmitter
Latest commit 55488a9 Nov 26, 2013 @twmobius Update package.json


Shift8 provides a simple mechanism over the AJAM asterisk interface. 
Apart from the obvious reason of providing an easy way to talk with a remote asterisk server, the main benefit of having an intermediate library between a software and an Asterisk server, is mostly that you can isolate the remote Asterisk, protecting the credentials and the entire PBX

And all of that with a twist of node.js


winston - Might be removed in future versions.

This is still a work in progress, see the tests.js for example on usage.

Events emited:

'event': 	When an event occurs on the remote asterisk
'connected':	When the library connects
'disconnected':	When the library disconnects
'error':	When an error occurs

This has been tested and works properly on Asterisk 10.7.0. Also in the last version there has been better support for the AsyncAGI command, as well as the new ConfBridge application of Asterisk 10

How to enable manager interface on asterisk:

You must initially enable the manager interface in the asterisk by editing asterisk/manager.conf. You need to set:

enabled = yes
webenabled = yes

You also need to create a manager for Shift8 to connect with:

secret = secret
deny =
permit =
read = system,call,log,verbose,agent,user,config,dtmf,reporting,cdr,dialplan
write = system,call,agent,user,config,command,reporting,originate

(Make sure you permit the ip address where shift8 is running)

Finally you must edit http.conf and enable it by setting "enable" attribute to yes.


Simple as nmp install node-shift8
Something went wrong with that request. Please try again.