Sign Up for Free

RunKit +

Try any Node.js package right in your browser

This is a playground to test code. It runs a full Node.js environment and already has all of npm’s 400,000 packages pre-installed, including dfi-asterisk-ami-event-utils with all npm packages installed. Try it out:

var dfiAsteriskAmiEventUtils = require("dfi-asterisk-ami-event-utils")

This service is provided by RunKit and is not affiliated with npm, Inc or the package authors.

dfi-asterisk-ami-event-utils v2.0.6

Asterisk AMI Event Utils for NodeJS (ES2015)

Asterisk AMI Event Utils for NodeJS (ES2015)

Build Status Coverage Status Code Climate npm version

Some service functions for parse\stringify raw data packages (events, actions, responses, extended responses) from Asterisk AMI's socket. This library is a part of Asterisk's AMI Client library.

Install

$ npm i asterisk-ami-event-utils

NodeJS versions

support >=4.0.0

Available methods

  • .toString(buffer) - converts raw AMI's data package from buffer to utf-8 string and trim all CRLF in start or end of this string;
  • .toObject(buffer) - converts raw AMI's data package from buffer to object;
  • .toJson(buffer) - converts raw AMI's data package from buffer to json-string;
  • .toArray(buffer) - converts raw AMI's data package from buffer to paired-array,
    like this: [['prop_name_1', 'prop_val_1'], ..., ['prop_name_n', 'prop_val_n']];
  • .fromObject(obj) - converts data package from object to string, which ready for send into
    socket of Asterisk AMI socket;
  • .fromArray(arr) - converts data package from paired-array to string, which ready for send into
    socket of Asterisk AMI socket;
  • .fromString(str) - prepares data package's string into correct form for send into socket of Asterisk AMI socket;

Usage

const amiUtils = require('asterisk-ami-event-utils');
let eventBuffer = '...'; // any buffer or string of event from AMI's socket or from other place
let eventObject = amiUtils.toObject(eventBuffer);

Examples

For examples, please, see tests ./test/*.

Tests

Tests require Mocha.

mocha ./tests

or with npm

npm test 

Test coverage with Istanbul

npm run coverage

License

Licensed under the MIT License

RunKit is a free, in-browser JavaScript dev environment for prototyping Node.js code, with every npm package installed. Sign up to share your code.
Sign Up for Free