Built motion from commit (unavailable).|2.5.15
[motion2.git] / server / services / ami / ami.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0x8d56=['util','lodash','../../config/logger','ami','port','asterisk','username','password','keepConnected','Action','promisify','error','format','Manager\x20\x22%s\x22\x20closed\x20to\x20%s:%s','sipshowregistry','actionDeviceStateList','devicestatelist','actionSipPeerStatus','actionQueueSummary','queuesummary','actionCoreShowChannels','info','once','close','shutdown','Shutdown\x20\x22%s\x22\x20to\x20%s:%s\x20with:\x0a%s','inspect','fullybooted','Fullybooted\x20\x22%s\x22\x20to\x20%s:%s','then','catch','exports','bluebird','moment'];(function(_0x468e3b,_0x22f8c3){var _0x242fbe=function(_0x276343){while(--_0x276343){_0x468e3b['push'](_0x468e3b['shift']());}};_0x242fbe(++_0x22f8c3);}(_0x8d56,0xa8));var _0x68d5=function(_0x5b3b9b,_0x1c71b0){_0x5b3b9b=_0x5b3b9b-0x0;var _0x47c1d7=_0x8d56[_0x5b3b9b];return _0x47c1d7;};'use strict';var Manager=require('asterisk-manager');var BPromise=require(_0x68d5('0x0'));var moment=require(_0x68d5('0x1'));var util=require(_0x68d5('0x2'));var _=require(_0x68d5('0x3'));var logger=require(_0x68d5('0x4'))(_0x68d5('0x5'));var config=require('../../config/environment');var ami=new Manager(config['asterisk'][_0x68d5('0x6')],config[_0x68d5('0x7')]['ip'],config[_0x68d5('0x7')][_0x68d5('0x8')],config[_0x68d5('0x7')][_0x68d5('0x9')],!![]);ami[_0x68d5('0xa')]();ami[_0x68d5('0xb')]=BPromise[_0x68d5('0xc')](ami['action']);function error(_0x22509d){logger[_0x68d5('0xd')](util[_0x68d5('0xe')]('Manager\x20\x22%s\x22\x20error\x20to\x20%s:%s\x20with:\x0a%s',config['asterisk'][_0x68d5('0x8')],config[_0x68d5('0x7')]['ip'],config[_0x68d5('0x7')][_0x68d5('0x6')],util['inspect'](_0x22509d,![],null)));}function close(){logger[_0x68d5('0xd')](util['format'](_0x68d5('0xf'),config[_0x68d5('0x7')][_0x68d5('0x8')],config[_0x68d5('0x7')]['ip'],config[_0x68d5('0x7')][_0x68d5('0x6')]));}ami['actionSipShowRegistry']=function(){return function(){return ami['Action']({'action':_0x68d5('0x10')});};};ami[_0x68d5('0x11')]=function(){return function(){return ami[_0x68d5('0xb')]({'action':_0x68d5('0x12')});};};ami[_0x68d5('0x13')]=function(){return function(){return ami[_0x68d5('0xb')]({'action':'sippeerstatus'});};};ami[_0x68d5('0x14')]=function(){return function(){return ami[_0x68d5('0xb')]({'action':_0x68d5('0x15')});};};ami[_0x68d5('0x16')]=function(){return function(){return ami[_0x68d5('0xb')]({'action':'coreshowchannels'});};};function connect(_0x1e2db6){logger[_0x68d5('0x17')](util[_0x68d5('0xe')]('Manager\x20\x22%s\x22\x20logged\x20on\x20to\x20%s:%s',config['asterisk'][_0x68d5('0x8')],config[_0x68d5('0x7')]['ip'],config[_0x68d5('0x7')][_0x68d5('0x6')]));ami[_0x68d5('0x18')](_0x68d5('0xd'),error);ami['once'](_0x68d5('0x19'),close);}ami['on']('connect',connect);ami['on'](_0x68d5('0x1a'),function(_0x441148){logger['info'](util[_0x68d5('0xe')](_0x68d5('0x1b'),config[_0x68d5('0x7')][_0x68d5('0x8')],config[_0x68d5('0x7')]['ip'],config[_0x68d5('0x7')][_0x68d5('0x6')],util[_0x68d5('0x1c')](_0x441148,![],null)));});ami['on'](_0x68d5('0x1d'),function(_0x593ce5){logger[_0x68d5('0x17')](util[_0x68d5('0xe')](_0x68d5('0x1e'),config[_0x68d5('0x7')][_0x68d5('0x8')],config[_0x68d5('0x7')]['ip'],config[_0x68d5('0x7')][_0x68d5('0x6')]));return BPromise['resolve']()[_0x68d5('0x1f')](ami['actionSipShowRegistry']())['then'](ami[_0x68d5('0x11')]())[_0x68d5('0x1f')](ami[_0x68d5('0x13')]())[_0x68d5('0x1f')](ami[_0x68d5('0x14')]())[_0x68d5('0x1f')](ami[_0x68d5('0x16')]())[_0x68d5('0x20')](function(_0x351eea){console['log'](_0x351eea);});});ami[_0x68d5('0x18')]('error',error);ami[_0x68d5('0x18')]('close',close);module[_0x68d5('0x21')]=ami;