Built motion from commit 37e1ed56.|2.6.29
[motion2.git] / server / services / ami / trigger / integration / sugarcrm.js
index b8574f4..8172238 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x94de=['unmanaged','lastevent','toUpperCase','calleridname','Fields','The\x20Ticket\x20ID\x20is:','error','request-promise','md5','util','ioredis','../../../../config/environment','../../../../config/logger','sugarcrm','redis','defaults','socket.io-emitter','POST','emit','info','Creating\x20new\x20ticket...','name','getString','Subjects','created_by','description','date_start','toISOString','slice','replace','duration_hours','duration_minutes','parent_id','parent_type','Contacts','length','forEach','variableName','push','idField','set_entry','JSON','stringify','Calls','format','toString','base64','get_server_info','isNil','Getting\x20agent\x20with\x20name','get_entry_list','Employees','user_name','then','find','Agent\x20found!','resolve','name_value_list','Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!','user_id','Agent\x20not\x20available,\x20using\x20the\x20admin\x20account!','value','Searching\x20enduser\x20with\x20phone','contacts.phone_home\x20=\x20\x22%s\x22','phone_home','entry_list','Enduser\x20found!','Enduser\x20not\x20found,\x20creating\x20a\x20new\x20enduser!','first_name','<unknown>','Caller\x20-\x20%s','Enduser\x20created.','debug','[HTTP]','merge','map','type','string','nameField','customField','toLowerCase','content','custom_fields','customVariable','Variable','login','username','xCALLY\x20Motion\x20integration','sessionID','Account\x20%d\x20is\x20not\x20valid','set_relationship','queue','remoteUri','stripTrailingSlash','serverUrl','uri','%s/service/v4_1/rest.php','[QUEUE]','Recording\x20is\x20enabled!','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','uniqueid','recordingURL','The\x20User\x20ID\x20is:','The\x20Enduser\x20ID\x20is:','Inbound','Ticket\x20created!','users','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','none','[OUTBOUND]','destcalleridname','destcalleridnum','Outbound'];(function(_0x13ff3b,_0x1d99c6){var _0x1843cf=function(_0x1462a9){while(--_0x1462a9){_0x13ff3b['push'](_0x13ff3b['shift']());}};_0x1843cf(++_0x1d99c6);}(_0x94de,0x1ef));var _0xe94d=function(_0x37d2d8,_0x823af0){_0x37d2d8=_0x37d2d8-0x0;var _0x396dfc=_0x94de[_0x37d2d8];return _0x396dfc;};'use strict';var _=require('lodash');var rp=require(_0xe94d('0x0'));var BPromise=require('bluebird');var md5=require(_0xe94d('0x1'));var util=require(_0xe94d('0x2'));var Redis=require(_0xe94d('0x3'));var intUtil=require('./util');var config=require(_0xe94d('0x4'));var logger=require(_0xe94d('0x5'))(_0xe94d('0x6'));config[_0xe94d('0x7')]=_[_0xe94d('0x8')](config[_0xe94d('0x7')],{'host':'localhost','port':0x18eb});var io=require(_0xe94d('0x9'))(new Redis(config[_0xe94d('0x7')]));var def={'method':_0xe94d('0xa'),'json':!![]};function emit(_0x3d6d68,_0x41f376,_0x2e3b3f){io['to'](_0x3d6d68)[_0xe94d('0xb')](_0x41f376,_0x2e3b3f);}function getTicket(_0x48e2c3,_0x153b2c,_0x2ac5d1,_0x4ee600,_0x136a6a,_0x26d68d,_0x27d699,_0x644715){logger[_0xe94d('0xc')](_0xe94d('0xd'));var _0x4aacb0=new Date();var _0x3501b0=[{'name':_0xe94d('0xe'),'value':intUtil[_0xe94d('0xf')](_0x4ee600[_0xe94d('0x10')],_0x136a6a,'\x20')},{'name':'assigned_user_id','value':_0x153b2c['id']},{'name':_0xe94d('0x11'),'value':_0x153b2c['id']},{'name':_0xe94d('0x12'),'value':intUtil[_0xe94d('0xf')](_0x4ee600['Descriptions'],_0x136a6a,'\x0a')},{'name':_0xe94d('0x13'),'value':_0x4aacb0[_0xe94d('0x14')]()[_0xe94d('0x15')](0x0,0x13)[_0xe94d('0x16')]('T','\x20')},{'name':_0xe94d('0x17'),'value':'0'},{'name':_0xe94d('0x18'),'value':'15'},{'name':_0xe94d('0x19'),'value':_0x2ac5d1['id']},{'name':_0xe94d('0x1a'),'value':_0xe94d('0x1b')},{'name':'parent_name','value':_0x2ac5d1[_0xe94d('0xe')]},{'name':'direction','value':_0x644715}];if(_0x26d68d[_0xe94d('0x1c')]){_[_0xe94d('0x1d')](_0x26d68d,function(_0x112ba4){if(_0x136a6a[_0x112ba4[_0xe94d('0x1e')]]){_0x3501b0[_0xe94d('0x1f')]({'name':_0x112ba4[_0xe94d('0x20')],'value':_0x136a6a[_0x112ba4[_0xe94d('0x1e')]]});}});}return request({'form':{'method':_0xe94d('0x21'),'input_type':_0xe94d('0x22'),'response_type':_0xe94d('0x22'),'rest_data':JSON[_0xe94d('0x23')]({'session':_0x27d699['id'],'module_name':_0xe94d('0x24'),'name_value_list':_0x3501b0})}});}function getAuth(_0xa3a87c){return util[_0xe94d('0x25')]('Basic\x20%s',new Buffer(_0xa3a87c['apiKey']+':X')[_0xe94d('0x26')](_0xe94d('0x27')));}function getServerInfo(_0x10c435){return request({'form':{'method':_0xe94d('0x28'),'input_type':_0xe94d('0x22'),'response_type':_0xe94d('0x22'),'rest_data':JSON[_0xe94d('0x23')]({'session':_0x10c435['id']})}});}function getUser(_0x13d322,_0x372fda,_0x4a1130){if(!_[_0xe94d('0x29')](_0x372fda)){logger[_0xe94d('0xc')](_0xe94d('0x2a'),_0x372fda);return request({'form':{'method':_0xe94d('0x2b'),'input_type':_0xe94d('0x22'),'response_type':_0xe94d('0x22'),'rest_data':JSON['stringify']({'session':_0x4a1130['id'],'module_name':_0xe94d('0x2c'),'query':util[_0xe94d('0x25')]('INSTR\x20(\x20users.user_name,\x20\x22%s\x22)\x20>\x200',_0x372fda),'order_by':'','offset':'0','select_fields':['id','name',_0xe94d('0x2d')],'link_name_to_fields_array':[],'max_results':-0x1,'deleted':'0'})}})[_0xe94d('0x2e')](function(_0x4a25b3){if(_0x4a25b3['entry_list'][_0xe94d('0x1c')]){var _0x10f0f1=_[_0xe94d('0x2f')](_0x4a25b3['entry_list'],function(_0x1103fd){return _0x1103fd['name_value_list']['user_name']['value']===_0x372fda;});if(_0x10f0f1){logger['info'](_0xe94d('0x30'));return BPromise[_0xe94d('0x31')]({'id':_0x10f0f1[_0xe94d('0x32')]['id']['value'],'name':_0x10f0f1[_0xe94d('0x32')][_0xe94d('0xe')]['value']});}}logger[_0xe94d('0xc')](_0xe94d('0x33'));return BPromise[_0xe94d('0x31')]({'id':_0x4a1130['name_value_list'][_0xe94d('0x34')]['value'],'name':_0x4a1130[_0xe94d('0x32')]['user_name']['value']});});}else{logger[_0xe94d('0xc')](_0xe94d('0x35'));return BPromise[_0xe94d('0x31')]({'id':_0x4a1130[_0xe94d('0x32')][_0xe94d('0x34')][_0xe94d('0x36')],'name':_0x4a1130['name_value_list'][_0xe94d('0x2d')][_0xe94d('0x36')]});}}function getEndUser(_0x470f05,_0x362b69,_0x26f6b,_0xd3db64){logger[_0xe94d('0xc')](_0xe94d('0x37'),_0x26f6b);return request({'form':{'method':_0xe94d('0x2b'),'input_type':_0xe94d('0x22'),'response_type':_0xe94d('0x22'),'rest_data':JSON[_0xe94d('0x23')]({'session':_0xd3db64['id'],'module_name':_0xe94d('0x1b'),'query':util[_0xe94d('0x25')](_0xe94d('0x38'),_0x26f6b),'order_by':'','offset':'0','select_fields':['id',_0xe94d('0xe'),_0xe94d('0x39')],'link_name_to_fields_array':[],'max_results':-0x1,'deleted':'0'})}})[_0xe94d('0x2e')](function(_0x435b06){if(_0x435b06[_0xe94d('0x3a')][_0xe94d('0x1c')]){var _0x1e6d44=_[_0xe94d('0x2f')](_0x435b06[_0xe94d('0x3a')],function(_0x24c4fb){return _0x24c4fb['name_value_list'][_0xe94d('0x39')][_0xe94d('0x36')]===_0x26f6b;});if(_0x1e6d44){logger[_0xe94d('0xc')](_0xe94d('0x3b'));return BPromise[_0xe94d('0x31')]({'id':_0x1e6d44[_0xe94d('0x32')]['id'][_0xe94d('0x36')],'name':_0x1e6d44[_0xe94d('0x32')][_0xe94d('0xe')][_0xe94d('0x36')],'phone':_0x1e6d44[_0xe94d('0x32')][_0xe94d('0x39')]['value']});}}else{logger['info'](_0xe94d('0x3c'));return request({'form':{'method':_0xe94d('0x21'),'input_type':'JSON','response_type':_0xe94d('0x22'),'rest_data':JSON[_0xe94d('0x23')]({'session':_0xd3db64['id'],'module_name':_0xe94d('0x1b'),'name_value_list':[{'name':_0xe94d('0x3d'),'value':_0x362b69!==_0xe94d('0x3e')?_0x362b69:util['format'](_0xe94d('0x3f'),_0x26f6b)},{'name':'phone_home','value':_0x26f6b}]})}})['then'](function(_0x1abda3){logger['info'](_0xe94d('0x40'));return BPromise[_0xe94d('0x31')]({'id':_0x1abda3['id'],'name':_0x1abda3[_0xe94d('0x3a')][_0xe94d('0x3d')][_0xe94d('0x36')],'phone':_0x1abda3[_0xe94d('0x3a')][_0xe94d('0x39')]['value']});});}});}function request(_0x4b3f45){logger[_0xe94d('0x41')](_0xe94d('0x42'),JSON[_0xe94d('0x23')](_0x4b3f45));return rp(_[_0xe94d('0x43')](def,_0x4b3f45));}function getTags(_0x4eab93,_0x36c7ad){var _0x1807fa=[];if(_0x4eab93&&_0x4eab93[_0xe94d('0x1c')]>0x0){_0x1807fa=_[_0xe94d('0x44')](_0x4eab93,_0x36c7ad);}return _0x1807fa;}function getCustomFields(_0x12148d,_0xf598e){var _0x5eccce=[];var _0x577795={'custom_fields':[]};if(_0x12148d[_0xe94d('0x1c')]>0x0){_['forEach'](_0x12148d,function(_0x3f403e){if(_0x3f403e[_0xe94d('0x45')]===_0xe94d('0x46')&&_0x3f403e[_0xe94d('0x47')]&&!_0x3f403e[_0xe94d('0x48')]){_0x577795[_0x3f403e['nameField'][_0xe94d('0x49')]()]=_0x3f403e[_0xe94d('0x4a')][_0xe94d('0x26')]();}else if(_0x3f403e[_0xe94d('0x45')]===_0xe94d('0x46')&&_0x3f403e[_0xe94d('0x20')]&&_0x3f403e[_0xe94d('0x48')]){_0x577795['custom_fields']['push']({'id':_0x3f403e['idField'],'value':_0x3f403e['content'][_0xe94d('0x26')]()});}else if(_0x3f403e[_0xe94d('0x45')]==='variable'&&_0x3f403e[_0xe94d('0x1e')]&&_0x3f403e[_0xe94d('0x20')]&&_0x3f403e['customField']){_0xf598e[_0x3f403e[_0xe94d('0x1e')]]&&_0x577795[_0xe94d('0x4b')][_0xe94d('0x1f')]({'id':_0x3f403e['idField'],'value':_0xf598e[_0x3f403e['variableName']][_0xe94d('0x26')]()});}else if(_0x3f403e[_0xe94d('0x45')]===_0xe94d('0x4c')&&_0x3f403e[_0xe94d('0x4d')]&&_0x3f403e[_0xe94d('0x4d')][_0xe94d('0xe')]&&_0x3f403e['idField']&&_0x3f403e['customField']){_0xf598e[_0x3f403e[_0xe94d('0x4d')]['name']['toLowerCase']()]&&_0x577795[_0xe94d('0x4b')][_0xe94d('0x1f')]({'id':_0x3f403e[_0xe94d('0x20')],'value':_0xf598e[_0x3f403e[_0xe94d('0x4d')]['name'][_0xe94d('0x49')]()]['toString']()});}});}return _0x577795;}function getConnection(_0x5ea037){return request({'method':_0xe94d('0xa'),'form':{'method':_0xe94d('0x4e'),'input_type':_0xe94d('0x22'),'response_type':_0xe94d('0x22'),'rest_data':JSON[_0xe94d('0x23')]({'user_auth':{'user_name':_0x5ea037[_0xe94d('0x4f')],'password':_0x5ea037['password'],'encryption':'PLAIN'},'application':_0xe94d('0x50')})}})['then'](function(_0x3e432c){var _0x474ff4=_0x3e432c;if(_0x474ff4['id']){def[_0xe94d('0x51')]=_0x474ff4['id'];return BPromise[_0xe94d('0x31')](_0x474ff4);}else{throw new Error(util[_0xe94d('0x25')](_0xe94d('0x52'),_0x5ea037['id']));}});}function setRelationship(_0x152c14,_0x1b9dfe,_0x619570,_0x5e3b83){return request({'form':{'method':_0xe94d('0x53'),'input_type':_0xe94d('0x22'),'response_type':_0xe94d('0x22'),'rest_data':JSON[_0xe94d('0x23')]({'session':_0x152c14['id'],'module_name':_0xe94d('0x24'),'module_id':_0x619570['id'],'link_field_name':_0x5e3b83,'related_ids':[_0x1b9dfe['id']],'name_value_list':[],'delete':0x0})}});}exports[_0xe94d('0x54')]=function(_0x528905,_0x209609,_0x5590cf,_0x428399,_0x49b940,_0xd75e8){var _0x1d752a,_0xc3daff,_0x586449,_0x83fa42;_0xd75e8[_0xe94d('0x55')]=intUtil[_0xe94d('0x56')](_0xd75e8[_0xe94d('0x55')]);_0xd75e8[_0xe94d('0x57')]=intUtil[_0xe94d('0x56')](_0xd75e8['serverUrl']);def[_0xe94d('0x58')]=util[_0xe94d('0x25')](_0xe94d('0x59'),_0xd75e8[_0xe94d('0x55')]);if(_0x49b940&&_0x49b940['monitor_format']){logger['info'](_0xe94d('0x5a'),_0xe94d('0x5b'));_0x209609['recordingURL']=util[_0xe94d('0x25')](_0xe94d('0x5c'),_0xd75e8[_0xe94d('0x57')],_0x209609[_0xe94d('0x5d')],md5(_0x209609['uniqueid']));}else{_0x209609[_0xe94d('0x5e')]='';}return getConnection(_0xd75e8)[_0xe94d('0x2e')](function(_0x97bb48){_0x83fa42=_0x97bb48;return getUser(_0xd75e8,_0x428399[_0xe94d('0xe')],_0x83fa42);})[_0xe94d('0x2e')](function(_0x52074f){_0x1d752a=_0x52074f;logger[_0xe94d('0xc')](_0xe94d('0x5f'),_0x1d752a['id']);return getEndUser(_0xd75e8,_0x209609['calleridname'],_0x209609['calleridnum'],_0x83fa42);})['then'](function(_0x1abceb){_0xc3daff=_0x1abceb;logger['info'](_0xe94d('0x60'),_0xc3daff['id']);return getTicket(_0xd75e8,_0x1d752a,_0xc3daff,_0x5590cf,_0x209609,_0x5590cf['Fields'],_0x83fa42,_0xe94d('0x61'));})[_0xe94d('0x2e')](function(_0x286c4a){_0x586449=_0x286c4a;logger[_0xe94d('0xc')](_0xe94d('0x62'));logger[_0xe94d('0xc')]('The\x20Ticket\x20ID\x20is:',_0x586449['id']);return setRelationship(_0x83fa42,_0x1d752a,_0x586449,_0xe94d('0x63'));})[_0xe94d('0x2e')](function(){return setRelationship(_0x83fa42,_0xc3daff,_0x586449,_0xe94d('0x64'));})['then'](function(){return getServerInfo(_0x83fa42);})['then'](function(_0x536fd1){var _0x5d4b74=parseInt(_0x536fd1[_0xe94d('0x65')][_0xe94d('0x66')](0x0));var _0x55f0dd=util[_0xe94d('0x25')](_0xe94d('0x67'),_0xd75e8[_0xe94d('0x55')],_0x586449['id']);if(_0x5d4b74>0x6){_0x55f0dd=util[_0xe94d('0x25')](_0xe94d('0x68'),_0xd75e8['remoteUri'],_0x586449['id']);}logger['info'](_0xe94d('0x5a'),_0xe94d('0x69'));emit(util[_0xe94d('0x25')](_0xe94d('0x6a'),_0x428399['name']),_0xe94d('0x6b'),{'uri':_0x55f0dd});})[_0xe94d('0x6c')](function(_0x5bcd0d){logger['error'](_0xe94d('0x5a'),JSON[_0xe94d('0x23')](_0x5bcd0d));});};exports[_0xe94d('0x6d')]=function(_0x322f4e,_0x1536a2,_0xad45e3,_0x496fea,_0x26f44c,_0x31cf10,_0xa2465f){var _0x199eb5,_0x1a46a2,_0x23e220,_0x6bee48;_0x31cf10[_0xe94d('0x55')]=intUtil[_0xe94d('0x56')](_0x31cf10['remoteUri']);_0x31cf10[_0xe94d('0x57')]=intUtil['stripTrailingSlash'](_0x31cf10[_0xe94d('0x57')]);def[_0xe94d('0x58')]=util['format']('%s/service/v4_1/rest.php',_0x31cf10[_0xe94d('0x55')]);if(_0xa2465f&&_0xa2465f['recordingFormat']&&_0xa2465f['recordingFormat']!==_0xe94d('0x6e')){logger[_0xe94d('0xc')](_0xe94d('0x6f'),'Recording\x20is\x20enabled!');_0x1536a2['recordingURL']=util[_0xe94d('0x25')]('%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s',_0x31cf10['serverUrl'],_0x1536a2[_0xe94d('0x5d')],md5(_0x1536a2['uniqueid']));}return getConnection(_0x31cf10)[_0xe94d('0x2e')](function(_0x50769e){_0x6bee48=_0x50769e;return getUser(_0x31cf10,_0x496fea[_0xe94d('0xe')],_0x6bee48);})[_0xe94d('0x2e')](function(_0xf2c5f0){_0x199eb5=_0xf2c5f0;logger[_0xe94d('0xc')](_0xe94d('0x5f'),_0x199eb5['id']);return getEndUser(_0x31cf10,_0x1536a2[_0xe94d('0x70')],_0x1536a2[_0xe94d('0x71')],_0x6bee48);})[_0xe94d('0x2e')](function(_0x4351f2){_0x1a46a2=_0x4351f2;logger['info'](_0xe94d('0x60'),_0x1a46a2['id']);return getTicket(_0x31cf10,_0x199eb5,_0x1a46a2,_0xad45e3,_0x1536a2,_0xad45e3['Fields'],_0x6bee48,_0xe94d('0x72'));})['then'](function(_0x142f6b){_0x23e220=_0x142f6b;logger[_0xe94d('0xc')](_0xe94d('0x62'));logger[_0xe94d('0xc')]('The\x20Ticket\x20ID\x20is:',_0x23e220['id']);return setRelationship(_0x6bee48,_0x199eb5,_0x23e220,'users');})[_0xe94d('0x2e')](function(){return setRelationship(_0x6bee48,_0x1a46a2,_0x23e220,'contacts');})[_0xe94d('0x2e')](function(){return getServerInfo(_0x6bee48);})['then'](function(_0x5f31a2){var _0x4b3d6c=parseInt(_0x5f31a2[_0xe94d('0x65')]['charAt'](0x0));var _0x3c64bc=util[_0xe94d('0x25')](_0xe94d('0x67'),_0x31cf10[_0xe94d('0x55')],_0x23e220['id']);if(_0x4b3d6c>0x6){_0x3c64bc=util[_0xe94d('0x25')](_0xe94d('0x68'),_0x31cf10[_0xe94d('0x55')],_0x23e220['id']);}logger[_0xe94d('0xc')](_0xe94d('0x6f'),_0xe94d('0x69'));emit(util['format'](_0xe94d('0x6a'),_0x496fea[_0xe94d('0xe')]),'trigger:browser:url',{'uri':_0x3c64bc});})[_0xe94d('0x6c')](function(_0xe7b729){logger['error']('[OUTBOUND]',JSON['stringify'](_0xe7b729));});};exports[_0xe94d('0x73')]=function(_0x3019cd,_0x48cc79,_0x1a5370,_0x264089,_0x14f2da,_0x460871){var _0x3b31cd,_0x3ed996,_0x290645,_0x30daf2;_0x460871[_0xe94d('0x55')]=intUtil[_0xe94d('0x56')](_0x460871['remoteUri']);_0x460871[_0xe94d('0x57')]=intUtil[_0xe94d('0x56')](_0x460871[_0xe94d('0x57')]);def['uri']=util[_0xe94d('0x25')](_0xe94d('0x59'),_0x460871[_0xe94d('0x55')]);if(_0x14f2da&&_0x14f2da['monitor_format']){logger['info']('['+_0x48cc79[_0xe94d('0x74')][_0xe94d('0x75')]()+']',_0xe94d('0x5b'));_0x48cc79[_0xe94d('0x5e')]=util[_0xe94d('0x25')](_0xe94d('0x5c'),_0x460871[_0xe94d('0x57')],_0x48cc79['uniqueid'],md5(_0x48cc79['uniqueid']));}else{_0x48cc79['recordingURL']='';}return getConnection(_0x460871)[_0xe94d('0x2e')](function(_0x23d057){_0x30daf2=_0x23d057;if(!_[_0xe94d('0x29')](_0x264089)){return getUser(_0x460871,_0x264089['name'],_0x30daf2);}else{return getUser(_0x460871,null,_0x30daf2);}})[_0xe94d('0x2e')](function(_0x18a4d8){_0x3b31cd=_0x18a4d8;logger[_0xe94d('0xc')]('The\x20User\x20ID\x20is:',_0x3b31cd['id']);return getEndUser(_0x460871,_0x48cc79[_0xe94d('0x76')],_0x48cc79['calleridnum'],_0x30daf2);})['then'](function(_0x3e1c03){_0x3ed996=_0x3e1c03;logger[_0xe94d('0xc')]('The\x20Enduser\x20ID\x20is:',_0x3ed996['id']);return getTicket(_0x460871,_0x3b31cd,_0x3ed996,_0x1a5370,_0x48cc79,_0x1a5370[_0xe94d('0x77')],_0x30daf2,'Inbound');})[_0xe94d('0x2e')](function(_0x5f515a){_0x290645=_0x5f515a;logger[_0xe94d('0xc')](_0xe94d('0x62'));logger['info'](_0xe94d('0x78'),_0x290645['id']);return setRelationship(_0x30daf2,_0x3b31cd,_0x290645,_0xe94d('0x63'));})[_0xe94d('0x2e')](function(){return setRelationship(_0x30daf2,_0x3ed996,_0x290645,'contacts');})[_0xe94d('0x2e')](function(){return getServerInfo(_0x30daf2);})[_0xe94d('0x6c')](function(_0x417558){logger[_0xe94d('0x79')]('['+_0x48cc79['lastevent']['toUpperCase']()+']',JSON['stringify'](_0x417558));});};
\ No newline at end of file
+var _0x6687=['slice','duration_minutes','Contacts','parent_name','direction','forEach','push','idField','set_entry','JSON','stringify','Calls','format','apiKey','toString','base64','get_server_info','isNil','info','Getting\x20agent\x20with\x20name','get_entry_list','Employees','INSTR\x20(\x20users.user_name,\x20\x22%s\x22)\x20>\x200','user_name','entry_list','length','find','name_value_list','value','resolve','Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!','user_id','Agent\x20not\x20available,\x20using\x20the\x20admin\x20account!','Searching\x20enduser\x20with\x20phone','contacts.phone_home\x20=\x20\x22%s\x22','phone_home','then','Enduser\x20found!','Enduser\x20not\x20found,\x20creating\x20a\x20new\x20enduser!','first_name','<unknown>','Caller\x20-\x20%s','debug','merge','map','type','customField','nameField','toLowerCase','content','string','variable','custom_fields','variableName','customVariable','Variable','POST','login','password','PLAIN','xCALLY\x20Motion\x20integration','sessionID','Account\x20%d\x20is\x20not\x20valid','queue','remoteUri','stripTrailingSlash','serverUrl','%s/service/v4_1/rest.php','[QUEUE]','Recording\x20is\x20enabled!','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','uniqueid','recordingURL','calleridname','calleridnum','The\x20Enduser\x20ID\x20is:','Fields','Inbound','The\x20Ticket\x20ID\x20is:','users','contacts','charAt','%s/#bwc/index.php?module=Calls&action=EditView&record=%s','user:%s','trigger:browser:url','catch','error','outbound','uri','recordingFormat','[OUTBOUND]','destcalleridname','Outbound','Ticket\x20created!','version','%s/index.php?action=ajaxui#ajaxUILoc=index.php%3Fmodule%3DCalls%26action%3DEditView%26record%3D%s','unmanaged','monitor_format','lastevent','toUpperCase','The\x20User\x20ID\x20is:','lodash','bluebird','util','ioredis','./util','../../../../config/environment','../../../../config/logger','sugarcrm','redis','defaults','localhost','socket.io-emitter','emit','name','getString','Subjects','assigned_user_id','created_by','description','date_start','toISOString'];(function(_0x3b2369,_0x4c68b9){var _0x5a1367=function(_0x58ddcf){while(--_0x58ddcf){_0x3b2369['push'](_0x3b2369['shift']());}};_0x5a1367(++_0x4c68b9);}(_0x6687,0x1d3));var _0x7668=function(_0x429eca,_0x54fdf6){_0x429eca=_0x429eca-0x0;var _0x1e0af5=_0x6687[_0x429eca];return _0x1e0af5;};'use strict';var _=require(_0x7668('0x0'));var rp=require('request-promise');var BPromise=require(_0x7668('0x1'));var md5=require('md5');var util=require(_0x7668('0x2'));var Redis=require(_0x7668('0x3'));var intUtil=require(_0x7668('0x4'));var config=require(_0x7668('0x5'));var logger=require(_0x7668('0x6'))(_0x7668('0x7'));config[_0x7668('0x8')]=_[_0x7668('0x9')](config['redis'],{'host':_0x7668('0xa'),'port':0x18eb});var io=require(_0x7668('0xb'))(new Redis(config[_0x7668('0x8')]));var def={'method':'POST','json':!![]};function emit(_0x5ebad1,_0x3fe10b,_0x13dd28){io['to'](_0x5ebad1)[_0x7668('0xc')](_0x3fe10b,_0x13dd28);}function getTicket(_0x19a131,_0x41f7ac,_0x2c3fa1,_0x4ad35c,_0x2b5a6f,_0x549eca,_0x1a433b,_0x1290f9){logger['info']('Creating\x20new\x20ticket...');var _0x3ee59d=new Date();var _0x326fb6=[{'name':_0x7668('0xd'),'value':intUtil[_0x7668('0xe')](_0x4ad35c[_0x7668('0xf')],_0x2b5a6f,'\x20')},{'name':_0x7668('0x10'),'value':_0x41f7ac['id']},{'name':_0x7668('0x11'),'value':_0x41f7ac['id']},{'name':_0x7668('0x12'),'value':intUtil['getString'](_0x4ad35c['Descriptions'],_0x2b5a6f,'\x0a')},{'name':_0x7668('0x13'),'value':_0x3ee59d[_0x7668('0x14')]()[_0x7668('0x15')](0x0,0x13)['replace']('T','\x20')},{'name':'duration_hours','value':'0'},{'name':_0x7668('0x16'),'value':'15'},{'name':'parent_id','value':_0x2c3fa1['id']},{'name':'parent_type','value':_0x7668('0x17')},{'name':_0x7668('0x18'),'value':_0x2c3fa1[_0x7668('0xd')]},{'name':_0x7668('0x19'),'value':_0x1290f9}];if(_0x549eca['length']){_[_0x7668('0x1a')](_0x549eca,function(_0x36844e){if(_0x2b5a6f[_0x36844e['variableName']]){_0x326fb6[_0x7668('0x1b')]({'name':_0x36844e[_0x7668('0x1c')],'value':_0x2b5a6f[_0x36844e['variableName']]});}});}return request({'form':{'method':_0x7668('0x1d'),'input_type':'JSON','response_type':_0x7668('0x1e'),'rest_data':JSON[_0x7668('0x1f')]({'session':_0x1a433b['id'],'module_name':_0x7668('0x20'),'name_value_list':_0x326fb6})}});}function getAuth(_0x75d73f){return util[_0x7668('0x21')]('Basic\x20%s',new Buffer(_0x75d73f[_0x7668('0x22')]+':X')[_0x7668('0x23')](_0x7668('0x24')));}function getServerInfo(_0x2a3ffb){return request({'form':{'method':_0x7668('0x25'),'input_type':_0x7668('0x1e'),'response_type':_0x7668('0x1e'),'rest_data':JSON[_0x7668('0x1f')]({'session':_0x2a3ffb['id']})}});}function getUser(_0x145cbc,_0x329a7e,_0x585ae1){if(!_[_0x7668('0x26')](_0x329a7e)){logger[_0x7668('0x27')](_0x7668('0x28'),_0x329a7e);return request({'form':{'method':_0x7668('0x29'),'input_type':'JSON','response_type':'JSON','rest_data':JSON[_0x7668('0x1f')]({'session':_0x585ae1['id'],'module_name':_0x7668('0x2a'),'query':util[_0x7668('0x21')](_0x7668('0x2b'),_0x329a7e),'order_by':'','offset':'0','select_fields':['id',_0x7668('0xd'),_0x7668('0x2c')],'link_name_to_fields_array':[],'max_results':-0x1,'deleted':'0'})}})['then'](function(_0x6c3465){if(_0x6c3465[_0x7668('0x2d')][_0x7668('0x2e')]){var _0x2d0204=_[_0x7668('0x2f')](_0x6c3465[_0x7668('0x2d')],function(_0x4cb1c6){return _0x4cb1c6[_0x7668('0x30')][_0x7668('0x2c')][_0x7668('0x31')]===_0x329a7e;});if(_0x2d0204){logger['info']('Agent\x20found!');return BPromise[_0x7668('0x32')]({'id':_0x2d0204['name_value_list']['id'][_0x7668('0x31')],'name':_0x2d0204[_0x7668('0x30')][_0x7668('0xd')][_0x7668('0x31')]});}}logger[_0x7668('0x27')](_0x7668('0x33'));return BPromise[_0x7668('0x32')]({'id':_0x585ae1[_0x7668('0x30')][_0x7668('0x34')]['value'],'name':_0x585ae1[_0x7668('0x30')][_0x7668('0x2c')][_0x7668('0x31')]});});}else{logger[_0x7668('0x27')](_0x7668('0x35'));return BPromise[_0x7668('0x32')]({'id':_0x585ae1[_0x7668('0x30')][_0x7668('0x34')][_0x7668('0x31')],'name':_0x585ae1['name_value_list'][_0x7668('0x2c')][_0x7668('0x31')]});}}function getEndUser(_0x416b4c,_0x47f674,_0x16e53e,_0x1b2aec){logger[_0x7668('0x27')](_0x7668('0x36'),_0x16e53e);return request({'form':{'method':_0x7668('0x29'),'input_type':_0x7668('0x1e'),'response_type':_0x7668('0x1e'),'rest_data':JSON[_0x7668('0x1f')]({'session':_0x1b2aec['id'],'module_name':_0x7668('0x17'),'query':util['format'](_0x7668('0x37'),_0x16e53e),'order_by':'','offset':'0','select_fields':['id',_0x7668('0xd'),_0x7668('0x38')],'link_name_to_fields_array':[],'max_results':-0x1,'deleted':'0'})}})[_0x7668('0x39')](function(_0x53d35a){if(_0x53d35a['entry_list'][_0x7668('0x2e')]){var _0x35c296=_['find'](_0x53d35a[_0x7668('0x2d')],function(_0x1b60b7){return _0x1b60b7[_0x7668('0x30')][_0x7668('0x38')][_0x7668('0x31')]===_0x16e53e;});if(_0x35c296){logger[_0x7668('0x27')](_0x7668('0x3a'));return BPromise[_0x7668('0x32')]({'id':_0x35c296['name_value_list']['id'][_0x7668('0x31')],'name':_0x35c296[_0x7668('0x30')]['name'][_0x7668('0x31')],'phone':_0x35c296[_0x7668('0x30')][_0x7668('0x38')]['value']});}}else{logger[_0x7668('0x27')](_0x7668('0x3b'));return request({'form':{'method':'set_entry','input_type':'JSON','response_type':'JSON','rest_data':JSON[_0x7668('0x1f')]({'session':_0x1b2aec['id'],'module_name':'Contacts','name_value_list':[{'name':_0x7668('0x3c'),'value':_0x47f674!==_0x7668('0x3d')?_0x47f674:util['format'](_0x7668('0x3e'),_0x16e53e)},{'name':_0x7668('0x38'),'value':_0x16e53e}]})}})[_0x7668('0x39')](function(_0x5346d8){logger[_0x7668('0x27')]('Enduser\x20created.');return BPromise[_0x7668('0x32')]({'id':_0x5346d8['id'],'name':_0x5346d8[_0x7668('0x2d')][_0x7668('0x3c')][_0x7668('0x31')],'phone':_0x5346d8[_0x7668('0x2d')][_0x7668('0x38')][_0x7668('0x31')]});});}});}function request(_0x25625f){logger[_0x7668('0x3f')]('[HTTP]',JSON[_0x7668('0x1f')](_0x25625f));return rp(_[_0x7668('0x40')](def,_0x25625f));}function getTags(_0x31f909,_0x1c14cc){var _0x196902=[];if(_0x31f909&&_0x31f909['length']>0x0){_0x196902=_[_0x7668('0x41')](_0x31f909,_0x1c14cc);}return _0x196902;}function getCustomFields(_0xe11d98,_0x4251d5){var _0x1119e7=[];var _0x200c2b={'custom_fields':[]};if(_0xe11d98[_0x7668('0x2e')]>0x0){_['forEach'](_0xe11d98,function(_0x4b73bf){if(_0x4b73bf[_0x7668('0x42')]==='string'&&_0x4b73bf['nameField']&&!_0x4b73bf[_0x7668('0x43')]){_0x200c2b[_0x4b73bf[_0x7668('0x44')][_0x7668('0x45')]()]=_0x4b73bf[_0x7668('0x46')][_0x7668('0x23')]();}else if(_0x4b73bf[_0x7668('0x42')]===_0x7668('0x47')&&_0x4b73bf[_0x7668('0x1c')]&&_0x4b73bf[_0x7668('0x43')]){_0x200c2b['custom_fields'][_0x7668('0x1b')]({'id':_0x4b73bf[_0x7668('0x1c')],'value':_0x4b73bf[_0x7668('0x46')][_0x7668('0x23')]()});}else if(_0x4b73bf[_0x7668('0x42')]===_0x7668('0x48')&&_0x4b73bf['variableName']&&_0x4b73bf['idField']&&_0x4b73bf[_0x7668('0x43')]){_0x4251d5[_0x4b73bf['variableName']]&&_0x200c2b[_0x7668('0x49')]['push']({'id':_0x4b73bf[_0x7668('0x1c')],'value':_0x4251d5[_0x4b73bf[_0x7668('0x4a')]][_0x7668('0x23')]()});}else if(_0x4b73bf[_0x7668('0x42')]===_0x7668('0x4b')&&_0x4b73bf[_0x7668('0x4c')]&&_0x4b73bf[_0x7668('0x4c')][_0x7668('0xd')]&&_0x4b73bf[_0x7668('0x1c')]&&_0x4b73bf['customField']){_0x4251d5[_0x4b73bf[_0x7668('0x4c')][_0x7668('0xd')]['toLowerCase']()]&&_0x200c2b[_0x7668('0x49')][_0x7668('0x1b')]({'id':_0x4b73bf[_0x7668('0x1c')],'value':_0x4251d5[_0x4b73bf[_0x7668('0x4c')]['name'][_0x7668('0x45')]()][_0x7668('0x23')]()});}});}return _0x200c2b;}function getConnection(_0x55a56c){return request({'method':_0x7668('0x4d'),'form':{'method':_0x7668('0x4e'),'input_type':_0x7668('0x1e'),'response_type':'JSON','rest_data':JSON[_0x7668('0x1f')]({'user_auth':{'user_name':_0x55a56c['username'],'password':_0x55a56c[_0x7668('0x4f')],'encryption':_0x7668('0x50')},'application':_0x7668('0x51')})}})[_0x7668('0x39')](function(_0x11bea7){var _0x4bd081=_0x11bea7;if(_0x4bd081['id']){def[_0x7668('0x52')]=_0x4bd081['id'];return BPromise[_0x7668('0x32')](_0x4bd081);}else{throw new Error(util[_0x7668('0x21')](_0x7668('0x53'),_0x55a56c['id']));}});}function setRelationship(_0x5d254c,_0x3b1365,_0x494481,_0x43263b){return request({'form':{'method':'set_relationship','input_type':'JSON','response_type':_0x7668('0x1e'),'rest_data':JSON[_0x7668('0x1f')]({'session':_0x5d254c['id'],'module_name':_0x7668('0x20'),'module_id':_0x494481['id'],'link_field_name':_0x43263b,'related_ids':[_0x3b1365['id']],'name_value_list':[],'delete':0x0})}});}exports[_0x7668('0x54')]=function(_0x18af05,_0x394c0c,_0x581fdd,_0x1ae1e4,_0x35ec65,_0x2ae5c9){var _0x3ff530,_0x1d590a,_0x2179e6,_0x1aeef6;_0x2ae5c9[_0x7668('0x55')]=intUtil[_0x7668('0x56')](_0x2ae5c9[_0x7668('0x55')]);_0x2ae5c9[_0x7668('0x57')]=intUtil[_0x7668('0x56')](_0x2ae5c9['serverUrl']);def['uri']=util['format'](_0x7668('0x58'),_0x2ae5c9[_0x7668('0x55')]);if(_0x35ec65&&_0x35ec65['monitor_format']){logger[_0x7668('0x27')](_0x7668('0x59'),_0x7668('0x5a'));_0x394c0c['recordingURL']=util['format'](_0x7668('0x5b'),_0x2ae5c9[_0x7668('0x57')],_0x394c0c['uniqueid'],md5(_0x394c0c[_0x7668('0x5c')]));}else{_0x394c0c[_0x7668('0x5d')]='';}return getConnection(_0x2ae5c9)['then'](function(_0x1c510f){_0x1aeef6=_0x1c510f;return getUser(_0x2ae5c9,_0x1ae1e4['name'],_0x1aeef6);})[_0x7668('0x39')](function(_0x503aa7){_0x3ff530=_0x503aa7;logger[_0x7668('0x27')]('The\x20User\x20ID\x20is:',_0x3ff530['id']);return getEndUser(_0x2ae5c9,_0x394c0c[_0x7668('0x5e')],_0x394c0c[_0x7668('0x5f')],_0x1aeef6);})['then'](function(_0x3938f2){_0x1d590a=_0x3938f2;logger['info'](_0x7668('0x60'),_0x1d590a['id']);return getTicket(_0x2ae5c9,_0x3ff530,_0x1d590a,_0x581fdd,_0x394c0c,_0x581fdd[_0x7668('0x61')],_0x1aeef6,_0x7668('0x62'));})['then'](function(_0x4d626b){_0x2179e6=_0x4d626b;logger[_0x7668('0x27')]('Ticket\x20created!');logger[_0x7668('0x27')](_0x7668('0x63'),_0x2179e6['id']);return setRelationship(_0x1aeef6,_0x3ff530,_0x2179e6,_0x7668('0x64'));})[_0x7668('0x39')](function(){return setRelationship(_0x1aeef6,_0x1d590a,_0x2179e6,_0x7668('0x65'));})[_0x7668('0x39')](function(){return getServerInfo(_0x1aeef6);})[_0x7668('0x39')](function(_0x43824a){var _0xd9015b=parseInt(_0x43824a['version'][_0x7668('0x66')](0x0));var _0x194078=util[_0x7668('0x21')]('%s/index.php?action=ajaxui#ajaxUILoc=index.php%3Fmodule%3DCalls%26action%3DEditView%26record%3D%s',_0x2ae5c9[_0x7668('0x55')],_0x2179e6['id']);if(_0xd9015b>0x6){_0x194078=util[_0x7668('0x21')](_0x7668('0x67'),_0x2ae5c9['remoteUri'],_0x2179e6['id']);}logger[_0x7668('0x27')](_0x7668('0x59'),'Displaying\x20ticket\x20to\x20agent\x20in\x20a\x20new\x20tab...');emit(util[_0x7668('0x21')](_0x7668('0x68'),_0x1ae1e4['name']),_0x7668('0x69'),{'uri':_0x194078});})[_0x7668('0x6a')](function(_0x564652){logger[_0x7668('0x6b')](_0x7668('0x59'),JSON['stringify'](_0x564652));});};exports[_0x7668('0x6c')]=function(_0x5c4c19,_0x15db67,_0x54c828,_0x2e65c7,_0x4dde6a,_0xb9b2e2,_0x506d16){var _0x2b6b06,_0x5b312a,_0x8f3ac3,_0x2e876c;_0xb9b2e2[_0x7668('0x55')]=intUtil[_0x7668('0x56')](_0xb9b2e2[_0x7668('0x55')]);_0xb9b2e2[_0x7668('0x57')]=intUtil[_0x7668('0x56')](_0xb9b2e2[_0x7668('0x57')]);def[_0x7668('0x6d')]=util[_0x7668('0x21')](_0x7668('0x58'),_0xb9b2e2[_0x7668('0x55')]);if(_0x506d16&&_0x506d16[_0x7668('0x6e')]&&_0x506d16['recordingFormat']!=='none'){logger[_0x7668('0x27')](_0x7668('0x6f'),_0x7668('0x5a'));_0x15db67[_0x7668('0x5d')]=util[_0x7668('0x21')](_0x7668('0x5b'),_0xb9b2e2[_0x7668('0x57')],_0x15db67[_0x7668('0x5c')],md5(_0x15db67[_0x7668('0x5c')]));}return getConnection(_0xb9b2e2)[_0x7668('0x39')](function(_0x398338){_0x2e876c=_0x398338;return getUser(_0xb9b2e2,_0x2e65c7[_0x7668('0xd')],_0x2e876c);})['then'](function(_0x1e4a8f){_0x2b6b06=_0x1e4a8f;logger[_0x7668('0x27')]('The\x20User\x20ID\x20is:',_0x2b6b06['id']);return getEndUser(_0xb9b2e2,_0x15db67[_0x7668('0x70')],_0x15db67['destcalleridnum'],_0x2e876c);})[_0x7668('0x39')](function(_0x401419){_0x5b312a=_0x401419;logger[_0x7668('0x27')]('The\x20Enduser\x20ID\x20is:',_0x5b312a['id']);return getTicket(_0xb9b2e2,_0x2b6b06,_0x5b312a,_0x54c828,_0x15db67,_0x54c828[_0x7668('0x61')],_0x2e876c,_0x7668('0x71'));})[_0x7668('0x39')](function(_0x36e7f2){_0x8f3ac3=_0x36e7f2;logger[_0x7668('0x27')](_0x7668('0x72'));logger[_0x7668('0x27')]('The\x20Ticket\x20ID\x20is:',_0x8f3ac3['id']);return setRelationship(_0x2e876c,_0x2b6b06,_0x8f3ac3,_0x7668('0x64'));})[_0x7668('0x39')](function(){return setRelationship(_0x2e876c,_0x5b312a,_0x8f3ac3,_0x7668('0x65'));})[_0x7668('0x39')](function(){return getServerInfo(_0x2e876c);})[_0x7668('0x39')](function(_0x578179){var _0xad6dcf=parseInt(_0x578179[_0x7668('0x73')][_0x7668('0x66')](0x0));var _0xe9de3d=util['format'](_0x7668('0x74'),_0xb9b2e2[_0x7668('0x55')],_0x8f3ac3['id']);if(_0xad6dcf>0x6){_0xe9de3d=util['format'](_0x7668('0x67'),_0xb9b2e2[_0x7668('0x55')],_0x8f3ac3['id']);}logger[_0x7668('0x27')](_0x7668('0x6f'),'Displaying\x20ticket\x20to\x20agent\x20in\x20a\x20new\x20tab...');emit(util['format'](_0x7668('0x68'),_0x2e65c7[_0x7668('0xd')]),_0x7668('0x69'),{'uri':_0xe9de3d});})[_0x7668('0x6a')](function(_0x221fc2){logger[_0x7668('0x6b')]('[OUTBOUND]',JSON[_0x7668('0x1f')](_0x221fc2));});};exports[_0x7668('0x75')]=function(_0x487e7c,_0x498728,_0x2a1232,_0x51d7d1,_0x2705be,_0x204f40){var _0x3b5f8b,_0x1df486,_0x4b2772,_0x22afeb;_0x204f40['remoteUri']=intUtil[_0x7668('0x56')](_0x204f40['remoteUri']);_0x204f40[_0x7668('0x57')]=intUtil[_0x7668('0x56')](_0x204f40[_0x7668('0x57')]);def[_0x7668('0x6d')]=util['format'](_0x7668('0x58'),_0x204f40[_0x7668('0x55')]);if(_0x2705be&&_0x2705be[_0x7668('0x76')]){logger[_0x7668('0x27')]('['+_0x498728[_0x7668('0x77')][_0x7668('0x78')]()+']',_0x7668('0x5a'));_0x498728[_0x7668('0x5d')]=util['format'](_0x7668('0x5b'),_0x204f40[_0x7668('0x57')],_0x498728['uniqueid'],md5(_0x498728[_0x7668('0x5c')]));}else{_0x498728[_0x7668('0x5d')]='';}return getConnection(_0x204f40)[_0x7668('0x39')](function(_0x429f4d){_0x22afeb=_0x429f4d;if(!_[_0x7668('0x26')](_0x51d7d1)){return getUser(_0x204f40,_0x51d7d1[_0x7668('0xd')],_0x22afeb);}else{return getUser(_0x204f40,null,_0x22afeb);}})[_0x7668('0x39')](function(_0x5935e3){_0x3b5f8b=_0x5935e3;logger[_0x7668('0x27')](_0x7668('0x79'),_0x3b5f8b['id']);return getEndUser(_0x204f40,_0x498728[_0x7668('0x5e')],_0x498728[_0x7668('0x5f')],_0x22afeb);})[_0x7668('0x39')](function(_0x1b2932){_0x1df486=_0x1b2932;logger['info'](_0x7668('0x60'),_0x1df486['id']);return getTicket(_0x204f40,_0x3b5f8b,_0x1df486,_0x2a1232,_0x498728,_0x2a1232[_0x7668('0x61')],_0x22afeb,'Inbound');})['then'](function(_0x41467b){_0x4b2772=_0x41467b;logger[_0x7668('0x27')](_0x7668('0x72'));logger[_0x7668('0x27')](_0x7668('0x63'),_0x4b2772['id']);return setRelationship(_0x22afeb,_0x3b5f8b,_0x4b2772,'users');})[_0x7668('0x39')](function(){return setRelationship(_0x22afeb,_0x1df486,_0x4b2772,'contacts');})['then'](function(){return getServerInfo(_0x22afeb);})[_0x7668('0x6a')](function(_0x38a998){logger[_0x7668('0x6b')]('['+_0x498728[_0x7668('0x77')]['toUpperCase']()+']',JSON[_0x7668('0x1f')](_0x38a998));});};
\ No newline at end of file