Built motion from commit (unavailable).|2.5.4
[motion2.git] / server / services / ami / trigger / integration / zoho.js
index b1e46a5..11a999c 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xea5b=['starttime','agentcalledAt','Call_Type','Inbound','Fields','Call\x20created!','err','log','queue','host','stripTrailingSlash','serverUrl','monitor_format','[QUEUE]','Recording\x20is\x20enabled!','recordingURL','/api/voice/recordings/','/downloads?type=uniqueid&token=','uniqueid','zoho.eu','calleridname','calleridnum','The\x20Call\x20ID\x20is:','Displaying\x20call\x20to\x20agent\x20in\x20a\x20new\x20tab...','user:%s','trigger:browser:url','https://crm.','recordingFormat','none','[OUTBOUND]','com','The\x20User\x20ID\x20is:','destcalleridname','destcalleridnum','Outbound','/crm/EntityInfo.do?module=Calls&id=','[ABANDONED]','The\x20Enduser\x20ID\x20is:','lodash','request-promise','md5','moment','ioredis','../../../../config/environment','../../../../config/logger','redis','localhost','socket.io-emitter','emit','debug','[HTTP]','stringify','length','forEach','type','string','idField','content','toString','variableName','customVariable','Variable','name','toLowerCase','indexOf','isNil','access_token','isBefore','expires_in','zone','https://accounts.zoho.com.au','https://accounts.zoho.eu','https://accounts.zoho.in','https://accounts.zoho.com.cn','POST','/oauth/v2/token','refreshToken','clientId','clientSecret','refresh_token','add','seconds','catch','error','Failing\x20creating\x20the\x20access_token','stack','info','Search\x20user','GET','format','https://www.zohoapis.%s/crm/v2/users','ActiveUsers','Zoho-oauthtoken\x20','then','users','isArrayLikeObject','findIndex','email','Agent\x20found!','Using\x20the\x20admin\x20account!','profile','Administrator','user','The\x20failing\x20result\x20is','Unable\x20to\x20retrieve\x20zoho\x20account\x20users:\x20','Search\x20end\x20user','https://www.zohoapis.','data','Contacts','End\x20user\x20found\x20(Contact)','Leads','Enduser\x20not\x20found,\x20creating\x20a\x20new\x20enduser!','/crm/v2/','moduleCreate','first_name','code','SUCCESS','details','enduserType','Error\x20on\x20Lead\x20retrieve:\x20','Creating\x20new\x20call...','Owner','administrator','role','last_name','Subject','getString','Subjects','Descriptions','Full_Name','First_Name','Last_Name','What_Id','$se_module','talktime','Call_Duration','utc','mm:ss','answertime','endtime','YYYY-MM-DDTHH:mm:ss','lastevent','called','Call_Result','Answered','Rejected','abandoned','Abandoned','Call_Start_Time','outbound'];(function(_0x211209,_0xbb9c64){var _0x218ba0=function(_0x368c6f){while(--_0x368c6f){_0x211209['push'](_0x211209['shift']());}};_0x218ba0(++_0xbb9c64);}(_0xea5b,0x152));var _0xbea5=function(_0x2235bf,_0x3a06a7){_0x2235bf=_0x2235bf-0x0;var _0x4c3a64=_0xea5b[_0x2235bf];return _0x4c3a64;};'use strict';var _=require(_0xbea5('0x0'));var rp=require(_0xbea5('0x1'));var md5=require(_0xbea5('0x2'));var util=require('util');var intUtil=require('./util');var moment=require(_0xbea5('0x3'));var Redis=require(_0xbea5('0x4'));var config=require(_0xbea5('0x5'));var logger=require(_0xbea5('0x6'))('zoho');config[_0xbea5('0x7')]=_['defaults'](config[_0xbea5('0x7')],{'host':_0xbea5('0x8'),'port':0x18eb});var io=require(_0xbea5('0x9'))(new Redis(config[_0xbea5('0x7')]));function emit(_0x19e362,_0x126aae,_0x36692a){io['to'](_0x19e362)[_0xbea5('0xa')](_0x126aae,_0x36692a);}function request(_0x41cb99){logger[_0xbea5('0xb')](_0xbea5('0xc'),JSON[_0xbea5('0xd')](_0x41cb99));return rp(_0x41cb99);}function getCustomFields(_0x58253c,_0x5a9b2a){var _0x201686={};if(_0x58253c[_0xbea5('0xe')]>0x0){_[_0xbea5('0xf')](_0x58253c,function(_0x4c2c85){if(_0x4c2c85[_0xbea5('0x10')]===_0xbea5('0x11')&&_0x4c2c85['idField']){_0x201686[_0x4c2c85[_0xbea5('0x12')]]=_0x4c2c85[_0xbea5('0x13')][_0xbea5('0x14')]();}else if(_0x4c2c85[_0xbea5('0x10')]==='variable'&&_0x4c2c85['variableName']&&_0x4c2c85[_0xbea5('0x12')]&&_0x5a9b2a[_0x4c2c85['variableName']]){_0x201686[_0x4c2c85['idField']]=_0x5a9b2a[_0x4c2c85[_0xbea5('0x15')]][_0xbea5('0x14')]();}else if(_0x4c2c85['type']===_0xbea5('0x16')&&_0x4c2c85[_0xbea5('0x17')]&&_0x4c2c85[_0xbea5('0x17')][_0xbea5('0x18')]&&_0x4c2c85[_0xbea5('0x12')]&&_0x5a9b2a[_0x4c2c85[_0xbea5('0x17')]['name'][_0xbea5('0x19')]()]){_0x201686[_0x4c2c85[_0xbea5('0x12')]]=_0x5a9b2a[_0x4c2c85[_0xbea5('0x17')]['name'][_0xbea5('0x19')]()][_0xbea5('0x14')]();}});}return _0x201686;}function getName(_0x35b709){if(_0x35b709[_0xbea5('0x1a')]('\x20')>0x0){var _0x2955cd=_0x35b709['split'](/ (.+)/);if(_0x2955cd[0x1]){return _0x2955cd;}}return[_0x35b709,_0x35b709];}var accountsTokens={};function getAccessToken(_0x76d83e){return new Promise(function(_0x3555c2,_0x56c43f){if(!_[_0xbea5('0x1b')](accountsTokens[_0x76d83e['id']])&&!_[_0xbea5('0x1b')](accountsTokens[_0x76d83e['id']][_0xbea5('0x1c')])){if(moment()[_0xbea5('0x1d')](accountsTokens[_0x76d83e['id']][_0xbea5('0x1e')])){_0x3555c2(accountsTokens[_0x76d83e['id']][_0xbea5('0x1c')]);}}var _0x33a68e;switch(_0x76d83e[_0xbea5('0x1f')]){case'US':_0x33a68e='https://accounts.zoho.com';break;case'AU':_0x33a68e=_0xbea5('0x20');break;case'EU':_0x33a68e=_0xbea5('0x21');break;case'IN':_0x33a68e=_0xbea5('0x22');break;case'CN':_0x33a68e=_0xbea5('0x23');break;default:_0x33a68e=_0xbea5('0x21');break;}var _0x6fb47f={'method':_0xbea5('0x24'),'uri':_0x33a68e+_0xbea5('0x25'),'qs':{'refresh_token':_0x76d83e[_0xbea5('0x26')],'client_id':_0x76d83e[_0xbea5('0x27')],'client_secret':_0x76d83e[_0xbea5('0x28')],'grant_type':_0xbea5('0x29')},'json':!![]};return rp(_0x6fb47f)['then'](function(_0x5aa682){accountsTokens[_0x76d83e['id']]={'access_token':_0x5aa682[_0xbea5('0x1c')],'expires_in':moment()[_0xbea5('0x2a')](_0x5aa682[_0xbea5('0x1e')],_0xbea5('0x2b'))};_0x3555c2(_0x5aa682[_0xbea5('0x1c')]);})[_0xbea5('0x2c')](function(_0x4476eb){logger[_0xbea5('0x2d')](_0xbea5('0x2e'),_0x4476eb[_0xbea5('0x2f')]);_0x56c43f(_0x4476eb);});});}function getUser(_0x1f1918,_0x60bfd6,_0x48b122,_0x368e22){logger[_0xbea5('0x30')](_0xbea5('0x31'));return request({'method':_0xbea5('0x32'),'uri':util[_0xbea5('0x33')](_0xbea5('0x34'),_0x60bfd6),'qs':{'type':_0xbea5('0x35')},'headers':{'Authorization':_0xbea5('0x36')+_0x1f1918},'json':!![]})[_0xbea5('0x37')](function(_0x28c1){if(_0x28c1[_0xbea5('0x38')]){var _0x1e5b30=-0x1;if(_[_0xbea5('0x39')](_0x28c1[_0xbea5('0x38')])){if(!_['isNil'](_0x368e22)){_0x1e5b30=_[_0xbea5('0x3a')](_0x28c1[_0xbea5('0x38')],function(_0x4da3be){return _0x4da3be[_0xbea5('0x3b')]===_0x368e22;});}if(_0x1e5b30>=0x0){logger['info'](_0xbea5('0x3c'));}else{logger[_0xbea5('0x30')](_0xbea5('0x3d'));_0x1e5b30=_[_0xbea5('0x3a')](_0x28c1['users'],function(_0x11a1d4){return _0x11a1d4[_0xbea5('0x3e')]['name']===_0xbea5('0x3f');});}return _0x28c1['users'][_0x1e5b30];}else{if(_0x28c1[_0xbea5('0x40')][_0xbea5('0x3e')][_0xbea5('0x18')]===_0xbea5('0x3f')){logger[_0xbea5('0x30')](_0xbea5('0x3d'));user=_0x28c1[_0xbea5('0x40')];return user;}else{logger[_0xbea5('0x2d')](_0xbea5('0x41'),JSON[_0xbea5('0xd')](_0x28c1));throw new Error(_0xbea5('0x42')+JSON[_0xbea5('0xd')](_0x28c1));}}}else{logger[_0xbea5('0x2d')](_0xbea5('0x41'),JSON[_0xbea5('0xd')](_0x28c1));throw new Error(_0xbea5('0x42')+JSON[_0xbea5('0xd')](_0x28c1));}})[_0xbea5('0x2c')](function(_0x41b8e7){console[_0xbea5('0x2d')](_0x41b8e7);});}function getEndUser(_0x512459,_0x532867,_0x5e62b7,_0x374ccd,_0x3c5e0d,_0xb15099,_0x22d3a6){logger[_0xbea5('0x30')](_0xbea5('0x43'));return request({'method':'GET','uri':_0xbea5('0x44')+_0x532867+'/crm/v2/Contacts/search?criteria=((Phone:equals:'+_0x3c5e0d+'))','headers':{'Authorization':_0xbea5('0x36')+_0x512459},'json':!![]})[_0xbea5('0x37')](function(_0x238a62){if(_0x238a62){var _0x2c0efe=_0x238a62[_0xbea5('0x45')][0x0];_0x2c0efe['enduserType']=_0xbea5('0x46');logger['info'](_0xbea5('0x47'));return _0x2c0efe;}else{return request({'method':'GET','uri':'https://www.zohoapis.'+_0x532867+'/crm/v2/Leads/search?criteria=((Phone:equals:'+_0x3c5e0d+'))','headers':{'Authorization':_0xbea5('0x36')+_0x512459},'json':!![]})[_0xbea5('0x37')](function(_0x2b66c4){if(_0x2b66c4){var _0x1d430c=_0x2b66c4[_0xbea5('0x45')][0x0];_0x1d430c['enduserType']=_0xbea5('0x48');logger[_0xbea5('0x30')]('End\x20user\x20found\x20(Lead)');return _0x1d430c;}else{logger[_0xbea5('0x30')](_0xbea5('0x49'));_0x374ccd=getName(_0x374ccd);return request({'method':_0xbea5('0x24'),'uri':'https://www.zohoapis.'+_0x532867+_0xbea5('0x4a')+_0x22d3a6[_0xbea5('0x4b')],'body':{'data':[{'Last_Name':_0x374ccd[0x1],'First_Name':_0x374ccd[0x0],'Phone':_0x3c5e0d,'Owner':{'name':!_[_0xbea5('0x1b')](_0xb15099['role'][_0xbea5('0x18')])?_0xb15099['role']['name']:!_[_0xbea5('0x1b')](_0xb15099[_0xbea5('0x4c')])?_0xb15099[_0xbea5('0x4c')]+'\x20'+_0xb15099['last_name']:_0xb15099['last_name'],'id':_0xb15099['id']}}]},'headers':{'Authorization':_0xbea5('0x36')+_0x512459},'json':!![]})[_0xbea5('0x37')](function(_0x59dda1){if(_0x59dda1&&_0x59dda1[_0xbea5('0x45')][0x0][_0xbea5('0x4d')]===_0xbea5('0x4e')){var _0x47f9e5=_0x59dda1[_0xbea5('0x45')][0x0][_0xbea5('0x4f')];_0x47f9e5[_0xbea5('0x50')]=_0x22d3a6[_0xbea5('0x4b')];return _0x47f9e5;}logger[_0xbea5('0x2d')](_0xbea5('0x41'),JSON[_0xbea5('0xd')](_0x59dda1));throw new Error(_0xbea5('0x51')+JSON[_0xbea5('0xd')](_0x59dda1));});}});}});}function getCall(_0x2806f5,_0x286a3b,_0x4ca3ef,_0x5d7d54,_0x35c106,_0x44f3b7,_0x752b66,_0x5ec809){logger[_0xbea5('0x30')](_0xbea5('0x52'));var _0x333065={};_0x333065[_0xbea5('0x53')]={'name':!_[_0xbea5('0x1b')](_0x5d7d54['role'][_0xbea5('0x18')])&&!_[_0xbea5('0x1b')](_0x5d7d54[_0xbea5('0x3e')]['name'])&&_0x5d7d54[_0xbea5('0x3e')][_0xbea5('0x18')]===_0xbea5('0x54')?_0x5d7d54[_0xbea5('0x55')]['name']:!_[_0xbea5('0x1b')](_0x5d7d54[_0xbea5('0x4c')])?_0x5d7d54[_0xbea5('0x4c')]+'\x20'+_0x5d7d54['last_name']:_0x5d7d54[_0xbea5('0x56')],'id':_0x5d7d54['id']};_0x333065[_0xbea5('0x57')]=intUtil[_0xbea5('0x58')](_0x44f3b7[_0xbea5('0x59')],_0x752b66,'\x20');_0x333065['Description']=intUtil[_0xbea5('0x58')](_0x44f3b7[_0xbea5('0x5a')],_0x752b66,'\x0a');if(_0x35c106[_0xbea5('0x50')]===_0xbea5('0x46')){_0x333065['Who_Id']={'name':!_[_0xbea5('0x1b')](_0x35c106[_0xbea5('0x5b')])?_0x35c106[_0xbea5('0x5b')]:!_[_0xbea5('0x1b')](_0x35c106[_0xbea5('0x5c')])?_0x35c106['First_Name']+'\x20'+_0x35c106[_0xbea5('0x5d')]:_0x35c106['Last_Name'],'id':_0x35c106['id']};}if(_0x35c106['enduserType']===_0xbea5('0x48')){_0x333065[_0xbea5('0x5e')]={'name':!_[_0xbea5('0x1b')](_0x35c106['Full_Name'])?_0x35c106[_0xbea5('0x5b')]:!_[_0xbea5('0x1b')](_0x35c106['First_Name'])?_0x35c106[_0xbea5('0x5c')]+'\x20'+_0x35c106[_0xbea5('0x5d')]:_0x35c106['Last_Name'],'id':_0x35c106['id']};_0x333065[_0xbea5('0x5f')]=_0x35c106[_0xbea5('0x50')];}if(_0x752b66[_0xbea5('0x60')]){_0x333065[_0xbea5('0x61')]=moment[_0xbea5('0x62')](parseInt(_0x752b66['talktime'])*0x3e8)[_0xbea5('0x33')](_0xbea5('0x63'));}else if(_0x752b66[_0xbea5('0x64')]&&_0x752b66[_0xbea5('0x65')]){_0x333065['Call_Duration']=moment['utc'](moment(_0x752b66['endtime'],_0xbea5('0x66'))['diff'](moment(_0x752b66['starttime'],'YYYY-MM-DDTHH:mm:ss')))[_0xbea5('0x33')](_0xbea5('0x63'));}switch(_0x752b66[_0xbea5('0x67')]){case _0xbea5('0x68'):_0x333065[_0xbea5('0x69')]='Called';break;case'complete':case'connect':_0x333065[_0xbea5('0x69')]=_0xbea5('0x6a');break;case'rejected':_0x333065[_0xbea5('0x69')]=_0xbea5('0x6b');break;case _0xbea5('0x6c'):_0x333065[_0xbea5('0x69')]=_0xbea5('0x6d');break;default:}_0x333065[_0xbea5('0x6e')]=(_0x5ec809===_0xbea5('0x6f')?moment(_0x752b66[_0xbea5('0x70')])[_0xbea5('0x33')](_0xbea5('0x66')):moment(_0x752b66[_0xbea5('0x71')])[_0xbea5('0x33')](_0xbea5('0x66')))||moment()[_0xbea5('0x33')]('YYYY-MM-DDTHH:mm:ss');_0x333065[_0xbea5('0x72')]=_0x5ec809||_0xbea5('0x73');_0x333065=_['merge'](_0x333065,getCustomFields(_0x44f3b7[_0xbea5('0x74')],_0x752b66));return request({'method':'POST','uri':'https://www.zohoapis.'+_0x286a3b+'/crm/v2/Calls','headers':{'Authorization':_0xbea5('0x36')+_0x2806f5},'body':{'data':[_0x333065]},'json':!![]})[_0xbea5('0x37')](function(_0x59b7ea){if(_0x59b7ea&&_0x59b7ea['data'][0x0][_0xbea5('0x4d')]===_0xbea5('0x4e')){logger['info'](_0xbea5('0x75'));return{'id':_0x59b7ea[_0xbea5('0x45')][0x0][_0xbea5('0x4f')]['id']};}})[_0xbea5('0x2c')](function(_0x39949b){logger[_0xbea5('0x30')](_0xbea5('0x76'),_0x39949b[_0xbea5('0x2f')]);console[_0xbea5('0x77')]('err',_0x39949b);});}exports[_0xbea5('0x78')]=function(_0x5b0a96,_0x489a71,_0x4d9440,_0x10e78c,_0x393328,_0x5ac891){var _0x457f65,_0xef6596,_0x3b444c;_0x5ac891[_0xbea5('0x79')]=intUtil[_0xbea5('0x7a')](_0x5ac891[_0xbea5('0x79')]);_0x5ac891[_0xbea5('0x7b')]=intUtil[_0xbea5('0x7a')](_0x5ac891[_0xbea5('0x7b')]);if(_0x393328&&_0x393328[_0xbea5('0x7c')]){logger[_0xbea5('0x30')](_0xbea5('0x7d'),_0xbea5('0x7e'));_0x489a71[_0xbea5('0x7f')]=_0x5ac891[_0xbea5('0x7b')]+_0xbea5('0x80')+_0x489a71['uniqueid']+_0xbea5('0x81')+md5(_0x489a71[_0xbea5('0x82')]);}else{_0x489a71[_0xbea5('0x7f')]='';}var _0x509280=_0x5ac891['host']===_0xbea5('0x83')?'eu':'com';return getAccessToken(_0x5ac891)[_0xbea5('0x37')](function(_0x7b697){_0x3b444c=_0x7b697;return getUser(_0x3b444c,_0x509280,_0x5ac891,_0x10e78c[_0xbea5('0x3b')]);})[_0xbea5('0x37')](function(_0x273fb8){_0x457f65=_0x273fb8;logger[_0xbea5('0x30')]('The\x20User\x20ID\x20is:',_0x457f65['id']);return getEndUser(_0x3b444c,_0x509280,_0x5ac891,_0x489a71[_0xbea5('0x84')],_0x489a71[_0xbea5('0x85')],_0x457f65,_0x4d9440);})[_0xbea5('0x37')](function(_0x506550){_0xef6596=_0x506550;logger[_0xbea5('0x30')]('The\x20Enduser\x20ID\x20is:',_0xef6596['id']);return getCall(_0x3b444c,_0x509280,_0x5ac891,_0x457f65,_0xef6596,_0x4d9440,_0x489a71,_0xbea5('0x73'));})['then'](function(_0x7e9d87){if(_0x7e9d87){logger['info'](_0xbea5('0x86'),_0x7e9d87['id']);logger[_0xbea5('0x30')](_0xbea5('0x7d'),_0xbea5('0x87'));emit(util[_0xbea5('0x33')](_0xbea5('0x88'),_0x10e78c[_0xbea5('0x18')]),_0xbea5('0x89'),{'uri':_0xbea5('0x8a')+_0x5ac891[_0xbea5('0x79')]+'/crm/EntityInfo.do?module=Calls&id='+_0x7e9d87['id']});}})[_0xbea5('0x2c')](function(_0x54e4f8){logger[_0xbea5('0x2d')](_0xbea5('0x7d'),JSON[_0xbea5('0xd')](_0x54e4f8));});};exports[_0xbea5('0x6f')]=function(_0x2edd98,_0x320819,_0x51b211,_0x90c5f3,_0x2d3a14,_0x3bce21,_0x1b5a12){var _0x54dfc4,_0x44cf19,_0x116817;_0x3bce21[_0xbea5('0x79')]=intUtil['stripTrailingSlash'](_0x3bce21['host']);_0x3bce21[_0xbea5('0x7b')]=intUtil[_0xbea5('0x7a')](_0x3bce21['serverUrl']);if(_0x1b5a12&&_0x1b5a12[_0xbea5('0x8b')]&&_0x1b5a12[_0xbea5('0x8b')]!==_0xbea5('0x8c')){logger['info'](_0xbea5('0x8d'),_0xbea5('0x7e'));_0x320819['recordingURL']=_0x3bce21[_0xbea5('0x7b')]+_0xbea5('0x80')+_0x320819[_0xbea5('0x82')]+_0xbea5('0x81')+md5(_0x320819[_0xbea5('0x82')]);}var _0xe362bd=_0x3bce21[_0xbea5('0x79')]===_0xbea5('0x83')?'eu':_0xbea5('0x8e');return getAccessToken(_0x3bce21)['then'](function(_0x4fb2d9){_0x116817=_0x4fb2d9;return getUser(_0x116817,_0xe362bd,_0x3bce21,_0x90c5f3[_0xbea5('0x3b')]);})[_0xbea5('0x37')](function(_0x2a6713){_0x54dfc4=_0x2a6713;logger[_0xbea5('0x30')](_0xbea5('0x8f'),_0x54dfc4['id']);return getEndUser(_0x116817,_0xe362bd,_0x3bce21,_0x320819[_0xbea5('0x90')],_0x320819[_0xbea5('0x91')],_0x54dfc4,_0x51b211);})[_0xbea5('0x37')](function(_0x2e45cc){_0x44cf19=_0x2e45cc;logger['info']('The\x20Enduser\x20ID\x20is:',_0x44cf19['id']);return getCall(_0x116817,_0xe362bd,_0x3bce21,_0x54dfc4,_0x44cf19,_0x51b211,_0x320819,_0xbea5('0x92'));})[_0xbea5('0x37')](function(_0x34b8ff){if(_0x34b8ff){logger[_0xbea5('0x30')](_0xbea5('0x86'),_0x34b8ff['id']);logger[_0xbea5('0x30')]('[OUTBOUND]',_0xbea5('0x87'));emit(util['format'](_0xbea5('0x88'),_0x90c5f3[_0xbea5('0x18')]),_0xbea5('0x89'),{'uri':'https://crm.'+_0x3bce21['host']+_0xbea5('0x93')+_0x34b8ff['id']});}})[_0xbea5('0x2c')](function(_0x4b71a2){logger['error'](_0xbea5('0x8d'),JSON['stringify'](_0x4b71a2));});};exports['abandoned']=function(_0x36c2c0,_0x470e2c,_0x565ab5,_0x2e0718,_0xb2407c,_0x7fe28f){var _0x49cab3,_0xa7e444,_0x528b69;_0x7fe28f[_0xbea5('0x79')]=intUtil[_0xbea5('0x7a')](_0x7fe28f[_0xbea5('0x79')]);_0x7fe28f[_0xbea5('0x7b')]=intUtil['stripTrailingSlash'](_0x7fe28f['serverUrl']);if(_0xb2407c&&_0xb2407c[_0xbea5('0x7c')]){logger[_0xbea5('0x30')](_0xbea5('0x94'),_0xbea5('0x7e'));_0x470e2c[_0xbea5('0x7f')]=_0x7fe28f[_0xbea5('0x7b')]+'/api/voice/recordings/'+_0x470e2c[_0xbea5('0x82')]+_0xbea5('0x81')+md5(_0x470e2c[_0xbea5('0x82')]);}else{_0x470e2c[_0xbea5('0x7f')]='';}var _0x5b16e8=_0x7fe28f[_0xbea5('0x79')]===_0xbea5('0x83')?'eu':'com';return getAccessToken(_0x7fe28f)[_0xbea5('0x37')](function(_0x1c7a1b){_0x528b69=_0x1c7a1b;return getUser(_0x528b69,_0x5b16e8,_0x7fe28f);})[_0xbea5('0x37')](function(_0x33b982){_0x49cab3=_0x33b982;logger[_0xbea5('0x30')](_0xbea5('0x8f'),_0x49cab3['id']);return getEndUser(_0x528b69,_0x5b16e8,_0x7fe28f,_0x470e2c[_0xbea5('0x84')],_0x470e2c[_0xbea5('0x85')],_0x49cab3,_0x565ab5);})[_0xbea5('0x37')](function(_0x50aaa5){_0xa7e444=_0x50aaa5;logger[_0xbea5('0x30')](_0xbea5('0x95'),_0xa7e444['id']);return getCall(_0x528b69,_0x5b16e8,_0x7fe28f,_0x49cab3,_0xa7e444,_0x565ab5,_0x470e2c,_0xbea5('0x73'));})[_0xbea5('0x37')](function(_0x4e4b1f){if(_0x4e4b1f){logger['info'](_0xbea5('0x86'),_0x4e4b1f['id']);}})[_0xbea5('0x2c')](function(_0x3afe26){logger['error'](_0xbea5('0x94'),JSON[_0xbea5('0xd')](_0x3afe26));});};
\ No newline at end of file
+var _0x8b26=['Description','Descriptions','Full_Name','First_Name','Last_Name','What_Id','$se_module','talktime','Call_Duration','utc','mm:ss','answertime','YYYY-MM-DDTHH:mm:ss','diff','starttime','lastevent','Call_Result','connect','rejected','abandoned','Abandoned','timeout','Timeout','agentcalledAt','Call_Type','Inbound','Fields','/crm/v2/Calls','Call\x20created!','details','stack','log','err','queue','stripTrailingSlash','host','serverUrl','monitor_format','[QUEUE]','Recording\x20is\x20enabled!','recordingURL','uniqueid','/downloads?type=uniqueid&token=','zoho.eu','com','calleridname','calleridnum','The\x20Call\x20ID\x20is:','Displaying\x20call\x20to\x20agent\x20in\x20a\x20new\x20tab...','user:%s','trigger:browser:url','https://crm.','outbound','recordingFormat','/api/voice/recordings/','The\x20User\x20ID\x20is:','destcalleridname','destcalleridnum','[OUTBOUND]','unmanaged','toUpperCase','lodash','request-promise','md5','./util','moment','ioredis','bluebird','../../../../config/environment','../../../../config/logger','zoho','redis','defaults','socket.io-emitter','emit','[HTTP]','stringify','type','string','idField','content','toString','variable','variableName','customVariable','Variable','name','toLowerCase','indexOf','split','isNil','access_token','isBefore','expires_in','zone','https://accounts.zoho.com','https://accounts.zoho.com.au','https://accounts.zoho.eu','https://accounts.zoho.com.cn','POST','/oauth/v2/token','clientSecret','then','add','seconds','Failing\x20creating\x20the\x20access_token','info','GET','format','ActiveUsers','users','isArrayLikeObject','findIndex','email','Using\x20the\x20admin\x20account!','profile','Administrator','user','error','The\x20failing\x20result\x20is','Unable\x20to\x20retrieve\x20zoho\x20account\x20users:\x20','catch','data','enduserType','https://www.zohoapis.','/crm/v2/','startCase','role','first_name','last_name','Zoho-oauthtoken\x20','code','SUCCESS','CREATE\x20ERROR','uri','/crm/v2/Contacts/search?criteria=((Phone:equals:','Contacts','moduleCreate','nothing','contact','/crm/v2/Leads/search?criteria=((Phone:equals:','Leads','Creating\x20new\x20call...','administrator','getString','Subjects'];(function(_0x2dafbe,_0x5d04de){var _0x58a45a=function(_0x50ac96){while(--_0x50ac96){_0x2dafbe['push'](_0x2dafbe['shift']());}};_0x58a45a(++_0x5d04de);}(_0x8b26,0x1f3));var _0x68b2=function(_0x28394f,_0x5ebdd2){_0x28394f=_0x28394f-0x0;var _0x2618d2=_0x8b26[_0x28394f];return _0x2618d2;};'use strict';var _=require(_0x68b2('0x0'));var rp=require(_0x68b2('0x1'));var md5=require(_0x68b2('0x2'));var util=require('util');var intUtil=require(_0x68b2('0x3'));var moment=require(_0x68b2('0x4'));var Redis=require(_0x68b2('0x5'));var BPromise=require(_0x68b2('0x6'));var config=require(_0x68b2('0x7'));var logger=require(_0x68b2('0x8'))(_0x68b2('0x9'));config[_0x68b2('0xa')]=_[_0x68b2('0xb')](config[_0x68b2('0xa')],{'host':'localhost','port':0x18eb});var io=require(_0x68b2('0xc'))(new Redis(config[_0x68b2('0xa')]));function emit(_0x2b1740,_0x1a913d,_0x5c3531){io['to'](_0x2b1740)[_0x68b2('0xd')](_0x1a913d,_0x5c3531);}function request(_0x4e0d4e){logger['debug'](_0x68b2('0xe'),JSON[_0x68b2('0xf')](_0x4e0d4e));return rp(_0x4e0d4e);}function getCustomFields(_0x179350,_0x4b31c6){var _0x42616d={};if(_0x179350['length']>0x0){_['forEach'](_0x179350,function(_0x856dfe){if(_0x856dfe[_0x68b2('0x10')]===_0x68b2('0x11')&&_0x856dfe[_0x68b2('0x12')]){_0x42616d[_0x856dfe[_0x68b2('0x12')]]=_0x856dfe[_0x68b2('0x13')][_0x68b2('0x14')]();}else if(_0x856dfe[_0x68b2('0x10')]===_0x68b2('0x15')&&_0x856dfe[_0x68b2('0x16')]&&_0x856dfe[_0x68b2('0x12')]&&_0x4b31c6[_0x856dfe['variableName']]){_0x42616d[_0x856dfe[_0x68b2('0x12')]]=_0x4b31c6[_0x856dfe[_0x68b2('0x16')]][_0x68b2('0x14')]();}else if(_0x856dfe[_0x68b2('0x10')]===_0x68b2('0x17')&&_0x856dfe['Variable']&&_0x856dfe[_0x68b2('0x18')]['name']&&_0x856dfe[_0x68b2('0x12')]&&_0x4b31c6[_0x856dfe[_0x68b2('0x18')][_0x68b2('0x19')]['toLowerCase']()]){_0x42616d[_0x856dfe['idField']]=_0x4b31c6[_0x856dfe[_0x68b2('0x18')][_0x68b2('0x19')][_0x68b2('0x1a')]()]['toString']();}});}return _0x42616d;}function getName(_0x24b21f){if(_0x24b21f[_0x68b2('0x1b')]('\x20')>0x0){var _0x3a969f=_0x24b21f[_0x68b2('0x1c')](/ (.+)/);if(_0x3a969f[0x1]){return _0x3a969f;}}return[_0x24b21f,_0x24b21f];}var accountsTokens={};function getAccessToken(_0x313704){return new Promise(function(_0x240c89,_0x8ddd65){if(!_['isNil'](accountsTokens[_0x313704['id']])&&!_[_0x68b2('0x1d')](accountsTokens[_0x313704['id']][_0x68b2('0x1e')])){if(moment()[_0x68b2('0x1f')](accountsTokens[_0x313704['id']][_0x68b2('0x20')])){_0x240c89(accountsTokens[_0x313704['id']][_0x68b2('0x1e')]);}}var _0x5e0271;switch(_0x313704[_0x68b2('0x21')]){case'US':_0x5e0271=_0x68b2('0x22');break;case'AU':_0x5e0271=_0x68b2('0x23');break;case'EU':_0x5e0271=_0x68b2('0x24');break;case'IN':_0x5e0271='https://accounts.zoho.in';break;case'CN':_0x5e0271=_0x68b2('0x25');break;default:_0x5e0271='https://accounts.zoho.eu';break;}var _0x1ed70d={'method':_0x68b2('0x26'),'uri':_0x5e0271+_0x68b2('0x27'),'qs':{'refresh_token':_0x313704['refreshToken'],'client_id':_0x313704['clientId'],'client_secret':_0x313704[_0x68b2('0x28')],'grant_type':'refresh_token'},'json':!![]};return rp(_0x1ed70d)[_0x68b2('0x29')](function(_0x2d6cb4){accountsTokens[_0x313704['id']]={'access_token':_0x2d6cb4[_0x68b2('0x1e')],'expires_in':moment()[_0x68b2('0x2a')](_0x2d6cb4['expires_in'],_0x68b2('0x2b'))};_0x240c89(_0x2d6cb4[_0x68b2('0x1e')]);})['catch'](function(_0x139d67){logger['error'](_0x68b2('0x2c'),_0x139d67['stack']);_0x8ddd65(_0x139d67);});});}function getUser(_0x360dd2,_0x432822,_0x4248f8,_0x356899){logger[_0x68b2('0x2d')]('Search\x20user');return request({'method':_0x68b2('0x2e'),'uri':util[_0x68b2('0x2f')]('https://www.zohoapis.%s/crm/v2/users',_0x432822),'qs':{'type':_0x68b2('0x30')},'headers':{'Authorization':'Zoho-oauthtoken\x20'+_0x360dd2},'json':!![]})[_0x68b2('0x29')](function(_0x34d8d){if(_0x34d8d[_0x68b2('0x31')]){var _0x618a54=-0x1;if(_[_0x68b2('0x32')](_0x34d8d['users'])){if(!_['isNil'](_0x356899)){_0x618a54=_[_0x68b2('0x33')](_0x34d8d[_0x68b2('0x31')],function(_0x26dac1){return _0x26dac1[_0x68b2('0x34')]===_0x356899;});}if(_0x618a54>=0x0){logger[_0x68b2('0x2d')]('Agent\x20found!');}else{logger[_0x68b2('0x2d')](_0x68b2('0x35'));_0x618a54=_[_0x68b2('0x33')](_0x34d8d[_0x68b2('0x31')],function(_0x3d4822){return _0x3d4822[_0x68b2('0x36')]['name']===_0x68b2('0x37');});}return _0x34d8d['users'][_0x618a54];}else{if(_0x34d8d[_0x68b2('0x38')][_0x68b2('0x36')][_0x68b2('0x19')]===_0x68b2('0x37')){logger['info']('Using\x20the\x20admin\x20account!');user=_0x34d8d[_0x68b2('0x38')];return user;}else{logger[_0x68b2('0x39')](_0x68b2('0x3a'),JSON['stringify'](_0x34d8d));throw new Error(_0x68b2('0x3b')+JSON['stringify'](_0x34d8d));}}}else{logger[_0x68b2('0x39')](_0x68b2('0x3a'),JSON[_0x68b2('0xf')](_0x34d8d));throw new Error(_0x68b2('0x3b')+JSON[_0x68b2('0xf')](_0x34d8d));}})[_0x68b2('0x3c')](function(_0xe13eea){console[_0x68b2('0x39')](_0xe13eea);});}function getZohoUser(_0x165829,_0x5c05ee){return new BPromise(function(_0x1f79f3,_0x3975e4){request(_0x165829)[_0x68b2('0x29')](function(_0x378d0e){var _0x275aeb=null;if(_0x378d0e){_0x275aeb=_0x378d0e[_0x68b2('0x3d')][0x0];_0x275aeb[_0x68b2('0x3e')]=_0x5c05ee;}_0x1f79f3(_0x275aeb);})[_0x68b2('0x3c')](function(_0x917cb2){_0x3975e4(_0x917cb2);});});}function createEndUser(_0x251f03,_0x3d99df,_0x1be543,_0x5e664,_0x373171,_0x355c6d){var _0x1be543=getName(_0x1be543);return request({'method':'POST','uri':_0x68b2('0x3f')+_0x3d99df+_0x68b2('0x40')+_[_0x68b2('0x41')](_0x355c6d['moduleCreate'])+'s','body':{'data':[{'Last_Name':_0x1be543[0x1],'First_Name':_0x1be543[0x0],'Phone':_0x5e664,'Owner':{'name':!_[_0x68b2('0x1d')](_0x373171[_0x68b2('0x42')][_0x68b2('0x19')])?_0x373171['role']['name']:!_[_0x68b2('0x1d')](_0x373171[_0x68b2('0x43')])?_0x373171['first_name']+'\x20'+_0x373171[_0x68b2('0x44')]:_0x373171['last_name'],'id':_0x373171['id']}}]},'headers':{'Authorization':_0x68b2('0x45')+_0x251f03},'json':!![]})[_0x68b2('0x29')](function(_0x5c51f4){if(_0x5c51f4&&_0x5c51f4[_0x68b2('0x3d')][0x0][_0x68b2('0x46')]===_0x68b2('0x47')){var _0xe3f8a9=_0x5c51f4[_0x68b2('0x3d')][0x0]['details'];_0xe3f8a9['enduserType']=_[_0x68b2('0x41')](_0x355c6d['moduleCreate'])+'s';return _0xe3f8a9;}logger[_0x68b2('0x39')]('The\x20failing\x20result\x20is',JSON[_0x68b2('0xf')](data));throw new Error('Error:\x20'+JSON[_0x68b2('0xf')](data));})[_0x68b2('0x3c')](function(_0x2610f7){console['log'](_0x68b2('0x48'),_0x2610f7);});}function getEndUser(_0x126b30,_0x1746fe,_0x502c7e,_0x314875,_0x1a7362,_0x36df85,_0x5b7b24){var _0xea5595={'method':_0x68b2('0x2e'),'uri':'','headers':{'Authorization':_0x68b2('0x45')+_0x126b30},'json':!![]};switch(_0x5b7b24['moduleSearch']){case'contact_lead':_0xea5595[_0x68b2('0x49')]=_0x68b2('0x3f')+_0x1746fe+_0x68b2('0x4a')+_0x1a7362+'))';return getZohoUser(_0xea5595,_0x68b2('0x4b'))[_0x68b2('0x29')](function(_0x2ac642){if(_0x2ac642)return _0x2ac642;_0xea5595[_0x68b2('0x49')]=_0x68b2('0x3f')+_0x1746fe+'/crm/v2/Leads/search?criteria=((Phone:equals:'+_0x1a7362+'))';return getZohoUser(_0xea5595,'Leads')[_0x68b2('0x29')](function(_0x22b237){if(_0x22b237)return _0x22b237;if(_0x5b7b24[_0x68b2('0x4c')]!=_0x68b2('0x4d')){return createEndUser(_0x126b30,_0x1746fe,_0x314875,_0x1a7362,_0x36df85,_0x5b7b24);}else{return{};}});});break;case _0x68b2('0x4e'):_0xea5595[_0x68b2('0x49')]=_0x68b2('0x3f')+_0x1746fe+_0x68b2('0x4a')+_0x1a7362+'))';return getZohoUser(_0xea5595,_0x68b2('0x4b'))['then'](function(_0x38ce34){if(_0x38ce34)return _0x38ce34;if(_0x5b7b24['moduleCreate']!=_0x68b2('0x4d')){return createEndUser(_0x126b30,_0x1746fe,_0x314875,_0x1a7362,_0x36df85,_0x5b7b24);}else{return{};}});break;case'lead':_0xea5595['uri']=_0x68b2('0x3f')+_0x1746fe+_0x68b2('0x4f')+_0x1a7362+'))';return getZohoUser(_0xea5595,_0x68b2('0x50'))[_0x68b2('0x29')](function(_0x3cc948){if(_0x3cc948)return _0x3cc948;if(_0x5b7b24['moduleCreate']!=_0x68b2('0x4d')){return createEndUser(_0x126b30,_0x1746fe,_0x314875,_0x1a7362,_0x36df85,_0x5b7b24);}else{return{};}});break;}}function getCall(_0x426f25,_0x2bb8d,_0x4368b6,_0x156919,_0x5df08a,_0x409e85,_0x18180f,_0x5b6e65){logger['info'](_0x68b2('0x51'));var _0x1aa02e={};_0x1aa02e['Owner']={'name':!_[_0x68b2('0x1d')](_0x156919[_0x68b2('0x42')]['name'])&&!_[_0x68b2('0x1d')](_0x156919['profile'][_0x68b2('0x19')])&&_0x156919[_0x68b2('0x36')]['name']===_0x68b2('0x52')?_0x156919[_0x68b2('0x42')]['name']:!_[_0x68b2('0x1d')](_0x156919['first_name'])?_0x156919[_0x68b2('0x43')]+'\x20'+_0x156919[_0x68b2('0x44')]:_0x156919['last_name'],'id':_0x156919['id']};_0x1aa02e['Subject']=intUtil[_0x68b2('0x53')](_0x409e85[_0x68b2('0x54')],_0x18180f,'\x20');_0x1aa02e[_0x68b2('0x55')]=intUtil[_0x68b2('0x53')](_0x409e85[_0x68b2('0x56')],_0x18180f,'\x0a');if(_0x5df08a[_0x68b2('0x3e')]===_0x68b2('0x4b')){_0x1aa02e['Who_Id']={'name':!_['isNil'](_0x5df08a[_0x68b2('0x57')])?_0x5df08a[_0x68b2('0x57')]:!_[_0x68b2('0x1d')](_0x5df08a[_0x68b2('0x58')])?_0x5df08a['First_Name']+'\x20'+_0x5df08a[_0x68b2('0x59')]:_0x5df08a['Last_Name'],'id':_0x5df08a['id']};}if(_0x5df08a[_0x68b2('0x3e')]===_0x68b2('0x50')){_0x1aa02e[_0x68b2('0x5a')]={'name':!_[_0x68b2('0x1d')](_0x5df08a[_0x68b2('0x57')])?_0x5df08a[_0x68b2('0x57')]:!_[_0x68b2('0x1d')](_0x5df08a['First_Name'])?_0x5df08a['First_Name']+'\x20'+_0x5df08a[_0x68b2('0x59')]:_0x5df08a['Last_Name'],'id':_0x5df08a['id']};_0x1aa02e[_0x68b2('0x5b')]=_['startCase'](_0x5df08a[_0x68b2('0x3e')]);}if(_0x18180f[_0x68b2('0x5c')]){_0x1aa02e[_0x68b2('0x5d')]=moment[_0x68b2('0x5e')](parseInt(_0x18180f[_0x68b2('0x5c')])*0x3e8)[_0x68b2('0x2f')](_0x68b2('0x5f'));}else if(_0x18180f[_0x68b2('0x60')]&&_0x18180f['endtime']){_0x1aa02e[_0x68b2('0x5d')]=moment['utc'](moment(_0x18180f['endtime'],_0x68b2('0x61'))[_0x68b2('0x62')](moment(_0x18180f[_0x68b2('0x63')],_0x68b2('0x61'))))[_0x68b2('0x2f')](_0x68b2('0x5f'));}switch(_0x18180f[_0x68b2('0x64')]){case'called':_0x1aa02e[_0x68b2('0x65')]='Called';break;case'complete':case _0x68b2('0x66'):_0x1aa02e[_0x68b2('0x65')]='Answered';break;case _0x68b2('0x67'):_0x1aa02e['Call_Result']='Rejected';break;case _0x68b2('0x68'):_0x1aa02e['Call_Result']=_0x68b2('0x69');break;case _0x68b2('0x6a'):_0x1aa02e[_0x68b2('0x65')]=_0x68b2('0x6b');default:}_0x1aa02e['Call_Start_Time']=(_0x5b6e65==='outbound'?moment(_0x18180f['starttime'])['format'](_0x68b2('0x61')):moment(_0x18180f[_0x68b2('0x6c')])[_0x68b2('0x2f')](_0x68b2('0x61')))||moment()[_0x68b2('0x2f')](_0x68b2('0x61'));_0x1aa02e[_0x68b2('0x6d')]=_0x5b6e65||_0x68b2('0x6e');_0x1aa02e=_['merge'](_0x1aa02e,getCustomFields(_0x409e85[_0x68b2('0x6f')],_0x18180f));return request({'method':_0x68b2('0x26'),'uri':'https://www.zohoapis.'+_0x2bb8d+_0x68b2('0x70'),'headers':{'Authorization':_0x68b2('0x45')+_0x426f25},'body':{'data':[_0x1aa02e]},'json':!![]})['then'](function(_0x3707e4){if(_0x3707e4&&_0x3707e4[_0x68b2('0x3d')][0x0][_0x68b2('0x46')]===_0x68b2('0x47')){logger[_0x68b2('0x2d')](_0x68b2('0x71'));return{'id':_0x3707e4[_0x68b2('0x3d')][0x0][_0x68b2('0x72')]['id']};}})[_0x68b2('0x3c')](function(_0x5cdfd1){logger[_0x68b2('0x2d')]('err',_0x5cdfd1[_0x68b2('0x73')]);console[_0x68b2('0x74')](_0x68b2('0x75'),_0x5cdfd1);});}exports[_0x68b2('0x76')]=function(_0x43be18,_0x272cd6,_0x59bbc0,_0x3dffaa,_0x17490c,_0x2a8d04){var _0x20d949,_0x2104f7,_0x2cc0a1;_0x2a8d04['host']=intUtil[_0x68b2('0x77')](_0x2a8d04[_0x68b2('0x78')]);_0x2a8d04['serverUrl']=intUtil[_0x68b2('0x77')](_0x2a8d04[_0x68b2('0x79')]);if(_0x17490c&&_0x17490c[_0x68b2('0x7a')]){logger['info'](_0x68b2('0x7b'),_0x68b2('0x7c'));_0x272cd6[_0x68b2('0x7d')]=_0x2a8d04[_0x68b2('0x79')]+'/api/voice/recordings/'+_0x272cd6[_0x68b2('0x7e')]+_0x68b2('0x7f')+md5(_0x272cd6[_0x68b2('0x7e')]);}else{_0x272cd6['recordingURL']='';}var _0x3b1041=_0x2a8d04[_0x68b2('0x78')]===_0x68b2('0x80')?'eu':_0x68b2('0x81');return getAccessToken(_0x2a8d04)['then'](function(_0x308e44){_0x2cc0a1=_0x308e44;return getUser(_0x2cc0a1,_0x3b1041,_0x2a8d04,_0x3dffaa[_0x68b2('0x34')]);})['then'](function(_0xb03297){_0x20d949=_0xb03297;logger[_0x68b2('0x2d')]('The\x20User\x20ID\x20is:',_0x20d949['id']);return getEndUser(_0x2cc0a1,_0x3b1041,_0x2a8d04,_0x272cd6[_0x68b2('0x82')],_0x272cd6[_0x68b2('0x83')],_0x20d949,_0x59bbc0);})[_0x68b2('0x29')](function(_0x3b60e6){_0x2104f7=_0x3b60e6;return getCall(_0x2cc0a1,_0x3b1041,_0x2a8d04,_0x20d949,_0x2104f7,_0x59bbc0,_0x272cd6,_0x68b2('0x6e'));})[_0x68b2('0x29')](function(_0x373d94){if(_0x373d94){logger[_0x68b2('0x2d')](_0x68b2('0x84'),_0x373d94['id']);logger[_0x68b2('0x2d')](_0x68b2('0x7b'),_0x68b2('0x85'));emit(util[_0x68b2('0x2f')](_0x68b2('0x86'),_0x3dffaa[_0x68b2('0x19')]),_0x68b2('0x87'),{'uri':_0x68b2('0x88')+_0x2a8d04[_0x68b2('0x78')]+'/crm/EntityInfo.do?module=Calls&id='+_0x373d94['id']});}})[_0x68b2('0x3c')](function(_0x144a44){logger[_0x68b2('0x39')](_0x68b2('0x7b'),JSON['stringify'](_0x144a44));});};exports[_0x68b2('0x89')]=function(_0x3d18cf,_0x399e90,_0xb1697,_0x3f6f86,_0x3fb4cf,_0x52d7bc,_0x556cf7){var _0x85c581,_0x226303,_0x194e26;_0x52d7bc['host']=intUtil[_0x68b2('0x77')](_0x52d7bc[_0x68b2('0x78')]);_0x52d7bc[_0x68b2('0x79')]=intUtil[_0x68b2('0x77')](_0x52d7bc[_0x68b2('0x79')]);if(_0x556cf7&&_0x556cf7['recordingFormat']&&_0x556cf7[_0x68b2('0x8a')]!=='none'){logger[_0x68b2('0x2d')]('[OUTBOUND]',_0x68b2('0x7c'));_0x399e90[_0x68b2('0x7d')]=_0x52d7bc['serverUrl']+_0x68b2('0x8b')+_0x399e90[_0x68b2('0x7e')]+_0x68b2('0x7f')+md5(_0x399e90['uniqueid']);}var _0x3d4077=_0x52d7bc[_0x68b2('0x78')]===_0x68b2('0x80')?'eu':_0x68b2('0x81');return getAccessToken(_0x52d7bc)[_0x68b2('0x29')](function(_0x2ae924){_0x194e26=_0x2ae924;return getUser(_0x194e26,_0x3d4077,_0x52d7bc,_0x3f6f86['email']);})[_0x68b2('0x29')](function(_0x2218dc){_0x85c581=_0x2218dc;logger[_0x68b2('0x2d')](_0x68b2('0x8c'),_0x85c581['id']);return getEndUser(_0x194e26,_0x3d4077,_0x52d7bc,_0x399e90[_0x68b2('0x8d')],_0x399e90[_0x68b2('0x8e')],_0x85c581,_0xb1697);})[_0x68b2('0x29')](function(_0x4141ae){_0x226303=_0x4141ae;return getCall(_0x194e26,_0x3d4077,_0x52d7bc,_0x85c581,_0x226303,_0xb1697,_0x399e90,'Outbound');})[_0x68b2('0x29')](function(_0x4d455c){if(_0x4d455c){logger['info'](_0x68b2('0x84'),_0x4d455c['id']);logger[_0x68b2('0x2d')]('[OUTBOUND]',_0x68b2('0x85'));emit(util['format'](_0x68b2('0x86'),_0x3f6f86[_0x68b2('0x19')]),_0x68b2('0x87'),{'uri':_0x68b2('0x88')+_0x52d7bc[_0x68b2('0x78')]+'/crm/EntityInfo.do?module=Calls&id='+_0x4d455c['id']});}})['catch'](function(_0x300c1c){logger['error'](_0x68b2('0x8f'),JSON[_0x68b2('0xf')](_0x300c1c));});};exports[_0x68b2('0x90')]=function(_0x31eca7,_0x114bc2,_0x2ad121,_0x2cc86a,_0x4fb433,_0x919f7b){var _0x44a350,_0x458122,_0x2c98bc;_0x919f7b[_0x68b2('0x78')]=intUtil[_0x68b2('0x77')](_0x919f7b[_0x68b2('0x78')]);_0x919f7b[_0x68b2('0x79')]=intUtil[_0x68b2('0x77')](_0x919f7b[_0x68b2('0x79')]);if(_0x4fb433&&_0x4fb433[_0x68b2('0x7a')]){logger[_0x68b2('0x2d')]('['+_0x114bc2[_0x68b2('0x64')][_0x68b2('0x91')]()+']',_0x68b2('0x7c'));_0x114bc2['recordingURL']=_0x919f7b[_0x68b2('0x79')]+_0x68b2('0x8b')+_0x114bc2[_0x68b2('0x7e')]+_0x68b2('0x7f')+md5(_0x114bc2[_0x68b2('0x7e')]);}else{_0x114bc2[_0x68b2('0x7d')]='';}var _0x499020=_0x919f7b['host']==='zoho.eu'?'eu':'com';return getAccessToken(_0x919f7b)[_0x68b2('0x29')](function(_0x495fda){_0x2c98bc=_0x495fda;return getUser(_0x2c98bc,_0x499020,_0x919f7b);})[_0x68b2('0x29')](function(_0x194cb9){_0x44a350=_0x194cb9;logger[_0x68b2('0x2d')]('The\x20User\x20ID\x20is:',_0x44a350['id']);return getEndUser(_0x2c98bc,_0x499020,_0x919f7b,_0x114bc2[_0x68b2('0x82')],_0x114bc2[_0x68b2('0x83')],_0x44a350,_0x2ad121);})[_0x68b2('0x29')](function(_0x49b3a0){_0x458122=_0x49b3a0;return getCall(_0x2c98bc,_0x499020,_0x919f7b,_0x44a350,_0x458122,_0x2ad121,_0x114bc2,'Inbound');})[_0x68b2('0x29')](function(_0x2cae3d){if(_0x2cae3d){logger['info']('The\x20Call\x20ID\x20is:',_0x2cae3d['id']);}})[_0x68b2('0x3c')](function(_0x4317cd){logger[_0x68b2('0x39')]('['+_0x114bc2[_0x68b2('0x64')][_0x68b2('0x91')]()+']',JSON[_0x68b2('0xf')](_0x4317cd));});};
\ No newline at end of file