Built motion from commit c738b9ac.|2.6.25
[motion2.git] / server / services / ami / trigger / integration / zoho.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 _0xc157=['emit','debug','stringify','forEach','includes','string','picklist','type','idField','content','toString','variable','variableName','Variable','name','toLowerCase','indexOf','split','isNil','access_token','isBefore','zone','https://accounts.zoho.com','https://accounts.zoho.eu','https://accounts.zoho.in','https://accounts.zoho.com.cn','POST','refreshToken','clientId','clientSecret','refresh_token','then','add','expires_in','seconds','catch','error','stack','info','Search\x20user','GET','format','https://www.zohoapis.%s/crm/v2/users','ActiveUsers','Zoho-oauthtoken\x20','users','isArrayLikeObject','findIndex','Using\x20the\x20admin\x20account!','profile','Administrator','user','The\x20failing\x20result\x20is','Unable\x20to\x20retrieve\x20zoho\x20account\x20users:\x20','data','enduserType','startCase','moduleCreate','role','first_name','last_name','code','SUCCESS','details','Error:\x20','log','CREATE\x20ERROR','moduleSearch','uri','https://www.zohoapis.','/crm/v2/Contacts/search?criteria=((Phone:equals:','Contacts','/crm/v2/Leads/search?criteria=((Phone:equals:','nothing','contact','lead','Leads','administrator','Subjects','Description','getString','Descriptions','Full_Name','First_Name','Last_Name','What_Id','$se_module','talktime','Call_Duration','utc','answertime','endtime','YYYY-MM-DDTHH:mm:ss','diff','starttime','mm:ss','lastevent','called','Call_Result','Called','complete','connect','Answered','rejected','Rejected','Abandoned','timeout','Timeout','outbound','agentcalledAt','Call_Type','merge','Fields','/crm/v2/Calls','Call\x20created!','err','host','stripTrailingSlash','serverUrl','monitor_format','[QUEUE]','Recording\x20is\x20enabled!','/api/voice/recordings/','/downloads?type=uniqueid&token=','uniqueid','recordingURL','zoho.eu','com','email','The\x20User\x20ID\x20is:','The\x20Call\x20ID\x20is:','Displaying\x20call\x20to\x20agent\x20in\x20a\x20new\x20tab...','user:%s','trigger:browser:url','https://crm.','/crm/EntityInfo.do?module=Calls&id=','recordingFormat','none','destcalleridname','Outbound','[OUTBOUND]','unmanaged','toUpperCase','calleridname','Inbound','lodash','request-promise','./util','ioredis','bluebird','../../../../config/environment','zoho','redis','defaults','localhost','socket.io-emitter'];(function(_0xa081cf,_0x16820a){var _0x3abdf5=function(_0x2a7504){while(--_0x2a7504){_0xa081cf['push'](_0xa081cf['shift']());}};_0x3abdf5(++_0x16820a);}(_0xc157,0x1c9));var _0x7c15=function(_0x48dce4,_0x5dcced){_0x48dce4=_0x48dce4-0x0;var _0x21d90a=_0xc157[_0x48dce4];return _0x21d90a;};'use strict';var _=require(_0x7c15('0x0'));var rp=require(_0x7c15('0x1'));var md5=require('md5');var util=require('util');var intUtil=require(_0x7c15('0x2'));var moment=require('moment');var Redis=require(_0x7c15('0x3'));var BPromise=require(_0x7c15('0x4'));var config=require(_0x7c15('0x5'));var logger=require('../../../../config/logger')(_0x7c15('0x6'));config[_0x7c15('0x7')]=_[_0x7c15('0x8')](config['redis'],{'host':_0x7c15('0x9'),'port':0x18eb});var io=require(_0x7c15('0xa'))(new Redis(config[_0x7c15('0x7')]));function emit(_0x597978,_0x4a7d38,_0x50310f){io['to'](_0x597978)[_0x7c15('0xb')](_0x4a7d38,_0x50310f);}function request(_0x149106){logger[_0x7c15('0xc')]('[HTTP]',JSON[_0x7c15('0xd')](_0x149106));return rp(_0x149106);}function getCustomFields(_0x9bd96,_0x44355d){var _0x5d481d={};if(_0x9bd96['length']>0x0){_[_0x7c15('0xe')](_0x9bd96,function(_0x5c4fde){if(_[_0x7c15('0xf')]([_0x7c15('0x10'),_0x7c15('0x11')],_0x5c4fde[_0x7c15('0x12')])&&_0x5c4fde[_0x7c15('0x13')]){_0x5d481d[_0x5c4fde[_0x7c15('0x13')]]=_0x5c4fde[_0x7c15('0x14')][_0x7c15('0x15')]();}else if(_0x5c4fde[_0x7c15('0x12')]===_0x7c15('0x16')&&_0x5c4fde['variableName']&&_0x5c4fde[_0x7c15('0x13')]&&_0x44355d[_0x5c4fde[_0x7c15('0x17')]]){_0x5d481d[_0x5c4fde[_0x7c15('0x13')]]=_0x44355d[_0x5c4fde[_0x7c15('0x17')]][_0x7c15('0x15')]();}else if(_0x5c4fde[_0x7c15('0x12')]==='customVariable'&&_0x5c4fde[_0x7c15('0x18')]&&_0x5c4fde[_0x7c15('0x18')]['name']&&_0x5c4fde[_0x7c15('0x13')]&&_0x44355d[_0x5c4fde[_0x7c15('0x18')][_0x7c15('0x19')][_0x7c15('0x1a')]()]){_0x5d481d[_0x5c4fde['idField']]=_0x44355d[_0x5c4fde['Variable']['name'][_0x7c15('0x1a')]()][_0x7c15('0x15')]();}});}return _0x5d481d;}function getName(_0x591b9e){if(_0x591b9e[_0x7c15('0x1b')]('\x20')>0x0){var _0x59ff9e=_0x591b9e[_0x7c15('0x1c')](/ (.+)/);if(_0x59ff9e[0x1]){return _0x59ff9e;}}return[_0x591b9e,_0x591b9e];}var accountsTokens={};function getAccessToken(_0x4cd3a8){return new Promise(function(_0x34e452,_0x612788){if(!_[_0x7c15('0x1d')](accountsTokens[_0x4cd3a8['id']])&&!_['isNil'](accountsTokens[_0x4cd3a8['id']][_0x7c15('0x1e')])){if(moment()[_0x7c15('0x1f')](accountsTokens[_0x4cd3a8['id']]['expires_in'])){_0x34e452(accountsTokens[_0x4cd3a8['id']][_0x7c15('0x1e')]);}}var _0x256ee4;switch(_0x4cd3a8[_0x7c15('0x20')]){case'US':_0x256ee4=_0x7c15('0x21');break;case'AU':_0x256ee4='https://accounts.zoho.com.au';break;case'EU':_0x256ee4=_0x7c15('0x22');break;case'IN':_0x256ee4=_0x7c15('0x23');break;case'CN':_0x256ee4=_0x7c15('0x24');break;default:_0x256ee4=_0x7c15('0x22');break;}var _0x44ed49={'method':_0x7c15('0x25'),'uri':_0x256ee4+'/oauth/v2/token','qs':{'refresh_token':_0x4cd3a8[_0x7c15('0x26')],'client_id':_0x4cd3a8[_0x7c15('0x27')],'client_secret':_0x4cd3a8[_0x7c15('0x28')],'grant_type':_0x7c15('0x29')},'json':!![]};return rp(_0x44ed49)[_0x7c15('0x2a')](function(_0x5535a1){accountsTokens[_0x4cd3a8['id']]={'access_token':_0x5535a1[_0x7c15('0x1e')],'expires_in':moment()[_0x7c15('0x2b')](_0x5535a1[_0x7c15('0x2c')],_0x7c15('0x2d'))};_0x34e452(_0x5535a1[_0x7c15('0x1e')]);})[_0x7c15('0x2e')](function(_0x594021){logger[_0x7c15('0x2f')]('Failing\x20creating\x20the\x20access_token',_0x594021[_0x7c15('0x30')]);_0x612788(_0x594021);});});}function getUser(_0x4e8f7b,_0x52f79d,_0x37dbfd,_0x33994d){logger[_0x7c15('0x31')](_0x7c15('0x32'));return request({'method':_0x7c15('0x33'),'uri':util[_0x7c15('0x34')](_0x7c15('0x35'),_0x52f79d),'qs':{'type':_0x7c15('0x36')},'headers':{'Authorization':_0x7c15('0x37')+_0x4e8f7b},'json':!![]})[_0x7c15('0x2a')](function(_0x8037f6){if(_0x8037f6[_0x7c15('0x38')]){var _0x29bf22=-0x1;if(_[_0x7c15('0x39')](_0x8037f6[_0x7c15('0x38')])){if(!_[_0x7c15('0x1d')](_0x33994d)){_0x29bf22=_[_0x7c15('0x3a')](_0x8037f6[_0x7c15('0x38')],function(_0x242a55){return _0x242a55['email']===_0x33994d;});}if(_0x29bf22>=0x0){logger[_0x7c15('0x31')]('Agent\x20found!');}else{logger[_0x7c15('0x31')](_0x7c15('0x3b'));_0x29bf22=_[_0x7c15('0x3a')](_0x8037f6[_0x7c15('0x38')],function(_0x160c70){return _0x160c70[_0x7c15('0x3c')][_0x7c15('0x19')]===_0x7c15('0x3d');});}return _0x8037f6[_0x7c15('0x38')][_0x29bf22];}else{if(_0x8037f6[_0x7c15('0x3e')][_0x7c15('0x3c')][_0x7c15('0x19')]==='Administrator'){logger[_0x7c15('0x31')](_0x7c15('0x3b'));user=_0x8037f6['user'];return user;}else{logger[_0x7c15('0x2f')](_0x7c15('0x3f'),JSON['stringify'](_0x8037f6));throw new Error(_0x7c15('0x40')+JSON[_0x7c15('0xd')](_0x8037f6));}}}else{logger['error'](_0x7c15('0x3f'),JSON['stringify'](_0x8037f6));throw new Error(_0x7c15('0x40')+JSON['stringify'](_0x8037f6));}})['catch'](function(_0x3a5047){console['error'](_0x3a5047);});}function getZohoUser(_0xd3f19c,_0x598616){return new BPromise(function(_0x36b1a7,_0x35c657){request(_0xd3f19c)[_0x7c15('0x2a')](function(_0x2c9bfe){var _0x58a919=null;if(_0x2c9bfe){_0x58a919=_0x2c9bfe[_0x7c15('0x41')][0x0];_0x58a919[_0x7c15('0x42')]=_0x598616;}_0x36b1a7(_0x58a919);})['catch'](function(_0x107393){_0x35c657(_0x107393);});});}function createEndUser(_0x5f180f,_0xb8f037,_0x2d5ee3,_0x335fe,_0x5f588e,_0x47dd10){var _0x2d5ee3=getName(_0x2d5ee3);return request({'method':_0x7c15('0x25'),'uri':'https://www.zohoapis.'+_0xb8f037+'/crm/v2/'+_[_0x7c15('0x43')](_0x47dd10[_0x7c15('0x44')])+'s','body':{'data':[{'Last_Name':_0x2d5ee3[0x1],'First_Name':_0x2d5ee3[0x0],'Phone':_0x335fe,'Owner':{'name':!_[_0x7c15('0x1d')](_0x5f588e['role'][_0x7c15('0x19')])?_0x5f588e[_0x7c15('0x45')][_0x7c15('0x19')]:!_[_0x7c15('0x1d')](_0x5f588e[_0x7c15('0x46')])?_0x5f588e[_0x7c15('0x46')]+'\x20'+_0x5f588e[_0x7c15('0x47')]:_0x5f588e['last_name'],'id':_0x5f588e['id']}}]},'headers':{'Authorization':_0x7c15('0x37')+_0x5f180f},'json':!![]})[_0x7c15('0x2a')](function(_0x4e97cc){if(_0x4e97cc&&_0x4e97cc[_0x7c15('0x41')][0x0][_0x7c15('0x48')]===_0x7c15('0x49')){var _0x546d6b=_0x4e97cc['data'][0x0][_0x7c15('0x4a')];_0x546d6b[_0x7c15('0x42')]=_[_0x7c15('0x43')](_0x47dd10['moduleCreate'])+'s';return _0x546d6b;}logger[_0x7c15('0x2f')](_0x7c15('0x3f'),JSON[_0x7c15('0xd')](data));throw new Error(_0x7c15('0x4b')+JSON['stringify'](data));})['catch'](function(_0x5044b1){console[_0x7c15('0x4c')](_0x7c15('0x4d'),_0x5044b1);});}function getEndUser(_0x369be1,_0x722704,_0x5d49f3,_0x19d0b2,_0x59d66b,_0x3afeee,_0x9471d1){var _0x122d77={'method':_0x7c15('0x33'),'uri':'','headers':{'Authorization':_0x7c15('0x37')+_0x369be1},'json':!![]};switch(_0x9471d1[_0x7c15('0x4e')]){case'contact_lead':_0x122d77[_0x7c15('0x4f')]=_0x7c15('0x50')+_0x722704+_0x7c15('0x51')+_0x59d66b+'))';return getZohoUser(_0x122d77,_0x7c15('0x52'))[_0x7c15('0x2a')](function(_0x54e827){if(_0x54e827)return _0x54e827;_0x122d77[_0x7c15('0x4f')]=_0x7c15('0x50')+_0x722704+_0x7c15('0x53')+_0x59d66b+'))';return getZohoUser(_0x122d77,'Leads')[_0x7c15('0x2a')](function(_0x2c695f){if(_0x2c695f)return _0x2c695f;if(_0x9471d1[_0x7c15('0x44')]!=_0x7c15('0x54')){return createEndUser(_0x369be1,_0x722704,_0x19d0b2,_0x59d66b,_0x3afeee,_0x9471d1);}else{return{};}});});break;case _0x7c15('0x55'):_0x122d77[_0x7c15('0x4f')]=_0x7c15('0x50')+_0x722704+_0x7c15('0x51')+_0x59d66b+'))';return getZohoUser(_0x122d77,_0x7c15('0x52'))[_0x7c15('0x2a')](function(_0x189d05){if(_0x189d05)return _0x189d05;if(_0x9471d1[_0x7c15('0x44')]!=_0x7c15('0x54')){return createEndUser(_0x369be1,_0x722704,_0x19d0b2,_0x59d66b,_0x3afeee,_0x9471d1);}else{return{};}});break;case _0x7c15('0x56'):_0x122d77[_0x7c15('0x4f')]='https://www.zohoapis.'+_0x722704+'/crm/v2/Leads/search?criteria=((Phone:equals:'+_0x59d66b+'))';return getZohoUser(_0x122d77,_0x7c15('0x57'))[_0x7c15('0x2a')](function(_0xa5d4ab){if(_0xa5d4ab)return _0xa5d4ab;if(_0x9471d1['moduleCreate']!=_0x7c15('0x54')){return createEndUser(_0x369be1,_0x722704,_0x19d0b2,_0x59d66b,_0x3afeee,_0x9471d1);}else{return{};}});break;}}function getCall(_0x4aee1a,_0x44364f,_0x487ff3,_0x219e73,_0x39929b,_0x5a6095,_0x2dd872,_0x340d92){logger['info']('Creating\x20new\x20call...');var _0x7dc10={};_0x7dc10['Owner']={'name':!_['isNil'](_0x219e73['role'][_0x7c15('0x19')])&&!_[_0x7c15('0x1d')](_0x219e73[_0x7c15('0x3c')]['name'])&&_0x219e73[_0x7c15('0x3c')][_0x7c15('0x19')]===_0x7c15('0x58')?_0x219e73[_0x7c15('0x45')]['name']:!_[_0x7c15('0x1d')](_0x219e73[_0x7c15('0x46')])?_0x219e73[_0x7c15('0x46')]+'\x20'+_0x219e73[_0x7c15('0x47')]:_0x219e73['last_name'],'id':_0x219e73['id']};_0x7dc10['Subject']=intUtil['getString'](_0x5a6095[_0x7c15('0x59')],_0x2dd872,'\x20');_0x7dc10[_0x7c15('0x5a')]=intUtil[_0x7c15('0x5b')](_0x5a6095[_0x7c15('0x5c')],_0x2dd872,'\x0a');if(_0x39929b['enduserType']==='Contacts'){_0x7dc10['Who_Id']={'name':!_[_0x7c15('0x1d')](_0x39929b['Full_Name'])?_0x39929b[_0x7c15('0x5d')]:!_[_0x7c15('0x1d')](_0x39929b['First_Name'])?_0x39929b[_0x7c15('0x5e')]+'\x20'+_0x39929b[_0x7c15('0x5f')]:_0x39929b[_0x7c15('0x5f')],'id':_0x39929b['id']};}if(_0x39929b[_0x7c15('0x42')]===_0x7c15('0x57')){_0x7dc10[_0x7c15('0x60')]={'name':!_['isNil'](_0x39929b[_0x7c15('0x5d')])?_0x39929b[_0x7c15('0x5d')]:!_[_0x7c15('0x1d')](_0x39929b[_0x7c15('0x5e')])?_0x39929b[_0x7c15('0x5e')]+'\x20'+_0x39929b[_0x7c15('0x5f')]:_0x39929b[_0x7c15('0x5f')],'id':_0x39929b['id']};_0x7dc10[_0x7c15('0x61')]=_[_0x7c15('0x43')](_0x39929b['enduserType']);}if(_0x2dd872[_0x7c15('0x62')]){_0x7dc10[_0x7c15('0x63')]=moment[_0x7c15('0x64')](parseInt(_0x2dd872[_0x7c15('0x62')])*0x3e8)[_0x7c15('0x34')]('mm:ss');}else if(_0x2dd872[_0x7c15('0x65')]&&_0x2dd872[_0x7c15('0x66')]){_0x7dc10[_0x7c15('0x63')]=moment['utc'](moment(_0x2dd872[_0x7c15('0x66')],_0x7c15('0x67'))[_0x7c15('0x68')](moment(_0x2dd872[_0x7c15('0x69')],_0x7c15('0x67'))))[_0x7c15('0x34')](_0x7c15('0x6a'));}switch(_0x2dd872[_0x7c15('0x6b')]){case _0x7c15('0x6c'):_0x7dc10[_0x7c15('0x6d')]=_0x7c15('0x6e');break;case _0x7c15('0x6f'):case _0x7c15('0x70'):_0x7dc10[_0x7c15('0x6d')]=_0x7c15('0x71');break;case _0x7c15('0x72'):_0x7dc10[_0x7c15('0x6d')]=_0x7c15('0x73');break;case'abandoned':_0x7dc10[_0x7c15('0x6d')]=_0x7c15('0x74');break;case _0x7c15('0x75'):_0x7dc10[_0x7c15('0x6d')]=_0x7c15('0x76');default:}_0x7dc10['Call_Start_Time']=(_0x340d92===_0x7c15('0x77')?moment(_0x2dd872[_0x7c15('0x69')])[_0x7c15('0x34')](_0x7c15('0x67')):moment(_0x2dd872[_0x7c15('0x78')])['format'](_0x7c15('0x67')))||moment()[_0x7c15('0x34')](_0x7c15('0x67'));_0x7dc10[_0x7c15('0x79')]=_0x340d92||'Inbound';_0x7dc10=_[_0x7c15('0x7a')](_0x7dc10,getCustomFields(_0x5a6095[_0x7c15('0x7b')],_0x2dd872));return request({'method':_0x7c15('0x25'),'uri':_0x7c15('0x50')+_0x44364f+_0x7c15('0x7c'),'headers':{'Authorization':_0x7c15('0x37')+_0x4aee1a},'body':{'data':[_0x7dc10]},'json':!![]})[_0x7c15('0x2a')](function(_0x2faba4){if(_0x2faba4&&_0x2faba4[_0x7c15('0x41')][0x0][_0x7c15('0x48')]===_0x7c15('0x49')){logger[_0x7c15('0x31')](_0x7c15('0x7d'));return{'id':_0x2faba4[_0x7c15('0x41')][0x0][_0x7c15('0x4a')]['id']};}})[_0x7c15('0x2e')](function(_0x1f14cf){logger[_0x7c15('0x31')](_0x7c15('0x7e'),_0x1f14cf[_0x7c15('0x30')]);console['log']('err',_0x1f14cf);});}exports['queue']=function(_0xe41fef,_0x3a7b3e,_0x4f9d32,_0x1faa43,_0x4e8abe,_0x1a454e){var _0x564a5f,_0x2aaa26,_0x2693fb;_0x1a454e[_0x7c15('0x7f')]=intUtil[_0x7c15('0x80')](_0x1a454e[_0x7c15('0x7f')]);_0x1a454e[_0x7c15('0x81')]=intUtil[_0x7c15('0x80')](_0x1a454e[_0x7c15('0x81')]);if(_0x4e8abe&&_0x4e8abe[_0x7c15('0x82')]){logger[_0x7c15('0x31')](_0x7c15('0x83'),_0x7c15('0x84'));_0x3a7b3e['recordingURL']=_0x1a454e[_0x7c15('0x81')]+_0x7c15('0x85')+_0x3a7b3e['uniqueid']+_0x7c15('0x86')+md5(_0x3a7b3e[_0x7c15('0x87')]);}else{_0x3a7b3e[_0x7c15('0x88')]='';}var _0x4e4910=_0x1a454e['host']===_0x7c15('0x89')?'eu':_0x7c15('0x8a');return getAccessToken(_0x1a454e)[_0x7c15('0x2a')](function(_0x44ed31){_0x2693fb=_0x44ed31;return getUser(_0x2693fb,_0x4e4910,_0x1a454e,_0x1faa43[_0x7c15('0x8b')]);})[_0x7c15('0x2a')](function(_0x4477eb){_0x564a5f=_0x4477eb;logger[_0x7c15('0x31')](_0x7c15('0x8c'),_0x564a5f['id']);return getEndUser(_0x2693fb,_0x4e4910,_0x1a454e,_0x3a7b3e['calleridname'],_0x3a7b3e['calleridnum'],_0x564a5f,_0x4f9d32);})['then'](function(_0x7c8704){_0x2aaa26=_0x7c8704;return getCall(_0x2693fb,_0x4e4910,_0x1a454e,_0x564a5f,_0x2aaa26,_0x4f9d32,_0x3a7b3e,'Inbound');})['then'](function(_0x4543ab){if(_0x4543ab){logger['info'](_0x7c15('0x8d'),_0x4543ab['id']);logger[_0x7c15('0x31')]('[QUEUE]',_0x7c15('0x8e'));emit(util[_0x7c15('0x34')](_0x7c15('0x8f'),_0x1faa43['name']),_0x7c15('0x90'),{'uri':_0x7c15('0x91')+_0x1a454e[_0x7c15('0x7f')]+_0x7c15('0x92')+_0x4543ab['id']});}})[_0x7c15('0x2e')](function(_0x147fc9){logger[_0x7c15('0x2f')](_0x7c15('0x83'),JSON[_0x7c15('0xd')](_0x147fc9));});};exports[_0x7c15('0x77')]=function(_0x420cb9,_0x5437b5,_0x1773f7,_0x29c367,_0x295afb,_0x589e95,_0x5d2234){var _0x51d758,_0xe65701,_0x193c2e;_0x589e95[_0x7c15('0x7f')]=intUtil['stripTrailingSlash'](_0x589e95[_0x7c15('0x7f')]);_0x589e95['serverUrl']=intUtil[_0x7c15('0x80')](_0x589e95[_0x7c15('0x81')]);if(_0x5d2234&&_0x5d2234[_0x7c15('0x93')]&&_0x5d2234[_0x7c15('0x93')]!==_0x7c15('0x94')){logger['info']('[OUTBOUND]','Recording\x20is\x20enabled!');_0x5437b5[_0x7c15('0x88')]=_0x589e95[_0x7c15('0x81')]+'/api/voice/recordings/'+_0x5437b5['uniqueid']+'/downloads?type=uniqueid&token='+md5(_0x5437b5['uniqueid']);}var _0x2f8bd7=_0x589e95['host']===_0x7c15('0x89')?'eu':'com';return getAccessToken(_0x589e95)[_0x7c15('0x2a')](function(_0x1dbaef){_0x193c2e=_0x1dbaef;return getUser(_0x193c2e,_0x2f8bd7,_0x589e95,_0x29c367[_0x7c15('0x8b')]);})[_0x7c15('0x2a')](function(_0x36832f){_0x51d758=_0x36832f;logger[_0x7c15('0x31')](_0x7c15('0x8c'),_0x51d758['id']);return getEndUser(_0x193c2e,_0x2f8bd7,_0x589e95,_0x5437b5[_0x7c15('0x95')],_0x5437b5['destcalleridnum'],_0x51d758,_0x1773f7);})[_0x7c15('0x2a')](function(_0x2f82c5){_0xe65701=_0x2f82c5;return getCall(_0x193c2e,_0x2f8bd7,_0x589e95,_0x51d758,_0xe65701,_0x1773f7,_0x5437b5,_0x7c15('0x96'));})[_0x7c15('0x2a')](function(_0x2e7dd7){if(_0x2e7dd7){logger[_0x7c15('0x31')]('The\x20Call\x20ID\x20is:',_0x2e7dd7['id']);logger['info'](_0x7c15('0x97'),_0x7c15('0x8e'));emit(util['format']('user:%s',_0x29c367['name']),_0x7c15('0x90'),{'uri':_0x7c15('0x91')+_0x589e95['host']+'/crm/EntityInfo.do?module=Calls&id='+_0x2e7dd7['id']});}})[_0x7c15('0x2e')](function(_0x4c1f01){logger[_0x7c15('0x2f')](_0x7c15('0x97'),JSON[_0x7c15('0xd')](_0x4c1f01));});};exports[_0x7c15('0x98')]=function(_0x1ad2c0,_0x1a169f,_0x52ea3d,_0x201268,_0x2330c0,_0x26a476){var _0x262834,_0x18e519,_0x48091d;_0x26a476['host']=intUtil['stripTrailingSlash'](_0x26a476[_0x7c15('0x7f')]);_0x26a476[_0x7c15('0x81')]=intUtil['stripTrailingSlash'](_0x26a476[_0x7c15('0x81')]);if(_0x2330c0&&_0x2330c0['monitor_format']){logger[_0x7c15('0x31')]('['+_0x1a169f[_0x7c15('0x6b')][_0x7c15('0x99')]()+']','Recording\x20is\x20enabled!');_0x1a169f[_0x7c15('0x88')]=_0x26a476[_0x7c15('0x81')]+_0x7c15('0x85')+_0x1a169f[_0x7c15('0x87')]+'/downloads?type=uniqueid&token='+md5(_0x1a169f['uniqueid']);}else{_0x1a169f[_0x7c15('0x88')]='';}var _0x54e3c5=_0x26a476[_0x7c15('0x7f')]===_0x7c15('0x89')?'eu':_0x7c15('0x8a');return getAccessToken(_0x26a476)[_0x7c15('0x2a')](function(_0x3f3c57){_0x48091d=_0x3f3c57;return getUser(_0x48091d,_0x54e3c5,_0x26a476);})[_0x7c15('0x2a')](function(_0xa91ae8){_0x262834=_0xa91ae8;logger['info']('The\x20User\x20ID\x20is:',_0x262834['id']);return getEndUser(_0x48091d,_0x54e3c5,_0x26a476,_0x1a169f[_0x7c15('0x9a')],_0x1a169f['calleridnum'],_0x262834,_0x52ea3d);})[_0x7c15('0x2a')](function(_0x6ec626){_0x18e519=_0x6ec626;return getCall(_0x48091d,_0x54e3c5,_0x26a476,_0x262834,_0x18e519,_0x52ea3d,_0x1a169f,_0x7c15('0x9b'));})[_0x7c15('0x2a')](function(_0x400b51){if(_0x400b51){logger[_0x7c15('0x31')]('The\x20Call\x20ID\x20is:',_0x400b51['id']);}})[_0x7c15('0x2e')](function(_0x25e996){logger[_0x7c15('0x2f')]('['+_0x1a169f[_0x7c15('0x6b')]['toUpperCase']()+']',JSON[_0x7c15('0xd')](_0x25e996));});};