Built motion from commit 71df090e.|2.6.31
[motion2.git] / server / services / ami / trigger / integration / zoho.js
index a3f9a13..6bac1f3 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x2bb0=['moduleCreate','role','first_name','last_name','Zoho-oauthtoken\x20','code','details','enduserType','startCase','Error:\x20','log','CREATE\x20ERROR','uri','Contacts','/crm/v2/Leads/search?criteria=((Phone:equals:','Leads','nothing','/crm/v2/Contacts/search?criteria=((Phone:equals:','lead','Creating\x20new\x20call...','Owner','administrator','Subject','getString','Subjects','Description','Descriptions','Who_Id','Full_Name','First_Name','Last_Name','What_Id','$se_module','talktime','utc','mm:ss','answertime','endtime','YYYY-MM-DDTHH:mm:ss','diff','starttime','called','Call_Result','complete','connect','Answered','rejected','Rejected','abandoned','Abandoned','timeout','Timeout','Call_Start_Time','outbound','agentcalledAt','Call_Type','Fields','/crm/v2/Calls','Call\x20created!','err','queue','host','serverUrl','[QUEUE]','Recording\x20is\x20enabled!','recordingURL','/api/voice/recordings/','uniqueid','/downloads?type=uniqueid&token=','zoho.eu','com','calleridname','calleridnum','Inbound','Displaying\x20call\x20to\x20agent\x20in\x20a\x20new\x20tab...','user:%s','trigger:browser:url','https://crm.','/crm/EntityInfo.do?module=Calls&id=','stripTrailingSlash','recordingFormat','none','[OUTBOUND]','The\x20User\x20ID\x20is:','Outbound','The\x20Call\x20ID\x20is:','unmanaged','monitor_format','lastevent','toUpperCase','lodash','request-promise','md5','./util','bluebird','../../../../config/logger','zoho','redis','defaults','localhost','socket.io-emitter','[HTTP]','stringify','length','string','picklist','type','idField','content','toString','variable','variableName','Variable','name','toLowerCase','split','isNil','access_token','expires_in','zone','https://accounts.zoho.com','https://accounts.zoho.com.au','https://accounts.zoho.eu','POST','/oauth/v2/token','refreshToken','clientSecret','refresh_token','add','seconds','Failing\x20creating\x20the\x20access_token','stack','info','GET','format','https://www.zohoapis.%s/crm/v2/users','then','isArrayLikeObject','findIndex','users','email','Agent\x20found!','Using\x20the\x20admin\x20account!','profile','user','Administrator','error','Unable\x20to\x20retrieve\x20zoho\x20account\x20users:\x20','The\x20failing\x20result\x20is','catch','data','https://www.zohoapis.','/crm/v2/'];(function(_0x3ad0a4,_0x450472){var _0x598727=function(_0x4513cc){while(--_0x4513cc){_0x3ad0a4['push'](_0x3ad0a4['shift']());}};_0x598727(++_0x450472);}(_0x2bb0,0xf3));var _0x02bb=function(_0x21070,_0x211851){_0x21070=_0x21070-0x0;var _0x1e3854=_0x2bb0[_0x21070];return _0x1e3854;};'use strict';var _=require(_0x02bb('0x0'));var rp=require(_0x02bb('0x1'));var md5=require(_0x02bb('0x2'));var util=require('util');var intUtil=require(_0x02bb('0x3'));var moment=require('moment');var Redis=require('ioredis');var BPromise=require(_0x02bb('0x4'));var config=require('../../../../config/environment');var logger=require(_0x02bb('0x5'))(_0x02bb('0x6'));config[_0x02bb('0x7')]=_[_0x02bb('0x8')](config[_0x02bb('0x7')],{'host':_0x02bb('0x9'),'port':0x18eb});var io=require(_0x02bb('0xa'))(new Redis(config['redis']));function emit(_0x6d064a,_0x15e425,_0x23f816){io['to'](_0x6d064a)['emit'](_0x15e425,_0x23f816);}function request(_0x3d28d5){logger['debug'](_0x02bb('0xb'),JSON[_0x02bb('0xc')](_0x3d28d5));return rp(_0x3d28d5);}function getCustomFields(_0x4d3418,_0x3f861e){var _0x1c1915={};if(_0x4d3418[_0x02bb('0xd')]>0x0){_['forEach'](_0x4d3418,function(_0x2de7a2){if(_['includes']([_0x02bb('0xe'),_0x02bb('0xf')],_0x2de7a2[_0x02bb('0x10')])&&_0x2de7a2['idField']){_0x1c1915[_0x2de7a2[_0x02bb('0x11')]]=_0x2de7a2[_0x02bb('0x12')][_0x02bb('0x13')]();}else if(_0x2de7a2['type']===_0x02bb('0x14')&&_0x2de7a2['variableName']&&_0x2de7a2[_0x02bb('0x11')]&&_0x3f861e[_0x2de7a2[_0x02bb('0x15')]]){_0x1c1915[_0x2de7a2[_0x02bb('0x11')]]=_0x3f861e[_0x2de7a2[_0x02bb('0x15')]][_0x02bb('0x13')]();}else if(_0x2de7a2[_0x02bb('0x10')]==='customVariable'&&_0x2de7a2['Variable']&&_0x2de7a2[_0x02bb('0x16')][_0x02bb('0x17')]&&_0x2de7a2[_0x02bb('0x11')]&&_0x3f861e[_0x2de7a2[_0x02bb('0x16')][_0x02bb('0x17')][_0x02bb('0x18')]()]){_0x1c1915[_0x2de7a2['idField']]=_0x3f861e[_0x2de7a2[_0x02bb('0x16')]['name'][_0x02bb('0x18')]()][_0x02bb('0x13')]();}});}return _0x1c1915;}function getName(_0x1b607f){if(_0x1b607f['indexOf']('\x20')>0x0){var _0x1331fa=_0x1b607f[_0x02bb('0x19')](/ (.+)/);if(_0x1331fa[0x1]){return _0x1331fa;}}return[_0x1b607f,_0x1b607f];}var accountsTokens={};function getAccessToken(_0x147f48){return new Promise(function(_0x47b976,_0x1410b8){if(!_[_0x02bb('0x1a')](accountsTokens[_0x147f48['id']])&&!_['isNil'](accountsTokens[_0x147f48['id']][_0x02bb('0x1b')])){if(moment()['isBefore'](accountsTokens[_0x147f48['id']][_0x02bb('0x1c')])){_0x47b976(accountsTokens[_0x147f48['id']][_0x02bb('0x1b')]);}}var _0x21e550;switch(_0x147f48[_0x02bb('0x1d')]){case'US':_0x21e550=_0x02bb('0x1e');break;case'AU':_0x21e550=_0x02bb('0x1f');break;case'EU':_0x21e550=_0x02bb('0x20');break;case'IN':_0x21e550='https://accounts.zoho.in';break;case'CN':_0x21e550='https://accounts.zoho.com.cn';break;default:_0x21e550=_0x02bb('0x20');break;}var _0x5ac511={'method':_0x02bb('0x21'),'uri':_0x21e550+_0x02bb('0x22'),'qs':{'refresh_token':_0x147f48[_0x02bb('0x23')],'client_id':_0x147f48['clientId'],'client_secret':_0x147f48[_0x02bb('0x24')],'grant_type':_0x02bb('0x25')},'json':!![]};return rp(_0x5ac511)['then'](function(_0x3c483f){accountsTokens[_0x147f48['id']]={'access_token':_0x3c483f[_0x02bb('0x1b')],'expires_in':moment()[_0x02bb('0x26')](_0x3c483f[_0x02bb('0x1c')],_0x02bb('0x27'))};_0x47b976(_0x3c483f[_0x02bb('0x1b')]);})['catch'](function(_0x1f2be8){logger['error'](_0x02bb('0x28'),_0x1f2be8[_0x02bb('0x29')]);_0x1410b8(_0x1f2be8);});});}function getUser(_0x426c90,_0x4ae755,_0x548f1b,_0x3cd365){logger[_0x02bb('0x2a')]('Search\x20user');return request({'method':_0x02bb('0x2b'),'uri':util[_0x02bb('0x2c')](_0x02bb('0x2d'),_0x4ae755),'qs':{'type':'ActiveUsers'},'headers':{'Authorization':'Zoho-oauthtoken\x20'+_0x426c90},'json':!![]})[_0x02bb('0x2e')](function(_0x545174){if(_0x545174['users']){var _0x713096=-0x1;if(_[_0x02bb('0x2f')](_0x545174['users'])){if(!_[_0x02bb('0x1a')](_0x3cd365)){_0x713096=_[_0x02bb('0x30')](_0x545174[_0x02bb('0x31')],function(_0x4aaf67){return _0x4aaf67[_0x02bb('0x32')]===_0x3cd365;});}if(_0x713096>=0x0){logger[_0x02bb('0x2a')](_0x02bb('0x33'));}else{logger[_0x02bb('0x2a')](_0x02bb('0x34'));_0x713096=_[_0x02bb('0x30')](_0x545174[_0x02bb('0x31')],function(_0x167bfd){return _0x167bfd[_0x02bb('0x35')][_0x02bb('0x17')]==='Administrator';});}return _0x545174[_0x02bb('0x31')][_0x713096];}else{if(_0x545174[_0x02bb('0x36')]['profile'][_0x02bb('0x17')]===_0x02bb('0x37')){logger[_0x02bb('0x2a')](_0x02bb('0x34'));user=_0x545174['user'];return user;}else{logger[_0x02bb('0x38')]('The\x20failing\x20result\x20is',JSON[_0x02bb('0xc')](_0x545174));throw new Error(_0x02bb('0x39')+JSON[_0x02bb('0xc')](_0x545174));}}}else{logger[_0x02bb('0x38')](_0x02bb('0x3a'),JSON[_0x02bb('0xc')](_0x545174));throw new Error(_0x02bb('0x39')+JSON['stringify'](_0x545174));}})[_0x02bb('0x3b')](function(_0x218d7b){console['error'](_0x218d7b);});}function getZohoUser(_0x128574,_0xc63774){return new BPromise(function(_0x128a12,_0x336aab){request(_0x128574)[_0x02bb('0x2e')](function(_0xee8e8e){var _0x51ad66=null;if(_0xee8e8e){_0x51ad66=_0xee8e8e[_0x02bb('0x3c')][0x0];_0x51ad66['enduserType']=_0xc63774;}_0x128a12(_0x51ad66);})[_0x02bb('0x3b')](function(_0x313b9d){_0x336aab(_0x313b9d);});});}function createEndUser(_0x3bfe54,_0x18a50f,_0x22e05d,_0x36d878,_0x2f24f1,_0x2fdacd){var _0x22e05d=getName(_0x22e05d);return request({'method':'POST','uri':_0x02bb('0x3d')+_0x18a50f+_0x02bb('0x3e')+_['startCase'](_0x2fdacd[_0x02bb('0x3f')])+'s','body':{'data':[{'Last_Name':_0x22e05d[0x1],'First_Name':_0x22e05d[0x0],'Phone':_0x36d878,'Owner':{'name':!_[_0x02bb('0x1a')](_0x2f24f1['role']['name'])?_0x2f24f1[_0x02bb('0x40')][_0x02bb('0x17')]:!_[_0x02bb('0x1a')](_0x2f24f1[_0x02bb('0x41')])?_0x2f24f1[_0x02bb('0x41')]+'\x20'+_0x2f24f1[_0x02bb('0x42')]:_0x2f24f1['last_name'],'id':_0x2f24f1['id']}}]},'headers':{'Authorization':_0x02bb('0x43')+_0x3bfe54},'json':!![]})['then'](function(_0x56da28){if(_0x56da28&&_0x56da28[_0x02bb('0x3c')][0x0][_0x02bb('0x44')]==='SUCCESS'){var _0x38e17c=_0x56da28['data'][0x0][_0x02bb('0x45')];_0x38e17c[_0x02bb('0x46')]=_[_0x02bb('0x47')](_0x2fdacd['moduleCreate'])+'s';return _0x38e17c;}logger['error']('The\x20failing\x20result\x20is',JSON['stringify'](data));throw new Error(_0x02bb('0x48')+JSON[_0x02bb('0xc')](data));})[_0x02bb('0x3b')](function(_0x5be6b9){console[_0x02bb('0x49')](_0x02bb('0x4a'),_0x5be6b9);});}function getEndUser(_0x24743e,_0x493a2c,_0x130e38,_0x40b76c,_0x23b8d6,_0x43ede8,_0xfb1754){var _0x55ca10={'method':'GET','uri':'','headers':{'Authorization':_0x02bb('0x43')+_0x24743e},'json':!![]};switch(_0xfb1754['moduleSearch']){case'contact_lead':_0x55ca10[_0x02bb('0x4b')]=_0x02bb('0x3d')+_0x493a2c+'/crm/v2/Contacts/search?criteria=((Phone:equals:'+_0x23b8d6+'))';return getZohoUser(_0x55ca10,_0x02bb('0x4c'))[_0x02bb('0x2e')](function(_0x38267b){if(_0x38267b)return _0x38267b;_0x55ca10['uri']=_0x02bb('0x3d')+_0x493a2c+_0x02bb('0x4d')+_0x23b8d6+'))';return getZohoUser(_0x55ca10,_0x02bb('0x4e'))[_0x02bb('0x2e')](function(_0x14b866){if(_0x14b866)return _0x14b866;if(_0xfb1754[_0x02bb('0x3f')]!=_0x02bb('0x4f')){return createEndUser(_0x24743e,_0x493a2c,_0x40b76c,_0x23b8d6,_0x43ede8,_0xfb1754);}else{return{};}});});break;case'contact':_0x55ca10[_0x02bb('0x4b')]=_0x02bb('0x3d')+_0x493a2c+_0x02bb('0x50')+_0x23b8d6+'))';return getZohoUser(_0x55ca10,_0x02bb('0x4c'))['then'](function(_0x171f85){if(_0x171f85)return _0x171f85;if(_0xfb1754[_0x02bb('0x3f')]!=_0x02bb('0x4f')){return createEndUser(_0x24743e,_0x493a2c,_0x40b76c,_0x23b8d6,_0x43ede8,_0xfb1754);}else{return{};}});break;case _0x02bb('0x51'):_0x55ca10[_0x02bb('0x4b')]=_0x02bb('0x3d')+_0x493a2c+_0x02bb('0x4d')+_0x23b8d6+'))';return getZohoUser(_0x55ca10,_0x02bb('0x4e'))[_0x02bb('0x2e')](function(_0x292d38){if(_0x292d38)return _0x292d38;if(_0xfb1754[_0x02bb('0x3f')]!='nothing'){return createEndUser(_0x24743e,_0x493a2c,_0x40b76c,_0x23b8d6,_0x43ede8,_0xfb1754);}else{return{};}});break;}}function getCall(_0x476d23,_0x488f13,_0x90bb4b,_0x460758,_0x3d2846,_0x121174,_0x13c357,_0x1792dd){logger[_0x02bb('0x2a')](_0x02bb('0x52'));var _0x47c1bb={};_0x47c1bb[_0x02bb('0x53')]={'name':!_[_0x02bb('0x1a')](_0x460758[_0x02bb('0x40')][_0x02bb('0x17')])&&!_[_0x02bb('0x1a')](_0x460758[_0x02bb('0x35')]['name'])&&_0x460758[_0x02bb('0x35')][_0x02bb('0x17')]===_0x02bb('0x54')?_0x460758['role'][_0x02bb('0x17')]:!_['isNil'](_0x460758[_0x02bb('0x41')])?_0x460758[_0x02bb('0x41')]+'\x20'+_0x460758[_0x02bb('0x42')]:_0x460758[_0x02bb('0x42')],'id':_0x460758['id']};_0x47c1bb[_0x02bb('0x55')]=intUtil[_0x02bb('0x56')](_0x121174[_0x02bb('0x57')],_0x13c357,'\x20');_0x47c1bb[_0x02bb('0x58')]=intUtil[_0x02bb('0x56')](_0x121174[_0x02bb('0x59')],_0x13c357,'\x0a');if(_0x3d2846['enduserType']===_0x02bb('0x4c')){_0x47c1bb[_0x02bb('0x5a')]={'name':!_[_0x02bb('0x1a')](_0x3d2846['Full_Name'])?_0x3d2846[_0x02bb('0x5b')]:!_[_0x02bb('0x1a')](_0x3d2846[_0x02bb('0x5c')])?_0x3d2846[_0x02bb('0x5c')]+'\x20'+_0x3d2846[_0x02bb('0x5d')]:_0x3d2846['Last_Name'],'id':_0x3d2846['id']};}if(_0x3d2846[_0x02bb('0x46')]===_0x02bb('0x4e')){_0x47c1bb[_0x02bb('0x5e')]={'name':!_[_0x02bb('0x1a')](_0x3d2846[_0x02bb('0x5b')])?_0x3d2846[_0x02bb('0x5b')]:!_[_0x02bb('0x1a')](_0x3d2846[_0x02bb('0x5c')])?_0x3d2846[_0x02bb('0x5c')]+'\x20'+_0x3d2846[_0x02bb('0x5d')]:_0x3d2846[_0x02bb('0x5d')],'id':_0x3d2846['id']};_0x47c1bb[_0x02bb('0x5f')]=_['startCase'](_0x3d2846[_0x02bb('0x46')]);}if(_0x13c357[_0x02bb('0x60')]){_0x47c1bb['Call_Duration']=moment[_0x02bb('0x61')](parseInt(_0x13c357[_0x02bb('0x60')])*0x3e8)[_0x02bb('0x2c')](_0x02bb('0x62'));}else if(_0x13c357[_0x02bb('0x63')]&&_0x13c357[_0x02bb('0x64')]){_0x47c1bb['Call_Duration']=moment[_0x02bb('0x61')](moment(_0x13c357[_0x02bb('0x64')],_0x02bb('0x65'))[_0x02bb('0x66')](moment(_0x13c357[_0x02bb('0x67')],_0x02bb('0x65'))))[_0x02bb('0x2c')](_0x02bb('0x62'));}switch(_0x13c357['lastevent']){case _0x02bb('0x68'):_0x47c1bb[_0x02bb('0x69')]='Called';break;case _0x02bb('0x6a'):case _0x02bb('0x6b'):_0x47c1bb[_0x02bb('0x69')]=_0x02bb('0x6c');break;case _0x02bb('0x6d'):_0x47c1bb[_0x02bb('0x69')]=_0x02bb('0x6e');break;case _0x02bb('0x6f'):_0x47c1bb[_0x02bb('0x69')]=_0x02bb('0x70');break;case _0x02bb('0x71'):_0x47c1bb[_0x02bb('0x69')]=_0x02bb('0x72');default:}_0x47c1bb[_0x02bb('0x73')]=(_0x1792dd===_0x02bb('0x74')?moment(_0x13c357[_0x02bb('0x67')])['format'](_0x02bb('0x65')):moment(_0x13c357[_0x02bb('0x75')])[_0x02bb('0x2c')](_0x02bb('0x65')))||moment()[_0x02bb('0x2c')](_0x02bb('0x65'));_0x47c1bb[_0x02bb('0x76')]=_0x1792dd||'Inbound';_0x47c1bb=_['merge'](_0x47c1bb,getCustomFields(_0x121174[_0x02bb('0x77')],_0x13c357));return request({'method':_0x02bb('0x21'),'uri':_0x02bb('0x3d')+_0x488f13+_0x02bb('0x78'),'headers':{'Authorization':_0x02bb('0x43')+_0x476d23},'body':{'data':[_0x47c1bb]},'json':!![]})[_0x02bb('0x2e')](function(_0x282adc){if(_0x282adc&&_0x282adc[_0x02bb('0x3c')][0x0][_0x02bb('0x44')]==='SUCCESS'){logger[_0x02bb('0x2a')](_0x02bb('0x79'));return{'id':_0x282adc['data'][0x0][_0x02bb('0x45')]['id']};}})[_0x02bb('0x3b')](function(_0x52bcfc){logger[_0x02bb('0x2a')]('err',_0x52bcfc['stack']);console['log'](_0x02bb('0x7a'),_0x52bcfc);});}exports[_0x02bb('0x7b')]=function(_0x3b33c1,_0x31f98d,_0x4a6d30,_0x312c0f,_0x2bee65,_0x255927){var _0x45ede0,_0x59e519,_0x2f427b;_0x255927['host']=intUtil['stripTrailingSlash'](_0x255927[_0x02bb('0x7c')]);_0x255927[_0x02bb('0x7d')]=intUtil['stripTrailingSlash'](_0x255927[_0x02bb('0x7d')]);if(_0x2bee65&&_0x2bee65['monitor_format']){logger[_0x02bb('0x2a')](_0x02bb('0x7e'),_0x02bb('0x7f'));_0x31f98d[_0x02bb('0x80')]=_0x255927[_0x02bb('0x7d')]+_0x02bb('0x81')+_0x31f98d[_0x02bb('0x82')]+_0x02bb('0x83')+md5(_0x31f98d[_0x02bb('0x82')]);}else{_0x31f98d[_0x02bb('0x80')]='';}var _0x4e3dc4=_0x255927[_0x02bb('0x7c')]===_0x02bb('0x84')?'eu':_0x02bb('0x85');return getAccessToken(_0x255927)[_0x02bb('0x2e')](function(_0xacef0f){_0x2f427b=_0xacef0f;return getUser(_0x2f427b,_0x4e3dc4,_0x255927,_0x312c0f['email']);})['then'](function(_0x37a944){_0x45ede0=_0x37a944;logger[_0x02bb('0x2a')]('The\x20User\x20ID\x20is:',_0x45ede0['id']);return getEndUser(_0x2f427b,_0x4e3dc4,_0x255927,_0x31f98d[_0x02bb('0x86')],_0x31f98d[_0x02bb('0x87')],_0x45ede0,_0x4a6d30);})[_0x02bb('0x2e')](function(_0x165ac2){_0x59e519=_0x165ac2;return getCall(_0x2f427b,_0x4e3dc4,_0x255927,_0x45ede0,_0x59e519,_0x4a6d30,_0x31f98d,_0x02bb('0x88'));})[_0x02bb('0x2e')](function(_0xf0d86e){if(_0xf0d86e){logger['info']('The\x20Call\x20ID\x20is:',_0xf0d86e['id']);logger[_0x02bb('0x2a')](_0x02bb('0x7e'),_0x02bb('0x89'));emit(util[_0x02bb('0x2c')](_0x02bb('0x8a'),_0x312c0f[_0x02bb('0x17')]),_0x02bb('0x8b'),{'uri':_0x02bb('0x8c')+_0x255927[_0x02bb('0x7c')]+_0x02bb('0x8d')+_0xf0d86e['id']});}})['catch'](function(_0xea8936){logger['error'](_0x02bb('0x7e'),JSON[_0x02bb('0xc')](_0xea8936));});};exports[_0x02bb('0x74')]=function(_0x37b659,_0x29b6a2,_0x2248c8,_0xda2ae4,_0x102802,_0x4379b9,_0x435030){var _0x161e70,_0x1fa3e4,_0x5ceaf1;_0x4379b9[_0x02bb('0x7c')]=intUtil['stripTrailingSlash'](_0x4379b9['host']);_0x4379b9[_0x02bb('0x7d')]=intUtil[_0x02bb('0x8e')](_0x4379b9[_0x02bb('0x7d')]);if(_0x435030&&_0x435030[_0x02bb('0x8f')]&&_0x435030[_0x02bb('0x8f')]!==_0x02bb('0x90')){logger['info'](_0x02bb('0x91'),'Recording\x20is\x20enabled!');_0x29b6a2['recordingURL']=_0x4379b9[_0x02bb('0x7d')]+_0x02bb('0x81')+_0x29b6a2[_0x02bb('0x82')]+_0x02bb('0x83')+md5(_0x29b6a2[_0x02bb('0x82')]);}var _0x35265c=_0x4379b9[_0x02bb('0x7c')]===_0x02bb('0x84')?'eu':_0x02bb('0x85');return getAccessToken(_0x4379b9)['then'](function(_0x3837ce){_0x5ceaf1=_0x3837ce;return getUser(_0x5ceaf1,_0x35265c,_0x4379b9,_0xda2ae4[_0x02bb('0x32')]);})[_0x02bb('0x2e')](function(_0x52355e){_0x161e70=_0x52355e;logger[_0x02bb('0x2a')](_0x02bb('0x92'),_0x161e70['id']);return getEndUser(_0x5ceaf1,_0x35265c,_0x4379b9,_0x29b6a2['destcalleridname'],_0x29b6a2['destcalleridnum'],_0x161e70,_0x2248c8);})[_0x02bb('0x2e')](function(_0x275414){_0x1fa3e4=_0x275414;return getCall(_0x5ceaf1,_0x35265c,_0x4379b9,_0x161e70,_0x1fa3e4,_0x2248c8,_0x29b6a2,_0x02bb('0x93'));})[_0x02bb('0x2e')](function(_0x27cfe1){if(_0x27cfe1){logger[_0x02bb('0x2a')](_0x02bb('0x94'),_0x27cfe1['id']);logger[_0x02bb('0x2a')](_0x02bb('0x91'),'Displaying\x20call\x20to\x20agent\x20in\x20a\x20new\x20tab...');emit(util[_0x02bb('0x2c')](_0x02bb('0x8a'),_0xda2ae4['name']),_0x02bb('0x8b'),{'uri':_0x02bb('0x8c')+_0x4379b9[_0x02bb('0x7c')]+_0x02bb('0x8d')+_0x27cfe1['id']});}})[_0x02bb('0x3b')](function(_0x381ba4){logger[_0x02bb('0x38')]('[OUTBOUND]',JSON[_0x02bb('0xc')](_0x381ba4));});};exports[_0x02bb('0x95')]=function(_0x73d2b3,_0x5d7967,_0x38f4de,_0xd9a87f,_0x569364,_0x5bef5d){var _0x427407,_0x2e4b49,_0x53520f;_0x5bef5d[_0x02bb('0x7c')]=intUtil[_0x02bb('0x8e')](_0x5bef5d[_0x02bb('0x7c')]);_0x5bef5d[_0x02bb('0x7d')]=intUtil[_0x02bb('0x8e')](_0x5bef5d[_0x02bb('0x7d')]);if(_0x569364&&_0x569364[_0x02bb('0x96')]){logger[_0x02bb('0x2a')]('['+_0x5d7967[_0x02bb('0x97')][_0x02bb('0x98')]()+']','Recording\x20is\x20enabled!');_0x5d7967[_0x02bb('0x80')]=_0x5bef5d[_0x02bb('0x7d')]+_0x02bb('0x81')+_0x5d7967[_0x02bb('0x82')]+_0x02bb('0x83')+md5(_0x5d7967[_0x02bb('0x82')]);}else{_0x5d7967['recordingURL']='';}var _0x178c48=_0x5bef5d[_0x02bb('0x7c')]==='zoho.eu'?'eu':_0x02bb('0x85');return getAccessToken(_0x5bef5d)[_0x02bb('0x2e')](function(_0x2037d0){_0x53520f=_0x2037d0;return getUser(_0x53520f,_0x178c48,_0x5bef5d);})[_0x02bb('0x2e')](function(_0x152758){_0x427407=_0x152758;logger['info'](_0x02bb('0x92'),_0x427407['id']);return getEndUser(_0x53520f,_0x178c48,_0x5bef5d,_0x5d7967[_0x02bb('0x86')],_0x5d7967[_0x02bb('0x87')],_0x427407,_0x38f4de);})[_0x02bb('0x2e')](function(_0x430c2a){_0x2e4b49=_0x430c2a;return getCall(_0x53520f,_0x178c48,_0x5bef5d,_0x427407,_0x2e4b49,_0x38f4de,_0x5d7967,_0x02bb('0x88'));})[_0x02bb('0x2e')](function(_0x5f9088){if(_0x5f9088){logger['info'](_0x02bb('0x94'),_0x5f9088['id']);}})[_0x02bb('0x3b')](function(_0x4b8e41){logger[_0x02bb('0x38')]('['+_0x5d7967['lastevent'][_0x02bb('0x98')]()+']',JSON[_0x02bb('0xc')](_0x4b8e41));});};
\ No newline at end of file
+var _0xb575=['lead','administrator','Subject','getString','Subjects','Description','Who_Id','First_Name','Last_Name','What_Id','Full_Name','$se_module','talktime','utc','answertime','Call_Duration','endtime','YYYY-MM-DDTHH:mm:ss','diff','starttime','lastevent','called','Call_Result','Called','connect','Rejected','abandoned','Abandoned','timeout','Timeout','Call_Start_Time','outbound','agentcalledAt','Inbound','merge','Fields','/crm/v2/Calls','err','queue','host','stripTrailingSlash','serverUrl','monitor_format','Recording\x20is\x20enabled!','recordingURL','/api/voice/recordings/','uniqueid','/downloads?type=uniqueid&token=','zoho.eu','com','The\x20User\x20ID\x20is:','calleridname','calleridnum','The\x20Call\x20ID\x20is:','[QUEUE]','Displaying\x20call\x20to\x20agent\x20in\x20a\x20new\x20tab...','user:%s','trigger:browser:url','https://crm.','/crm/EntityInfo.do?module=Calls&id=','recordingFormat','none','[OUTBOUND]','Outbound','unmanaged','toUpperCase','lodash','request-promise','util','bluebird','../../../../config/environment','zoho','redis','defaults','localhost','emit','debug','[HTTP]','stringify','includes','string','picklist','type','idField','content','toString','variableName','customVariable','Variable','name','toLowerCase','indexOf','split','isNil','access_token','isBefore','expires_in','zone','https://accounts.zoho.com.au','https://accounts.zoho.in','https://accounts.zoho.com.cn','POST','refreshToken','clientId','clientSecret','refresh_token','then','add','seconds','catch','error','Failing\x20creating\x20the\x20access_token','stack','info','Search\x20user','GET','format','https://www.zohoapis.%s/crm/v2/users','ActiveUsers','users','isArrayLikeObject','email','Agent\x20found!','Using\x20the\x20admin\x20account!','findIndex','profile','user','Administrator','The\x20failing\x20result\x20is','Unable\x20to\x20retrieve\x20zoho\x20account\x20users:\x20','enduserType','https://www.zohoapis.','startCase','moduleCreate','role','first_name','Zoho-oauthtoken\x20','code','SUCCESS','data','details','Error:\x20','log','CREATE\x20ERROR','moduleSearch','/crm/v2/Contacts/search?criteria=((Phone:equals:','Contacts','uri','/crm/v2/Leads/search?criteria=((Phone:equals:','Leads','nothing','contact'];(function(_0x5de214,_0x107e9d){var _0x4df627=function(_0x4199e1){while(--_0x4199e1){_0x5de214['push'](_0x5de214['shift']());}};_0x4df627(++_0x107e9d);}(_0xb575,0xda));var _0x5b57=function(_0xf2d4f5,_0x3a05ae){_0xf2d4f5=_0xf2d4f5-0x0;var _0x25e4fa=_0xb575[_0xf2d4f5];return _0x25e4fa;};'use strict';var _=require(_0x5b57('0x0'));var rp=require(_0x5b57('0x1'));var md5=require('md5');var util=require(_0x5b57('0x2'));var intUtil=require('./util');var moment=require('moment');var Redis=require('ioredis');var BPromise=require(_0x5b57('0x3'));var config=require(_0x5b57('0x4'));var logger=require('../../../../config/logger')(_0x5b57('0x5'));config[_0x5b57('0x6')]=_[_0x5b57('0x7')](config[_0x5b57('0x6')],{'host':_0x5b57('0x8'),'port':0x18eb});var io=require('socket.io-emitter')(new Redis(config[_0x5b57('0x6')]));function emit(_0x5dd0c7,_0x2f9789,_0xa9166b){io['to'](_0x5dd0c7)[_0x5b57('0x9')](_0x2f9789,_0xa9166b);}function request(_0x49ce3a){logger[_0x5b57('0xa')](_0x5b57('0xb'),JSON[_0x5b57('0xc')](_0x49ce3a));return rp(_0x49ce3a);}function getCustomFields(_0x566a8d,_0x342e70){var _0x375daf={};if(_0x566a8d['length']>0x0){_['forEach'](_0x566a8d,function(_0x502e0e){if(_[_0x5b57('0xd')]([_0x5b57('0xe'),_0x5b57('0xf')],_0x502e0e[_0x5b57('0x10')])&&_0x502e0e[_0x5b57('0x11')]){_0x375daf[_0x502e0e[_0x5b57('0x11')]]=_0x502e0e[_0x5b57('0x12')][_0x5b57('0x13')]();}else if(_0x502e0e[_0x5b57('0x10')]==='variable'&&_0x502e0e[_0x5b57('0x14')]&&_0x502e0e[_0x5b57('0x11')]&&_0x342e70[_0x502e0e[_0x5b57('0x14')]]){_0x375daf[_0x502e0e['idField']]=_0x342e70[_0x502e0e[_0x5b57('0x14')]][_0x5b57('0x13')]();}else if(_0x502e0e[_0x5b57('0x10')]===_0x5b57('0x15')&&_0x502e0e[_0x5b57('0x16')]&&_0x502e0e[_0x5b57('0x16')][_0x5b57('0x17')]&&_0x502e0e[_0x5b57('0x11')]&&_0x342e70[_0x502e0e['Variable'][_0x5b57('0x17')][_0x5b57('0x18')]()]){_0x375daf[_0x502e0e[_0x5b57('0x11')]]=_0x342e70[_0x502e0e[_0x5b57('0x16')][_0x5b57('0x17')][_0x5b57('0x18')]()]['toString']();}});}return _0x375daf;}function getName(_0x2fc33d){if(_0x2fc33d[_0x5b57('0x19')]('\x20')>0x0){var _0x41df30=_0x2fc33d[_0x5b57('0x1a')](/ (.+)/);if(_0x41df30[0x1]){return _0x41df30;}}return[_0x2fc33d,_0x2fc33d];}var accountsTokens={};function getAccessToken(_0x53378c){return new Promise(function(_0x3c7f4f,_0x2dfaae){if(!_[_0x5b57('0x1b')](accountsTokens[_0x53378c['id']])&&!_['isNil'](accountsTokens[_0x53378c['id']][_0x5b57('0x1c')])){if(moment()[_0x5b57('0x1d')](accountsTokens[_0x53378c['id']][_0x5b57('0x1e')])){_0x3c7f4f(accountsTokens[_0x53378c['id']][_0x5b57('0x1c')]);}}var _0x429146;switch(_0x53378c[_0x5b57('0x1f')]){case'US':_0x429146='https://accounts.zoho.com';break;case'AU':_0x429146=_0x5b57('0x20');break;case'EU':_0x429146='https://accounts.zoho.eu';break;case'IN':_0x429146=_0x5b57('0x21');break;case'CN':_0x429146=_0x5b57('0x22');break;default:_0x429146='https://accounts.zoho.eu';break;}var _0x52e4b0={'method':_0x5b57('0x23'),'uri':_0x429146+'/oauth/v2/token','qs':{'refresh_token':_0x53378c[_0x5b57('0x24')],'client_id':_0x53378c[_0x5b57('0x25')],'client_secret':_0x53378c[_0x5b57('0x26')],'grant_type':_0x5b57('0x27')},'json':!![]};return rp(_0x52e4b0)[_0x5b57('0x28')](function(_0x17ac8b){accountsTokens[_0x53378c['id']]={'access_token':_0x17ac8b[_0x5b57('0x1c')],'expires_in':moment()[_0x5b57('0x29')](_0x17ac8b[_0x5b57('0x1e')],_0x5b57('0x2a'))};_0x3c7f4f(_0x17ac8b[_0x5b57('0x1c')]);})[_0x5b57('0x2b')](function(_0x511a00){logger[_0x5b57('0x2c')](_0x5b57('0x2d'),_0x511a00[_0x5b57('0x2e')]);_0x2dfaae(_0x511a00);});});}function getUser(_0x3e8bc6,_0x4da4a8,_0x42b276,_0x5e21a1){logger[_0x5b57('0x2f')](_0x5b57('0x30'));return request({'method':_0x5b57('0x31'),'uri':util[_0x5b57('0x32')](_0x5b57('0x33'),_0x4da4a8),'qs':{'type':_0x5b57('0x34')},'headers':{'Authorization':'Zoho-oauthtoken\x20'+_0x3e8bc6},'json':!![]})[_0x5b57('0x28')](function(_0x28bb84){if(_0x28bb84[_0x5b57('0x35')]){var _0x3336da=-0x1;if(_[_0x5b57('0x36')](_0x28bb84['users'])){if(!_[_0x5b57('0x1b')](_0x5e21a1)){_0x3336da=_['findIndex'](_0x28bb84[_0x5b57('0x35')],function(_0x4f3598){return _0x4f3598[_0x5b57('0x37')]===_0x5e21a1;});}if(_0x3336da>=0x0){logger[_0x5b57('0x2f')](_0x5b57('0x38'));}else{logger[_0x5b57('0x2f')](_0x5b57('0x39'));_0x3336da=_[_0x5b57('0x3a')](_0x28bb84[_0x5b57('0x35')],function(_0x27ed21){return _0x27ed21[_0x5b57('0x3b')][_0x5b57('0x17')]==='Administrator';});}return _0x28bb84[_0x5b57('0x35')][_0x3336da];}else{if(_0x28bb84[_0x5b57('0x3c')][_0x5b57('0x3b')][_0x5b57('0x17')]===_0x5b57('0x3d')){logger[_0x5b57('0x2f')](_0x5b57('0x39'));user=_0x28bb84[_0x5b57('0x3c')];return user;}else{logger[_0x5b57('0x2c')](_0x5b57('0x3e'),JSON[_0x5b57('0xc')](_0x28bb84));throw new Error(_0x5b57('0x3f')+JSON[_0x5b57('0xc')](_0x28bb84));}}}else{logger[_0x5b57('0x2c')]('The\x20failing\x20result\x20is',JSON[_0x5b57('0xc')](_0x28bb84));throw new Error('Unable\x20to\x20retrieve\x20zoho\x20account\x20users:\x20'+JSON[_0x5b57('0xc')](_0x28bb84));}})[_0x5b57('0x2b')](function(_0x1973f4){console[_0x5b57('0x2c')](_0x1973f4);});}function getZohoUser(_0x6e1f94,_0x14a728){return new BPromise(function(_0xc2052d,_0x4ea7d6){request(_0x6e1f94)[_0x5b57('0x28')](function(_0x1ec1dc){var _0x28c59b=null;if(_0x1ec1dc){_0x28c59b=_0x1ec1dc['data'][0x0];_0x28c59b[_0x5b57('0x40')]=_0x14a728;}_0xc2052d(_0x28c59b);})[_0x5b57('0x2b')](function(_0x5eea89){_0x4ea7d6(_0x5eea89);});});}function createEndUser(_0x33d7fd,_0x11db96,_0xa417ce,_0x568f36,_0x5631f1,_0x88eb0d){var _0xa417ce=getName(_0xa417ce);return request({'method':'POST','uri':_0x5b57('0x41')+_0x11db96+'/crm/v2/'+_[_0x5b57('0x42')](_0x88eb0d[_0x5b57('0x43')])+'s','body':{'data':[{'Last_Name':_0xa417ce[0x1],'First_Name':_0xa417ce[0x0],'Phone':_0x568f36,'Owner':{'name':!_['isNil'](_0x5631f1[_0x5b57('0x44')][_0x5b57('0x17')])?_0x5631f1[_0x5b57('0x44')][_0x5b57('0x17')]:!_[_0x5b57('0x1b')](_0x5631f1[_0x5b57('0x45')])?_0x5631f1[_0x5b57('0x45')]+'\x20'+_0x5631f1['last_name']:_0x5631f1['last_name'],'id':_0x5631f1['id']}}]},'headers':{'Authorization':_0x5b57('0x46')+_0x33d7fd},'json':!![]})['then'](function(_0x19dc27){if(_0x19dc27&&_0x19dc27['data'][0x0][_0x5b57('0x47')]===_0x5b57('0x48')){var _0x30a53a=_0x19dc27[_0x5b57('0x49')][0x0][_0x5b57('0x4a')];_0x30a53a[_0x5b57('0x40')]=_[_0x5b57('0x42')](_0x88eb0d[_0x5b57('0x43')])+'s';return _0x30a53a;}logger[_0x5b57('0x2c')](_0x5b57('0x3e'),JSON[_0x5b57('0xc')](data));throw new Error(_0x5b57('0x4b')+JSON[_0x5b57('0xc')](data));})[_0x5b57('0x2b')](function(_0xa7048d){console[_0x5b57('0x4c')](_0x5b57('0x4d'),_0xa7048d);});}function getEndUser(_0x1d8674,_0x30bde9,_0x56dcb1,_0x3d50ef,_0x20560c,_0x123212,_0x53e698){var _0x212947={'method':_0x5b57('0x31'),'uri':'','headers':{'Authorization':_0x5b57('0x46')+_0x1d8674},'json':!![]};switch(_0x53e698[_0x5b57('0x4e')]){case'contact_lead':_0x212947['uri']='https://www.zohoapis.'+_0x30bde9+_0x5b57('0x4f')+_0x20560c+'))';return getZohoUser(_0x212947,_0x5b57('0x50'))['then'](function(_0x1866a9){if(_0x1866a9)return _0x1866a9;_0x212947[_0x5b57('0x51')]=_0x5b57('0x41')+_0x30bde9+_0x5b57('0x52')+_0x20560c+'))';return getZohoUser(_0x212947,_0x5b57('0x53'))[_0x5b57('0x28')](function(_0x22ea65){if(_0x22ea65)return _0x22ea65;if(_0x53e698[_0x5b57('0x43')]!=_0x5b57('0x54')){return createEndUser(_0x1d8674,_0x30bde9,_0x3d50ef,_0x20560c,_0x123212,_0x53e698);}else{return{};}});});break;case _0x5b57('0x55'):_0x212947[_0x5b57('0x51')]=_0x5b57('0x41')+_0x30bde9+_0x5b57('0x4f')+_0x20560c+'))';return getZohoUser(_0x212947,_0x5b57('0x50'))[_0x5b57('0x28')](function(_0x3e32f5){if(_0x3e32f5)return _0x3e32f5;if(_0x53e698[_0x5b57('0x43')]!=_0x5b57('0x54')){return createEndUser(_0x1d8674,_0x30bde9,_0x3d50ef,_0x20560c,_0x123212,_0x53e698);}else{return{};}});break;case _0x5b57('0x56'):_0x212947[_0x5b57('0x51')]=_0x5b57('0x41')+_0x30bde9+_0x5b57('0x52')+_0x20560c+'))';return getZohoUser(_0x212947,'Leads')['then'](function(_0x42013c){if(_0x42013c)return _0x42013c;if(_0x53e698['moduleCreate']!=_0x5b57('0x54')){return createEndUser(_0x1d8674,_0x30bde9,_0x3d50ef,_0x20560c,_0x123212,_0x53e698);}else{return{};}});break;}}function getCall(_0x4e54f9,_0x9ad4eb,_0x302176,_0x3087b7,_0x4fabac,_0x4ebca6,_0x5304c1,_0x56597c){logger[_0x5b57('0x2f')]('Creating\x20new\x20call...');var _0x4f8d97={};_0x4f8d97['Owner']={'name':!_[_0x5b57('0x1b')](_0x3087b7[_0x5b57('0x44')][_0x5b57('0x17')])&&!_[_0x5b57('0x1b')](_0x3087b7[_0x5b57('0x3b')][_0x5b57('0x17')])&&_0x3087b7['profile'][_0x5b57('0x17')]===_0x5b57('0x57')?_0x3087b7['role'][_0x5b57('0x17')]:!_[_0x5b57('0x1b')](_0x3087b7[_0x5b57('0x45')])?_0x3087b7[_0x5b57('0x45')]+'\x20'+_0x3087b7['last_name']:_0x3087b7['last_name'],'id':_0x3087b7['id']};_0x4f8d97[_0x5b57('0x58')]=intUtil[_0x5b57('0x59')](_0x4ebca6[_0x5b57('0x5a')],_0x5304c1,'\x20');_0x4f8d97[_0x5b57('0x5b')]=intUtil[_0x5b57('0x59')](_0x4ebca6['Descriptions'],_0x5304c1,'\x0a');if(_0x4fabac['enduserType']===_0x5b57('0x50')){_0x4f8d97[_0x5b57('0x5c')]={'name':!_[_0x5b57('0x1b')](_0x4fabac['Full_Name'])?_0x4fabac['Full_Name']:!_['isNil'](_0x4fabac['First_Name'])?_0x4fabac[_0x5b57('0x5d')]+'\x20'+_0x4fabac[_0x5b57('0x5e')]:_0x4fabac[_0x5b57('0x5e')],'id':_0x4fabac['id']};}if(_0x4fabac[_0x5b57('0x40')]===_0x5b57('0x53')){_0x4f8d97[_0x5b57('0x5f')]={'name':!_[_0x5b57('0x1b')](_0x4fabac[_0x5b57('0x60')])?_0x4fabac['Full_Name']:!_[_0x5b57('0x1b')](_0x4fabac[_0x5b57('0x5d')])?_0x4fabac[_0x5b57('0x5d')]+'\x20'+_0x4fabac[_0x5b57('0x5e')]:_0x4fabac['Last_Name'],'id':_0x4fabac['id']};_0x4f8d97[_0x5b57('0x61')]=_['startCase'](_0x4fabac[_0x5b57('0x40')]);}if(_0x5304c1[_0x5b57('0x62')]){_0x4f8d97['Call_Duration']=moment[_0x5b57('0x63')](parseInt(_0x5304c1['talktime'])*0x3e8)['format']('mm:ss');}else if(_0x5304c1[_0x5b57('0x64')]&&_0x5304c1['endtime']){_0x4f8d97[_0x5b57('0x65')]=moment[_0x5b57('0x63')](moment(_0x5304c1[_0x5b57('0x66')],_0x5b57('0x67'))[_0x5b57('0x68')](moment(_0x5304c1[_0x5b57('0x69')],_0x5b57('0x67'))))[_0x5b57('0x32')]('mm:ss');}switch(_0x5304c1[_0x5b57('0x6a')]){case _0x5b57('0x6b'):_0x4f8d97[_0x5b57('0x6c')]=_0x5b57('0x6d');break;case'complete':case _0x5b57('0x6e'):_0x4f8d97[_0x5b57('0x6c')]='Answered';break;case'rejected':_0x4f8d97[_0x5b57('0x6c')]=_0x5b57('0x6f');break;case _0x5b57('0x70'):_0x4f8d97[_0x5b57('0x6c')]=_0x5b57('0x71');break;case _0x5b57('0x72'):_0x4f8d97['Call_Result']=_0x5b57('0x73');default:}_0x4f8d97[_0x5b57('0x74')]=(_0x56597c===_0x5b57('0x75')?moment(_0x5304c1[_0x5b57('0x69')])['format'](_0x5b57('0x67')):moment(_0x5304c1[_0x5b57('0x76')])['format'](_0x5b57('0x67')))||moment()[_0x5b57('0x32')](_0x5b57('0x67'));_0x4f8d97['Call_Type']=_0x56597c||_0x5b57('0x77');_0x4f8d97=_[_0x5b57('0x78')](_0x4f8d97,getCustomFields(_0x4ebca6[_0x5b57('0x79')],_0x5304c1));return request({'method':_0x5b57('0x23'),'uri':'https://www.zohoapis.'+_0x9ad4eb+_0x5b57('0x7a'),'headers':{'Authorization':'Zoho-oauthtoken\x20'+_0x4e54f9},'body':{'data':[_0x4f8d97]},'json':!![]})[_0x5b57('0x28')](function(_0x4e3051){if(_0x4e3051&&_0x4e3051['data'][0x0][_0x5b57('0x47')]===_0x5b57('0x48')){logger[_0x5b57('0x2f')]('Call\x20created!');return{'id':_0x4e3051[_0x5b57('0x49')][0x0][_0x5b57('0x4a')]['id']};}})[_0x5b57('0x2b')](function(_0x8ccc32){logger['info'](_0x5b57('0x7b'),_0x8ccc32['stack']);console['log'](_0x5b57('0x7b'),_0x8ccc32);});}exports[_0x5b57('0x7c')]=function(_0x59d443,_0x2f89ee,_0x57053d,_0x5c5bf3,_0xdb45d3,_0x584b9e){var _0x4b0caa,_0x4acc9a,_0x2d7434;_0x584b9e[_0x5b57('0x7d')]=intUtil[_0x5b57('0x7e')](_0x584b9e[_0x5b57('0x7d')]);_0x584b9e[_0x5b57('0x7f')]=intUtil[_0x5b57('0x7e')](_0x584b9e[_0x5b57('0x7f')]);if(_0xdb45d3&&_0xdb45d3[_0x5b57('0x80')]){logger[_0x5b57('0x2f')]('[QUEUE]',_0x5b57('0x81'));_0x2f89ee[_0x5b57('0x82')]=_0x584b9e[_0x5b57('0x7f')]+_0x5b57('0x83')+_0x2f89ee[_0x5b57('0x84')]+_0x5b57('0x85')+md5(_0x2f89ee['uniqueid']);}else{_0x2f89ee[_0x5b57('0x82')]='';}var _0x46d8a1=_0x584b9e[_0x5b57('0x7d')]===_0x5b57('0x86')?'eu':_0x5b57('0x87');return getAccessToken(_0x584b9e)[_0x5b57('0x28')](function(_0x34a2f3){_0x2d7434=_0x34a2f3;return getUser(_0x2d7434,_0x46d8a1,_0x584b9e,_0x5c5bf3[_0x5b57('0x37')]);})[_0x5b57('0x28')](function(_0x230af3){_0x4b0caa=_0x230af3;logger[_0x5b57('0x2f')](_0x5b57('0x88'),_0x4b0caa['id']);return getEndUser(_0x2d7434,_0x46d8a1,_0x584b9e,_0x2f89ee[_0x5b57('0x89')],_0x2f89ee[_0x5b57('0x8a')],_0x4b0caa,_0x57053d);})[_0x5b57('0x28')](function(_0x5ce8ff){_0x4acc9a=_0x5ce8ff;return getCall(_0x2d7434,_0x46d8a1,_0x584b9e,_0x4b0caa,_0x4acc9a,_0x57053d,_0x2f89ee,_0x5b57('0x77'));})[_0x5b57('0x28')](function(_0x15f8ec){if(_0x15f8ec){logger[_0x5b57('0x2f')](_0x5b57('0x8b'),_0x15f8ec['id']);logger[_0x5b57('0x2f')](_0x5b57('0x8c'),_0x5b57('0x8d'));emit(util[_0x5b57('0x32')](_0x5b57('0x8e'),_0x5c5bf3[_0x5b57('0x17')]),_0x5b57('0x8f'),{'uri':_0x5b57('0x90')+_0x584b9e[_0x5b57('0x7d')]+_0x5b57('0x91')+_0x15f8ec['id']});}})[_0x5b57('0x2b')](function(_0x5e13f8){logger[_0x5b57('0x2c')](_0x5b57('0x8c'),JSON[_0x5b57('0xc')](_0x5e13f8));});};exports[_0x5b57('0x75')]=function(_0x3371a3,_0x29ea78,_0x20cac4,_0x64f5bd,_0x3834bc,_0x1a2b78,_0x79114){var _0xf7a7a0,_0x21a67f,_0x43be6d;_0x1a2b78[_0x5b57('0x7d')]=intUtil['stripTrailingSlash'](_0x1a2b78[_0x5b57('0x7d')]);_0x1a2b78[_0x5b57('0x7f')]=intUtil['stripTrailingSlash'](_0x1a2b78['serverUrl']);if(_0x79114&&_0x79114['recordingFormat']&&_0x79114[_0x5b57('0x92')]!==_0x5b57('0x93')){logger[_0x5b57('0x2f')](_0x5b57('0x94'),_0x5b57('0x81'));_0x29ea78[_0x5b57('0x82')]=_0x1a2b78[_0x5b57('0x7f')]+_0x5b57('0x83')+_0x29ea78['uniqueid']+'/downloads?type=uniqueid&token='+md5(_0x29ea78[_0x5b57('0x84')]);}var _0x305233=_0x1a2b78[_0x5b57('0x7d')]===_0x5b57('0x86')?'eu':_0x5b57('0x87');return getAccessToken(_0x1a2b78)[_0x5b57('0x28')](function(_0x291a02){_0x43be6d=_0x291a02;return getUser(_0x43be6d,_0x305233,_0x1a2b78,_0x64f5bd['email']);})[_0x5b57('0x28')](function(_0x26808a){_0xf7a7a0=_0x26808a;logger[_0x5b57('0x2f')](_0x5b57('0x88'),_0xf7a7a0['id']);return getEndUser(_0x43be6d,_0x305233,_0x1a2b78,_0x29ea78['destcalleridname'],_0x29ea78['destcalleridnum'],_0xf7a7a0,_0x20cac4);})['then'](function(_0x5c1455){_0x21a67f=_0x5c1455;return getCall(_0x43be6d,_0x305233,_0x1a2b78,_0xf7a7a0,_0x21a67f,_0x20cac4,_0x29ea78,_0x5b57('0x95'));})[_0x5b57('0x28')](function(_0x378122){if(_0x378122){logger[_0x5b57('0x2f')](_0x5b57('0x8b'),_0x378122['id']);logger[_0x5b57('0x2f')](_0x5b57('0x94'),_0x5b57('0x8d'));emit(util[_0x5b57('0x32')](_0x5b57('0x8e'),_0x64f5bd[_0x5b57('0x17')]),_0x5b57('0x8f'),{'uri':_0x5b57('0x90')+_0x1a2b78[_0x5b57('0x7d')]+_0x5b57('0x91')+_0x378122['id']});}})[_0x5b57('0x2b')](function(_0x2d1e3c){logger[_0x5b57('0x2c')](_0x5b57('0x94'),JSON['stringify'](_0x2d1e3c));});};exports[_0x5b57('0x96')]=function(_0x3ee489,_0x4e5f99,_0x3dbd06,_0x446ef3,_0x39a955,_0x4ce92a){var _0x2261c2,_0x8435a7,_0x3da69f;_0x4ce92a[_0x5b57('0x7d')]=intUtil[_0x5b57('0x7e')](_0x4ce92a[_0x5b57('0x7d')]);_0x4ce92a[_0x5b57('0x7f')]=intUtil[_0x5b57('0x7e')](_0x4ce92a[_0x5b57('0x7f')]);if(_0x39a955&&_0x39a955[_0x5b57('0x80')]){logger[_0x5b57('0x2f')]('['+_0x4e5f99[_0x5b57('0x6a')][_0x5b57('0x97')]()+']','Recording\x20is\x20enabled!');_0x4e5f99[_0x5b57('0x82')]=_0x4ce92a[_0x5b57('0x7f')]+_0x5b57('0x83')+_0x4e5f99['uniqueid']+_0x5b57('0x85')+md5(_0x4e5f99[_0x5b57('0x84')]);}else{_0x4e5f99['recordingURL']='';}var _0x2d30fe=_0x4ce92a[_0x5b57('0x7d')]===_0x5b57('0x86')?'eu':_0x5b57('0x87');return getAccessToken(_0x4ce92a)[_0x5b57('0x28')](function(_0x4afb7a){_0x3da69f=_0x4afb7a;return getUser(_0x3da69f,_0x2d30fe,_0x4ce92a);})['then'](function(_0x3caf23){_0x2261c2=_0x3caf23;logger['info'](_0x5b57('0x88'),_0x2261c2['id']);return getEndUser(_0x3da69f,_0x2d30fe,_0x4ce92a,_0x4e5f99[_0x5b57('0x89')],_0x4e5f99[_0x5b57('0x8a')],_0x2261c2,_0x3dbd06);})[_0x5b57('0x28')](function(_0x5ef596){_0x8435a7=_0x5ef596;return getCall(_0x3da69f,_0x2d30fe,_0x4ce92a,_0x2261c2,_0x8435a7,_0x3dbd06,_0x4e5f99,_0x5b57('0x77'));})[_0x5b57('0x28')](function(_0x37c849){if(_0x37c849){logger[_0x5b57('0x2f')](_0x5b57('0x8b'),_0x37c849['id']);}})[_0x5b57('0x2b')](function(_0x339c18){logger['error']('['+_0x4e5f99[_0x5b57('0x6a')][_0x5b57('0x97')]()+']',JSON['stringify'](_0x339c18));});};
\ No newline at end of file