@artcosoft/ami-event-utils
v0.1.2
Published
Asterisk AMI Event Utils for NodeJS (ES2015)
Downloads
2
Readme
2022 update
This is a fork of asterisk-ami-event-utils and this
Major differences:
- the local version does not correspond with the original repo
- package name
@artcosoft/ami-event-utils
- extended typescript support
- the lib needs to be compiled before publishing
Asterisk AMI Event Utils for NodeJS (ES2015)
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