87d79f3bfdc9a63de17d9f883c917627912f7482
[motion2.git] / server / services / ami / trigger / integration / sugarcrm.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 _0xe2b9=['value','Agent\x20found!','resolve','name_value_list','Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!','user_id','Agent\x20not\x20available,\x20using\x20the\x20admin\x20account!','Searching\x20enduser\x20with\x20phone','Contacts','contacts.phone_home\x20=\x20\x22%s\x22','phone_home','find','Enduser\x20not\x20found,\x20creating\x20a\x20new\x20enduser!','first_name','<unknown>','Caller\x20-\x20%s','Enduser\x20created.','merge','map','type','string','nameField','toLowerCase','customField','custom_fields','customVariable','Variable','login','username','password','PLAIN','xCALLY\x20Motion\x20integration','sessionID','Account\x20%d\x20is\x20not\x20valid','set_relationship','Calls','queue','remoteUri','stripTrailingSlash','serverUrl','%s/service/v4_1/rest.php','[QUEUE]','recordingURL','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','uniqueid','The\x20User\x20ID\x20is:','calleridname','Inbound','Ticket\x20created!','contacts','version','charAt','%s/index.php?action=ajaxui#ajaxUILoc=index.php%3Fmodule%3DCalls%26action%3DEditView%26record%3D%s','%s/#bwc/index.php?module=Calls&action=EditView&record=%s','Displaying\x20ticket\x20to\x20agent\x20in\x20a\x20new\x20tab...','trigger:browser:url','catch','outbound','uri','recordingFormat','none','[OUTBOUND]','Recording\x20is\x20enabled!','destcalleridnum','The\x20Enduser\x20ID\x20is:','Fields','users','monitor_format','lastevent','toUpperCase','calleridnum','The\x20Ticket\x20ID\x20is:','error','lodash','request-promise','md5','util','./util','../../../../config/environment','sugarcrm','redis','localhost','POST','emit','info','Creating\x20new\x20ticket...','name','getString','Subjects','assigned_user_id','created_by','description','Descriptions','date_start','toISOString','slice','replace','duration_hours','duration_minutes','parent_id','direction','length','forEach','variableName','push','idField','set_entry','JSON','stringify','format','Basic\x20%s','apiKey','toString','get_server_info','isNil','Getting\x20agent\x20with\x20name','get_entry_list','user_name','then','entry_list'];(function(_0x4eda22,_0x3d2db4){var _0x4a5706=function(_0x4345e3){while(--_0x4345e3){_0x4eda22['push'](_0x4eda22['shift']());}};_0x4a5706(++_0x3d2db4);}(_0xe2b9,0x1b1));var _0x9e2b=function(_0x12aaee,_0x5bf50c){_0x12aaee=_0x12aaee-0x0;var _0x37c350=_0xe2b9[_0x12aaee];return _0x37c350;};'use strict';var _=require(_0x9e2b('0x0'));var rp=require(_0x9e2b('0x1'));var BPromise=require('bluebird');var md5=require(_0x9e2b('0x2'));var util=require(_0x9e2b('0x3'));var Redis=require('ioredis');var intUtil=require(_0x9e2b('0x4'));var config=require(_0x9e2b('0x5'));var logger=require('../../../../config/logger')(_0x9e2b('0x6'));config['redis']=_['defaults'](config[_0x9e2b('0x7')],{'host':_0x9e2b('0x8'),'port':0x18eb});var io=require('socket.io-emitter')(new Redis(config[_0x9e2b('0x7')]));var def={'method':_0x9e2b('0x9'),'json':!![]};function emit(_0x569958,_0x35c036,_0x422b67){io['to'](_0x569958)[_0x9e2b('0xa')](_0x35c036,_0x422b67);}function getTicket(_0x27788e,_0x44f0d7,_0xe783fa,_0xf4f1b6,_0x4f4591,_0x48ec69,_0x48c61d,_0x13ec85){logger[_0x9e2b('0xb')](_0x9e2b('0xc'));var _0x20c5e8=new Date();var _0xb0c1=[{'name':_0x9e2b('0xd'),'value':intUtil[_0x9e2b('0xe')](_0xf4f1b6[_0x9e2b('0xf')],_0x4f4591,'\x20')},{'name':_0x9e2b('0x10'),'value':_0x44f0d7['id']},{'name':_0x9e2b('0x11'),'value':_0x44f0d7['id']},{'name':_0x9e2b('0x12'),'value':intUtil['getString'](_0xf4f1b6[_0x9e2b('0x13')],_0x4f4591,'\x0a')},{'name':_0x9e2b('0x14'),'value':_0x20c5e8[_0x9e2b('0x15')]()[_0x9e2b('0x16')](0x0,0x13)[_0x9e2b('0x17')]('T','\x20')},{'name':_0x9e2b('0x18'),'value':'0'},{'name':_0x9e2b('0x19'),'value':'15'},{'name':_0x9e2b('0x1a'),'value':_0xe783fa['id']},{'name':'parent_type','value':'Contacts'},{'name':'parent_name','value':_0xe783fa[_0x9e2b('0xd')]},{'name':_0x9e2b('0x1b'),'value':_0x13ec85}];if(_0x48ec69[_0x9e2b('0x1c')]){_[_0x9e2b('0x1d')](_0x48ec69,function(_0x33963b){if(_0x4f4591[_0x33963b[_0x9e2b('0x1e')]]){_0xb0c1[_0x9e2b('0x1f')]({'name':_0x33963b[_0x9e2b('0x20')],'value':_0x4f4591[_0x33963b[_0x9e2b('0x1e')]]});}});}return request({'form':{'method':_0x9e2b('0x21'),'input_type':_0x9e2b('0x22'),'response_type':_0x9e2b('0x22'),'rest_data':JSON[_0x9e2b('0x23')]({'session':_0x48c61d['id'],'module_name':'Calls','name_value_list':_0xb0c1})}});}function getAuth(_0x96cfd1){return util[_0x9e2b('0x24')](_0x9e2b('0x25'),new Buffer(_0x96cfd1[_0x9e2b('0x26')]+':X')[_0x9e2b('0x27')]('base64'));}function getServerInfo(_0x2eafa2){return request({'form':{'method':_0x9e2b('0x28'),'input_type':'JSON','response_type':'JSON','rest_data':JSON[_0x9e2b('0x23')]({'session':_0x2eafa2['id']})}});}function getUser(_0x56fd74,_0x371151,_0x1b9277){if(!_[_0x9e2b('0x29')](_0x371151)){logger[_0x9e2b('0xb')](_0x9e2b('0x2a'),_0x371151);return request({'form':{'method':_0x9e2b('0x2b'),'input_type':'JSON','response_type':_0x9e2b('0x22'),'rest_data':JSON[_0x9e2b('0x23')]({'session':_0x1b9277['id'],'module_name':'Employees','query':util[_0x9e2b('0x24')]('INSTR\x20(\x20users.user_name,\x20\x22%s\x22)\x20>\x200',_0x371151),'order_by':'','offset':'0','select_fields':['id',_0x9e2b('0xd'),_0x9e2b('0x2c')],'link_name_to_fields_array':[],'max_results':-0x1,'deleted':'0'})}})[_0x9e2b('0x2d')](function(_0x10ad13){if(_0x10ad13[_0x9e2b('0x2e')][_0x9e2b('0x1c')]){var _0x47be5a=_['find'](_0x10ad13[_0x9e2b('0x2e')],function(_0x2d1432){return _0x2d1432['name_value_list'][_0x9e2b('0x2c')][_0x9e2b('0x2f')]===_0x371151;});if(_0x47be5a){logger[_0x9e2b('0xb')](_0x9e2b('0x30'));return BPromise[_0x9e2b('0x31')]({'id':_0x47be5a['name_value_list']['id'][_0x9e2b('0x2f')],'name':_0x47be5a[_0x9e2b('0x32')][_0x9e2b('0xd')]['value']});}}logger[_0x9e2b('0xb')](_0x9e2b('0x33'));return BPromise['resolve']({'id':_0x1b9277[_0x9e2b('0x32')][_0x9e2b('0x34')][_0x9e2b('0x2f')],'name':_0x1b9277[_0x9e2b('0x32')][_0x9e2b('0x2c')][_0x9e2b('0x2f')]});});}else{logger['info'](_0x9e2b('0x35'));return BPromise[_0x9e2b('0x31')]({'id':_0x1b9277[_0x9e2b('0x32')][_0x9e2b('0x34')][_0x9e2b('0x2f')],'name':_0x1b9277[_0x9e2b('0x32')]['user_name'][_0x9e2b('0x2f')]});}}function getEndUser(_0x2d67e0,_0x44e34e,_0x2c186a,_0x15eb5c){logger[_0x9e2b('0xb')](_0x9e2b('0x36'),_0x2c186a);return request({'form':{'method':'get_entry_list','input_type':_0x9e2b('0x22'),'response_type':_0x9e2b('0x22'),'rest_data':JSON[_0x9e2b('0x23')]({'session':_0x15eb5c['id'],'module_name':_0x9e2b('0x37'),'query':util['format'](_0x9e2b('0x38'),_0x2c186a),'order_by':'','offset':'0','select_fields':['id',_0x9e2b('0xd'),_0x9e2b('0x39')],'link_name_to_fields_array':[],'max_results':-0x1,'deleted':'0'})}})[_0x9e2b('0x2d')](function(_0xa0150d){if(_0xa0150d[_0x9e2b('0x2e')][_0x9e2b('0x1c')]){var _0x56b1dc=_[_0x9e2b('0x3a')](_0xa0150d[_0x9e2b('0x2e')],function(_0x5ac475){return _0x5ac475[_0x9e2b('0x32')][_0x9e2b('0x39')][_0x9e2b('0x2f')]===_0x2c186a;});if(_0x56b1dc){logger[_0x9e2b('0xb')]('Enduser\x20found!');return BPromise['resolve']({'id':_0x56b1dc[_0x9e2b('0x32')]['id'][_0x9e2b('0x2f')],'name':_0x56b1dc[_0x9e2b('0x32')][_0x9e2b('0xd')][_0x9e2b('0x2f')],'phone':_0x56b1dc['name_value_list']['phone_home'][_0x9e2b('0x2f')]});}}else{logger[_0x9e2b('0xb')](_0x9e2b('0x3b'));return request({'form':{'method':_0x9e2b('0x21'),'input_type':_0x9e2b('0x22'),'response_type':_0x9e2b('0x22'),'rest_data':JSON[_0x9e2b('0x23')]({'session':_0x15eb5c['id'],'module_name':'Contacts','name_value_list':[{'name':_0x9e2b('0x3c'),'value':_0x44e34e!==_0x9e2b('0x3d')?_0x44e34e:util[_0x9e2b('0x24')](_0x9e2b('0x3e'),_0x2c186a)},{'name':_0x9e2b('0x39'),'value':_0x2c186a}]})}})[_0x9e2b('0x2d')](function(_0x55ab34){logger['info'](_0x9e2b('0x3f'));return BPromise[_0x9e2b('0x31')]({'id':_0x55ab34['id'],'name':_0x55ab34['entry_list']['first_name']['value'],'phone':_0x55ab34[_0x9e2b('0x2e')][_0x9e2b('0x39')][_0x9e2b('0x2f')]});});}});}function request(_0x430870){logger['debug']('[HTTP]',JSON['stringify'](_0x430870));return rp(_[_0x9e2b('0x40')](def,_0x430870));}function getTags(_0x5a0ed1,_0x2aa4f6){var _0xab60db=[];if(_0x5a0ed1&&_0x5a0ed1[_0x9e2b('0x1c')]>0x0){_0xab60db=_[_0x9e2b('0x41')](_0x5a0ed1,_0x2aa4f6);}return _0xab60db;}function getCustomFields(_0x13ccd3,_0x1f839e){var _0x2dfe90=[];var _0x1fddc9={'custom_fields':[]};if(_0x13ccd3['length']>0x0){_[_0x9e2b('0x1d')](_0x13ccd3,function(_0x535ef1){if(_0x535ef1[_0x9e2b('0x42')]===_0x9e2b('0x43')&&_0x535ef1[_0x9e2b('0x44')]&&!_0x535ef1['customField']){_0x1fddc9[_0x535ef1[_0x9e2b('0x44')][_0x9e2b('0x45')]()]=_0x535ef1['content']['toString']();}else if(_0x535ef1[_0x9e2b('0x42')]===_0x9e2b('0x43')&&_0x535ef1[_0x9e2b('0x20')]&&_0x535ef1[_0x9e2b('0x46')]){_0x1fddc9[_0x9e2b('0x47')][_0x9e2b('0x1f')]({'id':_0x535ef1['idField'],'value':_0x535ef1['content'][_0x9e2b('0x27')]()});}else if(_0x535ef1[_0x9e2b('0x42')]==='variable'&&_0x535ef1[_0x9e2b('0x1e')]&&_0x535ef1[_0x9e2b('0x20')]&&_0x535ef1[_0x9e2b('0x46')]){_0x1f839e[_0x535ef1[_0x9e2b('0x1e')]]&&_0x1fddc9[_0x9e2b('0x47')][_0x9e2b('0x1f')]({'id':_0x535ef1[_0x9e2b('0x20')],'value':_0x1f839e[_0x535ef1['variableName']]['toString']()});}else if(_0x535ef1[_0x9e2b('0x42')]===_0x9e2b('0x48')&&_0x535ef1[_0x9e2b('0x49')]&&_0x535ef1[_0x9e2b('0x49')]['name']&&_0x535ef1[_0x9e2b('0x20')]&&_0x535ef1[_0x9e2b('0x46')]){_0x1f839e[_0x535ef1[_0x9e2b('0x49')][_0x9e2b('0xd')][_0x9e2b('0x45')]()]&&_0x1fddc9[_0x9e2b('0x47')][_0x9e2b('0x1f')]({'id':_0x535ef1['idField'],'value':_0x1f839e[_0x535ef1[_0x9e2b('0x49')][_0x9e2b('0xd')][_0x9e2b('0x45')]()][_0x9e2b('0x27')]()});}});}return _0x1fddc9;}function getConnection(_0x30fcd4){return request({'method':_0x9e2b('0x9'),'form':{'method':_0x9e2b('0x4a'),'input_type':_0x9e2b('0x22'),'response_type':_0x9e2b('0x22'),'rest_data':JSON[_0x9e2b('0x23')]({'user_auth':{'user_name':_0x30fcd4[_0x9e2b('0x4b')],'password':_0x30fcd4[_0x9e2b('0x4c')],'encryption':_0x9e2b('0x4d')},'application':_0x9e2b('0x4e')})}})['then'](function(_0x2ca908){var _0x1f1288=_0x2ca908;if(_0x1f1288['id']){def[_0x9e2b('0x4f')]=_0x1f1288['id'];return BPromise[_0x9e2b('0x31')](_0x1f1288);}else{throw new Error(util[_0x9e2b('0x24')](_0x9e2b('0x50'),_0x30fcd4['id']));}});}function setRelationship(_0x1d682d,_0x44749b,_0x4c1357,_0x57ee27){return request({'form':{'method':_0x9e2b('0x51'),'input_type':_0x9e2b('0x22'),'response_type':_0x9e2b('0x22'),'rest_data':JSON[_0x9e2b('0x23')]({'session':_0x1d682d['id'],'module_name':_0x9e2b('0x52'),'module_id':_0x4c1357['id'],'link_field_name':_0x57ee27,'related_ids':[_0x44749b['id']],'name_value_list':[],'delete':0x0})}});}exports[_0x9e2b('0x53')]=function(_0x275e9f,_0x2234dd,_0x52f95f,_0x107652,_0x98914a,_0x4efe21){var _0x14d37d,_0xbfc90d,_0x454aec,_0x4555cf;_0x4efe21[_0x9e2b('0x54')]=intUtil[_0x9e2b('0x55')](_0x4efe21[_0x9e2b('0x54')]);_0x4efe21[_0x9e2b('0x56')]=intUtil[_0x9e2b('0x55')](_0x4efe21[_0x9e2b('0x56')]);def['uri']=util[_0x9e2b('0x24')](_0x9e2b('0x57'),_0x4efe21[_0x9e2b('0x54')]);if(_0x98914a&&_0x98914a['monitor_format']){logger[_0x9e2b('0xb')](_0x9e2b('0x58'),'Recording\x20is\x20enabled!');_0x2234dd[_0x9e2b('0x59')]=util[_0x9e2b('0x24')](_0x9e2b('0x5a'),_0x4efe21[_0x9e2b('0x56')],_0x2234dd['uniqueid'],md5(_0x2234dd[_0x9e2b('0x5b')]));}else{_0x2234dd[_0x9e2b('0x59')]='';}return getConnection(_0x4efe21)[_0x9e2b('0x2d')](function(_0x2e048c){_0x4555cf=_0x2e048c;return getUser(_0x4efe21,_0x107652[_0x9e2b('0xd')],_0x4555cf);})[_0x9e2b('0x2d')](function(_0x104b96){_0x14d37d=_0x104b96;logger[_0x9e2b('0xb')](_0x9e2b('0x5c'),_0x14d37d['id']);return getEndUser(_0x4efe21,_0x2234dd[_0x9e2b('0x5d')],_0x2234dd['calleridnum'],_0x4555cf);})[_0x9e2b('0x2d')](function(_0x16df55){_0xbfc90d=_0x16df55;logger[_0x9e2b('0xb')]('The\x20Enduser\x20ID\x20is:',_0xbfc90d['id']);return getTicket(_0x4efe21,_0x14d37d,_0xbfc90d,_0x52f95f,_0x2234dd,_0x52f95f['Fields'],_0x4555cf,_0x9e2b('0x5e'));})[_0x9e2b('0x2d')](function(_0x3ea738){_0x454aec=_0x3ea738;logger[_0x9e2b('0xb')](_0x9e2b('0x5f'));logger[_0x9e2b('0xb')]('The\x20Ticket\x20ID\x20is:',_0x454aec['id']);return setRelationship(_0x4555cf,_0x14d37d,_0x454aec,'users');})['then'](function(){return setRelationship(_0x4555cf,_0xbfc90d,_0x454aec,_0x9e2b('0x60'));})[_0x9e2b('0x2d')](function(){return getServerInfo(_0x4555cf);})['then'](function(_0x675158){var _0x3bd04f=parseInt(_0x675158[_0x9e2b('0x61')][_0x9e2b('0x62')](0x0));var _0x331470=util[_0x9e2b('0x24')](_0x9e2b('0x63'),_0x4efe21[_0x9e2b('0x54')],_0x454aec['id']);if(_0x3bd04f>0x6){_0x331470=util[_0x9e2b('0x24')](_0x9e2b('0x64'),_0x4efe21['remoteUri'],_0x454aec['id']);}logger[_0x9e2b('0xb')]('[QUEUE]',_0x9e2b('0x65'));emit(util['format']('user:%s',_0x107652['name']),_0x9e2b('0x66'),{'uri':_0x331470});})[_0x9e2b('0x67')](function(_0xc665bc){logger['error'](_0x9e2b('0x58'),JSON['stringify'](_0xc665bc));});};exports[_0x9e2b('0x68')]=function(_0x735280,_0x36d8ca,_0x2c1cbc,_0x42c909,_0x24f70e,_0x339451,_0x40bd0d){var _0x55a88e,_0x534e80,_0x23a801,_0x42c8ea;_0x339451['remoteUri']=intUtil[_0x9e2b('0x55')](_0x339451[_0x9e2b('0x54')]);_0x339451[_0x9e2b('0x56')]=intUtil[_0x9e2b('0x55')](_0x339451['serverUrl']);def[_0x9e2b('0x69')]=util['format'](_0x9e2b('0x57'),_0x339451[_0x9e2b('0x54')]);if(_0x40bd0d&&_0x40bd0d[_0x9e2b('0x6a')]&&_0x40bd0d[_0x9e2b('0x6a')]!==_0x9e2b('0x6b')){logger[_0x9e2b('0xb')](_0x9e2b('0x6c'),_0x9e2b('0x6d'));_0x36d8ca[_0x9e2b('0x59')]=util['format'](_0x9e2b('0x5a'),_0x339451[_0x9e2b('0x56')],_0x36d8ca[_0x9e2b('0x5b')],md5(_0x36d8ca[_0x9e2b('0x5b')]));}return getConnection(_0x339451)[_0x9e2b('0x2d')](function(_0x21921f){_0x42c8ea=_0x21921f;return getUser(_0x339451,_0x42c909[_0x9e2b('0xd')],_0x42c8ea);})['then'](function(_0x350df4){_0x55a88e=_0x350df4;logger[_0x9e2b('0xb')](_0x9e2b('0x5c'),_0x55a88e['id']);return getEndUser(_0x339451,_0x36d8ca['destcalleridname'],_0x36d8ca[_0x9e2b('0x6e')],_0x42c8ea);})[_0x9e2b('0x2d')](function(_0x27b968){_0x534e80=_0x27b968;logger[_0x9e2b('0xb')](_0x9e2b('0x6f'),_0x534e80['id']);return getTicket(_0x339451,_0x55a88e,_0x534e80,_0x2c1cbc,_0x36d8ca,_0x2c1cbc[_0x9e2b('0x70')],_0x42c8ea,'Outbound');})[_0x9e2b('0x2d')](function(_0x2783f2){_0x23a801=_0x2783f2;logger['info'](_0x9e2b('0x5f'));logger[_0x9e2b('0xb')]('The\x20Ticket\x20ID\x20is:',_0x23a801['id']);return setRelationship(_0x42c8ea,_0x55a88e,_0x23a801,_0x9e2b('0x71'));})[_0x9e2b('0x2d')](function(){return setRelationship(_0x42c8ea,_0x534e80,_0x23a801,_0x9e2b('0x60'));})[_0x9e2b('0x2d')](function(){return getServerInfo(_0x42c8ea);})['then'](function(_0xff04ad){var _0x20fa0e=parseInt(_0xff04ad[_0x9e2b('0x61')][_0x9e2b('0x62')](0x0));var _0x55ac19=util[_0x9e2b('0x24')](_0x9e2b('0x63'),_0x339451[_0x9e2b('0x54')],_0x23a801['id']);if(_0x20fa0e>0x6){_0x55ac19=util[_0x9e2b('0x24')](_0x9e2b('0x64'),_0x339451[_0x9e2b('0x54')],_0x23a801['id']);}logger[_0x9e2b('0xb')]('[OUTBOUND]',_0x9e2b('0x65'));emit(util['format']('user:%s',_0x42c909[_0x9e2b('0xd')]),'trigger:browser:url',{'uri':_0x55ac19});})[_0x9e2b('0x67')](function(_0x7937b7){logger['error'](_0x9e2b('0x6c'),JSON['stringify'](_0x7937b7));});};exports['unmanaged']=function(_0x4bc083,_0x3e8cc2,_0x5309f6,_0x19a5c3,_0x14cd22,_0x319cd8){var _0xc8c60c,_0x15dd98,_0x3d3ef5,_0x1131cf;_0x319cd8['remoteUri']=intUtil['stripTrailingSlash'](_0x319cd8[_0x9e2b('0x54')]);_0x319cd8[_0x9e2b('0x56')]=intUtil[_0x9e2b('0x55')](_0x319cd8['serverUrl']);def[_0x9e2b('0x69')]=util[_0x9e2b('0x24')](_0x9e2b('0x57'),_0x319cd8[_0x9e2b('0x54')]);if(_0x14cd22&&_0x14cd22[_0x9e2b('0x72')]){logger['info']('['+_0x3e8cc2[_0x9e2b('0x73')][_0x9e2b('0x74')]()+']','Recording\x20is\x20enabled!');_0x3e8cc2[_0x9e2b('0x59')]=util[_0x9e2b('0x24')](_0x9e2b('0x5a'),_0x319cd8[_0x9e2b('0x56')],_0x3e8cc2[_0x9e2b('0x5b')],md5(_0x3e8cc2['uniqueid']));}else{_0x3e8cc2[_0x9e2b('0x59')]='';}return getConnection(_0x319cd8)[_0x9e2b('0x2d')](function(_0x5bbe2e){_0x1131cf=_0x5bbe2e;if(!_[_0x9e2b('0x29')](_0x19a5c3)){return getUser(_0x319cd8,_0x19a5c3[_0x9e2b('0xd')],_0x1131cf);}else{return getUser(_0x319cd8,null,_0x1131cf);}})[_0x9e2b('0x2d')](function(_0x7fca32){_0xc8c60c=_0x7fca32;logger[_0x9e2b('0xb')](_0x9e2b('0x5c'),_0xc8c60c['id']);return getEndUser(_0x319cd8,_0x3e8cc2[_0x9e2b('0x5d')],_0x3e8cc2[_0x9e2b('0x75')],_0x1131cf);})['then'](function(_0x1c5963){_0x15dd98=_0x1c5963;logger[_0x9e2b('0xb')](_0x9e2b('0x6f'),_0x15dd98['id']);return getTicket(_0x319cd8,_0xc8c60c,_0x15dd98,_0x5309f6,_0x3e8cc2,_0x5309f6[_0x9e2b('0x70')],_0x1131cf,_0x9e2b('0x5e'));})[_0x9e2b('0x2d')](function(_0x588b1b){_0x3d3ef5=_0x588b1b;logger['info'](_0x9e2b('0x5f'));logger[_0x9e2b('0xb')](_0x9e2b('0x76'),_0x3d3ef5['id']);return setRelationship(_0x1131cf,_0xc8c60c,_0x3d3ef5,'users');})[_0x9e2b('0x2d')](function(){return setRelationship(_0x1131cf,_0x15dd98,_0x3d3ef5,_0x9e2b('0x60'));})[_0x9e2b('0x2d')](function(){return getServerInfo(_0x1131cf);})[_0x9e2b('0x67')](function(_0x5a92aa){logger[_0x9e2b('0x77')]('['+_0x3e8cc2[_0x9e2b('0x73')][_0x9e2b('0x74')]()+']',JSON[_0x9e2b('0x23')](_0x5a92aa));});};