Built motion from commit (unavailable).|2.5.4
[motion2.git] / server / services / ami / server / index.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 _0x0aad=['outboundReCallsDay','outboundRejectCallsDay','outboundUnknownCallsDay','predictiveIntervalAnsweredCalls','predictiveIntervalAvgHoldtime','predictiveIntervalAvgTalktime','predictiveIntervalDroppedCallsCallersExit','predictiveIntervalDroppedCallsTimeout','predictiveIntervalErlangCalls','predictiveIntervalErlangCallsDroppedCalls','predictiveIntervalHitRate','predictiveIntervalMultiplicativeFactor','predictiveIntervalPauses','predictiveIntervalAvailable','originated','erlangCalls','erlangCallToSecond','erlangAbandonmentRate','erlangBusyFactor','startPredictive','Trunk','Interval','length','values','voicechannel','map','find','channels','uniqueid','channel','%s.%s','filename','MixMonitor','monitors','/var/spool/asterisk/monitor/','toLowerCase','push','mixmonitorid','rec','status','Channel\x20doesn\x27t\x20exist','resolve','StopMixMonitor','stop','wav','StopMixMonitor\x20Success','queueChannels','voicequeuechannel','voicequeuechannelhangup','Hangup','voicequeuechannelredirect','Redirect','exten','context','telephones','trunks','outboundChannels','campaigns','Event\x20name\x20mandatory','emit','custom:','event','faxAccounts','checkAfterSend','http','log','RPC\x20listening\x20on\x20port:','lodash','util','jayson/promise','validate','moment','../../../config/environment','../properties','listen','format','%s/%s','name','timers','updateAcw','agents','updateStatusRealtime','pause','isConnected','error','asterisk','username','ami\x20disconnected','join','pick','keys','Action','then','message','catch','command','Command','content','hasOwnProperty','voiceQueues','strategy','answered','available','loggedIn','pTalking','sumBillable','sumDuration','sumHoldTime','total','type','unmanaged','abandoned','waiting','loggedInDb','outbound','dialActive','dialMethod','dialOriginateCallerIdName','dialOriginateCallerIdNumber','dialOriginateTimeout','dialPrefix','outboundAnswerAgiCallsDay','outboundAnswerCallsDay','outboundBlacklistCallsDay','outboundBusyCallsDay','outboundCongestionCallsDay','outboundDropCallsDayACS','outboundDropCallsDayCallersExit','outboundDropCallsDayTimeout','outboundNoAnswerCallsDay','outboundNoSuchCallsDay','outboundOriginateFailureCallsDay'];(function(_0x333d5d,_0x29f9f8){var _0x29a6e1=function(_0x2ab1b5){while(--_0x2ab1b5){_0x333d5d['push'](_0x333d5d['shift']());}};_0x29a6e1(++_0x29f9f8);}(_0x0aad,0x1cf));var _0xd0aa=function(_0x4a9fb1,_0x273043){_0x4a9fb1=_0x4a9fb1-0x0;var _0x348672=_0x0aad[_0x4a9fb1];return _0x348672;};'use strict';var _=require(_0xd0aa('0x0'));var util=require(_0xd0aa('0x1'));var jayson=require(_0xd0aa('0x2'));var schema=require(_0xd0aa('0x3'));var BPromise=require('bluebird');var moment=require(_0xd0aa('0x4'));var config=require(_0xd0aa('0x5'));var properties=require(_0xd0aa('0x6'));var ami=require('../ami');exports[_0xd0aa('0x7')]=function(_0x27df19,_0x8801ca,_0x202363){return new BPromise(function(_0x243bb1,_0x12039e){var _0x117a8c={'QueuePause':function(_0xd2efd6){return new Promise(function(_0x350c5b,_0x46cb82){var _0x33a0f1=util[_0xd0aa('0x8')](_0xd0aa('0x9'),'SIP',_0xd2efd6[_0xd0aa('0xa')]);if(_0x27df19[_0xd0aa('0xb')]&&_0x27df19[_0xd0aa('0xb')][_0x33a0f1]&&_0x27df19[_0xd0aa('0xb')][_0x33a0f1]['timer']){_0x27df19[_0xd0aa('0xb')][_0x33a0f1][_0xd0aa('0xc')]();}if(_0x27df19[_0xd0aa('0xd')][_0x33a0f1]){_0x27df19[_0xd0aa('0xd')][_0x33a0f1][_0xd0aa('0xe')]({'statePause':_0xd2efd6[_0xd0aa('0xf')]?!![]:![]});}_0x350c5b({'code':0xc8,'message':'QueuePause'});});},'Reload':function(_0x121582){var _0x25d178=this;return new Promise(function(_0x8894e2,_0x28b312){if(ami[_0xd0aa('0x10')]()==![]){return _0x28b312(_0x25d178[_0xd0aa('0x11')](0x1f4,[config[_0xd0aa('0x12')]['ip'],config[_0xd0aa('0x12')][_0xd0aa('0x13')],_0xd0aa('0x14')][_0xd0aa('0x15')]('\x20')));}_0x121582=_[_0xd0aa('0x16')](_0x121582,_[_0xd0aa('0x17')](properties['module']));_0x121582['action']='Reload';return ami[_0xd0aa('0x18')](_0x121582)[_0xd0aa('0x19')](function(_0x5942d0){_0x8894e2({'code':0xc8,'message':_0x5942d0[_0xd0aa('0x1a')]});})[_0xd0aa('0x1b')](function(_0x5442cb){_0x28b312(_0x25d178[_0xd0aa('0x11')](0x1f5,_0x5442cb[_0xd0aa('0x1a')]));});});},'Command':function(_0x5ae61b){var _0x46accf=this;return new Promise(function(_0x4cdcaf,_0x2e1785){if(ami['isConnected']()==![]){return _0x2e1785(_0x46accf['error'](0x1f4,[config[_0xd0aa('0x12')]['ip'],config['asterisk'][_0xd0aa('0x13')],_0xd0aa('0x14')][_0xd0aa('0x15')]('\x20')));}_0x5ae61b=_['pick'](_0x5ae61b,_0xd0aa('0x1c'));_0x5ae61b['action']=_0xd0aa('0x1d');return ami[_0xd0aa('0x18')](_0x5ae61b)['then'](function(_0x163d05){_0x4cdcaf({'code':0xc8,'message':_0x163d05[_0xd0aa('0x1e')]});})[_0xd0aa('0x1b')](function(_0x48838e){_0x2e1785(_0x46accf[_0xd0aa('0x11')](0x1f5,_0x48838e[_0xd0aa('0x1a')]));});});},'VoiceQueues':function(_0x4718db){return new Promise(function(_0x3a05a6,_0x7b3173){var _0x5d5644=[];for(var _0x525376 in _0x27df19['voiceQueues']){if(_0x27df19['voiceQueues'][_0xd0aa('0x1f')](_0x525376)){var _0x1aefcd=_0x27df19[_0xd0aa('0x20')][_0x525376];var _0x56c5e4={'id':_0x1aefcd['id'],'name':_0x1aefcd[_0xd0aa('0xa')],'strategy':_0x1aefcd[_0xd0aa('0x21')],'answered':_0x1aefcd[_0xd0aa('0x22')],'available':_0x1aefcd[_0xd0aa('0x23')],'loggedIn':_0x1aefcd[_0xd0aa('0x24')],'pTalking':_0x1aefcd[_0xd0aa('0x25')],'sumBillable':_0x1aefcd[_0xd0aa('0x26')],'sumDuration':_0x1aefcd[_0xd0aa('0x27')],'sumHoldTime':_0x1aefcd[_0xd0aa('0x28')]||0x0,'talking':_0x1aefcd['talking'],'total':_0x1aefcd[_0xd0aa('0x29')],'type':_0x1aefcd[_0xd0aa('0x2a')],'unmanaged':_0x1aefcd[_0xd0aa('0x2b')],'abandoned':_0x1aefcd[_0xd0aa('0x2c')],'waiting':_0x1aefcd[_0xd0aa('0x2d')],'loggedInDb':_0x1aefcd[_0xd0aa('0x2e')]};if(_0x1aefcd[_0xd0aa('0x2a')]===_0xd0aa('0x2f')){_0x56c5e4[_0xd0aa('0x30')]=_0x1aefcd[_0xd0aa('0x30')];_0x56c5e4[_0xd0aa('0x31')]=_0x1aefcd[_0xd0aa('0x31')];_0x56c5e4[_0xd0aa('0x32')]=_0x1aefcd[_0xd0aa('0x32')];_0x56c5e4[_0xd0aa('0x33')]=_0x1aefcd['dialOriginateCallerIdNumber'];_0x56c5e4[_0xd0aa('0x34')]=_0x1aefcd['dialOriginateTimeout'];_0x56c5e4[_0xd0aa('0x35')]=_0x1aefcd[_0xd0aa('0x35')];_0x56c5e4[_0xd0aa('0x36')]=_0x1aefcd['outboundAnswerAgiCallsDay'];_0x56c5e4[_0xd0aa('0x37')]=_0x1aefcd[_0xd0aa('0x37')];_0x56c5e4[_0xd0aa('0x38')]=_0x1aefcd[_0xd0aa('0x38')];_0x56c5e4[_0xd0aa('0x39')]=_0x1aefcd[_0xd0aa('0x39')];_0x56c5e4['outboundCongestionCallsDay']=_0x1aefcd[_0xd0aa('0x3a')];_0x56c5e4['outboundDropCallsDayACS']=_0x1aefcd[_0xd0aa('0x3b')];_0x56c5e4[_0xd0aa('0x3c')]=_0x1aefcd[_0xd0aa('0x3c')];_0x56c5e4['outboundDropCallsDayTimeout']=_0x1aefcd[_0xd0aa('0x3d')];_0x56c5e4[_0xd0aa('0x3e')]=_0x1aefcd[_0xd0aa('0x3e')];_0x56c5e4[_0xd0aa('0x3f')]=_0x1aefcd[_0xd0aa('0x3f')];_0x56c5e4[_0xd0aa('0x40')]=_0x1aefcd[_0xd0aa('0x40')];_0x56c5e4[_0xd0aa('0x41')]=_0x1aefcd[_0xd0aa('0x41')];_0x56c5e4[_0xd0aa('0x42')]=_0x1aefcd[_0xd0aa('0x42')];_0x56c5e4[_0xd0aa('0x43')]=_0x1aefcd[_0xd0aa('0x43')];_0x56c5e4[_0xd0aa('0x44')]=_0x1aefcd[_0xd0aa('0x44')];_0x56c5e4[_0xd0aa('0x45')]=_0x1aefcd['predictiveIntervalAvgHoldtime'];_0x56c5e4[_0xd0aa('0x46')]=_0x1aefcd[_0xd0aa('0x46')];_0x56c5e4['predictiveIntervalDroppedCallsCallersExit']=_0x1aefcd[_0xd0aa('0x47')];_0x56c5e4[_0xd0aa('0x48')]=_0x1aefcd['predictiveIntervalDroppedCallsTimeout'];_0x56c5e4[_0xd0aa('0x49')]=_0x1aefcd[_0xd0aa('0x49')];_0x56c5e4[_0xd0aa('0x4a')]=_0x1aefcd['predictiveIntervalErlangCallsDroppedCalls'];_0x56c5e4[_0xd0aa('0x4b')]=_0x1aefcd['predictiveIntervalHitRate'];_0x56c5e4[_0xd0aa('0x4c')]=_0x1aefcd['predictiveIntervalMultiplicativeFactor'];_0x56c5e4[_0xd0aa('0x4d')]=_0x1aefcd[_0xd0aa('0x4d')];_0x56c5e4['predictiveIntervalAvailable']=_0x1aefcd[_0xd0aa('0x4e')];_0x56c5e4['predictiveIntervalTotalCalls']=_0x1aefcd['predictiveIntervalTotalCalls'];_0x56c5e4[_0xd0aa('0x1a')]=_0x1aefcd[_0xd0aa('0x1a')];_0x56c5e4[_0xd0aa('0x4f')]=_0x1aefcd[_0xd0aa('0x4f')];_0x56c5e4[_0xd0aa('0x50')]=_0x1aefcd[_0xd0aa('0x50')];_0x56c5e4['erlangCallToSecond']=_0x1aefcd[_0xd0aa('0x51')];_0x56c5e4['erlangAbandonmentRate']=_0x1aefcd[_0xd0aa('0x52')];_0x56c5e4['erlangBusyFactor']=_0x1aefcd[_0xd0aa('0x53')];_0x56c5e4[_0xd0aa('0x54')]=_0x1aefcd[_0xd0aa('0x54')];_0x56c5e4['startProgressive']=_0x1aefcd['startProgressive'];}if(_0x1aefcd['Trunk']){_0x56c5e4[_0xd0aa('0x55')]={'id':_0x1aefcd[_0xd0aa('0x55')]['id'],'name':_0x1aefcd[_0xd0aa('0x55')][_0xd0aa('0xa')],'active':_0x1aefcd[_0xd0aa('0x55')]['active'],'callerid':_0x1aefcd[_0xd0aa('0x55')]['callerid']};}if(_0x1aefcd[_0xd0aa('0x56')]){_0x56c5e4[_0xd0aa('0x56')]={'id':_0x1aefcd[_0xd0aa('0x56')]['id'],'name':_0x1aefcd[_0xd0aa('0x56')][_0xd0aa('0xa')]};}_0x5d5644['push'](_0x56c5e4);}}_0x3a05a6({'count':_0x5d5644[_0xd0aa('0x57')],'rows':_0x5d5644});});},'VoiceChannels':function(_0xaea36d){return new Promise(function(_0x38eccf,_0x703427){var _0x5d705a=_[_0xd0aa('0x58')](_0x27df19['channels']);_0x38eccf({'count':_0x5d705a[_0xd0aa('0x57')],'rows':_0x5d705a});});},'VoiceChannelMixMonitor':function(_0x3b9b40){var _0x1e3786=this;return new Promise(function(_0x24773e,_0x5c87d7){if(ami[_0xd0aa('0x10')]()==![]){return _0x5c87d7(_0x1e3786[_0xd0aa('0x11')](0x1f4,[config[_0xd0aa('0x12')]['ip'],config['asterisk'][_0xd0aa('0x13')],_0xd0aa('0x14')]['join']('\x20')));}var _0x531948=schema(properties[_0xd0aa('0x59')])[_0xd0aa('0x3')](_0x3b9b40);if(_0x531948[_0xd0aa('0x57')]>0x0){return _0x5c87d7(_0x1e3786[_0xd0aa('0x11')](0x1f4,_[_0xd0aa('0x5a')](_0x531948,'message')[_0xd0aa('0x15')](',\x20')));}var _0x454a6a=_[_0xd0aa('0x5b')](_0x27df19[_0xd0aa('0x5c')],{'uniqueid':_0x3b9b40[_0xd0aa('0x5d')]});if(_0x454a6a&&_0x454a6a[_0xd0aa('0x5e')]){var _0x10a0cb=util[_0xd0aa('0x8')](_0xd0aa('0x5f'),_0x3b9b40[_0xd0aa('0x60')]||_0x3b9b40['uniqueid'],_0x3b9b40[_0xd0aa('0x8')]||'wav');return ami[_0xd0aa('0x18')]({'action':_0xd0aa('0x61'),'channel':_0x454a6a['channel'],'file':_0x10a0cb,'options':'ai(mixmonitorid)'})[_0xd0aa('0x19')](function(_0x7f6597){var _0x3d119b=_['find'](_0x454a6a[_0xd0aa('0x62')],{'filename':_0xd0aa('0x63')+_0x10a0cb[_0xd0aa('0x64')]()});if(_['isNil'](_0x3d119b)){_0x454a6a[_0xd0aa('0x62')][_0xd0aa('0x65')]({'filename':'/var/spool/asterisk/monitor/'+_0x10a0cb[_0xd0aa('0x64')](),'createdAt':moment()[_0xd0aa('0x8')]('YYYY-MM-DD\x20HH:mm:ss'),'mixmonitorid':_0x7f6597[_0xd0aa('0x66')],'status':_0xd0aa('0x67')});}else{_0x3d119b[_0xd0aa('0x66')]=_0x7f6597[_0xd0aa('0x66')];_0x3d119b[_0xd0aa('0x68')]=_0xd0aa('0x67');}_0x24773e({'code':0xc8,'message':[_0x3b9b40['uniqueid'],'MixMonitor\x20Success',_0x7f6597[_0xd0aa('0x66')]][_0xd0aa('0x15')]('\x20'),'mixmonitorid':_0x7f6597['mixmonitorid']});})[_0xd0aa('0x1b')](function(_0x2dfe07){_0x5c87d7(_0x1e3786[_0xd0aa('0x11')](0x1f5,[_0x3b9b40['uniqueid'],_0x2dfe07['message'][_0xd0aa('0x64')]()][_0xd0aa('0x15')]('\x20')));});}else{return _0x5c87d7(_0x1e3786[_0xd0aa('0x11')](0x1f5,_0xd0aa('0x69')));}});},'VoiceChannelStopMixMonitor':function(_0xde3567){var _0x21d689=this;return new Promise(function(_0x38ff92,_0x1801fb){if(ami[_0xd0aa('0x10')]()==![]){return _0x1801fb(_0x21d689[_0xd0aa('0x11')](0x1f4,[config[_0xd0aa('0x12')]['ip'],config[_0xd0aa('0x12')][_0xd0aa('0x13')],_0xd0aa('0x14')][_0xd0aa('0x15')]('\x20')));}var _0x2f19ed=schema(properties[_0xd0aa('0x59')])[_0xd0aa('0x3')](_0xde3567);if(_0x2f19ed[_0xd0aa('0x57')]>0x0){return _0x1801fb(_0x21d689[_0xd0aa('0x11')](0x1f4,_[_0xd0aa('0x5a')](_0x2f19ed,_0xd0aa('0x1a'))[_0xd0aa('0x15')](',\x20')));}var _0x15b1da=_[_0xd0aa('0x5b')](_0x27df19[_0xd0aa('0x5c')],{'uniqueid':_0xde3567[_0xd0aa('0x5d')]});if(_0x15b1da){return BPromise[_0xd0aa('0x6a')]()[_0xd0aa('0x19')](function(){if(_0x15b1da[_0xd0aa('0x5e')]){return ami['Action']({'action':'StopMixMonitor','channel':_0x15b1da['channel'],'mixmonitorid':_0xde3567[_0xd0aa('0x66')]})[_0xd0aa('0x1b')](function(_0x12f059){});}})[_0xd0aa('0x19')](function(){if(_0x15b1da['destinationchannel']){return ami[_0xd0aa('0x18')]({'action':_0xd0aa('0x6b'),'channel':_0x15b1da['destinationchannel'],'mixmonitorid':_0xde3567[_0xd0aa('0x66')]})['catch'](function(_0x3ac94f){});}})['then'](function(_0x51c0a7){var _0x1d4eb4=_['find'](_0x15b1da[_0xd0aa('0x62')],{'mixmonitorid':_0xde3567[_0xd0aa('0x66')]});if(_0x1d4eb4){_0x1d4eb4[_0xd0aa('0x68')]=_0xd0aa('0x6c');}})[_0xd0aa('0x19')](function(){var _0x274690=util[_0xd0aa('0x8')](_0xd0aa('0x5f'),_0xde3567['filename']||_0xde3567[_0xd0aa('0x5d')],_0xde3567[_0xd0aa('0x8')]||_0xd0aa('0x6d'));var _0x2250c8=_[_0xd0aa('0x5b')](_0x15b1da['monitors'],{'filename':_0xd0aa('0x63')+_0x274690['toLowerCase']()});if(_0x2250c8){_0x2250c8[_0xd0aa('0x68')]=_0xd0aa('0x6c');}})[_0xd0aa('0x19')](function(){_0x38ff92({'code':0xc8,'message':[_0xde3567[_0xd0aa('0x5d')],_0xd0aa('0x6e')]['join']('\x20')});})[_0xd0aa('0x1b')](function(_0x434b8e){_0x1801fb(_0x21d689[_0xd0aa('0x11')](0x1f5,[_0xde3567['uniqueid'],_0x434b8e['message'][_0xd0aa('0x64')]()][_0xd0aa('0x15')]('\x20')));});}else{return _0x1801fb(_0x21d689['error'](0x1f5,'Channel\x20doesn\x27t\x20exist'));}});},'VoiceQueuesChannels':function(_0x2bd366){return new Promise(function(_0x51c45d,_0x28bd6c){var _0x508796=_['values'](_0x27df19[_0xd0aa('0x6f')]);_0x51c45d({'count':_0x508796[_0xd0aa('0x57')],'rows':_0x508796});});},'VoiceQueuesChannel':function(_0x5489d3){var _0x2c0ab3=this;return new Promise(function(_0x59e7f3,_0x2056a9){var _0x33ff90=schema(properties[_0xd0aa('0x70')])[_0xd0aa('0x3')](_0x5489d3);if(_0x33ff90[_0xd0aa('0x57')]>0x0){return _0x2056a9(_0x2c0ab3[_0xd0aa('0x11')](0x1f4,_[_0xd0aa('0x5a')](_0x33ff90,_0xd0aa('0x1a'))[_0xd0aa('0x15')](',\x20')));}var _0x595eef=_[_0xd0aa('0x5b')](_0x27df19[_0xd0aa('0x6f')],{'uniqueid':_0x5489d3['uniqueid']});if(_0x595eef){_0x59e7f3(_0x595eef);}else{return _0x2056a9(_0x2c0ab3['error'](0x1f5,_0xd0aa('0x69')));}});},'VoiceQueuesChannelHangup':function(_0x3c2ff1){var _0x1a7903=this;return new Promise(function(_0x27f014,_0x5f4faa){if(ami[_0xd0aa('0x10')]()==![]){return _0x5f4faa(_0x1a7903[_0xd0aa('0x11')](0x1f4,[config['asterisk']['ip'],config[_0xd0aa('0x12')][_0xd0aa('0x13')],_0xd0aa('0x14')][_0xd0aa('0x15')]('\x20')));}var _0x387cee=schema(properties[_0xd0aa('0x71')])['validate'](_0x3c2ff1);if(_0x387cee['length']>0x0){return _0x5f4faa(_0x1a7903['error'](0x1f4,_[_0xd0aa('0x5a')](_0x387cee,_0xd0aa('0x1a'))[_0xd0aa('0x15')](',\x20')));}var _0x379653=_[_0xd0aa('0x5b')](_0x27df19[_0xd0aa('0x6f')],{'uniqueid':_0x3c2ff1[_0xd0aa('0x5d')]});if(_0x379653&&_0x379653['channel']){return ami[_0xd0aa('0x18')]({'action':_0xd0aa('0x72'),'channel':_0x379653[_0xd0aa('0x5e')]})[_0xd0aa('0x19')](function(_0x5ac3dd){_0x27f014({'code':0xc8,'message':[_0x3c2ff1[_0xd0aa('0x5d')],_0x5ac3dd[_0xd0aa('0x1a')][_0xd0aa('0x64')]()][_0xd0aa('0x15')]('\x20')});})['catch'](function(_0x2f9d07){_0x5f4faa(_0x1a7903[_0xd0aa('0x11')](0x1f5,[_0x3c2ff1[_0xd0aa('0x5d')],_0x2f9d07[_0xd0aa('0x1a')]['toLowerCase']()][_0xd0aa('0x15')]('\x20')));});}else{return _0x5f4faa(_0x1a7903[_0xd0aa('0x11')](0x1f5,_0xd0aa('0x69')));}});},'VoiceQueuesChannelRedirect':function(_0x66a748){var _0x28b4d3=this;return new Promise(function(_0x53a988,_0x5575f7){if(ami[_0xd0aa('0x10')]()==![]){return _0x5575f7(_0x28b4d3[_0xd0aa('0x11')](0x1f4,[config[_0xd0aa('0x12')]['ip'],config[_0xd0aa('0x12')]['username'],_0xd0aa('0x14')][_0xd0aa('0x15')]('\x20')));}var _0x544ed1=schema(properties[_0xd0aa('0x73')])[_0xd0aa('0x3')](_0x66a748);if(_0x544ed1[_0xd0aa('0x57')]>0x0){return _0x5575f7(_0x28b4d3[_0xd0aa('0x11')](0x1f4,_['map'](_0x544ed1,_0xd0aa('0x1a'))[_0xd0aa('0x15')](',\x20')));}var _0x131119=_[_0xd0aa('0x5b')](_0x27df19[_0xd0aa('0x6f')],{'uniqueid':_0x66a748['uniqueid']});if(_0x131119&&_0x131119[_0xd0aa('0x5e')]){return ami[_0xd0aa('0x18')]({'action':_0xd0aa('0x74'),'channel':_0x131119[_0xd0aa('0x5e')],'exten':_0x66a748[_0xd0aa('0x75')],'context':_0x66a748[_0xd0aa('0x76')]||_0x131119['context'],'priority':0x1})['then'](function(_0xdaeed5){_0x53a988({'code':0xc8,'message':[_0x66a748[_0xd0aa('0x5d')],_0xdaeed5['message']['toLowerCase']()][_0xd0aa('0x15')]('\x20')});})[_0xd0aa('0x1b')](function(_0x98f3aa){_0x5575f7(_0x28b4d3[_0xd0aa('0x11')](0x1f5,[_0x66a748[_0xd0aa('0x5d')],_0x98f3aa[_0xd0aa('0x1a')][_0xd0aa('0x64')]()][_0xd0aa('0x15')]('\x20')));});}else{return _0x5575f7(_0x28b4d3[_0xd0aa('0x11')](0x1f5,_0xd0aa('0x69')));}});},'Agents':function(_0x187519){return new Promise(function(_0x406501,_0x3da2c0){var _0x4afd0=_[_0xd0aa('0x58')](_0x27df19[_0xd0aa('0xd')]);_0x406501({'count':_0x4afd0[_0xd0aa('0x57')],'rows':_0x4afd0});});},'Telephones':function(_0x395d61){return new Promise(function(_0x4cc0b8,_0x585b82){var _0x2a0a78=_[_0xd0aa('0x58')](_0x27df19[_0xd0aa('0x77')]);_0x4cc0b8({'count':_0x2a0a78[_0xd0aa('0x57')],'rows':_0x2a0a78});});},'Trunks':function(_0x33f74f){return new Promise(function(_0x1ef680,_0x252ac7){var _0x1910d6=_[_0xd0aa('0x58')](_0x27df19[_0xd0aa('0x78')]);_0x1ef680({'count':_0x1910d6[_0xd0aa('0x57')],'rows':_0x1910d6});});},'OutboundChannels':function(_0x4e5c44){return new Promise(function(_0x1d6c07,_0x5652dc){var _0x521e0c=_[_0xd0aa('0x58')](_0x27df19[_0xd0aa('0x79')]);_0x1d6c07({'count':_0x521e0c[_0xd0aa('0x57')],'rows':_0x521e0c});});},'Outbound':function(_0x933ac){return new Promise(function(_0x3db2df,_0x319823){_0x3db2df(_0x27df19[_0xd0aa('0x2f')]);});},'Campaigns':function(_0x14d34f){return new Promise(function(_0x1800c1,_0x400823){var _0x362882=_[_0xd0aa('0x58')](_0x27df19[_0xd0aa('0x7a')]);_0x1800c1({'count':_0x362882[_0xd0aa('0x57')],'rows':_0x362882});});},'VoiceQueuesPreview':function(_0x470c40){var _0x49c083=this;return new Promise(function(_0x1907ea,_0x50936c){_0x8801ca['run'](_0x470c40['id'])[_0xd0aa('0x19')](function(_0x1e265){_0x1907ea({'code':0xc8,'message':_0x1e265[_0xd0aa('0x1a')]});})['catch'](function(_0x4c2433){_0x50936c(_0x49c083['error'](0x1f4,_0x4c2433[_0xd0aa('0x1a')]));});});},'EventManager':function(_0x40c6b6){var _0x1a2915=this;return new Promise(function(_0x3916a0,_0x287f4a){if(!_0x40c6b6['event']){return _0x287f4a(_0x1a2915[_0xd0aa('0x11')](0x1f4,_0xd0aa('0x7b')));}ami[_0xd0aa('0x7c')](_0xd0aa('0x7d')+_0x40c6b6[_0xd0aa('0x7e')],_0x40c6b6['message']);_0x3916a0({'code':0xc8,'message':_0x40c6b6});});},'FaxAccounts':function(_0x48bbe4){return new Promise(function(_0x1c6540,_0x5b63d7){var _0x552972=_[_0xd0aa('0x58')](_0x27df19[_0xd0aa('0x7f')]);_0x1c6540({'count':_0x552972[_0xd0aa('0x57')],'rows':_0x552972});});},'SendFax':function(_0x2e5dc3){var _0x834983=this;return new Promise(function(_0xb89c36,_0x2dad61){_0x202363['send'](_0x2e5dc3)['then'](function(_0x16168f){_0xb89c36({'code':0xc8,'message':_0x16168f[_0xd0aa('0x1a')]});})[_0xd0aa('0x1b')](function(_0x26ba3c){_0x2dad61(_0x834983[_0xd0aa('0x11')](0x1f4,_0x26ba3c[_0xd0aa('0x1a')]));});});},'CheckAfterSend':function(_0x24ddd0){var _0x3ebab5=this;return new Promise(function(_0xdb9a36,_0x296b8f){_0x202363[_0xd0aa('0x80')](_0x24ddd0)[_0xd0aa('0x19')](function(_0x103084){_0xdb9a36({'code':0xc8,'message':_0x103084[_0xd0aa('0x1a')]});})[_0xd0aa('0x1b')](function(_0x3dce34){_0x296b8f(_0x3ebab5[_0xd0aa('0x11')](0x1f4,_0x3dce34[_0xd0aa('0x1a')]));});});}};var _0x1b23f4=jayson['server'](_0x117a8c)[_0xd0aa('0x81')]();_0x1b23f4['on']('error',function(_0x428ce8){return _0x12039e(_0x428ce8);});_0x1b23f4[_0xd0aa('0x7')](0x232a,'127.0.0.1',function(){console[_0xd0aa('0x82')]('AMI\x20RPC\x20server\x20listening\x20on\x20127.0.0.1:%d!',0x232a);return _0x243bb1(_0xd0aa('0x83')+0x232a);});});};