Built motion from commit 775e2a94.|2.6.3
[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 _0x1b4a=['Caller\x20-\x20%s','Enduser\x20created.','[HTTP]','merge','map','type','nameField','customField','toLowerCase','string','custom_fields','content','variable','customVariable','Variable','login','username','password','PLAIN','sessionID','Account\x20%d\x20is\x20not\x20valid','set_relationship','queue','remoteUri','serverUrl','stripTrailingSlash','uri','monitor_format','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','uniqueid','recordingURL','The\x20User\x20ID\x20is:','calleridname','The\x20Enduser\x20ID\x20is:','Fields','Inbound','Ticket\x20created!','contacts','version','charAt','%s/index.php?action=ajaxui#ajaxUILoc=index.php%3Fmodule%3DCalls%26action%3DEditView%26record%3D%s','[QUEUE]','Displaying\x20ticket\x20to\x20agent\x20in\x20a\x20new\x20tab...','user:%s','trigger:browser:url','catch','error','outbound','%s/service/v4_1/rest.php','recordingFormat','none','[OUTBOUND]','destcalleridname','destcalleridnum','Outbound','The\x20Ticket\x20ID\x20is:','users','%s/#bwc/index.php?module=Calls&action=EditView&record=%s','lastevent','toUpperCase','Recording\x20is\x20enabled!','bluebird','md5','util','ioredis','./util','../../../../config/environment','sugarcrm','redis','localhost','socket.io-emitter','POST','info','Creating\x20new\x20ticket...','name','getString','Subjects','assigned_user_id','created_by','description','date_start','slice','replace','duration_hours','parent_id','parent_type','parent_name','direction','length','forEach','variableName','push','idField','set_entry','JSON','stringify','Calls','format','apiKey','toString','base64','get_server_info','isNil','Getting\x20agent\x20with\x20name','Employees','entry_list','find','name_value_list','user_name','value','Agent\x20found!','resolve','Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!','user_id','Agent\x20not\x20available,\x20using\x20the\x20admin\x20account!','contacts.phone_home\x20=\x20\x22%s\x22','phone_home','then','Enduser\x20found!','Enduser\x20not\x20found,\x20creating\x20a\x20new\x20enduser!','first_name','<unknown>'];(function(_0x5d74c6,_0x1b92df){var _0x20bd4a=function(_0x32b6f2){while(--_0x32b6f2){_0x5d74c6['push'](_0x5d74c6['shift']());}};_0x20bd4a(++_0x1b92df);}(_0x1b4a,0x1ab));var _0xa1b4=function(_0x14add3,_0x13ce8d){_0x14add3=_0x14add3-0x0;var _0x4a174f=_0x1b4a[_0x14add3];return _0x4a174f;};'use strict';var _=require('lodash');var rp=require('request-promise');var BPromise=require(_0xa1b4('0x0'));var md5=require(_0xa1b4('0x1'));var util=require(_0xa1b4('0x2'));var Redis=require(_0xa1b4('0x3'));var intUtil=require(_0xa1b4('0x4'));var config=require(_0xa1b4('0x5'));var logger=require('../../../../config/logger')(_0xa1b4('0x6'));config[_0xa1b4('0x7')]=_['defaults'](config[_0xa1b4('0x7')],{'host':_0xa1b4('0x8'),'port':0x18eb});var io=require(_0xa1b4('0x9'))(new Redis(config[_0xa1b4('0x7')]));var def={'method':_0xa1b4('0xa'),'json':!![]};function emit(_0x38fcbe,_0x56e0b3,_0xbbdc7d){io['to'](_0x38fcbe)['emit'](_0x56e0b3,_0xbbdc7d);}function getTicket(_0x25e144,_0x228ec7,_0x4cfe3a,_0x516f99,_0x361eb5,_0x4d636c,_0x471b0e,_0x2105de){logger[_0xa1b4('0xb')](_0xa1b4('0xc'));var _0x34dc01=new Date();var _0x2bf9bc=[{'name':_0xa1b4('0xd'),'value':intUtil[_0xa1b4('0xe')](_0x516f99[_0xa1b4('0xf')],_0x361eb5,'\x20')},{'name':_0xa1b4('0x10'),'value':_0x228ec7['id']},{'name':_0xa1b4('0x11'),'value':_0x228ec7['id']},{'name':_0xa1b4('0x12'),'value':intUtil[_0xa1b4('0xe')](_0x516f99['Descriptions'],_0x361eb5,'\x0a')},{'name':_0xa1b4('0x13'),'value':_0x34dc01['toISOString']()[_0xa1b4('0x14')](0x0,0x13)[_0xa1b4('0x15')]('T','\x20')},{'name':_0xa1b4('0x16'),'value':'0'},{'name':'duration_minutes','value':'15'},{'name':_0xa1b4('0x17'),'value':_0x4cfe3a['id']},{'name':_0xa1b4('0x18'),'value':'Contacts'},{'name':_0xa1b4('0x19'),'value':_0x4cfe3a[_0xa1b4('0xd')]},{'name':_0xa1b4('0x1a'),'value':_0x2105de}];if(_0x4d636c[_0xa1b4('0x1b')]){_[_0xa1b4('0x1c')](_0x4d636c,function(_0x2be919){if(_0x361eb5[_0x2be919[_0xa1b4('0x1d')]]){_0x2bf9bc[_0xa1b4('0x1e')]({'name':_0x2be919[_0xa1b4('0x1f')],'value':_0x361eb5[_0x2be919['variableName']]});}});}return request({'form':{'method':_0xa1b4('0x20'),'input_type':_0xa1b4('0x21'),'response_type':_0xa1b4('0x21'),'rest_data':JSON[_0xa1b4('0x22')]({'session':_0x471b0e['id'],'module_name':_0xa1b4('0x23'),'name_value_list':_0x2bf9bc})}});}function getAuth(_0x435169){return util[_0xa1b4('0x24')]('Basic\x20%s',new Buffer(_0x435169[_0xa1b4('0x25')]+':X')[_0xa1b4('0x26')](_0xa1b4('0x27')));}function getServerInfo(_0x493277){return request({'form':{'method':_0xa1b4('0x28'),'input_type':_0xa1b4('0x21'),'response_type':_0xa1b4('0x21'),'rest_data':JSON[_0xa1b4('0x22')]({'session':_0x493277['id']})}});}function getUser(_0x2e3ee0,_0x6890c9,_0x578c67){if(!_[_0xa1b4('0x29')](_0x6890c9)){logger[_0xa1b4('0xb')](_0xa1b4('0x2a'),_0x6890c9);return request({'form':{'method':'get_entry_list','input_type':_0xa1b4('0x21'),'response_type':_0xa1b4('0x21'),'rest_data':JSON[_0xa1b4('0x22')]({'session':_0x578c67['id'],'module_name':_0xa1b4('0x2b'),'query':util[_0xa1b4('0x24')]('INSTR\x20(\x20users.user_name,\x20\x22%s\x22)\x20>\x200',_0x6890c9),'order_by':'','offset':'0','select_fields':['id','name','user_name'],'link_name_to_fields_array':[],'max_results':-0x1,'deleted':'0'})}})['then'](function(_0x572854){if(_0x572854[_0xa1b4('0x2c')]['length']){var _0x1eeb53=_[_0xa1b4('0x2d')](_0x572854[_0xa1b4('0x2c')],function(_0x444cfc){return _0x444cfc[_0xa1b4('0x2e')][_0xa1b4('0x2f')][_0xa1b4('0x30')]===_0x6890c9;});if(_0x1eeb53){logger[_0xa1b4('0xb')](_0xa1b4('0x31'));return BPromise[_0xa1b4('0x32')]({'id':_0x1eeb53[_0xa1b4('0x2e')]['id'][_0xa1b4('0x30')],'name':_0x1eeb53[_0xa1b4('0x2e')][_0xa1b4('0xd')]['value']});}}logger['info'](_0xa1b4('0x33'));return BPromise[_0xa1b4('0x32')]({'id':_0x578c67[_0xa1b4('0x2e')][_0xa1b4('0x34')][_0xa1b4('0x30')],'name':_0x578c67[_0xa1b4('0x2e')][_0xa1b4('0x2f')][_0xa1b4('0x30')]});});}else{logger[_0xa1b4('0xb')](_0xa1b4('0x35'));return BPromise[_0xa1b4('0x32')]({'id':_0x578c67[_0xa1b4('0x2e')][_0xa1b4('0x34')][_0xa1b4('0x30')],'name':_0x578c67[_0xa1b4('0x2e')][_0xa1b4('0x2f')][_0xa1b4('0x30')]});}}function getEndUser(_0x22ccb0,_0x3e2d6c,_0x13a62a,_0x5d3a64){logger[_0xa1b4('0xb')]('Searching\x20enduser\x20with\x20phone',_0x13a62a);return request({'form':{'method':'get_entry_list','input_type':_0xa1b4('0x21'),'response_type':_0xa1b4('0x21'),'rest_data':JSON[_0xa1b4('0x22')]({'session':_0x5d3a64['id'],'module_name':'Contacts','query':util['format'](_0xa1b4('0x36'),_0x13a62a),'order_by':'','offset':'0','select_fields':['id',_0xa1b4('0xd'),_0xa1b4('0x37')],'link_name_to_fields_array':[],'max_results':-0x1,'deleted':'0'})}})[_0xa1b4('0x38')](function(_0x2ccf2b){if(_0x2ccf2b[_0xa1b4('0x2c')][_0xa1b4('0x1b')]){var _0x1dbd7e=_[_0xa1b4('0x2d')](_0x2ccf2b[_0xa1b4('0x2c')],function(_0x251664){return _0x251664[_0xa1b4('0x2e')]['phone_home'][_0xa1b4('0x30')]===_0x13a62a;});if(_0x1dbd7e){logger[_0xa1b4('0xb')](_0xa1b4('0x39'));return BPromise['resolve']({'id':_0x1dbd7e[_0xa1b4('0x2e')]['id'][_0xa1b4('0x30')],'name':_0x1dbd7e[_0xa1b4('0x2e')]['name'][_0xa1b4('0x30')],'phone':_0x1dbd7e['name_value_list'][_0xa1b4('0x37')][_0xa1b4('0x30')]});}}else{logger[_0xa1b4('0xb')](_0xa1b4('0x3a'));return request({'form':{'method':_0xa1b4('0x20'),'input_type':_0xa1b4('0x21'),'response_type':_0xa1b4('0x21'),'rest_data':JSON['stringify']({'session':_0x5d3a64['id'],'module_name':'Contacts','name_value_list':[{'name':_0xa1b4('0x3b'),'value':_0x3e2d6c!==_0xa1b4('0x3c')?_0x3e2d6c:util[_0xa1b4('0x24')](_0xa1b4('0x3d'),_0x13a62a)},{'name':_0xa1b4('0x37'),'value':_0x13a62a}]})}})['then'](function(_0x58e310){logger[_0xa1b4('0xb')](_0xa1b4('0x3e'));return BPromise[_0xa1b4('0x32')]({'id':_0x58e310['id'],'name':_0x58e310[_0xa1b4('0x2c')]['first_name']['value'],'phone':_0x58e310['entry_list'][_0xa1b4('0x37')][_0xa1b4('0x30')]});});}});}function request(_0x5ea69e){logger['debug'](_0xa1b4('0x3f'),JSON[_0xa1b4('0x22')](_0x5ea69e));return rp(_[_0xa1b4('0x40')](def,_0x5ea69e));}function getTags(_0xc2df11,_0xb8181d){var _0x24a024=[];if(_0xc2df11&&_0xc2df11['length']>0x0){_0x24a024=_[_0xa1b4('0x41')](_0xc2df11,_0xb8181d);}return _0x24a024;}function getCustomFields(_0x566200,_0x4332a4){var _0x32fdc5=[];var _0x36e5e4={'custom_fields':[]};if(_0x566200[_0xa1b4('0x1b')]>0x0){_[_0xa1b4('0x1c')](_0x566200,function(_0x1f7001){if(_0x1f7001[_0xa1b4('0x42')]==='string'&&_0x1f7001[_0xa1b4('0x43')]&&!_0x1f7001[_0xa1b4('0x44')]){_0x36e5e4[_0x1f7001[_0xa1b4('0x43')][_0xa1b4('0x45')]()]=_0x1f7001['content']['toString']();}else if(_0x1f7001[_0xa1b4('0x42')]===_0xa1b4('0x46')&&_0x1f7001[_0xa1b4('0x1f')]&&_0x1f7001[_0xa1b4('0x44')]){_0x36e5e4[_0xa1b4('0x47')][_0xa1b4('0x1e')]({'id':_0x1f7001['idField'],'value':_0x1f7001[_0xa1b4('0x48')][_0xa1b4('0x26')]()});}else if(_0x1f7001[_0xa1b4('0x42')]===_0xa1b4('0x49')&&_0x1f7001['variableName']&&_0x1f7001[_0xa1b4('0x1f')]&&_0x1f7001[_0xa1b4('0x44')]){_0x4332a4[_0x1f7001[_0xa1b4('0x1d')]]&&_0x36e5e4[_0xa1b4('0x47')]['push']({'id':_0x1f7001[_0xa1b4('0x1f')],'value':_0x4332a4[_0x1f7001[_0xa1b4('0x1d')]][_0xa1b4('0x26')]()});}else if(_0x1f7001[_0xa1b4('0x42')]===_0xa1b4('0x4a')&&_0x1f7001['Variable']&&_0x1f7001[_0xa1b4('0x4b')][_0xa1b4('0xd')]&&_0x1f7001[_0xa1b4('0x1f')]&&_0x1f7001[_0xa1b4('0x44')]){_0x4332a4[_0x1f7001['Variable'][_0xa1b4('0xd')][_0xa1b4('0x45')]()]&&_0x36e5e4[_0xa1b4('0x47')][_0xa1b4('0x1e')]({'id':_0x1f7001['idField'],'value':_0x4332a4[_0x1f7001[_0xa1b4('0x4b')]['name'][_0xa1b4('0x45')]()][_0xa1b4('0x26')]()});}});}return _0x36e5e4;}function getConnection(_0x272c93){return request({'method':_0xa1b4('0xa'),'form':{'method':_0xa1b4('0x4c'),'input_type':'JSON','response_type':_0xa1b4('0x21'),'rest_data':JSON[_0xa1b4('0x22')]({'user_auth':{'user_name':_0x272c93[_0xa1b4('0x4d')],'password':_0x272c93[_0xa1b4('0x4e')],'encryption':_0xa1b4('0x4f')},'application':'xCALLY\x20Motion\x20integration'})}})[_0xa1b4('0x38')](function(_0x2576e8){var _0x18fca9=_0x2576e8;if(_0x18fca9['id']){def[_0xa1b4('0x50')]=_0x18fca9['id'];return BPromise[_0xa1b4('0x32')](_0x18fca9);}else{throw new Error(util[_0xa1b4('0x24')](_0xa1b4('0x51'),_0x272c93['id']));}});}function setRelationship(_0x28bfe6,_0x11e0bf,_0x39a009,_0x2eb44a){return request({'form':{'method':_0xa1b4('0x52'),'input_type':'JSON','response_type':_0xa1b4('0x21'),'rest_data':JSON[_0xa1b4('0x22')]({'session':_0x28bfe6['id'],'module_name':_0xa1b4('0x23'),'module_id':_0x39a009['id'],'link_field_name':_0x2eb44a,'related_ids':[_0x11e0bf['id']],'name_value_list':[],'delete':0x0})}});}exports[_0xa1b4('0x53')]=function(_0x1c2a14,_0x56fad3,_0x56d02,_0x47b8d3,_0x78f723,_0x84be41){var _0x571568,_0xa7debb,_0x3c1d43,_0xdae815;_0x84be41[_0xa1b4('0x54')]=intUtil['stripTrailingSlash'](_0x84be41[_0xa1b4('0x54')]);_0x84be41[_0xa1b4('0x55')]=intUtil[_0xa1b4('0x56')](_0x84be41[_0xa1b4('0x55')]);def[_0xa1b4('0x57')]=util[_0xa1b4('0x24')]('%s/service/v4_1/rest.php',_0x84be41[_0xa1b4('0x54')]);if(_0x78f723&&_0x78f723[_0xa1b4('0x58')]){logger[_0xa1b4('0xb')]('[QUEUE]','Recording\x20is\x20enabled!');_0x56fad3['recordingURL']=util[_0xa1b4('0x24')](_0xa1b4('0x59'),_0x84be41[_0xa1b4('0x55')],_0x56fad3[_0xa1b4('0x5a')],md5(_0x56fad3[_0xa1b4('0x5a')]));}else{_0x56fad3[_0xa1b4('0x5b')]='';}return getConnection(_0x84be41)[_0xa1b4('0x38')](function(_0x105f05){_0xdae815=_0x105f05;return getUser(_0x84be41,_0x47b8d3['name'],_0xdae815);})['then'](function(_0x51ae2c){_0x571568=_0x51ae2c;logger[_0xa1b4('0xb')](_0xa1b4('0x5c'),_0x571568['id']);return getEndUser(_0x84be41,_0x56fad3[_0xa1b4('0x5d')],_0x56fad3['calleridnum'],_0xdae815);})['then'](function(_0x42f9fd){_0xa7debb=_0x42f9fd;logger[_0xa1b4('0xb')](_0xa1b4('0x5e'),_0xa7debb['id']);return getTicket(_0x84be41,_0x571568,_0xa7debb,_0x56d02,_0x56fad3,_0x56d02[_0xa1b4('0x5f')],_0xdae815,_0xa1b4('0x60'));})[_0xa1b4('0x38')](function(_0x1e1afe){_0x3c1d43=_0x1e1afe;logger[_0xa1b4('0xb')](_0xa1b4('0x61'));logger[_0xa1b4('0xb')]('The\x20Ticket\x20ID\x20is:',_0x3c1d43['id']);return setRelationship(_0xdae815,_0x571568,_0x3c1d43,'users');})[_0xa1b4('0x38')](function(){return setRelationship(_0xdae815,_0xa7debb,_0x3c1d43,_0xa1b4('0x62'));})['then'](function(){return getServerInfo(_0xdae815);})[_0xa1b4('0x38')](function(_0x149721){var _0x23e6b4=parseInt(_0x149721[_0xa1b4('0x63')][_0xa1b4('0x64')](0x0));var _0x56ed65=util['format'](_0xa1b4('0x65'),_0x84be41[_0xa1b4('0x54')],_0x3c1d43['id']);if(_0x23e6b4>0x6){_0x56ed65=util[_0xa1b4('0x24')]('%s/#bwc/index.php?module=Calls&action=EditView&record=%s',_0x84be41['remoteUri'],_0x3c1d43['id']);}logger['info'](_0xa1b4('0x66'),_0xa1b4('0x67'));emit(util[_0xa1b4('0x24')](_0xa1b4('0x68'),_0x47b8d3[_0xa1b4('0xd')]),_0xa1b4('0x69'),{'uri':_0x56ed65});})[_0xa1b4('0x6a')](function(_0x55deea){logger[_0xa1b4('0x6b')](_0xa1b4('0x66'),JSON['stringify'](_0x55deea));});};exports[_0xa1b4('0x6c')]=function(_0x2488bc,_0x414b95,_0x58311b,_0x2735e6,_0x5603f8,_0x46cd8f,_0x3e76f8){var _0x4418ad,_0x517593,_0x38a7dd,_0x112164;_0x46cd8f[_0xa1b4('0x54')]=intUtil[_0xa1b4('0x56')](_0x46cd8f['remoteUri']);_0x46cd8f[_0xa1b4('0x55')]=intUtil[_0xa1b4('0x56')](_0x46cd8f[_0xa1b4('0x55')]);def[_0xa1b4('0x57')]=util['format'](_0xa1b4('0x6d'),_0x46cd8f['remoteUri']);if(_0x3e76f8&&_0x3e76f8[_0xa1b4('0x6e')]&&_0x3e76f8['recordingFormat']!==_0xa1b4('0x6f')){logger[_0xa1b4('0xb')](_0xa1b4('0x70'),'Recording\x20is\x20enabled!');_0x414b95[_0xa1b4('0x5b')]=util[_0xa1b4('0x24')]('%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s',_0x46cd8f[_0xa1b4('0x55')],_0x414b95[_0xa1b4('0x5a')],md5(_0x414b95[_0xa1b4('0x5a')]));}return getConnection(_0x46cd8f)[_0xa1b4('0x38')](function(_0xff7e60){_0x112164=_0xff7e60;return getUser(_0x46cd8f,_0x2735e6['name'],_0x112164);})[_0xa1b4('0x38')](function(_0x3c2c52){_0x4418ad=_0x3c2c52;logger[_0xa1b4('0xb')](_0xa1b4('0x5c'),_0x4418ad['id']);return getEndUser(_0x46cd8f,_0x414b95[_0xa1b4('0x71')],_0x414b95[_0xa1b4('0x72')],_0x112164);})['then'](function(_0x1744b4){_0x517593=_0x1744b4;logger[_0xa1b4('0xb')](_0xa1b4('0x5e'),_0x517593['id']);return getTicket(_0x46cd8f,_0x4418ad,_0x517593,_0x58311b,_0x414b95,_0x58311b[_0xa1b4('0x5f')],_0x112164,_0xa1b4('0x73'));})[_0xa1b4('0x38')](function(_0x109953){_0x38a7dd=_0x109953;logger[_0xa1b4('0xb')](_0xa1b4('0x61'));logger[_0xa1b4('0xb')](_0xa1b4('0x74'),_0x38a7dd['id']);return setRelationship(_0x112164,_0x4418ad,_0x38a7dd,_0xa1b4('0x75'));})[_0xa1b4('0x38')](function(){return setRelationship(_0x112164,_0x517593,_0x38a7dd,_0xa1b4('0x62'));})[_0xa1b4('0x38')](function(){return getServerInfo(_0x112164);})[_0xa1b4('0x38')](function(_0x53a080){var _0x5c5ff7=parseInt(_0x53a080[_0xa1b4('0x63')][_0xa1b4('0x64')](0x0));var _0x143a1d=util[_0xa1b4('0x24')](_0xa1b4('0x65'),_0x46cd8f['remoteUri'],_0x38a7dd['id']);if(_0x5c5ff7>0x6){_0x143a1d=util[_0xa1b4('0x24')](_0xa1b4('0x76'),_0x46cd8f[_0xa1b4('0x54')],_0x38a7dd['id']);}logger[_0xa1b4('0xb')](_0xa1b4('0x70'),_0xa1b4('0x67'));emit(util['format']('user:%s',_0x2735e6[_0xa1b4('0xd')]),'trigger:browser:url',{'uri':_0x143a1d});})['catch'](function(_0x8dd3cd){logger['error']('[OUTBOUND]',JSON[_0xa1b4('0x22')](_0x8dd3cd));});};exports['unmanaged']=function(_0x5e3f11,_0x47af09,_0x5a9934,_0xc15857,_0x401019,_0x2d928d){var _0x3ea5c5,_0x2efed9,_0x1f488b,_0x52080e;_0x2d928d[_0xa1b4('0x54')]=intUtil[_0xa1b4('0x56')](_0x2d928d[_0xa1b4('0x54')]);_0x2d928d[_0xa1b4('0x55')]=intUtil[_0xa1b4('0x56')](_0x2d928d['serverUrl']);def[_0xa1b4('0x57')]=util[_0xa1b4('0x24')]('%s/service/v4_1/rest.php',_0x2d928d[_0xa1b4('0x54')]);if(_0x401019&&_0x401019[_0xa1b4('0x58')]){logger[_0xa1b4('0xb')]('['+_0x47af09[_0xa1b4('0x77')][_0xa1b4('0x78')]()+']',_0xa1b4('0x79'));_0x47af09[_0xa1b4('0x5b')]=util[_0xa1b4('0x24')]('%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s',_0x2d928d[_0xa1b4('0x55')],_0x47af09[_0xa1b4('0x5a')],md5(_0x47af09['uniqueid']));}else{_0x47af09[_0xa1b4('0x5b')]='';}return getConnection(_0x2d928d)[_0xa1b4('0x38')](function(_0x3fcabf){_0x52080e=_0x3fcabf;if(!_['isNil'](_0xc15857)){return getUser(_0x2d928d,_0xc15857[_0xa1b4('0xd')],_0x52080e);}else{return getUser(_0x2d928d,null,_0x52080e);}})[_0xa1b4('0x38')](function(_0x3b1641){_0x3ea5c5=_0x3b1641;logger[_0xa1b4('0xb')](_0xa1b4('0x5c'),_0x3ea5c5['id']);return getEndUser(_0x2d928d,_0x47af09[_0xa1b4('0x5d')],_0x47af09['calleridnum'],_0x52080e);})[_0xa1b4('0x38')](function(_0x54ca0f){_0x2efed9=_0x54ca0f;logger['info'](_0xa1b4('0x5e'),_0x2efed9['id']);return getTicket(_0x2d928d,_0x3ea5c5,_0x2efed9,_0x5a9934,_0x47af09,_0x5a9934[_0xa1b4('0x5f')],_0x52080e,_0xa1b4('0x60'));})['then'](function(_0x13e573){_0x1f488b=_0x13e573;logger[_0xa1b4('0xb')](_0xa1b4('0x61'));logger[_0xa1b4('0xb')](_0xa1b4('0x74'),_0x1f488b['id']);return setRelationship(_0x52080e,_0x3ea5c5,_0x1f488b,_0xa1b4('0x75'));})[_0xa1b4('0x38')](function(){return setRelationship(_0x52080e,_0x2efed9,_0x1f488b,_0xa1b4('0x62'));})[_0xa1b4('0x38')](function(){return getServerInfo(_0x52080e);})['catch'](function(_0x281f85){logger[_0xa1b4('0x6b')]('['+_0x47af09[_0xa1b4('0x77')][_0xa1b4('0x78')]()+']',JSON['stringify'](_0x281f85));});};