ae9cf334298a298496729ded7b9c3481006d513c
[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 _0x1b65=['destinationchannel','stop','toLowerCase','StopMixMonitor\x20Success','queueChannels','voicequeuechannel','voicequeuechannelhangup','voicequeuechannelredirect','Redirect','exten','context','telephones','trunks','campaigns','event','Event\x20name\x20mandatory','emit','custom:','faxAccounts','send','checkAfterSend','http','log','AMI\x20RPC\x20server\x20listening\x20on\x20127.0.0.1:%d!','RPC\x20listening\x20on\x20port:','lodash','util','jayson/promise','validate','moment','../../../config/environment','../properties','../ami','listen','%s/%s','timers','timer','agents','QueuePause','isConnected','error','asterisk','username','join','pick','keys','action','Action','then','message','catch','ami\x20disconnected','Command','content','voiceQueues','name','strategy','answered','available','loggedIn','sumBillable','sumDuration','sumHoldTime','total','type','unmanaged','abandoned','loggedInDb','outbound','dialActive','dialMethod','dialOriginateCallerIdName','dialOriginateCallerIdNumber','dialOriginateTimeout','dialPrefix','temp','outboundAnswerAgiCallsDay','outboundAnswerCallsDay','outboundBlacklistCallsDay','outboundBusyCallsDay','outboundCongestionCallsDay','outboundDropCallsDayACS','outboundDropCallsDayCallersExit','outboundDropCallsDayTimeout','outboundNoAnswerCallsDay','outboundNoSuchCallsDay','outboundOriginateFailureCallsDay','outboundReCallsDay','outboundRejectCallsDay','outboundUnknownCallsDay','predictiveIntervalAnsweredCalls','predictiveIntervalAvgHoldtime','predictiveIntervalAvgTalktime','predictiveIntervalDroppedCallsCallersExit','predictiveIntervalDroppedCallsTimeout','predictiveIntervalErlangCalls','predictiveIntervalErlangCallsDroppedCalls','predictiveIntervalHitRate','predictiveIntervalMultiplicativeFactor','predictiveIntervalPauses','predictiveIntervalAvailable','predictiveIntervalTotalCalls','erlangCalls','erlangCallToSecond','erlangAbandonmentRate','startPredictive','startProgressive','Trunk','active','callerid','Interval','push','length','undefined','values','channels','voicechannel','map','find','uniqueid','channel','format','%s.%s','filename','wav','MixMonitor','ai(mixmonitorid)','/var/spool/asterisk/monitor/','isNil','monitors','YYYY-MM-DD\x20HH:mm:ss','mixmonitorid','status','rec','Channel\x20doesn\x27t\x20exist','resolve','StopMixMonitor'];(function(_0x7d06ee,_0x5dd590){var _0x33e231=function(_0x498f6c){while(--_0x498f6c){_0x7d06ee['push'](_0x7d06ee['shift']());}};_0x33e231(++_0x5dd590);}(_0x1b65,0x1b4));var _0x51b6=function(_0x10e988,_0x272453){_0x10e988=_0x10e988-0x0;var _0x37ed93=_0x1b65[_0x10e988];return _0x37ed93;};'use strict';var _=require(_0x51b6('0x0'));var util=require(_0x51b6('0x1'));var jayson=require(_0x51b6('0x2'));var schema=require(_0x51b6('0x3'));var BPromise=require('bluebird');var moment=require(_0x51b6('0x4'));var config=require(_0x51b6('0x5'));var properties=require(_0x51b6('0x6'));var ami=require(_0x51b6('0x7'));exports[_0x51b6('0x8')]=function(_0x1ba2e9,_0x19d788,_0x578b6a){return new BPromise(function(_0x466a60,_0xecac96){var _0x2c6926={'QueuePause':function(_0x16459f){return new Promise(function(_0x52d315,_0xb36957){var _0x3fb4a6=util['format'](_0x51b6('0x9'),'SIP',_0x16459f['name']);if(_0x1ba2e9[_0x51b6('0xa')]&&_0x1ba2e9[_0x51b6('0xa')][_0x3fb4a6]&&_0x1ba2e9[_0x51b6('0xa')][_0x3fb4a6][_0x51b6('0xb')]){_0x1ba2e9[_0x51b6('0xa')][_0x3fb4a6]['updateAcw']();}if(_0x1ba2e9['agents'][_0x3fb4a6]){_0x1ba2e9[_0x51b6('0xc')][_0x3fb4a6]['updateStatusRealtime']({'statePause':_0x16459f['pause']?!![]:![]});}_0x52d315({'code':0xc8,'message':_0x51b6('0xd')});});},'Reload':function(_0x4ca143){var _0x2c2aff=this;return new Promise(function(_0x48ab57,_0x41892f){if(ami[_0x51b6('0xe')]()==![]){return _0x41892f(_0x2c2aff[_0x51b6('0xf')](0x1f4,[config[_0x51b6('0x10')]['ip'],config[_0x51b6('0x10')][_0x51b6('0x11')],'ami\x20disconnected'][_0x51b6('0x12')]('\x20')));}_0x4ca143=_[_0x51b6('0x13')](_0x4ca143,_[_0x51b6('0x14')](properties['module']));_0x4ca143[_0x51b6('0x15')]='Reload';return ami[_0x51b6('0x16')](_0x4ca143)[_0x51b6('0x17')](function(_0x210776){_0x48ab57({'code':0xc8,'message':_0x210776[_0x51b6('0x18')]});})[_0x51b6('0x19')](function(_0x22c6da){_0x41892f(_0x2c2aff['error'](0x1f5,_0x22c6da[_0x51b6('0x18')]));});});},'Command':function(_0x5b8a31){var _0x2974f0=this;return new Promise(function(_0x444da9,_0x506367){if(ami[_0x51b6('0xe')]()==![]){return _0x506367(_0x2974f0[_0x51b6('0xf')](0x1f4,[config[_0x51b6('0x10')]['ip'],config[_0x51b6('0x10')][_0x51b6('0x11')],_0x51b6('0x1a')][_0x51b6('0x12')]('\x20')));}_0x5b8a31=_[_0x51b6('0x13')](_0x5b8a31,'command');_0x5b8a31[_0x51b6('0x15')]=_0x51b6('0x1b');return ami[_0x51b6('0x16')](_0x5b8a31)[_0x51b6('0x17')](function(_0x53e709){_0x444da9({'code':0xc8,'message':_0x53e709[_0x51b6('0x1c')]});})[_0x51b6('0x19')](function(_0x51c013){_0x506367(_0x2974f0['error'](0x1f5,_0x51c013[_0x51b6('0x18')]));});});},'VoiceQueues':function(_0x47499e){return new Promise(function(_0x3518ba,_0x59193e){var _0x4c1825=[];for(var _0x22b91b in _0x1ba2e9[_0x51b6('0x1d')]){if(_0x1ba2e9[_0x51b6('0x1d')]['hasOwnProperty'](_0x22b91b)){var _0x2842b2=_0x1ba2e9[_0x51b6('0x1d')][_0x22b91b];var _0x5a8a5b={'id':_0x2842b2['id'],'name':_0x2842b2[_0x51b6('0x1e')],'strategy':_0x2842b2[_0x51b6('0x1f')],'answered':_0x2842b2[_0x51b6('0x20')],'available':_0x2842b2[_0x51b6('0x21')],'loggedIn':_0x2842b2[_0x51b6('0x22')],'pTalking':_0x2842b2['pTalking'],'sumBillable':_0x2842b2[_0x51b6('0x23')],'sumDuration':_0x2842b2[_0x51b6('0x24')],'sumHoldTime':_0x2842b2[_0x51b6('0x25')]||0x0,'talking':_0x2842b2['talking'],'total':_0x2842b2[_0x51b6('0x26')],'type':_0x2842b2[_0x51b6('0x27')],'unmanaged':_0x2842b2[_0x51b6('0x28')],'abandoned':_0x2842b2[_0x51b6('0x29')],'waiting':_0x2842b2['waiting'],'loggedInDb':_0x2842b2[_0x51b6('0x2a')]};if(_0x2842b2['type']===_0x51b6('0x2b')){_0x5a8a5b[_0x51b6('0x2c')]=_0x2842b2['dialActive'];_0x5a8a5b['dialMethod']=_0x2842b2[_0x51b6('0x2d')];_0x5a8a5b[_0x51b6('0x2e')]=_0x2842b2['dialOriginateCallerIdName'];_0x5a8a5b[_0x51b6('0x2f')]=_0x2842b2[_0x51b6('0x2f')];_0x5a8a5b['dialOriginateTimeout']=_0x2842b2[_0x51b6('0x30')];_0x5a8a5b[_0x51b6('0x31')]=_0x2842b2[_0x51b6('0x31')];_0x5a8a5b['temp']=_0x2842b2[_0x51b6('0x32')];_0x5a8a5b['outboundAnswerAgiCallsDay']=_0x2842b2[_0x51b6('0x33')];_0x5a8a5b[_0x51b6('0x34')]=_0x2842b2[_0x51b6('0x34')];_0x5a8a5b[_0x51b6('0x35')]=_0x2842b2[_0x51b6('0x35')];_0x5a8a5b[_0x51b6('0x36')]=_0x2842b2[_0x51b6('0x36')];_0x5a8a5b[_0x51b6('0x37')]=_0x2842b2['outboundCongestionCallsDay'];_0x5a8a5b[_0x51b6('0x38')]=_0x2842b2[_0x51b6('0x38')];_0x5a8a5b['outboundDropCallsDayCallersExit']=_0x2842b2[_0x51b6('0x39')];_0x5a8a5b['outboundDropCallsDayTimeout']=_0x2842b2[_0x51b6('0x3a')];_0x5a8a5b[_0x51b6('0x3b')]=_0x2842b2[_0x51b6('0x3b')];_0x5a8a5b['outboundNoSuchCallsDay']=_0x2842b2[_0x51b6('0x3c')];_0x5a8a5b[_0x51b6('0x3d')]=_0x2842b2['outboundOriginateFailureCallsDay'];_0x5a8a5b[_0x51b6('0x3e')]=_0x2842b2[_0x51b6('0x3e')];_0x5a8a5b[_0x51b6('0x3f')]=_0x2842b2[_0x51b6('0x3f')];_0x5a8a5b[_0x51b6('0x40')]=_0x2842b2[_0x51b6('0x40')];_0x5a8a5b[_0x51b6('0x41')]=_0x2842b2[_0x51b6('0x41')];_0x5a8a5b[_0x51b6('0x42')]=_0x2842b2[_0x51b6('0x42')];_0x5a8a5b[_0x51b6('0x43')]=_0x2842b2[_0x51b6('0x43')];_0x5a8a5b[_0x51b6('0x44')]=_0x2842b2[_0x51b6('0x44')];_0x5a8a5b[_0x51b6('0x45')]=_0x2842b2[_0x51b6('0x45')];_0x5a8a5b['predictiveIntervalErlangCalls']=_0x2842b2[_0x51b6('0x46')];_0x5a8a5b['predictiveIntervalErlangCallsDroppedCalls']=_0x2842b2[_0x51b6('0x47')];_0x5a8a5b['predictiveIntervalHitRate']=_0x2842b2[_0x51b6('0x48')];_0x5a8a5b[_0x51b6('0x49')]=_0x2842b2['predictiveIntervalMultiplicativeFactor'];_0x5a8a5b[_0x51b6('0x4a')]=_0x2842b2[_0x51b6('0x4a')];_0x5a8a5b['predictiveIntervalAvailable']=_0x2842b2[_0x51b6('0x4b')];_0x5a8a5b[_0x51b6('0x4c')]=_0x2842b2[_0x51b6('0x4c')];_0x5a8a5b[_0x51b6('0x18')]=_0x2842b2[_0x51b6('0x18')];_0x5a8a5b['originated']=_0x2842b2['originated'];_0x5a8a5b['erlangCalls']=_0x2842b2[_0x51b6('0x4d')];_0x5a8a5b[_0x51b6('0x4e')]=_0x2842b2[_0x51b6('0x4e')];_0x5a8a5b[_0x51b6('0x4f')]=_0x2842b2[_0x51b6('0x4f')];_0x5a8a5b['erlangBusyFactor']=_0x2842b2['erlangBusyFactor'];_0x5a8a5b[_0x51b6('0x50')]=_0x2842b2[_0x51b6('0x50')];_0x5a8a5b[_0x51b6('0x51')]=_0x2842b2['startProgressive'];}if(_0x2842b2[_0x51b6('0x52')]){_0x5a8a5b['Trunk']={'id':_0x2842b2[_0x51b6('0x52')]['id'],'name':_0x2842b2['Trunk'][_0x51b6('0x1e')],'active':_0x2842b2[_0x51b6('0x52')][_0x51b6('0x53')],'callerid':_0x2842b2['Trunk'][_0x51b6('0x54')]};}if(_0x2842b2[_0x51b6('0x55')]){_0x5a8a5b[_0x51b6('0x55')]={'id':_0x2842b2[_0x51b6('0x55')]['id'],'name':_0x2842b2[_0x51b6('0x55')]['name']};}_0x4c1825[_0x51b6('0x56')](_0x5a8a5b);}}_0x3518ba({'count':_0x4c1825[_0x51b6('0x57')],'rows':_0x4c1825});});},'UpdateVoiceQueue':function(_0x5a4b64){return new Promise(function(_0x4213ba,_0x1fe475){var _0x53abf2=_['find'](_0x1ba2e9['voiceQueues'],{'id':parseInt(_0x5a4b64['id'])});var _0x5502b4=_['omit'](_0x5a4b64,['id']);if(_0x53abf2){for(var _0x55f3ba in _0x5502b4){if(typeof _0x5502b4[_0x55f3ba]!==_0x51b6('0x58')&&typeof _0x53abf2[_0x55f3ba]!=='undefined'){_0x53abf2[_0x55f3ba]=_0x5502b4[_0x55f3ba];}}_0x4213ba(_0x53abf2);}else{_0x1fe475();}});},'VoiceChannels':function(_0x177ee6){return new Promise(function(_0x40c278,_0x435ccc){var _0x21a7ab=_[_0x51b6('0x59')](_0x1ba2e9[_0x51b6('0x5a')]);_0x40c278({'count':_0x21a7ab['length'],'rows':_0x21a7ab});});},'VoiceChannelMixMonitor':function(_0x11ed5b){var _0x4c6e81=this;return new Promise(function(_0xe64d9b,_0xce806e){if(ami['isConnected']()==![]){return _0xce806e(_0x4c6e81[_0x51b6('0xf')](0x1f4,[config[_0x51b6('0x10')]['ip'],config[_0x51b6('0x10')][_0x51b6('0x11')],'ami\x20disconnected'][_0x51b6('0x12')]('\x20')));}var _0x160d7b=schema(properties[_0x51b6('0x5b')])[_0x51b6('0x3')](_0x11ed5b);if(_0x160d7b[_0x51b6('0x57')]>0x0){return _0xce806e(_0x4c6e81[_0x51b6('0xf')](0x1f4,_[_0x51b6('0x5c')](_0x160d7b,_0x51b6('0x18'))[_0x51b6('0x12')](',\x20')));}var _0x15ab7e=_[_0x51b6('0x5d')](_0x1ba2e9['channels'],{'uniqueid':_0x11ed5b[_0x51b6('0x5e')]});if(_0x15ab7e&&_0x15ab7e[_0x51b6('0x5f')]){var _0x273506=util[_0x51b6('0x60')](_0x51b6('0x61'),_0x11ed5b[_0x51b6('0x62')]||_0x11ed5b[_0x51b6('0x5e')],_0x11ed5b[_0x51b6('0x60')]||_0x51b6('0x63'));return ami[_0x51b6('0x16')]({'action':_0x51b6('0x64'),'channel':_0x15ab7e['channel'],'file':_0x273506,'options':_0x51b6('0x65')})['then'](function(_0xa622d0){var _0x1a2d1a=_['find'](_0x15ab7e['monitors'],{'filename':_0x51b6('0x66')+_0x273506['toLowerCase']()});if(_[_0x51b6('0x67')](_0x1a2d1a)){_0x15ab7e[_0x51b6('0x68')][_0x51b6('0x56')]({'filename':_0x51b6('0x66')+_0x273506['toLowerCase'](),'createdAt':moment()[_0x51b6('0x60')](_0x51b6('0x69')),'mixmonitorid':_0xa622d0[_0x51b6('0x6a')],'status':'rec'});}else{_0x1a2d1a[_0x51b6('0x6a')]=_0xa622d0[_0x51b6('0x6a')];_0x1a2d1a[_0x51b6('0x6b')]=_0x51b6('0x6c');}_0xe64d9b({'code':0xc8,'message':[_0x11ed5b['uniqueid'],'MixMonitor\x20Success',_0xa622d0[_0x51b6('0x6a')]][_0x51b6('0x12')]('\x20'),'mixmonitorid':_0xa622d0[_0x51b6('0x6a')]});})['catch'](function(_0x2a4f1e){_0xce806e(_0x4c6e81[_0x51b6('0xf')](0x1f5,[_0x11ed5b['uniqueid'],_0x2a4f1e[_0x51b6('0x18')]['toLowerCase']()][_0x51b6('0x12')]('\x20')));});}else{return _0xce806e(_0x4c6e81['error'](0x1f5,_0x51b6('0x6d')));}});},'VoiceChannelStopMixMonitor':function(_0x1a0463){var _0x19bf64=this;return new Promise(function(_0x8cc8b2,_0x3665d4){if(ami['isConnected']()==![]){return _0x3665d4(_0x19bf64[_0x51b6('0xf')](0x1f4,[config[_0x51b6('0x10')]['ip'],config[_0x51b6('0x10')]['username'],'ami\x20disconnected'][_0x51b6('0x12')]('\x20')));}var _0x3b97c0=schema(properties[_0x51b6('0x5b')])['validate'](_0x1a0463);if(_0x3b97c0[_0x51b6('0x57')]>0x0){return _0x3665d4(_0x19bf64['error'](0x1f4,_[_0x51b6('0x5c')](_0x3b97c0,'message')[_0x51b6('0x12')](',\x20')));}var _0x535b1f=_['find'](_0x1ba2e9[_0x51b6('0x5a')],{'uniqueid':_0x1a0463['uniqueid']});if(_0x535b1f){return BPromise[_0x51b6('0x6e')]()[_0x51b6('0x17')](function(){if(_0x535b1f[_0x51b6('0x5f')]){return ami['Action']({'action':'StopMixMonitor','channel':_0x535b1f['channel'],'mixmonitorid':_0x1a0463[_0x51b6('0x6a')]})[_0x51b6('0x19')](function(_0x5bb9ff){});}})[_0x51b6('0x17')](function(){if(_0x535b1f['destinationchannel']){return ami[_0x51b6('0x16')]({'action':_0x51b6('0x6f'),'channel':_0x535b1f[_0x51b6('0x70')],'mixmonitorid':_0x1a0463[_0x51b6('0x6a')]})['catch'](function(_0x523454){});}})['then'](function(_0x14b560){var _0x581313=_[_0x51b6('0x5d')](_0x535b1f['monitors'],{'mixmonitorid':_0x1a0463[_0x51b6('0x6a')]});if(_0x581313){_0x581313[_0x51b6('0x6b')]=_0x51b6('0x71');}})['then'](function(){var _0x227e0a=util[_0x51b6('0x60')](_0x51b6('0x61'),_0x1a0463[_0x51b6('0x62')]||_0x1a0463['uniqueid'],_0x1a0463[_0x51b6('0x60')]||_0x51b6('0x63'));var _0x517a3f=_['find'](_0x535b1f[_0x51b6('0x68')],{'filename':_0x51b6('0x66')+_0x227e0a[_0x51b6('0x72')]()});if(_0x517a3f){_0x517a3f['status']='stop';}})[_0x51b6('0x17')](function(){_0x8cc8b2({'code':0xc8,'message':[_0x1a0463[_0x51b6('0x5e')],_0x51b6('0x73')]['join']('\x20')});})[_0x51b6('0x19')](function(_0xfdad65){_0x3665d4(_0x19bf64['error'](0x1f5,[_0x1a0463[_0x51b6('0x5e')],_0xfdad65[_0x51b6('0x18')][_0x51b6('0x72')]()][_0x51b6('0x12')]('\x20')));});}else{return _0x3665d4(_0x19bf64[_0x51b6('0xf')](0x1f5,_0x51b6('0x6d')));}});},'VoiceQueuesChannels':function(_0x5d34a6){return new Promise(function(_0x57e2fe,_0x25015d){var _0x4ce4b8=_[_0x51b6('0x59')](_0x1ba2e9[_0x51b6('0x74')]);_0x57e2fe({'count':_0x4ce4b8[_0x51b6('0x57')],'rows':_0x4ce4b8});});},'VoiceQueuesChannel':function(_0x80d30){var _0x6b4df5=this;return new Promise(function(_0xcb2924,_0x250d24){var _0x2cdba6=schema(properties[_0x51b6('0x75')])[_0x51b6('0x3')](_0x80d30);if(_0x2cdba6[_0x51b6('0x57')]>0x0){return _0x250d24(_0x6b4df5[_0x51b6('0xf')](0x1f4,_[_0x51b6('0x5c')](_0x2cdba6,_0x51b6('0x18'))[_0x51b6('0x12')](',\x20')));}var _0x441837=_[_0x51b6('0x5d')](_0x1ba2e9[_0x51b6('0x74')],{'uniqueid':_0x80d30['uniqueid']});if(_0x441837){_0xcb2924(_0x441837);}else{return _0x250d24(_0x6b4df5['error'](0x1f5,'Channel\x20doesn\x27t\x20exist'));}});},'VoiceQueuesChannelHangup':function(_0x79aa89){var _0x2288bf=this;return new Promise(function(_0x16d977,_0x1c8b1e){if(ami['isConnected']()==![]){return _0x1c8b1e(_0x2288bf[_0x51b6('0xf')](0x1f4,[config[_0x51b6('0x10')]['ip'],config[_0x51b6('0x10')][_0x51b6('0x11')],_0x51b6('0x1a')]['join']('\x20')));}var _0x1e083=schema(properties[_0x51b6('0x76')])[_0x51b6('0x3')](_0x79aa89);if(_0x1e083[_0x51b6('0x57')]>0x0){return _0x1c8b1e(_0x2288bf[_0x51b6('0xf')](0x1f4,_[_0x51b6('0x5c')](_0x1e083,'message')['join'](',\x20')));}var _0xc0bfc0=_[_0x51b6('0x5d')](_0x1ba2e9['queueChannels'],{'uniqueid':_0x79aa89['uniqueid']});if(_0xc0bfc0&&_0xc0bfc0[_0x51b6('0x5f')]){return ami[_0x51b6('0x16')]({'action':'Hangup','channel':_0xc0bfc0['channel']})[_0x51b6('0x17')](function(_0x157b95){_0x16d977({'code':0xc8,'message':[_0x79aa89[_0x51b6('0x5e')],_0x157b95[_0x51b6('0x18')][_0x51b6('0x72')]()][_0x51b6('0x12')]('\x20')});})[_0x51b6('0x19')](function(_0x4bf1db){_0x1c8b1e(_0x2288bf[_0x51b6('0xf')](0x1f5,[_0x79aa89[_0x51b6('0x5e')],_0x4bf1db[_0x51b6('0x18')][_0x51b6('0x72')]()][_0x51b6('0x12')]('\x20')));});}else{return _0x1c8b1e(_0x2288bf['error'](0x1f5,_0x51b6('0x6d')));}});},'VoiceQueuesChannelRedirect':function(_0x4ae73b){var _0x5c10d4=this;return new Promise(function(_0x7183fd,_0xfe7d0f){if(ami[_0x51b6('0xe')]()==![]){return _0xfe7d0f(_0x5c10d4[_0x51b6('0xf')](0x1f4,[config[_0x51b6('0x10')]['ip'],config[_0x51b6('0x10')][_0x51b6('0x11')],'ami\x20disconnected'][_0x51b6('0x12')]('\x20')));}var _0xc653fc=schema(properties[_0x51b6('0x77')])[_0x51b6('0x3')](_0x4ae73b);if(_0xc653fc[_0x51b6('0x57')]>0x0){return _0xfe7d0f(_0x5c10d4['error'](0x1f4,_['map'](_0xc653fc,_0x51b6('0x18'))[_0x51b6('0x12')](',\x20')));}var _0x18fece=_[_0x51b6('0x5d')](_0x1ba2e9['queueChannels'],{'uniqueid':_0x4ae73b['uniqueid']});if(_0x18fece&&_0x18fece[_0x51b6('0x5f')]){return ami[_0x51b6('0x16')]({'action':_0x51b6('0x78'),'channel':_0x18fece['channel'],'exten':_0x4ae73b[_0x51b6('0x79')],'context':_0x4ae73b[_0x51b6('0x7a')]||_0x18fece['context'],'priority':0x1})['then'](function(_0x2e9873){_0x7183fd({'code':0xc8,'message':[_0x4ae73b[_0x51b6('0x5e')],_0x2e9873[_0x51b6('0x18')][_0x51b6('0x72')]()]['join']('\x20')});})[_0x51b6('0x19')](function(_0x3bb5df){_0xfe7d0f(_0x5c10d4[_0x51b6('0xf')](0x1f5,[_0x4ae73b[_0x51b6('0x5e')],_0x3bb5df[_0x51b6('0x18')][_0x51b6('0x72')]()][_0x51b6('0x12')]('\x20')));});}else{return _0xfe7d0f(_0x5c10d4['error'](0x1f5,'Channel\x20doesn\x27t\x20exist'));}});},'Agents':function(_0x4fff40){return new Promise(function(_0x167014,_0x384c05){var _0x3444cc=_[_0x51b6('0x59')](_0x1ba2e9[_0x51b6('0xc')]);_0x167014({'count':_0x3444cc[_0x51b6('0x57')],'rows':_0x3444cc});});},'Telephones':function(_0x1b96d4){return new Promise(function(_0x26d93a,_0xd943ed){var _0x3fae66=_[_0x51b6('0x59')](_0x1ba2e9[_0x51b6('0x7b')]);_0x26d93a({'count':_0x3fae66[_0x51b6('0x57')],'rows':_0x3fae66});});},'Trunks':function(_0x223d8d){return new Promise(function(_0x288ab6,_0xccef95){var _0x3b563c=_['values'](_0x1ba2e9[_0x51b6('0x7c')]);_0x288ab6({'count':_0x3b563c[_0x51b6('0x57')],'rows':_0x3b563c});});},'OutboundChannels':function(_0x490f18){return new Promise(function(_0x1b9603,_0x442cd6){var _0x52123d=_[_0x51b6('0x59')](_0x1ba2e9['outboundChannels']);_0x1b9603({'count':_0x52123d[_0x51b6('0x57')],'rows':_0x52123d});});},'Outbound':function(_0x2188fa){return new Promise(function(_0x22ed45,_0x1df848){_0x22ed45(_0x1ba2e9[_0x51b6('0x2b')]);});},'Campaigns':function(_0x372af6){return new Promise(function(_0x18249a,_0x44d345){var _0x2dc8d0=_['values'](_0x1ba2e9[_0x51b6('0x7d')]);_0x18249a({'count':_0x2dc8d0[_0x51b6('0x57')],'rows':_0x2dc8d0});});},'VoiceQueuesPreview':function(_0x3411b0){var _0x40c976=this;return new Promise(function(_0x1bbdf6,_0x1eea44){_0x19d788['run'](_0x3411b0['id'])['then'](function(_0x3e843a){_0x1bbdf6({'code':0xc8,'message':_0x3e843a[_0x51b6('0x18')]});})[_0x51b6('0x19')](function(_0x159794){_0x1eea44(_0x40c976['error'](0x1f4,_0x159794['message']));});});},'EventManager':function(_0x3ecd04){var _0x422d99=this;return new Promise(function(_0x36fb51,_0x598188){if(!_0x3ecd04[_0x51b6('0x7e')]){return _0x598188(_0x422d99[_0x51b6('0xf')](0x1f4,_0x51b6('0x7f')));}ami[_0x51b6('0x80')](_0x51b6('0x81')+_0x3ecd04[_0x51b6('0x7e')],_0x3ecd04[_0x51b6('0x18')]);_0x36fb51({'code':0xc8,'message':_0x3ecd04});});},'FaxAccounts':function(_0x264cd2){return new Promise(function(_0x56991c,_0x339a34){var _0x1a1b89=_[_0x51b6('0x59')](_0x1ba2e9[_0x51b6('0x82')]);_0x56991c({'count':_0x1a1b89[_0x51b6('0x57')],'rows':_0x1a1b89});});},'SendFax':function(_0x14787b){var _0x4fa9b8=this;return new Promise(function(_0x54ddf1,_0x53169c){_0x578b6a[_0x51b6('0x83')](_0x14787b)['then'](function(_0x2ef171){_0x54ddf1({'code':0xc8,'message':_0x2ef171['message']});})[_0x51b6('0x19')](function(_0x2d019b){_0x53169c(_0x4fa9b8['error'](0x1f4,_0x2d019b['message']));});});},'CheckAfterSend':function(_0x17c9a7){var _0x5b600a=this;return new Promise(function(_0x1362a4,_0x4e7624){_0x578b6a[_0x51b6('0x84')](_0x17c9a7)[_0x51b6('0x17')](function(_0x2cce73){_0x1362a4({'code':0xc8,'message':_0x2cce73[_0x51b6('0x18')]});})['catch'](function(_0x324990){_0x4e7624(_0x5b600a['error'](0x1f4,_0x324990[_0x51b6('0x18')]));});});}};var _0x1fb689=jayson['server'](_0x2c6926)[_0x51b6('0x85')]();_0x1fb689['on'](_0x51b6('0xf'),function(_0x2e4359){return _0xecac96(_0x2e4359);});_0x1fb689[_0x51b6('0x8')](0x232a,'127.0.0.1',function(){console[_0x51b6('0x86')](_0x51b6('0x87'),0x232a);return _0x466a60(_0x51b6('0x88')+0x232a);});});};