3b1fa3b265f5c996679e44151e497dd197668c77
[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 _0x0eeb=['originated','erlangCalls','erlangCallToSecond','erlangAbandonmentRate','erlangBusyFactor','startPredictive','startProgressive','Trunk','active','callerid','Interval','push','length','undefined','values','channels','voicechannel','map','uniqueid','channel','%s.%s','wav','MixMonitor','find','monitors','/var/spool/asterisk/monitor/','toLowerCase','isNil','YYYY-MM-DD\x20HH:mm:ss','rec','mixmonitorid','status','MixMonitor\x20Success','StopMixMonitor','destinationchannel','stop','StopMixMonitor\x20Success','Channel\x20doesn\x27t\x20exist','voicequeuechannel','queueChannels','voicequeuechannelhangup','Hangup','voicequeuechannelredirect','exten','context','telephones','trunks','outboundChannels','campaigns','run','emit','custom:','event','faxAccounts','send','checkAfterSend','127.0.0.1','log','AMI\x20RPC\x20server\x20listening\x20on\x20127.0.0.1:%d!','lodash','util','jayson/promise','validate','bluebird','moment','../ami','listen','format','%s/%s','SIP','name','timers','timer','agents','updateStatusRealtime','pause','isConnected','error','asterisk','username','ami\x20disconnected','join','pick','keys','module','action','then','message','catch','command','Command','Action','content','voiceQueues','hasOwnProperty','strategy','loggedIn','pTalking','sumBillable','sumDuration','sumHoldTime','type','unmanaged','abandoned','waiting','loggedInDb','outbound','dialActive','dialMethod','dialOriginateCallerIdName','dialOriginateCallerIdNumber','dialOriginateTimeout','dialPrefix','temp','outboundAnswerAgiCallsDay','outboundAnswerCallsDay','outboundBusyCallsDay','outboundCongestionCallsDay','outboundDropCallsDayACS','outboundDropCallsDayCallersExit','outboundNoAnswerCallsDay','outboundNoSuchCallsDay','outboundOriginateFailureCallsDay','outboundReCallsDay','outboundRejectCallsDay','outboundUnknownCallsDay','predictiveIntervalAnsweredCalls','predictiveIntervalAvgHoldtime','predictiveIntervalAvgTalktime','predictiveIntervalDroppedCallsCallersExit','predictiveIntervalDroppedCallsTimeout','predictiveIntervalErlangCalls','predictiveIntervalErlangCallsDroppedCalls','predictiveIntervalHitRate','predictiveIntervalMultiplicativeFactor','predictiveIntervalPauses','predictiveIntervalAvailable','predictiveIntervalTotalCalls'];(function(_0x40ac5e,_0x2de228){var _0x2839d6=function(_0x123d47){while(--_0x123d47){_0x40ac5e['push'](_0x40ac5e['shift']());}};_0x2839d6(++_0x2de228);}(_0x0eeb,0xc5));var _0xb0ee=function(_0x122ef9,_0x451d2a){_0x122ef9=_0x122ef9-0x0;var _0x42fba0=_0x0eeb[_0x122ef9];return _0x42fba0;};'use strict';var _=require(_0xb0ee('0x0'));var util=require(_0xb0ee('0x1'));var jayson=require(_0xb0ee('0x2'));var schema=require(_0xb0ee('0x3'));var BPromise=require(_0xb0ee('0x4'));var moment=require(_0xb0ee('0x5'));var config=require('../../../config/environment');var properties=require('../properties');var ami=require(_0xb0ee('0x6'));exports[_0xb0ee('0x7')]=function(_0x13a7ce,_0x76bf19,_0x209dda){return new BPromise(function(_0x453fa4,_0x17f445){var _0x5377b4={'QueuePause':function(_0x207a85){return new Promise(function(_0x586bc9,_0x13c198){var _0x3fb986=util[_0xb0ee('0x8')](_0xb0ee('0x9'),_0xb0ee('0xa'),_0x207a85[_0xb0ee('0xb')]);if(_0x13a7ce['timers']&&_0x13a7ce['timers'][_0x3fb986]&&_0x13a7ce[_0xb0ee('0xc')][_0x3fb986][_0xb0ee('0xd')]){_0x13a7ce['timers'][_0x3fb986]['updateAcw']();}if(_0x13a7ce[_0xb0ee('0xe')][_0x3fb986]){_0x13a7ce[_0xb0ee('0xe')][_0x3fb986][_0xb0ee('0xf')]({'statePause':_0x207a85[_0xb0ee('0x10')]?!![]:![]});}_0x586bc9({'code':0xc8,'message':'QueuePause'});});},'Reload':function(_0x1675b3){var _0x538f86=this;return new Promise(function(_0x478f98,_0x5c27b6){if(ami[_0xb0ee('0x11')]()==![]){return _0x5c27b6(_0x538f86[_0xb0ee('0x12')](0x1f4,[config['asterisk']['ip'],config[_0xb0ee('0x13')][_0xb0ee('0x14')],_0xb0ee('0x15')][_0xb0ee('0x16')]('\x20')));}_0x1675b3=_[_0xb0ee('0x17')](_0x1675b3,_[_0xb0ee('0x18')](properties[_0xb0ee('0x19')]));_0x1675b3[_0xb0ee('0x1a')]='Reload';return ami['Action'](_0x1675b3)[_0xb0ee('0x1b')](function(_0x5702d8){_0x478f98({'code':0xc8,'message':_0x5702d8[_0xb0ee('0x1c')]});})[_0xb0ee('0x1d')](function(_0x480e51){_0x5c27b6(_0x538f86['error'](0x1f5,_0x480e51[_0xb0ee('0x1c')]));});});},'Command':function(_0x2bd14a){var _0x13c8a9=this;return new Promise(function(_0x4ce528,_0x1c5ed4){if(ami[_0xb0ee('0x11')]()==![]){return _0x1c5ed4(_0x13c8a9[_0xb0ee('0x12')](0x1f4,[config[_0xb0ee('0x13')]['ip'],config['asterisk'][_0xb0ee('0x14')],_0xb0ee('0x15')][_0xb0ee('0x16')]('\x20')));}_0x2bd14a=_[_0xb0ee('0x17')](_0x2bd14a,_0xb0ee('0x1e'));_0x2bd14a[_0xb0ee('0x1a')]=_0xb0ee('0x1f');return ami[_0xb0ee('0x20')](_0x2bd14a)[_0xb0ee('0x1b')](function(_0xc019d5){_0x4ce528({'code':0xc8,'message':_0xc019d5[_0xb0ee('0x21')]});})[_0xb0ee('0x1d')](function(_0x140c8f){_0x1c5ed4(_0x13c8a9[_0xb0ee('0x12')](0x1f5,_0x140c8f[_0xb0ee('0x1c')]));});});},'VoiceQueues':function(_0x5a1197){return new Promise(function(_0x151188,_0x4c4433){var _0x53bccd=[];for(var _0x3442b7 in _0x13a7ce[_0xb0ee('0x22')]){if(_0x13a7ce[_0xb0ee('0x22')][_0xb0ee('0x23')](_0x3442b7)){var _0x560e40=_0x13a7ce[_0xb0ee('0x22')][_0x3442b7];var _0x379e19={'id':_0x560e40['id'],'name':_0x560e40[_0xb0ee('0xb')],'strategy':_0x560e40[_0xb0ee('0x24')],'answered':_0x560e40['answered'],'available':_0x560e40['available'],'loggedIn':_0x560e40[_0xb0ee('0x25')],'pTalking':_0x560e40[_0xb0ee('0x26')],'sumBillable':_0x560e40[_0xb0ee('0x27')],'sumDuration':_0x560e40[_0xb0ee('0x28')],'sumHoldTime':_0x560e40[_0xb0ee('0x29')]||0x0,'talking':_0x560e40['talking'],'total':_0x560e40['total'],'type':_0x560e40[_0xb0ee('0x2a')],'unmanaged':_0x560e40[_0xb0ee('0x2b')],'abandoned':_0x560e40[_0xb0ee('0x2c')],'waiting':_0x560e40[_0xb0ee('0x2d')],'loggedInDb':_0x560e40[_0xb0ee('0x2e')]};if(_0x560e40[_0xb0ee('0x2a')]===_0xb0ee('0x2f')){_0x379e19[_0xb0ee('0x30')]=_0x560e40[_0xb0ee('0x30')];_0x379e19['dialMethod']=_0x560e40[_0xb0ee('0x31')];_0x379e19[_0xb0ee('0x32')]=_0x560e40[_0xb0ee('0x32')];_0x379e19[_0xb0ee('0x33')]=_0x560e40[_0xb0ee('0x33')];_0x379e19[_0xb0ee('0x34')]=_0x560e40[_0xb0ee('0x34')];_0x379e19[_0xb0ee('0x35')]=_0x560e40['dialPrefix'];_0x379e19[_0xb0ee('0x36')]=_0x560e40['temp'];_0x379e19[_0xb0ee('0x37')]=_0x560e40[_0xb0ee('0x37')];_0x379e19[_0xb0ee('0x38')]=_0x560e40['outboundAnswerCallsDay'];_0x379e19['outboundBlacklistCallsDay']=_0x560e40['outboundBlacklistCallsDay'];_0x379e19['outboundBusyCallsDay']=_0x560e40[_0xb0ee('0x39')];_0x379e19[_0xb0ee('0x3a')]=_0x560e40['outboundCongestionCallsDay'];_0x379e19[_0xb0ee('0x3b')]=_0x560e40['outboundDropCallsDayACS'];_0x379e19['outboundDropCallsDayCallersExit']=_0x560e40[_0xb0ee('0x3c')];_0x379e19['outboundDropCallsDayTimeout']=_0x560e40['outboundDropCallsDayTimeout'];_0x379e19['outboundNoAnswerCallsDay']=_0x560e40[_0xb0ee('0x3d')];_0x379e19[_0xb0ee('0x3e')]=_0x560e40['outboundNoSuchCallsDay'];_0x379e19[_0xb0ee('0x3f')]=_0x560e40[_0xb0ee('0x3f')];_0x379e19[_0xb0ee('0x40')]=_0x560e40[_0xb0ee('0x40')];_0x379e19[_0xb0ee('0x41')]=_0x560e40[_0xb0ee('0x41')];_0x379e19[_0xb0ee('0x42')]=_0x560e40[_0xb0ee('0x42')];_0x379e19[_0xb0ee('0x43')]=_0x560e40[_0xb0ee('0x43')];_0x379e19[_0xb0ee('0x44')]=_0x560e40[_0xb0ee('0x44')];_0x379e19[_0xb0ee('0x45')]=_0x560e40[_0xb0ee('0x45')];_0x379e19[_0xb0ee('0x46')]=_0x560e40[_0xb0ee('0x46')];_0x379e19[_0xb0ee('0x47')]=_0x560e40[_0xb0ee('0x47')];_0x379e19[_0xb0ee('0x48')]=_0x560e40[_0xb0ee('0x48')];_0x379e19[_0xb0ee('0x49')]=_0x560e40['predictiveIntervalErlangCallsDroppedCalls'];_0x379e19['predictiveIntervalHitRate']=_0x560e40[_0xb0ee('0x4a')];_0x379e19['predictiveIntervalMultiplicativeFactor']=_0x560e40[_0xb0ee('0x4b')];_0x379e19[_0xb0ee('0x4c')]=_0x560e40[_0xb0ee('0x4c')];_0x379e19[_0xb0ee('0x4d')]=_0x560e40[_0xb0ee('0x4d')];_0x379e19['predictiveIntervalTotalCalls']=_0x560e40[_0xb0ee('0x4e')];_0x379e19[_0xb0ee('0x1c')]=_0x560e40['message'];_0x379e19[_0xb0ee('0x4f')]=_0x560e40[_0xb0ee('0x4f')];_0x379e19[_0xb0ee('0x50')]=_0x560e40[_0xb0ee('0x50')];_0x379e19[_0xb0ee('0x51')]=_0x560e40[_0xb0ee('0x51')];_0x379e19[_0xb0ee('0x52')]=_0x560e40['erlangAbandonmentRate'];_0x379e19[_0xb0ee('0x53')]=_0x560e40[_0xb0ee('0x53')];_0x379e19['startPredictive']=_0x560e40[_0xb0ee('0x54')];_0x379e19['startProgressive']=_0x560e40[_0xb0ee('0x55')];}if(_0x560e40['Trunk']){_0x379e19[_0xb0ee('0x56')]={'id':_0x560e40['Trunk']['id'],'name':_0x560e40[_0xb0ee('0x56')][_0xb0ee('0xb')],'active':_0x560e40[_0xb0ee('0x56')][_0xb0ee('0x57')],'callerid':_0x560e40[_0xb0ee('0x56')][_0xb0ee('0x58')]};}if(_0x560e40[_0xb0ee('0x59')]){_0x379e19[_0xb0ee('0x59')]={'id':_0x560e40[_0xb0ee('0x59')]['id'],'name':_0x560e40[_0xb0ee('0x59')][_0xb0ee('0xb')]};}_0x53bccd[_0xb0ee('0x5a')](_0x379e19);}}_0x151188({'count':_0x53bccd[_0xb0ee('0x5b')],'rows':_0x53bccd});});},'UpdateVoiceQueue':function(_0x3283e1){return new Promise(function(_0x29c77f,_0x1fe004){var _0x531285=_['find'](_0x13a7ce[_0xb0ee('0x22')],{'id':parseInt(_0x3283e1['id'])});var _0x1c9b6f=_['omit'](_0x3283e1,['id']);if(_0x531285){for(var _0x3ef149 in _0x1c9b6f){if(typeof _0x1c9b6f[_0x3ef149]!=='undefined'&&typeof _0x531285[_0x3ef149]!==_0xb0ee('0x5c')){_0x531285[_0x3ef149]=_0x1c9b6f[_0x3ef149];}}_0x29c77f(_0x531285);}else{_0x1fe004();}});},'VoiceChannels':function(_0x10b262){return new Promise(function(_0x27ad3f,_0x75d703){var _0xc97f89=_[_0xb0ee('0x5d')](_0x13a7ce[_0xb0ee('0x5e')]);_0x27ad3f({'count':_0xc97f89[_0xb0ee('0x5b')],'rows':_0xc97f89});});},'VoiceChannelMixMonitor':function(_0xd75cb7){var _0x9dc38a=this;return new Promise(function(_0x27ad24,_0x481163){if(ami['isConnected']()==![]){return _0x481163(_0x9dc38a['error'](0x1f4,[config[_0xb0ee('0x13')]['ip'],config[_0xb0ee('0x13')]['username'],_0xb0ee('0x15')][_0xb0ee('0x16')]('\x20')));}var _0x17e916=schema(properties[_0xb0ee('0x5f')])[_0xb0ee('0x3')](_0xd75cb7);if(_0x17e916[_0xb0ee('0x5b')]>0x0){return _0x481163(_0x9dc38a['error'](0x1f4,_[_0xb0ee('0x60')](_0x17e916,_0xb0ee('0x1c'))['join'](',\x20')));}var _0x32df68=_['find'](_0x13a7ce[_0xb0ee('0x5e')],{'uniqueid':_0xd75cb7[_0xb0ee('0x61')]});if(_0x32df68&&_0x32df68[_0xb0ee('0x62')]){var _0x599412=util['format'](_0xb0ee('0x63'),_0xd75cb7['filename']||_0xd75cb7[_0xb0ee('0x61')],_0xd75cb7[_0xb0ee('0x8')]||_0xb0ee('0x64'));return ami[_0xb0ee('0x20')]({'action':_0xb0ee('0x65'),'channel':_0x32df68[_0xb0ee('0x62')],'file':_0x599412,'options':'ai(mixmonitorid)'})[_0xb0ee('0x1b')](function(_0x341adf){var _0x4ec9bf=_[_0xb0ee('0x66')](_0x32df68[_0xb0ee('0x67')],{'filename':_0xb0ee('0x68')+_0x599412[_0xb0ee('0x69')]()});if(_[_0xb0ee('0x6a')](_0x4ec9bf)){_0x32df68[_0xb0ee('0x67')][_0xb0ee('0x5a')]({'filename':'/var/spool/asterisk/monitor/'+_0x599412[_0xb0ee('0x69')](),'createdAt':moment()[_0xb0ee('0x8')](_0xb0ee('0x6b')),'mixmonitorid':_0x341adf['mixmonitorid'],'status':_0xb0ee('0x6c')});}else{_0x4ec9bf[_0xb0ee('0x6d')]=_0x341adf[_0xb0ee('0x6d')];_0x4ec9bf[_0xb0ee('0x6e')]='rec';}_0x27ad24({'code':0xc8,'message':[_0xd75cb7[_0xb0ee('0x61')],_0xb0ee('0x6f'),_0x341adf[_0xb0ee('0x6d')]]['join']('\x20'),'mixmonitorid':_0x341adf[_0xb0ee('0x6d')]});})[_0xb0ee('0x1d')](function(_0x46deb9){_0x481163(_0x9dc38a[_0xb0ee('0x12')](0x1f5,[_0xd75cb7[_0xb0ee('0x61')],_0x46deb9[_0xb0ee('0x1c')][_0xb0ee('0x69')]()][_0xb0ee('0x16')]('\x20')));});}else{return _0x481163(_0x9dc38a['error'](0x1f5,'Channel\x20doesn\x27t\x20exist'));}});},'VoiceChannelStopMixMonitor':function(_0x1b1311){var _0x40b4e4=this;return new Promise(function(_0x1ba436,_0x2f7068){if(ami[_0xb0ee('0x11')]()==![]){return _0x2f7068(_0x40b4e4['error'](0x1f4,[config[_0xb0ee('0x13')]['ip'],config['asterisk'][_0xb0ee('0x14')],'ami\x20disconnected']['join']('\x20')));}var _0x105f42=schema(properties[_0xb0ee('0x5f')])[_0xb0ee('0x3')](_0x1b1311);if(_0x105f42[_0xb0ee('0x5b')]>0x0){return _0x2f7068(_0x40b4e4[_0xb0ee('0x12')](0x1f4,_[_0xb0ee('0x60')](_0x105f42,_0xb0ee('0x1c'))[_0xb0ee('0x16')](',\x20')));}var _0x155a88=_[_0xb0ee('0x66')](_0x13a7ce[_0xb0ee('0x5e')],{'uniqueid':_0x1b1311['uniqueid']});if(_0x155a88){return BPromise['resolve']()['then'](function(){if(_0x155a88[_0xb0ee('0x62')]){return ami['Action']({'action':_0xb0ee('0x70'),'channel':_0x155a88['channel'],'mixmonitorid':_0x1b1311['mixmonitorid']})[_0xb0ee('0x1d')](function(_0x1b42aa){});}})['then'](function(){if(_0x155a88[_0xb0ee('0x71')]){return ami[_0xb0ee('0x20')]({'action':_0xb0ee('0x70'),'channel':_0x155a88['destinationchannel'],'mixmonitorid':_0x1b1311[_0xb0ee('0x6d')]})[_0xb0ee('0x1d')](function(_0x12c781){});}})[_0xb0ee('0x1b')](function(_0x3281de){var _0x285499=_[_0xb0ee('0x66')](_0x155a88['monitors'],{'mixmonitorid':_0x1b1311['mixmonitorid']});if(_0x285499){_0x285499[_0xb0ee('0x6e')]=_0xb0ee('0x72');}})[_0xb0ee('0x1b')](function(){var _0x387072=util[_0xb0ee('0x8')](_0xb0ee('0x63'),_0x1b1311['filename']||_0x1b1311[_0xb0ee('0x61')],_0x1b1311['format']||_0xb0ee('0x64'));var _0x2bdb86=_[_0xb0ee('0x66')](_0x155a88['monitors'],{'filename':'/var/spool/asterisk/monitor/'+_0x387072[_0xb0ee('0x69')]()});if(_0x2bdb86){_0x2bdb86[_0xb0ee('0x6e')]=_0xb0ee('0x72');}})[_0xb0ee('0x1b')](function(){_0x1ba436({'code':0xc8,'message':[_0x1b1311[_0xb0ee('0x61')],_0xb0ee('0x73')][_0xb0ee('0x16')]('\x20')});})[_0xb0ee('0x1d')](function(_0xa2f2ef){_0x2f7068(_0x40b4e4[_0xb0ee('0x12')](0x1f5,[_0x1b1311[_0xb0ee('0x61')],_0xa2f2ef['message'][_0xb0ee('0x69')]()]['join']('\x20')));});}else{return _0x2f7068(_0x40b4e4[_0xb0ee('0x12')](0x1f5,_0xb0ee('0x74')));}});},'VoiceQueuesChannels':function(_0xd52d8c){return new Promise(function(_0x46faf5,_0x13ee76){var _0x252b68=_[_0xb0ee('0x5d')](_0x13a7ce['queueChannels']);_0x46faf5({'count':_0x252b68[_0xb0ee('0x5b')],'rows':_0x252b68});});},'VoiceQueuesChannel':function(_0x358238){var _0x17ce21=this;return new Promise(function(_0x4f06a3,_0xa085e4){var _0x1cbaf9=schema(properties[_0xb0ee('0x75')])[_0xb0ee('0x3')](_0x358238);if(_0x1cbaf9['length']>0x0){return _0xa085e4(_0x17ce21[_0xb0ee('0x12')](0x1f4,_[_0xb0ee('0x60')](_0x1cbaf9,'message')[_0xb0ee('0x16')](',\x20')));}var _0x59caab=_[_0xb0ee('0x66')](_0x13a7ce[_0xb0ee('0x76')],{'uniqueid':_0x358238[_0xb0ee('0x61')]});if(_0x59caab){_0x4f06a3(_0x59caab);}else{return _0xa085e4(_0x17ce21[_0xb0ee('0x12')](0x1f5,_0xb0ee('0x74')));}});},'VoiceQueuesChannelHangup':function(_0x3e8f10){var _0x3712ce=this;return new Promise(function(_0x2d5685,_0x203b46){if(ami[_0xb0ee('0x11')]()==![]){return _0x203b46(_0x3712ce[_0xb0ee('0x12')](0x1f4,[config['asterisk']['ip'],config[_0xb0ee('0x13')]['username'],_0xb0ee('0x15')]['join']('\x20')));}var _0x451d75=schema(properties[_0xb0ee('0x77')])[_0xb0ee('0x3')](_0x3e8f10);if(_0x451d75[_0xb0ee('0x5b')]>0x0){return _0x203b46(_0x3712ce['error'](0x1f4,_[_0xb0ee('0x60')](_0x451d75,'message')['join'](',\x20')));}var _0x16f2ff=_['find'](_0x13a7ce[_0xb0ee('0x76')],{'uniqueid':_0x3e8f10[_0xb0ee('0x61')]});if(_0x16f2ff&&_0x16f2ff[_0xb0ee('0x62')]){return ami['Action']({'action':_0xb0ee('0x78'),'channel':_0x16f2ff[_0xb0ee('0x62')]})[_0xb0ee('0x1b')](function(_0x2228c7){_0x2d5685({'code':0xc8,'message':[_0x3e8f10[_0xb0ee('0x61')],_0x2228c7[_0xb0ee('0x1c')][_0xb0ee('0x69')]()][_0xb0ee('0x16')]('\x20')});})[_0xb0ee('0x1d')](function(_0x371a13){_0x203b46(_0x3712ce[_0xb0ee('0x12')](0x1f5,[_0x3e8f10[_0xb0ee('0x61')],_0x371a13['message']['toLowerCase']()][_0xb0ee('0x16')]('\x20')));});}else{return _0x203b46(_0x3712ce[_0xb0ee('0x12')](0x1f5,_0xb0ee('0x74')));}});},'VoiceQueuesChannelRedirect':function(_0x1b53ea){var _0x1aed71=this;return new Promise(function(_0x47f06f,_0xe26a66){if(ami[_0xb0ee('0x11')]()==![]){return _0xe26a66(_0x1aed71[_0xb0ee('0x12')](0x1f4,[config[_0xb0ee('0x13')]['ip'],config[_0xb0ee('0x13')][_0xb0ee('0x14')],_0xb0ee('0x15')][_0xb0ee('0x16')]('\x20')));}var _0x58a6f2=schema(properties[_0xb0ee('0x79')])[_0xb0ee('0x3')](_0x1b53ea);if(_0x58a6f2['length']>0x0){return _0xe26a66(_0x1aed71[_0xb0ee('0x12')](0x1f4,_[_0xb0ee('0x60')](_0x58a6f2,'message')[_0xb0ee('0x16')](',\x20')));}var _0x5f0e6d=_['find'](_0x13a7ce[_0xb0ee('0x76')],{'uniqueid':_0x1b53ea[_0xb0ee('0x61')]});if(_0x5f0e6d&&_0x5f0e6d[_0xb0ee('0x62')]){return ami['Action']({'action':'Redirect','channel':_0x5f0e6d[_0xb0ee('0x62')],'exten':_0x1b53ea[_0xb0ee('0x7a')],'context':_0x1b53ea[_0xb0ee('0x7b')]||_0x5f0e6d['context'],'priority':0x1})[_0xb0ee('0x1b')](function(_0x445c3f){_0x47f06f({'code':0xc8,'message':[_0x1b53ea['uniqueid'],_0x445c3f['message']['toLowerCase']()]['join']('\x20')});})[_0xb0ee('0x1d')](function(_0x3066b6){_0xe26a66(_0x1aed71[_0xb0ee('0x12')](0x1f5,[_0x1b53ea['uniqueid'],_0x3066b6[_0xb0ee('0x1c')]['toLowerCase']()]['join']('\x20')));});}else{return _0xe26a66(_0x1aed71['error'](0x1f5,'Channel\x20doesn\x27t\x20exist'));}});},'Agents':function(_0x2b2597){return new Promise(function(_0x345eb7,_0x586bce){var _0x5a634a=_[_0xb0ee('0x5d')](_0x13a7ce[_0xb0ee('0xe')]);_0x345eb7({'count':_0x5a634a['length'],'rows':_0x5a634a});});},'Telephones':function(_0x4b0e71){return new Promise(function(_0x195707,_0x4608f4){var _0x5169bc=_['values'](_0x13a7ce[_0xb0ee('0x7c')]);_0x195707({'count':_0x5169bc['length'],'rows':_0x5169bc});});},'Trunks':function(_0x4f6f59){return new Promise(function(_0x3e8034,_0x472b1c){var _0x471e4a=_[_0xb0ee('0x5d')](_0x13a7ce[_0xb0ee('0x7d')]);_0x3e8034({'count':_0x471e4a[_0xb0ee('0x5b')],'rows':_0x471e4a});});},'OutboundChannels':function(_0x55c96c){return new Promise(function(_0x437dd1,_0x11a80c){var _0x3e2f22=_['values'](_0x13a7ce[_0xb0ee('0x7e')]);_0x437dd1({'count':_0x3e2f22['length'],'rows':_0x3e2f22});});},'Outbound':function(_0xa22b39){return new Promise(function(_0x50d3c7,_0x4c1a66){_0x50d3c7(_0x13a7ce[_0xb0ee('0x2f')]);});},'Campaigns':function(_0x445c83){return new Promise(function(_0x4e7981,_0x163b65){var _0x1726ad=_[_0xb0ee('0x5d')](_0x13a7ce[_0xb0ee('0x7f')]);_0x4e7981({'count':_0x1726ad[_0xb0ee('0x5b')],'rows':_0x1726ad});});},'VoiceQueuesPreview':function(_0x2406df){var _0x206de5=this;return new Promise(function(_0x44a5ad,_0x222491){_0x76bf19[_0xb0ee('0x80')](_0x2406df['id'])[_0xb0ee('0x1b')](function(_0x39dd25){_0x44a5ad({'code':0xc8,'message':_0x39dd25[_0xb0ee('0x1c')]});})[_0xb0ee('0x1d')](function(_0x59e4f1){_0x222491(_0x206de5[_0xb0ee('0x12')](0x1f4,_0x59e4f1[_0xb0ee('0x1c')]));});});},'EventManager':function(_0x4a0b5b){var _0x2e4ffe=this;return new Promise(function(_0x554405,_0x2e7604){if(!_0x4a0b5b['event']){return _0x2e7604(_0x2e4ffe[_0xb0ee('0x12')](0x1f4,'Event\x20name\x20mandatory'));}ami[_0xb0ee('0x81')](_0xb0ee('0x82')+_0x4a0b5b[_0xb0ee('0x83')],_0x4a0b5b[_0xb0ee('0x1c')]);_0x554405({'code':0xc8,'message':_0x4a0b5b});});},'FaxAccounts':function(_0x96d5c6){return new Promise(function(_0xf74391,_0x50a7c0){var _0x314e3c=_[_0xb0ee('0x5d')](_0x13a7ce[_0xb0ee('0x84')]);_0xf74391({'count':_0x314e3c[_0xb0ee('0x5b')],'rows':_0x314e3c});});},'SendFax':function(_0x48d347){var _0x351c45=this;return new Promise(function(_0x4ebb8b,_0x469490){_0x209dda[_0xb0ee('0x85')](_0x48d347)['then'](function(_0x2ce819){_0x4ebb8b({'code':0xc8,'message':_0x2ce819[_0xb0ee('0x1c')]});})['catch'](function(_0x249c57){_0x469490(_0x351c45['error'](0x1f4,_0x249c57[_0xb0ee('0x1c')]));});});},'CheckAfterSend':function(_0xa0ab4d){var _0x500722=this;return new Promise(function(_0x54a398,_0x1713e2){_0x209dda[_0xb0ee('0x86')](_0xa0ab4d)[_0xb0ee('0x1b')](function(_0x188773){_0x54a398({'code':0xc8,'message':_0x188773['message']});})[_0xb0ee('0x1d')](function(_0x1a2f27){_0x1713e2(_0x500722[_0xb0ee('0x12')](0x1f4,_0x1a2f27[_0xb0ee('0x1c')]));});});}};var _0x1ad658=jayson['server'](_0x5377b4)['http']();_0x1ad658['on'](_0xb0ee('0x12'),function(_0x51c4ed){return _0x17f445(_0x51c4ed);});_0x1ad658[_0xb0ee('0x7')](0x232a,_0xb0ee('0x87'),function(){console[_0xb0ee('0x88')](_0xb0ee('0x89'),0x232a);return _0x453fa4('RPC\x20listening\x20on\x20port:'+0x232a);});});};