Built motion from commit d13fb11b.|2.6.34
[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 _0x7c2a=['lastevent','Inbound','toUpperCase','lodash','bluebird','md5','util','ioredis','./util','../../../../config/logger','sugarcrm','redis','localhost','socket.io-emitter','POST','info','name','getString','Descriptions','date_start','toISOString','slice','duration_hours','duration_minutes','parent_id','parent_type','parent_name','length','forEach','variableName','push','idField','set_entry','JSON','Calls','Basic\x20%s','apiKey','toString','base64','stringify','isNil','Getting\x20agent\x20with\x20name','get_entry_list','user_name','then','entry_list','value','Agent\x20found!','resolve','name_value_list','user_id','Agent\x20not\x20available,\x20using\x20the\x20admin\x20account!','Searching\x20enduser\x20with\x20phone','Contacts','format','phone_home','Enduser\x20not\x20found,\x20creating\x20a\x20new\x20enduser!','Enduser\x20created.','first_name','debug','map','type','string','nameField','toLowerCase','content','customField','variable','custom_fields','customVariable','Variable','login','username','PLAIN','xCALLY\x20Motion\x20integration','sessionID','Account\x20%d\x20is\x20not\x20valid','set_relationship','queue','remoteUri','stripTrailingSlash','serverUrl','uri','%s/service/v4_1/rest.php','monitor_format','[QUEUE]','Recording\x20is\x20enabled!','uniqueid','The\x20User\x20ID\x20is:','calleridname','calleridnum','The\x20Enduser\x20ID\x20is:','Fields','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...','user:%s','trigger:browser:url','catch','outbound','recordingFormat','none','[OUTBOUND]','recordingURL','destcalleridname','destcalleridnum','The\x20Ticket\x20ID\x20is:','users','unmanaged'];(function(_0xed6ed0,_0x28e1ad){var _0x20a428=function(_0x5b2603){while(--_0x5b2603){_0xed6ed0['push'](_0xed6ed0['shift']());}};_0x20a428(++_0x28e1ad);}(_0x7c2a,0x156));var _0xa7c2=function(_0x452d20,_0x35cb7f){_0x452d20=_0x452d20-0x0;var _0x2b4452=_0x7c2a[_0x452d20];return _0x2b4452;};'use strict';var _=require(_0xa7c2('0x0'));var rp=require('request-promise');var BPromise=require(_0xa7c2('0x1'));var md5=require(_0xa7c2('0x2'));var util=require(_0xa7c2('0x3'));var Redis=require(_0xa7c2('0x4'));var intUtil=require(_0xa7c2('0x5'));var config=require('../../../../config/environment');var logger=require(_0xa7c2('0x6'))(_0xa7c2('0x7'));config[_0xa7c2('0x8')]=_['defaults'](config[_0xa7c2('0x8')],{'host':_0xa7c2('0x9'),'port':0x18eb});var io=require(_0xa7c2('0xa'))(new Redis(config[_0xa7c2('0x8')]));var def={'method':_0xa7c2('0xb'),'json':!![]};function emit(_0x2005b7,_0x321d7d,_0x292956){io['to'](_0x2005b7)['emit'](_0x321d7d,_0x292956);}function getTicket(_0x521656,_0x3fed98,_0x49a41d,_0x1dca83,_0x3acc5d,_0x15d03c,_0x299482,_0x5e2c56){logger[_0xa7c2('0xc')]('Creating\x20new\x20ticket...');var _0x494fe7=new Date();var _0x9e613f=[{'name':_0xa7c2('0xd'),'value':intUtil[_0xa7c2('0xe')](_0x1dca83['Subjects'],_0x3acc5d,'\x20')},{'name':'assigned_user_id','value':_0x3fed98['id']},{'name':'created_by','value':_0x3fed98['id']},{'name':'description','value':intUtil[_0xa7c2('0xe')](_0x1dca83[_0xa7c2('0xf')],_0x3acc5d,'\x0a')},{'name':_0xa7c2('0x10'),'value':_0x494fe7[_0xa7c2('0x11')]()[_0xa7c2('0x12')](0x0,0x13)['replace']('T','\x20')},{'name':_0xa7c2('0x13'),'value':'0'},{'name':_0xa7c2('0x14'),'value':'15'},{'name':_0xa7c2('0x15'),'value':_0x49a41d['id']},{'name':_0xa7c2('0x16'),'value':'Contacts'},{'name':_0xa7c2('0x17'),'value':_0x49a41d[_0xa7c2('0xd')]},{'name':'direction','value':_0x5e2c56}];if(_0x15d03c[_0xa7c2('0x18')]){_[_0xa7c2('0x19')](_0x15d03c,function(_0x54a39d){if(_0x3acc5d[_0x54a39d[_0xa7c2('0x1a')]]){_0x9e613f[_0xa7c2('0x1b')]({'name':_0x54a39d[_0xa7c2('0x1c')],'value':_0x3acc5d[_0x54a39d[_0xa7c2('0x1a')]]});}});}return request({'form':{'method':_0xa7c2('0x1d'),'input_type':_0xa7c2('0x1e'),'response_type':'JSON','rest_data':JSON['stringify']({'session':_0x299482['id'],'module_name':_0xa7c2('0x1f'),'name_value_list':_0x9e613f})}});}function getAuth(_0x7ac05b){return util['format'](_0xa7c2('0x20'),new Buffer(_0x7ac05b[_0xa7c2('0x21')]+':X')[_0xa7c2('0x22')](_0xa7c2('0x23')));}function getServerInfo(_0x4c4aa6){return request({'form':{'method':'get_server_info','input_type':'JSON','response_type':_0xa7c2('0x1e'),'rest_data':JSON[_0xa7c2('0x24')]({'session':_0x4c4aa6['id']})}});}function getUser(_0x5db205,_0x5277bc,_0x1c10d1){if(!_[_0xa7c2('0x25')](_0x5277bc)){logger[_0xa7c2('0xc')](_0xa7c2('0x26'),_0x5277bc);return request({'form':{'method':_0xa7c2('0x27'),'input_type':'JSON','response_type':_0xa7c2('0x1e'),'rest_data':JSON[_0xa7c2('0x24')]({'session':_0x1c10d1['id'],'module_name':'Employees','query':util['format']('INSTR\x20(\x20users.user_name,\x20\x22%s\x22)\x20>\x200',_0x5277bc),'order_by':'','offset':'0','select_fields':['id',_0xa7c2('0xd'),_0xa7c2('0x28')],'link_name_to_fields_array':[],'max_results':-0x1,'deleted':'0'})}})[_0xa7c2('0x29')](function(_0x5be45d){if(_0x5be45d[_0xa7c2('0x2a')]['length']){var _0x53a41e=_['find'](_0x5be45d[_0xa7c2('0x2a')],function(_0x10db92){return _0x10db92['name_value_list'][_0xa7c2('0x28')][_0xa7c2('0x2b')]===_0x5277bc;});if(_0x53a41e){logger[_0xa7c2('0xc')](_0xa7c2('0x2c'));return BPromise[_0xa7c2('0x2d')]({'id':_0x53a41e[_0xa7c2('0x2e')]['id']['value'],'name':_0x53a41e[_0xa7c2('0x2e')][_0xa7c2('0xd')][_0xa7c2('0x2b')]});}}logger['info']('Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!');return BPromise[_0xa7c2('0x2d')]({'id':_0x1c10d1[_0xa7c2('0x2e')][_0xa7c2('0x2f')][_0xa7c2('0x2b')],'name':_0x1c10d1[_0xa7c2('0x2e')][_0xa7c2('0x28')][_0xa7c2('0x2b')]});});}else{logger[_0xa7c2('0xc')](_0xa7c2('0x30'));return BPromise['resolve']({'id':_0x1c10d1['name_value_list']['user_id']['value'],'name':_0x1c10d1[_0xa7c2('0x2e')]['user_name']['value']});}}function getEndUser(_0x372a98,_0x11c719,_0xbdfd43,_0x19543d){logger['info'](_0xa7c2('0x31'),_0xbdfd43);return request({'form':{'method':_0xa7c2('0x27'),'input_type':'JSON','response_type':'JSON','rest_data':JSON[_0xa7c2('0x24')]({'session':_0x19543d['id'],'module_name':_0xa7c2('0x32'),'query':util[_0xa7c2('0x33')]('contacts.phone_home\x20=\x20\x22%s\x22',_0xbdfd43),'order_by':'','offset':'0','select_fields':['id',_0xa7c2('0xd'),_0xa7c2('0x34')],'link_name_to_fields_array':[],'max_results':-0x1,'deleted':'0'})}})[_0xa7c2('0x29')](function(_0x36b221){if(_0x36b221[_0xa7c2('0x2a')]['length']){var _0x5765a7=_['find'](_0x36b221['entry_list'],function(_0x2c7e19){return _0x2c7e19[_0xa7c2('0x2e')]['phone_home'][_0xa7c2('0x2b')]===_0xbdfd43;});if(_0x5765a7){logger['info']('Enduser\x20found!');return BPromise['resolve']({'id':_0x5765a7[_0xa7c2('0x2e')]['id']['value'],'name':_0x5765a7['name_value_list'][_0xa7c2('0xd')][_0xa7c2('0x2b')],'phone':_0x5765a7[_0xa7c2('0x2e')][_0xa7c2('0x34')]['value']});}}else{logger[_0xa7c2('0xc')](_0xa7c2('0x35'));return request({'form':{'method':_0xa7c2('0x1d'),'input_type':_0xa7c2('0x1e'),'response_type':_0xa7c2('0x1e'),'rest_data':JSON['stringify']({'session':_0x19543d['id'],'module_name':_0xa7c2('0x32'),'name_value_list':[{'name':'first_name','value':_0x11c719!=='<unknown>'?_0x11c719:util[_0xa7c2('0x33')]('Caller\x20-\x20%s',_0xbdfd43)},{'name':_0xa7c2('0x34'),'value':_0xbdfd43}]})}})[_0xa7c2('0x29')](function(_0x4fb0c6){logger[_0xa7c2('0xc')](_0xa7c2('0x36'));return BPromise[_0xa7c2('0x2d')]({'id':_0x4fb0c6['id'],'name':_0x4fb0c6[_0xa7c2('0x2a')][_0xa7c2('0x37')][_0xa7c2('0x2b')],'phone':_0x4fb0c6[_0xa7c2('0x2a')][_0xa7c2('0x34')][_0xa7c2('0x2b')]});});}});}function request(_0x126590){logger[_0xa7c2('0x38')]('[HTTP]',JSON[_0xa7c2('0x24')](_0x126590));return rp(_['merge'](def,_0x126590));}function getTags(_0x132a48,_0xa05548){var _0x4cb82f=[];if(_0x132a48&&_0x132a48[_0xa7c2('0x18')]>0x0){_0x4cb82f=_[_0xa7c2('0x39')](_0x132a48,_0xa05548);}return _0x4cb82f;}function getCustomFields(_0x3192ed,_0x464927){var _0x243b1c=[];var _0x3acc30={'custom_fields':[]};if(_0x3192ed[_0xa7c2('0x18')]>0x0){_[_0xa7c2('0x19')](_0x3192ed,function(_0x506b11){if(_0x506b11[_0xa7c2('0x3a')]===_0xa7c2('0x3b')&&_0x506b11[_0xa7c2('0x3c')]&&!_0x506b11['customField']){_0x3acc30[_0x506b11[_0xa7c2('0x3c')][_0xa7c2('0x3d')]()]=_0x506b11[_0xa7c2('0x3e')]['toString']();}else if(_0x506b11[_0xa7c2('0x3a')]===_0xa7c2('0x3b')&&_0x506b11[_0xa7c2('0x1c')]&&_0x506b11[_0xa7c2('0x3f')]){_0x3acc30['custom_fields'][_0xa7c2('0x1b')]({'id':_0x506b11[_0xa7c2('0x1c')],'value':_0x506b11[_0xa7c2('0x3e')][_0xa7c2('0x22')]()});}else if(_0x506b11[_0xa7c2('0x3a')]===_0xa7c2('0x40')&&_0x506b11[_0xa7c2('0x1a')]&&_0x506b11[_0xa7c2('0x1c')]&&_0x506b11[_0xa7c2('0x3f')]){_0x464927[_0x506b11[_0xa7c2('0x1a')]]&&_0x3acc30[_0xa7c2('0x41')]['push']({'id':_0x506b11[_0xa7c2('0x1c')],'value':_0x464927[_0x506b11[_0xa7c2('0x1a')]][_0xa7c2('0x22')]()});}else if(_0x506b11[_0xa7c2('0x3a')]===_0xa7c2('0x42')&&_0x506b11[_0xa7c2('0x43')]&&_0x506b11[_0xa7c2('0x43')][_0xa7c2('0xd')]&&_0x506b11['idField']&&_0x506b11[_0xa7c2('0x3f')]){_0x464927[_0x506b11[_0xa7c2('0x43')][_0xa7c2('0xd')]['toLowerCase']()]&&_0x3acc30[_0xa7c2('0x41')][_0xa7c2('0x1b')]({'id':_0x506b11[_0xa7c2('0x1c')],'value':_0x464927[_0x506b11['Variable'][_0xa7c2('0xd')][_0xa7c2('0x3d')]()][_0xa7c2('0x22')]()});}});}return _0x3acc30;}function getConnection(_0x8cd7e5){return request({'method':_0xa7c2('0xb'),'form':{'method':_0xa7c2('0x44'),'input_type':'JSON','response_type':'JSON','rest_data':JSON[_0xa7c2('0x24')]({'user_auth':{'user_name':_0x8cd7e5[_0xa7c2('0x45')],'password':_0x8cd7e5['password'],'encryption':_0xa7c2('0x46')},'application':_0xa7c2('0x47')})}})[_0xa7c2('0x29')](function(_0x1108d7){var _0x55dfd2=_0x1108d7;if(_0x55dfd2['id']){def[_0xa7c2('0x48')]=_0x55dfd2['id'];return BPromise['resolve'](_0x55dfd2);}else{throw new Error(util[_0xa7c2('0x33')](_0xa7c2('0x49'),_0x8cd7e5['id']));}});}function setRelationship(_0x3fd235,_0x3a4a1f,_0x19b4e4,_0x45334d){return request({'form':{'method':_0xa7c2('0x4a'),'input_type':'JSON','response_type':'JSON','rest_data':JSON[_0xa7c2('0x24')]({'session':_0x3fd235['id'],'module_name':_0xa7c2('0x1f'),'module_id':_0x19b4e4['id'],'link_field_name':_0x45334d,'related_ids':[_0x3a4a1f['id']],'name_value_list':[],'delete':0x0})}});}exports[_0xa7c2('0x4b')]=function(_0x4a0c69,_0x28995a,_0xc555f1,_0x3ae0b6,_0x3e1c1e,_0x1fb93a){var _0xbd0fc8,_0x5603f2,_0x3678af,_0x24d4f6;_0x1fb93a[_0xa7c2('0x4c')]=intUtil[_0xa7c2('0x4d')](_0x1fb93a['remoteUri']);_0x1fb93a[_0xa7c2('0x4e')]=intUtil[_0xa7c2('0x4d')](_0x1fb93a[_0xa7c2('0x4e')]);def[_0xa7c2('0x4f')]=util[_0xa7c2('0x33')](_0xa7c2('0x50'),_0x1fb93a['remoteUri']);if(_0x3e1c1e&&_0x3e1c1e[_0xa7c2('0x51')]){logger[_0xa7c2('0xc')](_0xa7c2('0x52'),_0xa7c2('0x53'));_0x28995a['recordingURL']=util[_0xa7c2('0x33')]('%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s',_0x1fb93a['serverUrl'],_0x28995a['uniqueid'],md5(_0x28995a[_0xa7c2('0x54')]));}else{_0x28995a['recordingURL']='';}return getConnection(_0x1fb93a)[_0xa7c2('0x29')](function(_0x4301d6){_0x24d4f6=_0x4301d6;return getUser(_0x1fb93a,_0x3ae0b6[_0xa7c2('0xd')],_0x24d4f6);})[_0xa7c2('0x29')](function(_0x5cf8d5){_0xbd0fc8=_0x5cf8d5;logger[_0xa7c2('0xc')](_0xa7c2('0x55'),_0xbd0fc8['id']);return getEndUser(_0x1fb93a,_0x28995a[_0xa7c2('0x56')],_0x28995a[_0xa7c2('0x57')],_0x24d4f6);})[_0xa7c2('0x29')](function(_0x260515){_0x5603f2=_0x260515;logger[_0xa7c2('0xc')](_0xa7c2('0x58'),_0x5603f2['id']);return getTicket(_0x1fb93a,_0xbd0fc8,_0x5603f2,_0xc555f1,_0x28995a,_0xc555f1[_0xa7c2('0x59')],_0x24d4f6,'Inbound');})['then'](function(_0x4c507e){_0x3678af=_0x4c507e;logger[_0xa7c2('0xc')](_0xa7c2('0x5a'));logger['info']('The\x20Ticket\x20ID\x20is:',_0x3678af['id']);return setRelationship(_0x24d4f6,_0xbd0fc8,_0x3678af,'users');})[_0xa7c2('0x29')](function(){return setRelationship(_0x24d4f6,_0x5603f2,_0x3678af,_0xa7c2('0x5b'));})[_0xa7c2('0x29')](function(){return getServerInfo(_0x24d4f6);})['then'](function(_0x65188){var _0x500236=parseInt(_0x65188[_0xa7c2('0x5c')][_0xa7c2('0x5d')](0x0));var _0x3471b9=util[_0xa7c2('0x33')](_0xa7c2('0x5e'),_0x1fb93a[_0xa7c2('0x4c')],_0x3678af['id']);if(_0x500236>0x6){_0x3471b9=util[_0xa7c2('0x33')](_0xa7c2('0x5f'),_0x1fb93a[_0xa7c2('0x4c')],_0x3678af['id']);}logger['info']('[QUEUE]',_0xa7c2('0x60'));emit(util[_0xa7c2('0x33')](_0xa7c2('0x61'),_0x3ae0b6[_0xa7c2('0xd')]),_0xa7c2('0x62'),{'uri':_0x3471b9});})[_0xa7c2('0x63')](function(_0x2f7be1){logger['error']('[QUEUE]',JSON[_0xa7c2('0x24')](_0x2f7be1));});};exports[_0xa7c2('0x64')]=function(_0x3f9c0b,_0x35f410,_0x3d7072,_0x43adfe,_0x45373f,_0x32d777,_0x509c3f){var _0x47dd42,_0x343920,_0x3aa053,_0x1e9d70;_0x32d777[_0xa7c2('0x4c')]=intUtil[_0xa7c2('0x4d')](_0x32d777[_0xa7c2('0x4c')]);_0x32d777[_0xa7c2('0x4e')]=intUtil[_0xa7c2('0x4d')](_0x32d777[_0xa7c2('0x4e')]);def['uri']=util[_0xa7c2('0x33')](_0xa7c2('0x50'),_0x32d777[_0xa7c2('0x4c')]);if(_0x509c3f&&_0x509c3f[_0xa7c2('0x65')]&&_0x509c3f['recordingFormat']!==_0xa7c2('0x66')){logger['info'](_0xa7c2('0x67'),_0xa7c2('0x53'));_0x35f410[_0xa7c2('0x68')]=util[_0xa7c2('0x33')]('%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s',_0x32d777[_0xa7c2('0x4e')],_0x35f410[_0xa7c2('0x54')],md5(_0x35f410[_0xa7c2('0x54')]));}return getConnection(_0x32d777)['then'](function(_0xde5b38){_0x1e9d70=_0xde5b38;return getUser(_0x32d777,_0x43adfe[_0xa7c2('0xd')],_0x1e9d70);})[_0xa7c2('0x29')](function(_0x1c5c85){_0x47dd42=_0x1c5c85;logger[_0xa7c2('0xc')](_0xa7c2('0x55'),_0x47dd42['id']);return getEndUser(_0x32d777,_0x35f410[_0xa7c2('0x69')],_0x35f410[_0xa7c2('0x6a')],_0x1e9d70);})[_0xa7c2('0x29')](function(_0x3c97b5){_0x343920=_0x3c97b5;logger[_0xa7c2('0xc')](_0xa7c2('0x58'),_0x343920['id']);return getTicket(_0x32d777,_0x47dd42,_0x343920,_0x3d7072,_0x35f410,_0x3d7072[_0xa7c2('0x59')],_0x1e9d70,'Outbound');})[_0xa7c2('0x29')](function(_0x57967e){_0x3aa053=_0x57967e;logger['info'](_0xa7c2('0x5a'));logger[_0xa7c2('0xc')](_0xa7c2('0x6b'),_0x3aa053['id']);return setRelationship(_0x1e9d70,_0x47dd42,_0x3aa053,_0xa7c2('0x6c'));})[_0xa7c2('0x29')](function(){return setRelationship(_0x1e9d70,_0x343920,_0x3aa053,_0xa7c2('0x5b'));})[_0xa7c2('0x29')](function(){return getServerInfo(_0x1e9d70);})[_0xa7c2('0x29')](function(_0x19c48d){var _0x2c513d=parseInt(_0x19c48d[_0xa7c2('0x5c')]['charAt'](0x0));var _0x2d3b2b=util['format']('%s/index.php?action=ajaxui#ajaxUILoc=index.php%3Fmodule%3DCalls%26action%3DEditView%26record%3D%s',_0x32d777[_0xa7c2('0x4c')],_0x3aa053['id']);if(_0x2c513d>0x6){_0x2d3b2b=util[_0xa7c2('0x33')](_0xa7c2('0x5f'),_0x32d777[_0xa7c2('0x4c')],_0x3aa053['id']);}logger[_0xa7c2('0xc')](_0xa7c2('0x67'),_0xa7c2('0x60'));emit(util[_0xa7c2('0x33')](_0xa7c2('0x61'),_0x43adfe[_0xa7c2('0xd')]),_0xa7c2('0x62'),{'uri':_0x2d3b2b});})[_0xa7c2('0x63')](function(_0x32451a){logger['error'](_0xa7c2('0x67'),JSON['stringify'](_0x32451a));});};exports[_0xa7c2('0x6d')]=function(_0x4ad777,_0x510e4e,_0x48fedd,_0x218f37,_0xeabe03,_0xe6720a){var _0x10fc9e,_0x169a06,_0x502228,_0x2865ae;_0xe6720a[_0xa7c2('0x4c')]=intUtil[_0xa7c2('0x4d')](_0xe6720a[_0xa7c2('0x4c')]);_0xe6720a['serverUrl']=intUtil['stripTrailingSlash'](_0xe6720a[_0xa7c2('0x4e')]);def[_0xa7c2('0x4f')]=util[_0xa7c2('0x33')](_0xa7c2('0x50'),_0xe6720a['remoteUri']);if(_0xeabe03&&_0xeabe03[_0xa7c2('0x51')]){logger[_0xa7c2('0xc')]('['+_0x510e4e[_0xa7c2('0x6e')]['toUpperCase']()+']',_0xa7c2('0x53'));_0x510e4e[_0xa7c2('0x68')]=util['format']('%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s',_0xe6720a[_0xa7c2('0x4e')],_0x510e4e[_0xa7c2('0x54')],md5(_0x510e4e[_0xa7c2('0x54')]));}else{_0x510e4e[_0xa7c2('0x68')]='';}return getConnection(_0xe6720a)[_0xa7c2('0x29')](function(_0x1fc95f){_0x2865ae=_0x1fc95f;if(!_[_0xa7c2('0x25')](_0x218f37)){return getUser(_0xe6720a,_0x218f37[_0xa7c2('0xd')],_0x2865ae);}else{return getUser(_0xe6720a,null,_0x2865ae);}})[_0xa7c2('0x29')](function(_0x18ec74){_0x10fc9e=_0x18ec74;logger['info'](_0xa7c2('0x55'),_0x10fc9e['id']);return getEndUser(_0xe6720a,_0x510e4e[_0xa7c2('0x56')],_0x510e4e[_0xa7c2('0x57')],_0x2865ae);})[_0xa7c2('0x29')](function(_0x32d323){_0x169a06=_0x32d323;logger[_0xa7c2('0xc')](_0xa7c2('0x58'),_0x169a06['id']);return getTicket(_0xe6720a,_0x10fc9e,_0x169a06,_0x48fedd,_0x510e4e,_0x48fedd[_0xa7c2('0x59')],_0x2865ae,_0xa7c2('0x6f'));})['then'](function(_0xd1d0f9){_0x502228=_0xd1d0f9;logger[_0xa7c2('0xc')](_0xa7c2('0x5a'));logger[_0xa7c2('0xc')](_0xa7c2('0x6b'),_0x502228['id']);return setRelationship(_0x2865ae,_0x10fc9e,_0x502228,'users');})[_0xa7c2('0x29')](function(){return setRelationship(_0x2865ae,_0x169a06,_0x502228,_0xa7c2('0x5b'));})[_0xa7c2('0x29')](function(){return getServerInfo(_0x2865ae);})[_0xa7c2('0x63')](function(_0x43a325){logger['error']('['+_0x510e4e[_0xa7c2('0x6e')][_0xa7c2('0x70')]()+']',JSON['stringify'](_0x43a325));});};