34393b13a7c5a111cfc29724bb912ef3007c4c47
[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 _0x3e24=['unmanaged','abandoned','waiting','outbound','dialActive','dialMethod','dialOriginateCallerIdName','dialOriginateCallerIdNumber','dialOriginateTimeout','dialPrefix','outboundAnswerAgiCallsDay','outboundAnswerCallsDay','outboundBlacklistCallsDay','outboundBusyCallsDay','outboundDropCallsDayACS','outboundDropCallsDayCallersExit','outboundDropCallsDayTimeout','outboundNoAnswerCallsDay','outboundNoSuchCallsDay','outboundOriginateFailureCallsDay','outboundReCallsDay','outboundRejectCallsDay','outboundUnknownCallsDay','predictiveIntervalAnsweredCalls','predictiveIntervalAvgTalktime','predictiveIntervalDroppedCallsTimeout','predictiveIntervalErlangCalls','predictiveIntervalErlangCallsDroppedCalls','predictiveIntervalHitRate','predictiveIntervalMultiplicativeFactor','predictiveIntervalPauses','predictiveIntervalAvailable','predictiveIntervalTotalCalls','originated','erlangCalls','erlangCallToSecond','erlangAbandonmentRate','erlangBusyFactor','startPredictive','startProgressive','Trunk','active','callerid','Interval','length','find','undefined','values','uniqueid','channel','%s.%s','filename','wav','MixMonitor','ai(mixmonitorid)','monitors','/var/spool/asterisk/monitor/','toLowerCase','isNil','push','YYYY-MM-DD\x20HH:mm:ss','mixmonitorid','rec','Channel\x20doesn\x27t\x20exist','map','channels','resolve','StopMixMonitor','destinationchannel','status','stop','StopMixMonitor\x20Success','queueChannels','voicequeuechannel','voicequeuechannelhangup','Hangup','voicequeuechannelredirect','Redirect','context','telephones','outboundChannels','campaigns','run','Event\x20name\x20mandatory','emit','faxAccounts','send','checkAfterSend','server','http','127.0.0.1','lodash','util','jayson/promise','validate','bluebird','../../../config/environment','../properties','listen','format','%s/%s','name','timers','agents','updateStatusRealtime','pause','QueuePause','isConnected','error','asterisk','username','ami\x20disconnected','join','pick','action','Reload','Action','then','message','catch','command','Command','content','voiceQueues','hasOwnProperty','strategy','available','loggedIn','pTalking','sumBillable','sumDuration','talking','total','type'];(function(_0x382934,_0x365ab0){var _0x44798f=function(_0x4d0955){while(--_0x4d0955){_0x382934['push'](_0x382934['shift']());}};_0x44798f(++_0x365ab0);}(_0x3e24,0x167));var _0x43e2=function(_0x41031d,_0x17a3ee){_0x41031d=_0x41031d-0x0;var _0x2606c8=_0x3e24[_0x41031d];return _0x2606c8;};'use strict';var _=require(_0x43e2('0x0'));var util=require(_0x43e2('0x1'));var jayson=require(_0x43e2('0x2'));var schema=require(_0x43e2('0x3'));var BPromise=require(_0x43e2('0x4'));var moment=require('moment');var config=require(_0x43e2('0x5'));var properties=require(_0x43e2('0x6'));var ami=require('../ami');exports[_0x43e2('0x7')]=function(_0x18629c,_0x1a89fc,_0x28b144){return new BPromise(function(_0x43b5a7,_0x121e2e){var _0x23b2d8={'QueuePause':function(_0x59956d){return new Promise(function(_0xb75b,_0x2357bc){var _0x4bd2ce=util[_0x43e2('0x8')](_0x43e2('0x9'),'SIP',_0x59956d[_0x43e2('0xa')]);if(_0x18629c[_0x43e2('0xb')]&&_0x18629c['timers'][_0x4bd2ce]&&_0x18629c[_0x43e2('0xb')][_0x4bd2ce]['timer']){_0x18629c['timers'][_0x4bd2ce]['updateAcw']();}if(_0x18629c[_0x43e2('0xc')][_0x4bd2ce]){_0x18629c[_0x43e2('0xc')][_0x4bd2ce][_0x43e2('0xd')]({'statePause':_0x59956d[_0x43e2('0xe')]?!![]:![]});}_0xb75b({'code':0xc8,'message':_0x43e2('0xf')});});},'Reload':function(_0x68e82d){var _0x131bef=this;return new Promise(function(_0x802e2d,_0x10d166){if(ami[_0x43e2('0x10')]()==![]){return _0x10d166(_0x131bef[_0x43e2('0x11')](0x1f4,[config[_0x43e2('0x12')]['ip'],config['asterisk'][_0x43e2('0x13')],_0x43e2('0x14')][_0x43e2('0x15')]('\x20')));}_0x68e82d=_[_0x43e2('0x16')](_0x68e82d,_['keys'](properties['module']));_0x68e82d[_0x43e2('0x17')]=_0x43e2('0x18');return ami[_0x43e2('0x19')](_0x68e82d)[_0x43e2('0x1a')](function(_0x105cb8){_0x802e2d({'code':0xc8,'message':_0x105cb8[_0x43e2('0x1b')]});})[_0x43e2('0x1c')](function(_0x15ecb5){_0x10d166(_0x131bef[_0x43e2('0x11')](0x1f5,_0x15ecb5[_0x43e2('0x1b')]));});});},'Command':function(_0x4879e9){var _0x3ee34c=this;return new Promise(function(_0xb99e5d,_0x4de509){if(ami[_0x43e2('0x10')]()==![]){return _0x4de509(_0x3ee34c['error'](0x1f4,[config[_0x43e2('0x12')]['ip'],config[_0x43e2('0x12')][_0x43e2('0x13')],_0x43e2('0x14')][_0x43e2('0x15')]('\x20')));}_0x4879e9=_['pick'](_0x4879e9,_0x43e2('0x1d'));_0x4879e9[_0x43e2('0x17')]=_0x43e2('0x1e');return ami['Action'](_0x4879e9)[_0x43e2('0x1a')](function(_0x32f048){_0xb99e5d({'code':0xc8,'message':_0x32f048[_0x43e2('0x1f')]});})[_0x43e2('0x1c')](function(_0x4f20e6){_0x4de509(_0x3ee34c[_0x43e2('0x11')](0x1f5,_0x4f20e6[_0x43e2('0x1b')]));});});},'VoiceQueues':function(_0x215cb7){return new Promise(function(_0x3b7b22,_0x178223){var _0x2a593e=[];for(var _0x3ca16b in _0x18629c[_0x43e2('0x20')]){if(_0x18629c[_0x43e2('0x20')][_0x43e2('0x21')](_0x3ca16b)){var _0x1ea844=_0x18629c[_0x43e2('0x20')][_0x3ca16b];var _0x52ed49={'id':_0x1ea844['id'],'name':_0x1ea844[_0x43e2('0xa')],'strategy':_0x1ea844[_0x43e2('0x22')],'answered':_0x1ea844['answered'],'available':_0x1ea844[_0x43e2('0x23')],'loggedIn':_0x1ea844[_0x43e2('0x24')],'pTalking':_0x1ea844[_0x43e2('0x25')],'sumBillable':_0x1ea844[_0x43e2('0x26')],'sumDuration':_0x1ea844[_0x43e2('0x27')],'sumHoldTime':_0x1ea844['sumHoldTime']||0x0,'talking':_0x1ea844[_0x43e2('0x28')],'total':_0x1ea844[_0x43e2('0x29')],'type':_0x1ea844[_0x43e2('0x2a')],'unmanaged':_0x1ea844[_0x43e2('0x2b')],'abandoned':_0x1ea844[_0x43e2('0x2c')],'waiting':_0x1ea844[_0x43e2('0x2d')],'loggedInDb':_0x1ea844['loggedInDb']};if(_0x1ea844['type']===_0x43e2('0x2e')){_0x52ed49[_0x43e2('0x2f')]=_0x1ea844[_0x43e2('0x2f')];_0x52ed49[_0x43e2('0x30')]=_0x1ea844[_0x43e2('0x30')];_0x52ed49['dialOriginateCallerIdName']=_0x1ea844[_0x43e2('0x31')];_0x52ed49[_0x43e2('0x32')]=_0x1ea844[_0x43e2('0x32')];_0x52ed49[_0x43e2('0x33')]=_0x1ea844[_0x43e2('0x33')];_0x52ed49[_0x43e2('0x34')]=_0x1ea844[_0x43e2('0x34')];_0x52ed49['temp']=_0x1ea844['temp'];_0x52ed49[_0x43e2('0x35')]=_0x1ea844[_0x43e2('0x35')];_0x52ed49['outboundAnswerCallsDay']=_0x1ea844[_0x43e2('0x36')];_0x52ed49[_0x43e2('0x37')]=_0x1ea844['outboundBlacklistCallsDay'];_0x52ed49[_0x43e2('0x38')]=_0x1ea844['outboundBusyCallsDay'];_0x52ed49['outboundCongestionCallsDay']=_0x1ea844['outboundCongestionCallsDay'];_0x52ed49[_0x43e2('0x39')]=_0x1ea844['outboundDropCallsDayACS'];_0x52ed49[_0x43e2('0x3a')]=_0x1ea844[_0x43e2('0x3a')];_0x52ed49[_0x43e2('0x3b')]=_0x1ea844[_0x43e2('0x3b')];_0x52ed49[_0x43e2('0x3c')]=_0x1ea844[_0x43e2('0x3c')];_0x52ed49[_0x43e2('0x3d')]=_0x1ea844[_0x43e2('0x3d')];_0x52ed49[_0x43e2('0x3e')]=_0x1ea844[_0x43e2('0x3e')];_0x52ed49[_0x43e2('0x3f')]=_0x1ea844[_0x43e2('0x3f')];_0x52ed49[_0x43e2('0x40')]=_0x1ea844[_0x43e2('0x40')];_0x52ed49[_0x43e2('0x41')]=_0x1ea844[_0x43e2('0x41')];_0x52ed49[_0x43e2('0x42')]=_0x1ea844['predictiveIntervalAnsweredCalls'];_0x52ed49['predictiveIntervalAvgHoldtime']=_0x1ea844['predictiveIntervalAvgHoldtime'];_0x52ed49[_0x43e2('0x43')]=_0x1ea844[_0x43e2('0x43')];_0x52ed49['predictiveIntervalDroppedCallsCallersExit']=_0x1ea844['predictiveIntervalDroppedCallsCallersExit'];_0x52ed49[_0x43e2('0x44')]=_0x1ea844[_0x43e2('0x44')];_0x52ed49[_0x43e2('0x45')]=_0x1ea844[_0x43e2('0x45')];_0x52ed49[_0x43e2('0x46')]=_0x1ea844[_0x43e2('0x46')];_0x52ed49[_0x43e2('0x47')]=_0x1ea844[_0x43e2('0x47')];_0x52ed49[_0x43e2('0x48')]=_0x1ea844[_0x43e2('0x48')];_0x52ed49[_0x43e2('0x49')]=_0x1ea844[_0x43e2('0x49')];_0x52ed49[_0x43e2('0x4a')]=_0x1ea844[_0x43e2('0x4a')];_0x52ed49['predictiveIntervalTotalCalls']=_0x1ea844[_0x43e2('0x4b')];_0x52ed49['message']=_0x1ea844[_0x43e2('0x1b')];_0x52ed49['originated']=_0x1ea844[_0x43e2('0x4c')];_0x52ed49[_0x43e2('0x4d')]=_0x1ea844[_0x43e2('0x4d')];_0x52ed49['erlangCallToSecond']=_0x1ea844[_0x43e2('0x4e')];_0x52ed49['erlangAbandonmentRate']=_0x1ea844[_0x43e2('0x4f')];_0x52ed49[_0x43e2('0x50')]=_0x1ea844[_0x43e2('0x50')];_0x52ed49[_0x43e2('0x51')]=_0x1ea844['startPredictive'];_0x52ed49['startProgressive']=_0x1ea844[_0x43e2('0x52')];}if(_0x1ea844[_0x43e2('0x53')]){_0x52ed49[_0x43e2('0x53')]={'id':_0x1ea844[_0x43e2('0x53')]['id'],'name':_0x1ea844['Trunk'][_0x43e2('0xa')],'active':_0x1ea844[_0x43e2('0x53')][_0x43e2('0x54')],'callerid':_0x1ea844[_0x43e2('0x53')][_0x43e2('0x55')]};}if(_0x1ea844['Interval']){_0x52ed49[_0x43e2('0x56')]={'id':_0x1ea844['Interval']['id'],'name':_0x1ea844[_0x43e2('0x56')][_0x43e2('0xa')]};}_0x2a593e['push'](_0x52ed49);}}_0x3b7b22({'count':_0x2a593e[_0x43e2('0x57')],'rows':_0x2a593e});});},'UpdateVoiceQueue':function(_0x5cfa34){return new Promise(function(_0x4b4e68,_0x44d036){var _0x3f61c6=_[_0x43e2('0x58')](_0x18629c[_0x43e2('0x20')],{'id':parseInt(_0x5cfa34['id'])});var _0x13154c=_['omit'](_0x5cfa34,['id']);if(_0x3f61c6){for(var _0x1b001d in _0x13154c){if(typeof _0x13154c[_0x1b001d]!==_0x43e2('0x59')&&typeof _0x3f61c6[_0x1b001d]!==_0x43e2('0x59')){_0x3f61c6[_0x1b001d]=_0x13154c[_0x1b001d];}}_0x4b4e68(_0x3f61c6);}else{_0x44d036();}});},'VoiceChannels':function(_0xe5c04){return new Promise(function(_0x466448,_0x4114ce){var _0x29a9ef=_[_0x43e2('0x5a')](_0x18629c['channels']);_0x466448({'count':_0x29a9ef[_0x43e2('0x57')],'rows':_0x29a9ef});});},'VoiceChannelMixMonitor':function(_0x2832a4){var _0x497e12=this;return new Promise(function(_0x1af22d,_0x2b82be){if(ami[_0x43e2('0x10')]()==![]){return _0x2b82be(_0x497e12[_0x43e2('0x11')](0x1f4,[config['asterisk']['ip'],config[_0x43e2('0x12')][_0x43e2('0x13')],_0x43e2('0x14')][_0x43e2('0x15')]('\x20')));}var _0x42f27d=schema(properties['voicechannel'])['validate'](_0x2832a4);if(_0x42f27d[_0x43e2('0x57')]>0x0){return _0x2b82be(_0x497e12[_0x43e2('0x11')](0x1f4,_['map'](_0x42f27d,_0x43e2('0x1b'))[_0x43e2('0x15')](',\x20')));}var _0x3888e8=_['find'](_0x18629c['channels'],{'uniqueid':_0x2832a4[_0x43e2('0x5b')]});if(_0x3888e8&&_0x3888e8[_0x43e2('0x5c')]){var _0x32148b=util[_0x43e2('0x8')](_0x43e2('0x5d'),_0x2832a4[_0x43e2('0x5e')]||_0x2832a4[_0x43e2('0x5b')],_0x2832a4[_0x43e2('0x8')]||_0x43e2('0x5f'));return ami['Action']({'action':_0x43e2('0x60'),'channel':_0x3888e8['channel'],'file':_0x32148b,'options':_0x43e2('0x61')})[_0x43e2('0x1a')](function(_0x2f8894){var _0x5a5b32=_[_0x43e2('0x58')](_0x3888e8[_0x43e2('0x62')],{'filename':_0x43e2('0x63')+_0x32148b[_0x43e2('0x64')]()});if(_[_0x43e2('0x65')](_0x5a5b32)){_0x3888e8[_0x43e2('0x62')][_0x43e2('0x66')]({'filename':_0x43e2('0x63')+_0x32148b[_0x43e2('0x64')](),'createdAt':moment()[_0x43e2('0x8')](_0x43e2('0x67')),'mixmonitorid':_0x2f8894[_0x43e2('0x68')],'status':_0x43e2('0x69')});}else{_0x5a5b32['mixmonitorid']=_0x2f8894['mixmonitorid'];_0x5a5b32['status']='rec';}_0x1af22d({'code':0xc8,'message':[_0x2832a4['uniqueid'],'MixMonitor\x20Success',_0x2f8894[_0x43e2('0x68')]]['join']('\x20'),'mixmonitorid':_0x2f8894['mixmonitorid']});})[_0x43e2('0x1c')](function(_0x4c6bb9){_0x2b82be(_0x497e12[_0x43e2('0x11')](0x1f5,[_0x2832a4['uniqueid'],_0x4c6bb9[_0x43e2('0x1b')][_0x43e2('0x64')]()][_0x43e2('0x15')]('\x20')));});}else{return _0x2b82be(_0x497e12[_0x43e2('0x11')](0x1f5,_0x43e2('0x6a')));}});},'VoiceChannelStopMixMonitor':function(_0x13685a){var _0x129bd0=this;return new Promise(function(_0x211b9c,_0x40d99b){if(ami[_0x43e2('0x10')]()==![]){return _0x40d99b(_0x129bd0['error'](0x1f4,[config[_0x43e2('0x12')]['ip'],config[_0x43e2('0x12')]['username'],_0x43e2('0x14')]['join']('\x20')));}var _0x5d6c3d=schema(properties['voicechannel'])['validate'](_0x13685a);if(_0x5d6c3d['length']>0x0){return _0x40d99b(_0x129bd0[_0x43e2('0x11')](0x1f4,_[_0x43e2('0x6b')](_0x5d6c3d,_0x43e2('0x1b'))[_0x43e2('0x15')](',\x20')));}var _0x49fc77=_['find'](_0x18629c[_0x43e2('0x6c')],{'uniqueid':_0x13685a[_0x43e2('0x5b')]});if(_0x49fc77){return BPromise[_0x43e2('0x6d')]()[_0x43e2('0x1a')](function(){if(_0x49fc77[_0x43e2('0x5c')]){return ami[_0x43e2('0x19')]({'action':_0x43e2('0x6e'),'channel':_0x49fc77[_0x43e2('0x5c')],'mixmonitorid':_0x13685a[_0x43e2('0x68')]})[_0x43e2('0x1c')](function(_0x1dd8c8){});}})['then'](function(){if(_0x49fc77[_0x43e2('0x6f')]){return ami[_0x43e2('0x19')]({'action':_0x43e2('0x6e'),'channel':_0x49fc77[_0x43e2('0x6f')],'mixmonitorid':_0x13685a[_0x43e2('0x68')]})['catch'](function(_0x39eded){});}})[_0x43e2('0x1a')](function(_0x4b06b8){var _0x137d0c=_['find'](_0x49fc77[_0x43e2('0x62')],{'mixmonitorid':_0x13685a[_0x43e2('0x68')]});if(_0x137d0c){_0x137d0c[_0x43e2('0x70')]=_0x43e2('0x71');}})[_0x43e2('0x1a')](function(){var _0x2bac5a=util[_0x43e2('0x8')](_0x43e2('0x5d'),_0x13685a[_0x43e2('0x5e')]||_0x13685a['uniqueid'],_0x13685a['format']||_0x43e2('0x5f'));var _0x2d93d6=_[_0x43e2('0x58')](_0x49fc77[_0x43e2('0x62')],{'filename':'/var/spool/asterisk/monitor/'+_0x2bac5a[_0x43e2('0x64')]()});if(_0x2d93d6){_0x2d93d6[_0x43e2('0x70')]=_0x43e2('0x71');}})['then'](function(){_0x211b9c({'code':0xc8,'message':[_0x13685a[_0x43e2('0x5b')],_0x43e2('0x72')][_0x43e2('0x15')]('\x20')});})[_0x43e2('0x1c')](function(_0x533967){_0x40d99b(_0x129bd0[_0x43e2('0x11')](0x1f5,[_0x13685a[_0x43e2('0x5b')],_0x533967[_0x43e2('0x1b')]['toLowerCase']()]['join']('\x20')));});}else{return _0x40d99b(_0x129bd0[_0x43e2('0x11')](0x1f5,_0x43e2('0x6a')));}});},'VoiceQueuesChannels':function(_0x518aa1){return new Promise(function(_0x361923,_0x419e85){var _0x3e317e=_['values'](_0x18629c[_0x43e2('0x73')]);_0x361923({'count':_0x3e317e['length'],'rows':_0x3e317e});});},'VoiceQueuesChannel':function(_0x24c1ff){var _0x471730=this;return new Promise(function(_0x4363da,_0x181d39){var _0x39c9b6=schema(properties[_0x43e2('0x74')])[_0x43e2('0x3')](_0x24c1ff);if(_0x39c9b6[_0x43e2('0x57')]>0x0){return _0x181d39(_0x471730['error'](0x1f4,_[_0x43e2('0x6b')](_0x39c9b6,_0x43e2('0x1b'))[_0x43e2('0x15')](',\x20')));}var _0x2e2d61=_[_0x43e2('0x58')](_0x18629c[_0x43e2('0x73')],{'uniqueid':_0x24c1ff[_0x43e2('0x5b')]});if(_0x2e2d61){_0x4363da(_0x2e2d61);}else{return _0x181d39(_0x471730[_0x43e2('0x11')](0x1f5,_0x43e2('0x6a')));}});},'VoiceQueuesChannelHangup':function(_0x1d4d7c){var _0x4602ae=this;return new Promise(function(_0x5dd68f,_0x222ab8){if(ami[_0x43e2('0x10')]()==![]){return _0x222ab8(_0x4602ae[_0x43e2('0x11')](0x1f4,[config['asterisk']['ip'],config[_0x43e2('0x12')][_0x43e2('0x13')],_0x43e2('0x14')][_0x43e2('0x15')]('\x20')));}var _0x4ecbd5=schema(properties[_0x43e2('0x75')])['validate'](_0x1d4d7c);if(_0x4ecbd5[_0x43e2('0x57')]>0x0){return _0x222ab8(_0x4602ae[_0x43e2('0x11')](0x1f4,_[_0x43e2('0x6b')](_0x4ecbd5,'message')[_0x43e2('0x15')](',\x20')));}var _0x282876=_[_0x43e2('0x58')](_0x18629c[_0x43e2('0x73')],{'uniqueid':_0x1d4d7c[_0x43e2('0x5b')]});if(_0x282876&&_0x282876[_0x43e2('0x5c')]){return ami[_0x43e2('0x19')]({'action':_0x43e2('0x76'),'channel':_0x282876[_0x43e2('0x5c')]})[_0x43e2('0x1a')](function(_0x2ccaef){_0x5dd68f({'code':0xc8,'message':[_0x1d4d7c['uniqueid'],_0x2ccaef[_0x43e2('0x1b')][_0x43e2('0x64')]()][_0x43e2('0x15')]('\x20')});})[_0x43e2('0x1c')](function(_0x4e34a9){_0x222ab8(_0x4602ae[_0x43e2('0x11')](0x1f5,[_0x1d4d7c[_0x43e2('0x5b')],_0x4e34a9[_0x43e2('0x1b')][_0x43e2('0x64')]()][_0x43e2('0x15')]('\x20')));});}else{return _0x222ab8(_0x4602ae[_0x43e2('0x11')](0x1f5,_0x43e2('0x6a')));}});},'VoiceQueuesChannelRedirect':function(_0x248b2d){var _0x5a7b28=this;return new Promise(function(_0x19d3ec,_0x29c24d){if(ami[_0x43e2('0x10')]()==![]){return _0x29c24d(_0x5a7b28[_0x43e2('0x11')](0x1f4,[config[_0x43e2('0x12')]['ip'],config[_0x43e2('0x12')][_0x43e2('0x13')],'ami\x20disconnected'][_0x43e2('0x15')]('\x20')));}var _0x439b78=schema(properties[_0x43e2('0x77')])[_0x43e2('0x3')](_0x248b2d);if(_0x439b78[_0x43e2('0x57')]>0x0){return _0x29c24d(_0x5a7b28[_0x43e2('0x11')](0x1f4,_['map'](_0x439b78,_0x43e2('0x1b'))[_0x43e2('0x15')](',\x20')));}var _0xf6d220=_[_0x43e2('0x58')](_0x18629c[_0x43e2('0x73')],{'uniqueid':_0x248b2d[_0x43e2('0x5b')]});if(_0xf6d220&&_0xf6d220['channel']){return ami[_0x43e2('0x19')]({'action':_0x43e2('0x78'),'channel':_0xf6d220[_0x43e2('0x5c')],'exten':_0x248b2d['exten'],'context':_0x248b2d['context']||_0xf6d220[_0x43e2('0x79')],'priority':0x1})['then'](function(_0x5bd1a9){_0x19d3ec({'code':0xc8,'message':[_0x248b2d[_0x43e2('0x5b')],_0x5bd1a9[_0x43e2('0x1b')][_0x43e2('0x64')]()]['join']('\x20')});})[_0x43e2('0x1c')](function(_0x5cdf92){_0x29c24d(_0x5a7b28[_0x43e2('0x11')](0x1f5,[_0x248b2d[_0x43e2('0x5b')],_0x5cdf92[_0x43e2('0x1b')]['toLowerCase']()]['join']('\x20')));});}else{return _0x29c24d(_0x5a7b28['error'](0x1f5,_0x43e2('0x6a')));}});},'Agents':function(_0xa309da){return new Promise(function(_0x403fb1,_0x12fd99){var _0xd56111=_[_0x43e2('0x5a')](_0x18629c[_0x43e2('0xc')]);_0x403fb1({'count':_0xd56111[_0x43e2('0x57')],'rows':_0xd56111});});},'Telephones':function(_0x16bb5f){return new Promise(function(_0x2346ee,_0x38e95c){var _0x48f054=_[_0x43e2('0x5a')](_0x18629c[_0x43e2('0x7a')]);_0x2346ee({'count':_0x48f054['length'],'rows':_0x48f054});});},'Trunks':function(_0x2b1a80){return new Promise(function(_0x57fbac,_0x2ea250){var _0x319292=_[_0x43e2('0x5a')](_0x18629c['trunks']);_0x57fbac({'count':_0x319292[_0x43e2('0x57')],'rows':_0x319292});});},'OutboundChannels':function(_0x13cd38){return new Promise(function(_0x5043f1,_0x4f83e3){var _0x5c5a59=_[_0x43e2('0x5a')](_0x18629c[_0x43e2('0x7b')]);_0x5043f1({'count':_0x5c5a59[_0x43e2('0x57')],'rows':_0x5c5a59});});},'Outbound':function(_0x3600c4){return new Promise(function(_0x15a507,_0x19b134){_0x15a507(_0x18629c[_0x43e2('0x2e')]);});},'Campaigns':function(_0x51f61b){return new Promise(function(_0x50de17,_0x20157d){var _0x44b751=_['values'](_0x18629c[_0x43e2('0x7c')]);_0x50de17({'count':_0x44b751[_0x43e2('0x57')],'rows':_0x44b751});});},'VoiceQueuesPreview':function(_0x343d7e){var _0x5033ff=this;return new Promise(function(_0x268955,_0xe02c94){_0x1a89fc[_0x43e2('0x7d')](_0x343d7e['id'])[_0x43e2('0x1a')](function(_0x1eae84){_0x268955({'code':0xc8,'message':_0x1eae84[_0x43e2('0x1b')]});})[_0x43e2('0x1c')](function(_0x41ae38){_0xe02c94(_0x5033ff[_0x43e2('0x11')](0x1f4,_0x41ae38[_0x43e2('0x1b')]));});});},'EventManager':function(_0x3bfdb6){var _0x259160=this;return new Promise(function(_0x1cf109,_0x27cfdb){if(!_0x3bfdb6['event']){return _0x27cfdb(_0x259160[_0x43e2('0x11')](0x1f4,_0x43e2('0x7e')));}ami[_0x43e2('0x7f')]('custom:'+_0x3bfdb6['event'],_0x3bfdb6[_0x43e2('0x1b')]);_0x1cf109({'code':0xc8,'message':_0x3bfdb6});});},'FaxAccounts':function(_0x23c490){return new Promise(function(_0x35e117,_0x54e5fe){var _0x5ef6f4=_[_0x43e2('0x5a')](_0x18629c[_0x43e2('0x80')]);_0x35e117({'count':_0x5ef6f4[_0x43e2('0x57')],'rows':_0x5ef6f4});});},'SendFax':function(_0x3ed240){var _0x1d48ce=this;return new Promise(function(_0x3c273d,_0x3ff1c9){_0x28b144[_0x43e2('0x81')](_0x3ed240)[_0x43e2('0x1a')](function(_0x11a897){_0x3c273d({'code':0xc8,'message':_0x11a897[_0x43e2('0x1b')]});})[_0x43e2('0x1c')](function(_0x440ee8){_0x3ff1c9(_0x1d48ce[_0x43e2('0x11')](0x1f4,_0x440ee8[_0x43e2('0x1b')]));});});},'CheckAfterSend':function(_0x2a21fd){var _0x1e8aeb=this;return new Promise(function(_0x1522d7,_0x36adb7){_0x28b144[_0x43e2('0x82')](_0x2a21fd)[_0x43e2('0x1a')](function(_0x39d587){_0x1522d7({'code':0xc8,'message':_0x39d587[_0x43e2('0x1b')]});})[_0x43e2('0x1c')](function(_0x120070){_0x36adb7(_0x1e8aeb['error'](0x1f4,_0x120070['message']));});});}};var _0x321510=jayson[_0x43e2('0x83')](_0x23b2d8)[_0x43e2('0x84')]();_0x321510['on']('error',function(_0x8daf6c){return _0x121e2e(_0x8daf6c);});_0x321510[_0x43e2('0x7')](0x232a,_0x43e2('0x85'),function(){console['log']('AMI\x20RPC\x20server\x20listening\x20on\x20127.0.0.1:%d!',0x232a);return _0x43b5a7('RPC\x20listening\x20on\x20port:'+0x232a);});});};