Built motion from commit ab870f9e.|2.5.44
[motion2.git] / server / services / ami / trigger / integration / sugarcrm.js
index 64f908f..70b083e 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x82f4=['find','name_value_list','user_name','Agent\x20found!','resolve','value','Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!','Agent\x20not\x20available,\x20using\x20the\x20admin\x20account!','user_id','Searching\x20enduser\x20with\x20phone','Contacts','phone_home','Enduser\x20found!','Enduser\x20not\x20found,\x20creating\x20a\x20new\x20enduser!','first_name','Caller\x20-\x20%s','Enduser\x20created.','[HTTP]','merge','map','nameField','toLowerCase','content','type','string','customField','custom_fields','push','variable','customVariable','Variable','login','username','xCALLY\x20Motion\x20integration','set_relationship','queue','remoteUri','serverUrl','stripTrailingSlash','[QUEUE]','Recording\x20is\x20enabled!','recordingURL','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','uniqueid','The\x20User\x20ID\x20is:','calleridname','The\x20Enduser\x20ID\x20is:','Fields','Inbound','Ticket\x20created!','The\x20Ticket\x20ID\x20is:','charAt','%s/#bwc/index.php?module=Calls&action=EditView&record=%s','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','users','contacts','version','%s/index.php?action=ajaxui#ajaxUILoc=index.php%3Fmodule%3DCalls%26action%3DEditView%26record%3D%s','uri','monitor_format','lastevent','toUpperCase','calleridnum','lodash','request-promise','md5','util','ioredis','./util','../../../../config/environment','../../../../config/logger','redis','defaults','socket.io-emitter','POST','emit','info','Creating\x20new\x20ticket...','name','getString','Subjects','assigned_user_id','created_by','description','date_start','toISOString','slice','replace','duration_minutes','parent_id','parent_type','parent_name','length','forEach','variableName','idField','set_entry','JSON','stringify','Calls','format','apiKey','toString','base64','get_server_info','isNil','Getting\x20agent\x20with\x20name','get_entry_list','Employees','INSTR\x20(\x20users.user_name,\x20\x22%s\x22)\x20>\x200','then','entry_list'];(function(_0x798c2d,_0x437fdf){var _0x19517e=function(_0x4f155f){while(--_0x4f155f){_0x798c2d['push'](_0x798c2d['shift']());}};_0x19517e(++_0x437fdf);}(_0x82f4,0x1bf));var _0x482f=function(_0x176f4f,_0x35bfed){_0x176f4f=_0x176f4f-0x0;var _0x6185d2=_0x82f4[_0x176f4f];return _0x6185d2;};'use strict';var _=require(_0x482f('0x0'));var rp=require(_0x482f('0x1'));var BPromise=require('bluebird');var md5=require(_0x482f('0x2'));var util=require(_0x482f('0x3'));var Redis=require(_0x482f('0x4'));var intUtil=require(_0x482f('0x5'));var config=require(_0x482f('0x6'));var logger=require(_0x482f('0x7'))('sugarcrm');config[_0x482f('0x8')]=_[_0x482f('0x9')](config[_0x482f('0x8')],{'host':'localhost','port':0x18eb});var io=require(_0x482f('0xa'))(new Redis(config[_0x482f('0x8')]));var def={'method':_0x482f('0xb'),'json':!![]};function emit(_0x549235,_0x28c43b,_0x2fd112){io['to'](_0x549235)[_0x482f('0xc')](_0x28c43b,_0x2fd112);}function getTicket(_0x8aab6b,_0x4e18e1,_0x532e7f,_0x3a6c20,_0x4e8457,_0xdf2d46,_0x107a0a,_0x1b6cca){logger[_0x482f('0xd')](_0x482f('0xe'));var _0x3b6b5f=new Date();var _0x5c5de0=[{'name':_0x482f('0xf'),'value':intUtil[_0x482f('0x10')](_0x3a6c20[_0x482f('0x11')],_0x4e8457,'\x20')},{'name':_0x482f('0x12'),'value':_0x4e18e1['id']},{'name':_0x482f('0x13'),'value':_0x4e18e1['id']},{'name':_0x482f('0x14'),'value':intUtil['getString'](_0x3a6c20['Descriptions'],_0x4e8457,'\x0a')},{'name':_0x482f('0x15'),'value':_0x3b6b5f[_0x482f('0x16')]()[_0x482f('0x17')](0x0,0x13)[_0x482f('0x18')]('T','\x20')},{'name':'duration_hours','value':'0'},{'name':_0x482f('0x19'),'value':'15'},{'name':_0x482f('0x1a'),'value':_0x532e7f['id']},{'name':_0x482f('0x1b'),'value':'Contacts'},{'name':_0x482f('0x1c'),'value':_0x532e7f['name']},{'name':'direction','value':_0x1b6cca}];if(_0xdf2d46[_0x482f('0x1d')]){_[_0x482f('0x1e')](_0xdf2d46,function(_0x49da93){if(_0x4e8457[_0x49da93[_0x482f('0x1f')]]){_0x5c5de0['push']({'name':_0x49da93[_0x482f('0x20')],'value':_0x4e8457[_0x49da93['variableName']]});}});}return request({'form':{'method':_0x482f('0x21'),'input_type':_0x482f('0x22'),'response_type':_0x482f('0x22'),'rest_data':JSON[_0x482f('0x23')]({'session':_0x107a0a['id'],'module_name':_0x482f('0x24'),'name_value_list':_0x5c5de0})}});}function getAuth(_0x214880){return util[_0x482f('0x25')]('Basic\x20%s',new Buffer(_0x214880[_0x482f('0x26')]+':X')[_0x482f('0x27')](_0x482f('0x28')));}function getServerInfo(_0x45c9f1){return request({'form':{'method':_0x482f('0x29'),'input_type':_0x482f('0x22'),'response_type':'JSON','rest_data':JSON[_0x482f('0x23')]({'session':_0x45c9f1['id']})}});}function getUser(_0x12fde6,_0x1150a7,_0x13dd80){if(!_[_0x482f('0x2a')](_0x1150a7)){logger['info'](_0x482f('0x2b'),_0x1150a7);return request({'form':{'method':_0x482f('0x2c'),'input_type':_0x482f('0x22'),'response_type':_0x482f('0x22'),'rest_data':JSON['stringify']({'session':_0x13dd80['id'],'module_name':_0x482f('0x2d'),'query':util['format'](_0x482f('0x2e'),_0x1150a7),'order_by':'','offset':'0','select_fields':['id',_0x482f('0xf'),'user_name'],'link_name_to_fields_array':[],'max_results':-0x1,'deleted':'0'})}})[_0x482f('0x2f')](function(_0x585273){if(_0x585273[_0x482f('0x30')][_0x482f('0x1d')]){var _0x896562=_[_0x482f('0x31')](_0x585273[_0x482f('0x30')],function(_0x21ab72){return _0x21ab72[_0x482f('0x32')][_0x482f('0x33')]['value']===_0x1150a7;});if(_0x896562){logger['info'](_0x482f('0x34'));return BPromise[_0x482f('0x35')]({'id':_0x896562['name_value_list']['id'][_0x482f('0x36')],'name':_0x896562[_0x482f('0x32')][_0x482f('0xf')][_0x482f('0x36')]});}}logger['info'](_0x482f('0x37'));return BPromise[_0x482f('0x35')]({'id':_0x13dd80['name_value_list']['user_id'][_0x482f('0x36')],'name':_0x13dd80[_0x482f('0x32')][_0x482f('0x33')][_0x482f('0x36')]});});}else{logger[_0x482f('0xd')](_0x482f('0x38'));return BPromise['resolve']({'id':_0x13dd80['name_value_list'][_0x482f('0x39')][_0x482f('0x36')],'name':_0x13dd80[_0x482f('0x32')][_0x482f('0x33')][_0x482f('0x36')]});}}function getEndUser(_0x64c7f1,_0x15425a,_0x48b184,_0x51d1aa){logger[_0x482f('0xd')](_0x482f('0x3a'),_0x48b184);return request({'form':{'method':_0x482f('0x2c'),'input_type':_0x482f('0x22'),'response_type':_0x482f('0x22'),'rest_data':JSON[_0x482f('0x23')]({'session':_0x51d1aa['id'],'module_name':_0x482f('0x3b'),'query':util['format']('contacts.phone_home\x20=\x20\x22%s\x22',_0x48b184),'order_by':'','offset':'0','select_fields':['id',_0x482f('0xf'),_0x482f('0x3c')],'link_name_to_fields_array':[],'max_results':-0x1,'deleted':'0'})}})[_0x482f('0x2f')](function(_0x5193d6){if(_0x5193d6['entry_list']['length']){var _0x31a3d4=_[_0x482f('0x31')](_0x5193d6['entry_list'],function(_0x57710b){return _0x57710b[_0x482f('0x32')][_0x482f('0x3c')]['value']===_0x48b184;});if(_0x31a3d4){logger[_0x482f('0xd')](_0x482f('0x3d'));return BPromise[_0x482f('0x35')]({'id':_0x31a3d4[_0x482f('0x32')]['id'][_0x482f('0x36')],'name':_0x31a3d4[_0x482f('0x32')]['name'][_0x482f('0x36')],'phone':_0x31a3d4[_0x482f('0x32')][_0x482f('0x3c')][_0x482f('0x36')]});}}else{logger[_0x482f('0xd')](_0x482f('0x3e'));return request({'form':{'method':_0x482f('0x21'),'input_type':_0x482f('0x22'),'response_type':'JSON','rest_data':JSON['stringify']({'session':_0x51d1aa['id'],'module_name':_0x482f('0x3b'),'name_value_list':[{'name':_0x482f('0x3f'),'value':_0x15425a!=='<unknown>'?_0x15425a:util[_0x482f('0x25')](_0x482f('0x40'),_0x48b184)},{'name':_0x482f('0x3c'),'value':_0x48b184}]})}})[_0x482f('0x2f')](function(_0x264b52){logger[_0x482f('0xd')](_0x482f('0x41'));return BPromise['resolve']({'id':_0x264b52['id'],'name':_0x264b52[_0x482f('0x30')]['first_name'][_0x482f('0x36')],'phone':_0x264b52[_0x482f('0x30')][_0x482f('0x3c')]['value']});});}});}function request(_0x382c51){logger['debug'](_0x482f('0x42'),JSON[_0x482f('0x23')](_0x382c51));return rp(_[_0x482f('0x43')](def,_0x382c51));}function getTags(_0x159f0a,_0xd1f183){var _0x25efdf=[];if(_0x159f0a&&_0x159f0a[_0x482f('0x1d')]>0x0){_0x25efdf=_[_0x482f('0x44')](_0x159f0a,_0xd1f183);}return _0x25efdf;}function getCustomFields(_0xe67e2b,_0x2b68c4){var _0x388f29=[];var _0x46d0f4={'custom_fields':[]};if(_0xe67e2b[_0x482f('0x1d')]>0x0){_['forEach'](_0xe67e2b,function(_0x3635ff){if(_0x3635ff['type']==='string'&&_0x3635ff[_0x482f('0x45')]&&!_0x3635ff['customField']){_0x46d0f4[_0x3635ff[_0x482f('0x45')][_0x482f('0x46')]()]=_0x3635ff[_0x482f('0x47')]['toString']();}else if(_0x3635ff[_0x482f('0x48')]===_0x482f('0x49')&&_0x3635ff[_0x482f('0x20')]&&_0x3635ff[_0x482f('0x4a')]){_0x46d0f4[_0x482f('0x4b')][_0x482f('0x4c')]({'id':_0x3635ff['idField'],'value':_0x3635ff[_0x482f('0x47')][_0x482f('0x27')]()});}else if(_0x3635ff[_0x482f('0x48')]===_0x482f('0x4d')&&_0x3635ff[_0x482f('0x1f')]&&_0x3635ff[_0x482f('0x20')]&&_0x3635ff[_0x482f('0x4a')]){_0x2b68c4[_0x3635ff['variableName']]&&_0x46d0f4[_0x482f('0x4b')][_0x482f('0x4c')]({'id':_0x3635ff[_0x482f('0x20')],'value':_0x2b68c4[_0x3635ff['variableName']][_0x482f('0x27')]()});}else if(_0x3635ff[_0x482f('0x48')]===_0x482f('0x4e')&&_0x3635ff['Variable']&&_0x3635ff[_0x482f('0x4f')][_0x482f('0xf')]&&_0x3635ff[_0x482f('0x20')]&&_0x3635ff[_0x482f('0x4a')]){_0x2b68c4[_0x3635ff[_0x482f('0x4f')]['name']['toLowerCase']()]&&_0x46d0f4[_0x482f('0x4b')][_0x482f('0x4c')]({'id':_0x3635ff[_0x482f('0x20')],'value':_0x2b68c4[_0x3635ff['Variable']['name'][_0x482f('0x46')]()][_0x482f('0x27')]()});}});}return _0x46d0f4;}function getConnection(_0x452ab5){return request({'method':_0x482f('0xb'),'form':{'method':_0x482f('0x50'),'input_type':'JSON','response_type':'JSON','rest_data':JSON['stringify']({'user_auth':{'user_name':_0x452ab5[_0x482f('0x51')],'password':_0x452ab5['password'],'encryption':'PLAIN'},'application':_0x482f('0x52')})}})[_0x482f('0x2f')](function(_0x2377f0){var _0x29b7fb=_0x2377f0;if(_0x29b7fb['id']){def['sessionID']=_0x29b7fb['id'];return BPromise[_0x482f('0x35')](_0x29b7fb);}else{throw new Error(util[_0x482f('0x25')]('Account\x20%d\x20is\x20not\x20valid',_0x452ab5['id']));}});}function setRelationship(_0x5b4a04,_0x49d7d2,_0x4431d2,_0x512f75){return request({'form':{'method':_0x482f('0x53'),'input_type':'JSON','response_type':_0x482f('0x22'),'rest_data':JSON[_0x482f('0x23')]({'session':_0x5b4a04['id'],'module_name':_0x482f('0x24'),'module_id':_0x4431d2['id'],'link_field_name':_0x512f75,'related_ids':[_0x49d7d2['id']],'name_value_list':[],'delete':0x0})}});}exports[_0x482f('0x54')]=function(_0x2ae5c8,_0x1e7ca9,_0x4fc526,_0x161865,_0x1cd68b,_0xc3774e){var _0x5a531d,_0x590167,_0x4b43dd,_0x13fccb;_0xc3774e[_0x482f('0x55')]=intUtil['stripTrailingSlash'](_0xc3774e[_0x482f('0x55')]);_0xc3774e[_0x482f('0x56')]=intUtil[_0x482f('0x57')](_0xc3774e[_0x482f('0x56')]);def['uri']=util[_0x482f('0x25')]('%s/service/v4_1/rest.php',_0xc3774e[_0x482f('0x55')]);if(_0x1cd68b&&_0x1cd68b['monitor_format']){logger[_0x482f('0xd')](_0x482f('0x58'),_0x482f('0x59'));_0x1e7ca9[_0x482f('0x5a')]=util[_0x482f('0x25')](_0x482f('0x5b'),_0xc3774e[_0x482f('0x56')],_0x1e7ca9['uniqueid'],md5(_0x1e7ca9[_0x482f('0x5c')]));}else{_0x1e7ca9[_0x482f('0x5a')]='';}return getConnection(_0xc3774e)[_0x482f('0x2f')](function(_0x4e4006){_0x13fccb=_0x4e4006;return getUser(_0xc3774e,_0x161865['name'],_0x13fccb);})[_0x482f('0x2f')](function(_0x3fa1d9){_0x5a531d=_0x3fa1d9;logger[_0x482f('0xd')](_0x482f('0x5d'),_0x5a531d['id']);return getEndUser(_0xc3774e,_0x1e7ca9[_0x482f('0x5e')],_0x1e7ca9['calleridnum'],_0x13fccb);})[_0x482f('0x2f')](function(_0xe7ad3b){_0x590167=_0xe7ad3b;logger[_0x482f('0xd')](_0x482f('0x5f'),_0x590167['id']);return getTicket(_0xc3774e,_0x5a531d,_0x590167,_0x4fc526,_0x1e7ca9,_0x4fc526[_0x482f('0x60')],_0x13fccb,_0x482f('0x61'));})['then'](function(_0x1b16fb){_0x4b43dd=_0x1b16fb;logger[_0x482f('0xd')](_0x482f('0x62'));logger['info'](_0x482f('0x63'),_0x4b43dd['id']);return setRelationship(_0x13fccb,_0x5a531d,_0x4b43dd,'users');})[_0x482f('0x2f')](function(){return setRelationship(_0x13fccb,_0x590167,_0x4b43dd,'contacts');})[_0x482f('0x2f')](function(){return getServerInfo(_0x13fccb);})['then'](function(_0x11c2ff){var _0x372763=parseInt(_0x11c2ff['version'][_0x482f('0x64')](0x0));var _0x5ef58b=util['format']('%s/index.php?action=ajaxui#ajaxUILoc=index.php%3Fmodule%3DCalls%26action%3DEditView%26record%3D%s',_0xc3774e[_0x482f('0x55')],_0x4b43dd['id']);if(_0x372763>0x6){_0x5ef58b=util['format'](_0x482f('0x65'),_0xc3774e[_0x482f('0x55')],_0x4b43dd['id']);}logger[_0x482f('0xd')](_0x482f('0x58'),_0x482f('0x66'));emit(util['format'](_0x482f('0x67'),_0x161865[_0x482f('0xf')]),_0x482f('0x68'),{'uri':_0x5ef58b});})[_0x482f('0x69')](function(_0x3cb808){logger[_0x482f('0x6a')](_0x482f('0x58'),JSON[_0x482f('0x23')](_0x3cb808));});};exports[_0x482f('0x6b')]=function(_0x5e320f,_0x20a64f,_0xfbbfe1,_0x28dad0,_0x3f0c17,_0x35f618,_0x4622b0){var _0x4bef3c,_0x55339b,_0x1f5f39,_0x51c74f;_0x35f618[_0x482f('0x55')]=intUtil[_0x482f('0x57')](_0x35f618['remoteUri']);_0x35f618[_0x482f('0x56')]=intUtil['stripTrailingSlash'](_0x35f618[_0x482f('0x56')]);def['uri']=util[_0x482f('0x25')](_0x482f('0x6c'),_0x35f618['remoteUri']);if(_0x4622b0&&_0x4622b0[_0x482f('0x6d')]&&_0x4622b0[_0x482f('0x6d')]!==_0x482f('0x6e')){logger[_0x482f('0xd')](_0x482f('0x6f'),_0x482f('0x59'));_0x20a64f[_0x482f('0x5a')]=util[_0x482f('0x25')](_0x482f('0x5b'),_0x35f618[_0x482f('0x56')],_0x20a64f[_0x482f('0x5c')],md5(_0x20a64f[_0x482f('0x5c')]));}return getConnection(_0x35f618)[_0x482f('0x2f')](function(_0x14c19a){_0x51c74f=_0x14c19a;return getUser(_0x35f618,_0x28dad0['name'],_0x51c74f);})['then'](function(_0x4bdff1){_0x4bef3c=_0x4bdff1;logger[_0x482f('0xd')](_0x482f('0x5d'),_0x4bef3c['id']);return getEndUser(_0x35f618,_0x20a64f[_0x482f('0x70')],_0x20a64f[_0x482f('0x71')],_0x51c74f);})[_0x482f('0x2f')](function(_0x45e826){_0x55339b=_0x45e826;logger[_0x482f('0xd')](_0x482f('0x5f'),_0x55339b['id']);return getTicket(_0x35f618,_0x4bef3c,_0x55339b,_0xfbbfe1,_0x20a64f,_0xfbbfe1[_0x482f('0x60')],_0x51c74f,_0x482f('0x72'));})['then'](function(_0x301999){_0x1f5f39=_0x301999;logger['info']('Ticket\x20created!');logger[_0x482f('0xd')](_0x482f('0x63'),_0x1f5f39['id']);return setRelationship(_0x51c74f,_0x4bef3c,_0x1f5f39,_0x482f('0x73'));})[_0x482f('0x2f')](function(){return setRelationship(_0x51c74f,_0x55339b,_0x1f5f39,_0x482f('0x74'));})[_0x482f('0x2f')](function(){return getServerInfo(_0x51c74f);})[_0x482f('0x2f')](function(_0x21a932){var _0x46700d=parseInt(_0x21a932[_0x482f('0x75')][_0x482f('0x64')](0x0));var _0x344d9a=util[_0x482f('0x25')](_0x482f('0x76'),_0x35f618[_0x482f('0x55')],_0x1f5f39['id']);if(_0x46700d>0x6){_0x344d9a=util[_0x482f('0x25')](_0x482f('0x65'),_0x35f618['remoteUri'],_0x1f5f39['id']);}logger[_0x482f('0xd')]('[OUTBOUND]',_0x482f('0x66'));emit(util[_0x482f('0x25')]('user:%s',_0x28dad0['name']),_0x482f('0x68'),{'uri':_0x344d9a});})[_0x482f('0x69')](function(_0x53b308){logger[_0x482f('0x6a')](_0x482f('0x6f'),JSON[_0x482f('0x23')](_0x53b308));});};exports['unmanaged']=function(_0x4ecbc8,_0x49ce67,_0x36e0f0,_0xd7443d,_0xfc6bf3,_0x51ae72){var _0x4fd778,_0x4826fb,_0x56b77e,_0x1542eb;_0x51ae72[_0x482f('0x55')]=intUtil[_0x482f('0x57')](_0x51ae72[_0x482f('0x55')]);_0x51ae72['serverUrl']=intUtil['stripTrailingSlash'](_0x51ae72[_0x482f('0x56')]);def[_0x482f('0x77')]=util[_0x482f('0x25')]('%s/service/v4_1/rest.php',_0x51ae72['remoteUri']);if(_0xfc6bf3&&_0xfc6bf3[_0x482f('0x78')]){logger[_0x482f('0xd')]('['+_0x49ce67[_0x482f('0x79')][_0x482f('0x7a')]()+']','Recording\x20is\x20enabled!');_0x49ce67[_0x482f('0x5a')]=util[_0x482f('0x25')](_0x482f('0x5b'),_0x51ae72['serverUrl'],_0x49ce67[_0x482f('0x5c')],md5(_0x49ce67[_0x482f('0x5c')]));}else{_0x49ce67['recordingURL']='';}return getConnection(_0x51ae72)[_0x482f('0x2f')](function(_0x2c3c97){_0x1542eb=_0x2c3c97;if(!_[_0x482f('0x2a')](_0xd7443d)){return getUser(_0x51ae72,_0xd7443d[_0x482f('0xf')],_0x1542eb);}else{return getUser(_0x51ae72,null,_0x1542eb);}})[_0x482f('0x2f')](function(_0x35c465){_0x4fd778=_0x35c465;logger[_0x482f('0xd')](_0x482f('0x5d'),_0x4fd778['id']);return getEndUser(_0x51ae72,_0x49ce67[_0x482f('0x5e')],_0x49ce67[_0x482f('0x7b')],_0x1542eb);})[_0x482f('0x2f')](function(_0x5d6fac){_0x4826fb=_0x5d6fac;logger['info']('The\x20Enduser\x20ID\x20is:',_0x4826fb['id']);return getTicket(_0x51ae72,_0x4fd778,_0x4826fb,_0x36e0f0,_0x49ce67,_0x36e0f0[_0x482f('0x60')],_0x1542eb,_0x482f('0x61'));})[_0x482f('0x2f')](function(_0x2c77c0){_0x56b77e=_0x2c77c0;logger[_0x482f('0xd')](_0x482f('0x62'));logger['info'](_0x482f('0x63'),_0x56b77e['id']);return setRelationship(_0x1542eb,_0x4fd778,_0x56b77e,_0x482f('0x73'));})[_0x482f('0x2f')](function(){return setRelationship(_0x1542eb,_0x4826fb,_0x56b77e,_0x482f('0x74'));})[_0x482f('0x2f')](function(){return getServerInfo(_0x1542eb);})['catch'](function(_0x253b22){logger['error']('['+_0x49ce67[_0x482f('0x79')]['toUpperCase']()+']',JSON[_0x482f('0x23')](_0x253b22));});};
\ No newline at end of file
+var _0x5514=['Enduser\x20found!','Enduser\x20not\x20found,\x20creating\x20a\x20new\x20enduser!','set_entry','first_name','<unknown>','Enduser\x20created.','debug','merge','map','type','nameField','customField','toLowerCase','string','custom_fields','content','variable','customVariable','Variable','POST','login','Account\x20%d\x20is\x20not\x20valid','set_relationship','Calls','queue','remoteUri','serverUrl','stripTrailingSlash','uri','[QUEUE]','recordingURL','The\x20User\x20ID\x20is:','calleridname','calleridnum','The\x20Enduser\x20ID\x20is:','Fields','Inbound','The\x20Ticket\x20ID\x20is:','users','contacts','version','charAt','%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','%s/service/v4_1/rest.php','recordingFormat','none','Recording\x20is\x20enabled!','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','uniqueid','destcalleridname','Outbound','%s/index.php?action=ajaxui#ajaxUILoc=index.php%3Fmodule%3DCalls%26action%3DEditView%26record%3D%s','[OUTBOUND]','error','monitor_format','lastevent','toUpperCase','Ticket\x20created!','lodash','request-promise','bluebird','md5','util','ioredis','./util','../../../../config/environment','../../../../config/logger','sugarcrm','socket.io-emitter','redis','emit','info','name','created_by','description','getString','Descriptions','date_start','slice','replace','duration_hours','duration_minutes','parent_id','parent_type','direction','length','forEach','variableName','push','idField','JSON','stringify','Basic\x20%s','apiKey','toString','base64','Getting\x20agent\x20with\x20name','get_entry_list','Employees','format','INSTR\x20(\x20users.user_name,\x20\x22%s\x22)\x20>\x200','entry_list','find','Agent\x20found!','resolve','name_value_list','value','Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!','user_id','user_name','Contacts','contacts.phone_home\x20=\x20\x22%s\x22','phone_home','then'];(function(_0x899a00,_0x4847e3){var _0x599f0b=function(_0xfb2007){while(--_0xfb2007){_0x899a00['push'](_0x899a00['shift']());}};_0x599f0b(++_0x4847e3);}(_0x5514,0x1a4));var _0x4551=function(_0x29d915,_0x54a040){_0x29d915=_0x29d915-0x0;var _0x160f86=_0x5514[_0x29d915];return _0x160f86;};'use strict';var _=require(_0x4551('0x0'));var rp=require(_0x4551('0x1'));var BPromise=require(_0x4551('0x2'));var md5=require(_0x4551('0x3'));var util=require(_0x4551('0x4'));var Redis=require(_0x4551('0x5'));var intUtil=require(_0x4551('0x6'));var config=require(_0x4551('0x7'));var logger=require(_0x4551('0x8'))(_0x4551('0x9'));config['redis']=_['defaults'](config['redis'],{'host':'localhost','port':0x18eb});var io=require(_0x4551('0xa'))(new Redis(config[_0x4551('0xb')]));var def={'method':'POST','json':!![]};function emit(_0x284028,_0x39bf25,_0x785477){io['to'](_0x284028)[_0x4551('0xc')](_0x39bf25,_0x785477);}function getTicket(_0xd76dfc,_0x56cfdf,_0x5e90a3,_0x17b547,_0x24301f,_0x29c091,_0x481f40,_0x476441){logger[_0x4551('0xd')]('Creating\x20new\x20ticket...');var _0xf333b8=new Date();var _0x443be1=[{'name':_0x4551('0xe'),'value':intUtil['getString'](_0x17b547['Subjects'],_0x24301f,'\x20')},{'name':'assigned_user_id','value':_0x56cfdf['id']},{'name':_0x4551('0xf'),'value':_0x56cfdf['id']},{'name':_0x4551('0x10'),'value':intUtil[_0x4551('0x11')](_0x17b547[_0x4551('0x12')],_0x24301f,'\x0a')},{'name':_0x4551('0x13'),'value':_0xf333b8['toISOString']()[_0x4551('0x14')](0x0,0x13)[_0x4551('0x15')]('T','\x20')},{'name':_0x4551('0x16'),'value':'0'},{'name':_0x4551('0x17'),'value':'15'},{'name':_0x4551('0x18'),'value':_0x5e90a3['id']},{'name':_0x4551('0x19'),'value':'Contacts'},{'name':'parent_name','value':_0x5e90a3['name']},{'name':_0x4551('0x1a'),'value':_0x476441}];if(_0x29c091[_0x4551('0x1b')]){_[_0x4551('0x1c')](_0x29c091,function(_0x1d6e35){if(_0x24301f[_0x1d6e35[_0x4551('0x1d')]]){_0x443be1[_0x4551('0x1e')]({'name':_0x1d6e35[_0x4551('0x1f')],'value':_0x24301f[_0x1d6e35[_0x4551('0x1d')]]});}});}return request({'form':{'method':'set_entry','input_type':'JSON','response_type':_0x4551('0x20'),'rest_data':JSON[_0x4551('0x21')]({'session':_0x481f40['id'],'module_name':'Calls','name_value_list':_0x443be1})}});}function getAuth(_0xca40f7){return util['format'](_0x4551('0x22'),new Buffer(_0xca40f7[_0x4551('0x23')]+':X')[_0x4551('0x24')](_0x4551('0x25')));}function getServerInfo(_0x46de18){return request({'form':{'method':'get_server_info','input_type':'JSON','response_type':_0x4551('0x20'),'rest_data':JSON['stringify']({'session':_0x46de18['id']})}});}function getUser(_0x1d3050,_0x1685f6,_0x47fcd8){if(!_['isNil'](_0x1685f6)){logger[_0x4551('0xd')](_0x4551('0x26'),_0x1685f6);return request({'form':{'method':_0x4551('0x27'),'input_type':_0x4551('0x20'),'response_type':'JSON','rest_data':JSON[_0x4551('0x21')]({'session':_0x47fcd8['id'],'module_name':_0x4551('0x28'),'query':util[_0x4551('0x29')](_0x4551('0x2a'),_0x1685f6),'order_by':'','offset':'0','select_fields':['id',_0x4551('0xe'),'user_name'],'link_name_to_fields_array':[],'max_results':-0x1,'deleted':'0'})}})['then'](function(_0x1985b1){if(_0x1985b1[_0x4551('0x2b')][_0x4551('0x1b')]){var _0xf39221=_[_0x4551('0x2c')](_0x1985b1[_0x4551('0x2b')],function(_0x9541ff){return _0x9541ff['name_value_list']['user_name']['value']===_0x1685f6;});if(_0xf39221){logger[_0x4551('0xd')](_0x4551('0x2d'));return BPromise[_0x4551('0x2e')]({'id':_0xf39221[_0x4551('0x2f')]['id'][_0x4551('0x30')],'name':_0xf39221['name_value_list']['name']['value']});}}logger[_0x4551('0xd')](_0x4551('0x31'));return BPromise[_0x4551('0x2e')]({'id':_0x47fcd8[_0x4551('0x2f')][_0x4551('0x32')][_0x4551('0x30')],'name':_0x47fcd8['name_value_list']['user_name']['value']});});}else{logger['info']('Agent\x20not\x20available,\x20using\x20the\x20admin\x20account!');return BPromise[_0x4551('0x2e')]({'id':_0x47fcd8['name_value_list']['user_id'][_0x4551('0x30')],'name':_0x47fcd8[_0x4551('0x2f')][_0x4551('0x33')][_0x4551('0x30')]});}}function getEndUser(_0x1a74b8,_0x949c03,_0x384304,_0x1fab2b){logger[_0x4551('0xd')]('Searching\x20enduser\x20with\x20phone',_0x384304);return request({'form':{'method':_0x4551('0x27'),'input_type':_0x4551('0x20'),'response_type':_0x4551('0x20'),'rest_data':JSON[_0x4551('0x21')]({'session':_0x1fab2b['id'],'module_name':_0x4551('0x34'),'query':util[_0x4551('0x29')](_0x4551('0x35'),_0x384304),'order_by':'','offset':'0','select_fields':['id',_0x4551('0xe'),_0x4551('0x36')],'link_name_to_fields_array':[],'max_results':-0x1,'deleted':'0'})}})[_0x4551('0x37')](function(_0x3551fd){if(_0x3551fd[_0x4551('0x2b')]['length']){var _0x1da85c=_['find'](_0x3551fd[_0x4551('0x2b')],function(_0xe3f4e2){return _0xe3f4e2[_0x4551('0x2f')][_0x4551('0x36')]['value']===_0x384304;});if(_0x1da85c){logger[_0x4551('0xd')](_0x4551('0x38'));return BPromise[_0x4551('0x2e')]({'id':_0x1da85c[_0x4551('0x2f')]['id'][_0x4551('0x30')],'name':_0x1da85c['name_value_list']['name'][_0x4551('0x30')],'phone':_0x1da85c['name_value_list'][_0x4551('0x36')][_0x4551('0x30')]});}}else{logger[_0x4551('0xd')](_0x4551('0x39'));return request({'form':{'method':_0x4551('0x3a'),'input_type':_0x4551('0x20'),'response_type':'JSON','rest_data':JSON[_0x4551('0x21')]({'session':_0x1fab2b['id'],'module_name':_0x4551('0x34'),'name_value_list':[{'name':_0x4551('0x3b'),'value':_0x949c03!==_0x4551('0x3c')?_0x949c03:util[_0x4551('0x29')]('Caller\x20-\x20%s',_0x384304)},{'name':_0x4551('0x36'),'value':_0x384304}]})}})[_0x4551('0x37')](function(_0x6aa41c){logger['info'](_0x4551('0x3d'));return BPromise[_0x4551('0x2e')]({'id':_0x6aa41c['id'],'name':_0x6aa41c[_0x4551('0x2b')][_0x4551('0x3b')]['value'],'phone':_0x6aa41c[_0x4551('0x2b')][_0x4551('0x36')][_0x4551('0x30')]});});}});}function request(_0x372b54){logger[_0x4551('0x3e')]('[HTTP]',JSON[_0x4551('0x21')](_0x372b54));return rp(_[_0x4551('0x3f')](def,_0x372b54));}function getTags(_0x54390a,_0x14fd8a){var _0x2a596e=[];if(_0x54390a&&_0x54390a[_0x4551('0x1b')]>0x0){_0x2a596e=_[_0x4551('0x40')](_0x54390a,_0x14fd8a);}return _0x2a596e;}function getCustomFields(_0xe5cbbf,_0x1ee2af){var _0x59c33d=[];var _0x3142b7={'custom_fields':[]};if(_0xe5cbbf[_0x4551('0x1b')]>0x0){_[_0x4551('0x1c')](_0xe5cbbf,function(_0x17f0c9){if(_0x17f0c9[_0x4551('0x41')]==='string'&&_0x17f0c9[_0x4551('0x42')]&&!_0x17f0c9[_0x4551('0x43')]){_0x3142b7[_0x17f0c9[_0x4551('0x42')][_0x4551('0x44')]()]=_0x17f0c9['content'][_0x4551('0x24')]();}else if(_0x17f0c9['type']===_0x4551('0x45')&&_0x17f0c9[_0x4551('0x1f')]&&_0x17f0c9[_0x4551('0x43')]){_0x3142b7[_0x4551('0x46')][_0x4551('0x1e')]({'id':_0x17f0c9[_0x4551('0x1f')],'value':_0x17f0c9[_0x4551('0x47')][_0x4551('0x24')]()});}else if(_0x17f0c9[_0x4551('0x41')]===_0x4551('0x48')&&_0x17f0c9[_0x4551('0x1d')]&&_0x17f0c9[_0x4551('0x1f')]&&_0x17f0c9[_0x4551('0x43')]){_0x1ee2af[_0x17f0c9[_0x4551('0x1d')]]&&_0x3142b7[_0x4551('0x46')]['push']({'id':_0x17f0c9['idField'],'value':_0x1ee2af[_0x17f0c9['variableName']][_0x4551('0x24')]()});}else if(_0x17f0c9[_0x4551('0x41')]===_0x4551('0x49')&&_0x17f0c9[_0x4551('0x4a')]&&_0x17f0c9['Variable'][_0x4551('0xe')]&&_0x17f0c9[_0x4551('0x1f')]&&_0x17f0c9['customField']){_0x1ee2af[_0x17f0c9[_0x4551('0x4a')][_0x4551('0xe')]['toLowerCase']()]&&_0x3142b7['custom_fields'][_0x4551('0x1e')]({'id':_0x17f0c9[_0x4551('0x1f')],'value':_0x1ee2af[_0x17f0c9[_0x4551('0x4a')][_0x4551('0xe')]['toLowerCase']()][_0x4551('0x24')]()});}});}return _0x3142b7;}function getConnection(_0x52d13e){return request({'method':_0x4551('0x4b'),'form':{'method':_0x4551('0x4c'),'input_type':'JSON','response_type':_0x4551('0x20'),'rest_data':JSON[_0x4551('0x21')]({'user_auth':{'user_name':_0x52d13e['username'],'password':_0x52d13e['password'],'encryption':'PLAIN'},'application':'xCALLY\x20Motion\x20integration'})}})[_0x4551('0x37')](function(_0x22a283){var _0x56a740=_0x22a283;if(_0x56a740['id']){def['sessionID']=_0x56a740['id'];return BPromise['resolve'](_0x56a740);}else{throw new Error(util[_0x4551('0x29')](_0x4551('0x4d'),_0x52d13e['id']));}});}function setRelationship(_0x195712,_0x1d2317,_0x1e2f88,_0x267e32){return request({'form':{'method':_0x4551('0x4e'),'input_type':'JSON','response_type':_0x4551('0x20'),'rest_data':JSON[_0x4551('0x21')]({'session':_0x195712['id'],'module_name':_0x4551('0x4f'),'module_id':_0x1e2f88['id'],'link_field_name':_0x267e32,'related_ids':[_0x1d2317['id']],'name_value_list':[],'delete':0x0})}});}exports[_0x4551('0x50')]=function(_0x1b8e70,_0x1418a1,_0x467738,_0x294a50,_0x1bcdbd,_0x5e556c){var _0x4789a1,_0x24af41,_0x246aef,_0x572516;_0x5e556c[_0x4551('0x51')]=intUtil['stripTrailingSlash'](_0x5e556c['remoteUri']);_0x5e556c[_0x4551('0x52')]=intUtil[_0x4551('0x53')](_0x5e556c[_0x4551('0x52')]);def[_0x4551('0x54')]=util[_0x4551('0x29')]('%s/service/v4_1/rest.php',_0x5e556c[_0x4551('0x51')]);if(_0x1bcdbd&&_0x1bcdbd['monitor_format']){logger['info'](_0x4551('0x55'),'Recording\x20is\x20enabled!');_0x1418a1[_0x4551('0x56')]=util['format']('%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s',_0x5e556c[_0x4551('0x52')],_0x1418a1['uniqueid'],md5(_0x1418a1['uniqueid']));}else{_0x1418a1['recordingURL']='';}return getConnection(_0x5e556c)['then'](function(_0x40cd0f){_0x572516=_0x40cd0f;return getUser(_0x5e556c,_0x294a50[_0x4551('0xe')],_0x572516);})[_0x4551('0x37')](function(_0x4f98d3){_0x4789a1=_0x4f98d3;logger[_0x4551('0xd')](_0x4551('0x57'),_0x4789a1['id']);return getEndUser(_0x5e556c,_0x1418a1[_0x4551('0x58')],_0x1418a1[_0x4551('0x59')],_0x572516);})[_0x4551('0x37')](function(_0x4e086f){_0x24af41=_0x4e086f;logger[_0x4551('0xd')](_0x4551('0x5a'),_0x24af41['id']);return getTicket(_0x5e556c,_0x4789a1,_0x24af41,_0x467738,_0x1418a1,_0x467738[_0x4551('0x5b')],_0x572516,_0x4551('0x5c'));})[_0x4551('0x37')](function(_0x5caecb){_0x246aef=_0x5caecb;logger['info']('Ticket\x20created!');logger['info'](_0x4551('0x5d'),_0x246aef['id']);return setRelationship(_0x572516,_0x4789a1,_0x246aef,_0x4551('0x5e'));})[_0x4551('0x37')](function(){return setRelationship(_0x572516,_0x24af41,_0x246aef,_0x4551('0x5f'));})['then'](function(){return getServerInfo(_0x572516);})[_0x4551('0x37')](function(_0x3c80e9){var _0x41294b=parseInt(_0x3c80e9[_0x4551('0x60')][_0x4551('0x61')](0x0));var _0x4638cb=util[_0x4551('0x29')]('%s/index.php?action=ajaxui#ajaxUILoc=index.php%3Fmodule%3DCalls%26action%3DEditView%26record%3D%s',_0x5e556c['remoteUri'],_0x246aef['id']);if(_0x41294b>0x6){_0x4638cb=util[_0x4551('0x29')](_0x4551('0x62'),_0x5e556c[_0x4551('0x51')],_0x246aef['id']);}logger[_0x4551('0xd')](_0x4551('0x55'),_0x4551('0x63'));emit(util[_0x4551('0x29')](_0x4551('0x64'),_0x294a50[_0x4551('0xe')]),_0x4551('0x65'),{'uri':_0x4638cb});})[_0x4551('0x66')](function(_0x291f77){logger['error']('[QUEUE]',JSON['stringify'](_0x291f77));});};exports[_0x4551('0x67')]=function(_0x4cde04,_0x476068,_0x4c3b79,_0x5acf9f,_0x495bf9,_0x3ae9ed,_0xaf27bb){var _0xd15c5b,_0x5b414f,_0xcd4af,_0x390e85;_0x3ae9ed[_0x4551('0x51')]=intUtil['stripTrailingSlash'](_0x3ae9ed[_0x4551('0x51')]);_0x3ae9ed[_0x4551('0x52')]=intUtil['stripTrailingSlash'](_0x3ae9ed[_0x4551('0x52')]);def[_0x4551('0x54')]=util[_0x4551('0x29')](_0x4551('0x68'),_0x3ae9ed[_0x4551('0x51')]);if(_0xaf27bb&&_0xaf27bb['recordingFormat']&&_0xaf27bb[_0x4551('0x69')]!==_0x4551('0x6a')){logger[_0x4551('0xd')]('[OUTBOUND]',_0x4551('0x6b'));_0x476068['recordingURL']=util[_0x4551('0x29')](_0x4551('0x6c'),_0x3ae9ed[_0x4551('0x52')],_0x476068[_0x4551('0x6d')],md5(_0x476068[_0x4551('0x6d')]));}return getConnection(_0x3ae9ed)['then'](function(_0x4e44a9){_0x390e85=_0x4e44a9;return getUser(_0x3ae9ed,_0x5acf9f[_0x4551('0xe')],_0x390e85);})[_0x4551('0x37')](function(_0x3197c8){_0xd15c5b=_0x3197c8;logger[_0x4551('0xd')](_0x4551('0x57'),_0xd15c5b['id']);return getEndUser(_0x3ae9ed,_0x476068[_0x4551('0x6e')],_0x476068['destcalleridnum'],_0x390e85);})[_0x4551('0x37')](function(_0x5a17d0){_0x5b414f=_0x5a17d0;logger[_0x4551('0xd')](_0x4551('0x5a'),_0x5b414f['id']);return getTicket(_0x3ae9ed,_0xd15c5b,_0x5b414f,_0x4c3b79,_0x476068,_0x4c3b79[_0x4551('0x5b')],_0x390e85,_0x4551('0x6f'));})[_0x4551('0x37')](function(_0x1582dc){_0xcd4af=_0x1582dc;logger['info']('Ticket\x20created!');logger['info']('The\x20Ticket\x20ID\x20is:',_0xcd4af['id']);return setRelationship(_0x390e85,_0xd15c5b,_0xcd4af,_0x4551('0x5e'));})[_0x4551('0x37')](function(){return setRelationship(_0x390e85,_0x5b414f,_0xcd4af,_0x4551('0x5f'));})[_0x4551('0x37')](function(){return getServerInfo(_0x390e85);})[_0x4551('0x37')](function(_0x45a56d){var _0x564ee7=parseInt(_0x45a56d[_0x4551('0x60')][_0x4551('0x61')](0x0));var _0x43e86c=util['format'](_0x4551('0x70'),_0x3ae9ed[_0x4551('0x51')],_0xcd4af['id']);if(_0x564ee7>0x6){_0x43e86c=util[_0x4551('0x29')](_0x4551('0x62'),_0x3ae9ed[_0x4551('0x51')],_0xcd4af['id']);}logger[_0x4551('0xd')](_0x4551('0x71'),'Displaying\x20ticket\x20to\x20agent\x20in\x20a\x20new\x20tab...');emit(util[_0x4551('0x29')]('user:%s',_0x5acf9f[_0x4551('0xe')]),_0x4551('0x65'),{'uri':_0x43e86c});})[_0x4551('0x66')](function(_0x395b15){logger[_0x4551('0x72')]('[OUTBOUND]',JSON[_0x4551('0x21')](_0x395b15));});};exports['unmanaged']=function(_0x4efb6d,_0x1bdefb,_0x2d8a99,_0x5d5f68,_0x5695ba,_0x4cb92e){var _0x5a52bb,_0x3f239d,_0x45ba75,_0x53472d;_0x4cb92e['remoteUri']=intUtil[_0x4551('0x53')](_0x4cb92e[_0x4551('0x51')]);_0x4cb92e[_0x4551('0x52')]=intUtil['stripTrailingSlash'](_0x4cb92e[_0x4551('0x52')]);def[_0x4551('0x54')]=util[_0x4551('0x29')](_0x4551('0x68'),_0x4cb92e[_0x4551('0x51')]);if(_0x5695ba&&_0x5695ba[_0x4551('0x73')]){logger[_0x4551('0xd')]('['+_0x1bdefb[_0x4551('0x74')][_0x4551('0x75')]()+']',_0x4551('0x6b'));_0x1bdefb[_0x4551('0x56')]=util[_0x4551('0x29')](_0x4551('0x6c'),_0x4cb92e['serverUrl'],_0x1bdefb['uniqueid'],md5(_0x1bdefb[_0x4551('0x6d')]));}else{_0x1bdefb[_0x4551('0x56')]='';}return getConnection(_0x4cb92e)[_0x4551('0x37')](function(_0x392833){_0x53472d=_0x392833;if(!_['isNil'](_0x5d5f68)){return getUser(_0x4cb92e,_0x5d5f68['name'],_0x53472d);}else{return getUser(_0x4cb92e,null,_0x53472d);}})[_0x4551('0x37')](function(_0x47b00b){_0x5a52bb=_0x47b00b;logger[_0x4551('0xd')]('The\x20User\x20ID\x20is:',_0x5a52bb['id']);return getEndUser(_0x4cb92e,_0x1bdefb[_0x4551('0x58')],_0x1bdefb[_0x4551('0x59')],_0x53472d);})[_0x4551('0x37')](function(_0x3ce54e){_0x3f239d=_0x3ce54e;logger[_0x4551('0xd')](_0x4551('0x5a'),_0x3f239d['id']);return getTicket(_0x4cb92e,_0x5a52bb,_0x3f239d,_0x2d8a99,_0x1bdefb,_0x2d8a99[_0x4551('0x5b')],_0x53472d,_0x4551('0x5c'));})[_0x4551('0x37')](function(_0x125731){_0x45ba75=_0x125731;logger[_0x4551('0xd')](_0x4551('0x76'));logger[_0x4551('0xd')](_0x4551('0x5d'),_0x45ba75['id']);return setRelationship(_0x53472d,_0x5a52bb,_0x45ba75,_0x4551('0x5e'));})[_0x4551('0x37')](function(){return setRelationship(_0x53472d,_0x3f239d,_0x45ba75,_0x4551('0x5f'));})['then'](function(){return getServerInfo(_0x53472d);})[_0x4551('0x66')](function(_0xcd8abf){logger[_0x4551('0x72')]('['+_0x1bdefb[_0x4551('0x74')][_0x4551('0x75')]()+']',JSON[_0x4551('0x21')](_0xcd8abf));});};
\ No newline at end of file