项目作者: BelirafoN

项目描述 :
Asterisk AMI Event Utils for NodeJS (ES2015)
高级语言: JavaScript
项目地址: git://github.com/BelirafoN/asterisk-ami-event-utils.git
创建时间: 2016-04-15T09:43:53Z
项目社区:https://github.com/BelirafoN/asterisk-ami-event-utils

开源协议:MIT License

下载


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

  1. $ 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

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

Examples

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

Tests

Tests require Mocha.

  1. mocha ./tests

or with npm

  1. npm test

Test coverage with Istanbul

  1. npm run coverage

License

Licensed under the MIT License