Built motion from commit c116dc8b.|2.6.30
[motion2.git] / server / services / ami / trigger / integration / sugarcrm.js
index 72c9bf3..09d15e9 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x725f=['uri','monitor_format','[QUEUE]','Recording\x20is\x20enabled!','recordingURL','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','uniqueid','calleridname','calleridnum','The\x20Enduser\x20ID\x20is:','Fields','Inbound','Ticket\x20created!','users','version','%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','%s/service/v4_1/rest.php','recordingFormat','none','[OUTBOUND]','The\x20User\x20ID\x20is:','destcalleridname','destcalleridnum','Outbound','charAt','error','The\x20Ticket\x20ID\x20is:','contacts','lastevent','toUpperCase','lodash','request-promise','bluebird','util','ioredis','./util','../../../../config/environment','sugarcrm','redis','socket.io-emitter','POST','Creating\x20new\x20ticket...','name','getString','Subjects','created_by','description','Descriptions','date_start','slice','replace','duration_hours','parent_id','parent_type','Contacts','parent_name','direction','length','forEach','variableName','push','idField','set_entry','JSON','Calls','Basic\x20%s','apiKey','toString','base64','get_server_info','stringify','isNil','info','Getting\x20agent\x20with\x20name','get_entry_list','Employees','then','entry_list','find','name_value_list','user_name','value','resolve','user_id','Agent\x20not\x20available,\x20using\x20the\x20admin\x20account!','Searching\x20enduser\x20with\x20phone','format','contacts.phone_home\x20=\x20\x22%s\x22','phone_home','Enduser\x20not\x20found,\x20creating\x20a\x20new\x20enduser!','first_name','<unknown>','Caller\x20-\x20%s','Enduser\x20created.','debug','[HTTP]','map','nameField','customField','content','type','string','custom_fields','variable','customVariable','Variable','toLowerCase','login','username','PLAIN','sessionID','Account\x20%d\x20is\x20not\x20valid','set_relationship','queue','remoteUri','stripTrailingSlash','serverUrl'];(function(_0xce0591,_0x20c9ae){var _0xf6499e=function(_0x40d94d){while(--_0x40d94d){_0xce0591['push'](_0xce0591['shift']());}};_0xf6499e(++_0x20c9ae);}(_0x725f,0x191));var _0xf725=function(_0x5a36e,_0x56603c){_0x5a36e=_0x5a36e-0x0;var _0x1ddcda=_0x725f[_0x5a36e];return _0x1ddcda;};'use strict';var _=require(_0xf725('0x0'));var rp=require(_0xf725('0x1'));var BPromise=require(_0xf725('0x2'));var md5=require('md5');var util=require(_0xf725('0x3'));var Redis=require(_0xf725('0x4'));var intUtil=require(_0xf725('0x5'));var config=require(_0xf725('0x6'));var logger=require('../../../../config/logger')(_0xf725('0x7'));config[_0xf725('0x8')]=_['defaults'](config[_0xf725('0x8')],{'host':'localhost','port':0x18eb});var io=require(_0xf725('0x9'))(new Redis(config[_0xf725('0x8')]));var def={'method':_0xf725('0xa'),'json':!![]};function emit(_0x5d3d4d,_0x837de0,_0x3c8a52){io['to'](_0x5d3d4d)['emit'](_0x837de0,_0x3c8a52);}function getTicket(_0x30699a,_0x5c2112,_0x4468bb,_0x261a15,_0x396487,_0x4e9001,_0x5f13bf,_0x144003){logger['info'](_0xf725('0xb'));var _0x29f176=new Date();var _0x47fedf=[{'name':_0xf725('0xc'),'value':intUtil[_0xf725('0xd')](_0x261a15[_0xf725('0xe')],_0x396487,'\x20')},{'name':'assigned_user_id','value':_0x5c2112['id']},{'name':_0xf725('0xf'),'value':_0x5c2112['id']},{'name':_0xf725('0x10'),'value':intUtil['getString'](_0x261a15[_0xf725('0x11')],_0x396487,'\x0a')},{'name':_0xf725('0x12'),'value':_0x29f176['toISOString']()[_0xf725('0x13')](0x0,0x13)[_0xf725('0x14')]('T','\x20')},{'name':_0xf725('0x15'),'value':'0'},{'name':'duration_minutes','value':'15'},{'name':_0xf725('0x16'),'value':_0x4468bb['id']},{'name':_0xf725('0x17'),'value':_0xf725('0x18')},{'name':_0xf725('0x19'),'value':_0x4468bb[_0xf725('0xc')]},{'name':_0xf725('0x1a'),'value':_0x144003}];if(_0x4e9001[_0xf725('0x1b')]){_[_0xf725('0x1c')](_0x4e9001,function(_0x737555){if(_0x396487[_0x737555[_0xf725('0x1d')]]){_0x47fedf[_0xf725('0x1e')]({'name':_0x737555[_0xf725('0x1f')],'value':_0x396487[_0x737555[_0xf725('0x1d')]]});}});}return request({'form':{'method':_0xf725('0x20'),'input_type':_0xf725('0x21'),'response_type':_0xf725('0x21'),'rest_data':JSON['stringify']({'session':_0x5f13bf['id'],'module_name':_0xf725('0x22'),'name_value_list':_0x47fedf})}});}function getAuth(_0x5868b1){return util['format'](_0xf725('0x23'),new Buffer(_0x5868b1[_0xf725('0x24')]+':X')[_0xf725('0x25')](_0xf725('0x26')));}function getServerInfo(_0x207519){return request({'form':{'method':_0xf725('0x27'),'input_type':_0xf725('0x21'),'response_type':_0xf725('0x21'),'rest_data':JSON[_0xf725('0x28')]({'session':_0x207519['id']})}});}function getUser(_0x5dfb73,_0x1d4d69,_0x5546cc){if(!_[_0xf725('0x29')](_0x1d4d69)){logger[_0xf725('0x2a')](_0xf725('0x2b'),_0x1d4d69);return request({'form':{'method':_0xf725('0x2c'),'input_type':_0xf725('0x21'),'response_type':'JSON','rest_data':JSON[_0xf725('0x28')]({'session':_0x5546cc['id'],'module_name':_0xf725('0x2d'),'query':util['format']('INSTR\x20(\x20users.user_name,\x20\x22%s\x22)\x20>\x200',_0x1d4d69),'order_by':'','offset':'0','select_fields':['id',_0xf725('0xc'),'user_name'],'link_name_to_fields_array':[],'max_results':-0x1,'deleted':'0'})}})[_0xf725('0x2e')](function(_0x335dc4){if(_0x335dc4[_0xf725('0x2f')]['length']){var _0x6a5293=_[_0xf725('0x30')](_0x335dc4[_0xf725('0x2f')],function(_0x1517af){return _0x1517af[_0xf725('0x31')][_0xf725('0x32')]['value']===_0x1d4d69;});if(_0x6a5293){logger[_0xf725('0x2a')]('Agent\x20found!');return BPromise['resolve']({'id':_0x6a5293[_0xf725('0x31')]['id'][_0xf725('0x33')],'name':_0x6a5293[_0xf725('0x31')][_0xf725('0xc')][_0xf725('0x33')]});}}logger[_0xf725('0x2a')]('Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!');return BPromise[_0xf725('0x34')]({'id':_0x5546cc['name_value_list'][_0xf725('0x35')][_0xf725('0x33')],'name':_0x5546cc[_0xf725('0x31')][_0xf725('0x32')]['value']});});}else{logger[_0xf725('0x2a')](_0xf725('0x36'));return BPromise['resolve']({'id':_0x5546cc[_0xf725('0x31')][_0xf725('0x35')][_0xf725('0x33')],'name':_0x5546cc[_0xf725('0x31')][_0xf725('0x32')]['value']});}}function getEndUser(_0x284372,_0x5a977c,_0x5032e5,_0xd43171){logger['info'](_0xf725('0x37'),_0x5032e5);return request({'form':{'method':'get_entry_list','input_type':'JSON','response_type':_0xf725('0x21'),'rest_data':JSON[_0xf725('0x28')]({'session':_0xd43171['id'],'module_name':_0xf725('0x18'),'query':util[_0xf725('0x38')](_0xf725('0x39'),_0x5032e5),'order_by':'','offset':'0','select_fields':['id',_0xf725('0xc'),_0xf725('0x3a')],'link_name_to_fields_array':[],'max_results':-0x1,'deleted':'0'})}})[_0xf725('0x2e')](function(_0x44966a){if(_0x44966a[_0xf725('0x2f')][_0xf725('0x1b')]){var _0x30bb73=_[_0xf725('0x30')](_0x44966a[_0xf725('0x2f')],function(_0x4687b5){return _0x4687b5[_0xf725('0x31')]['phone_home'][_0xf725('0x33')]===_0x5032e5;});if(_0x30bb73){logger[_0xf725('0x2a')]('Enduser\x20found!');return BPromise[_0xf725('0x34')]({'id':_0x30bb73[_0xf725('0x31')]['id'][_0xf725('0x33')],'name':_0x30bb73[_0xf725('0x31')][_0xf725('0xc')][_0xf725('0x33')],'phone':_0x30bb73[_0xf725('0x31')]['phone_home'][_0xf725('0x33')]});}}else{logger[_0xf725('0x2a')](_0xf725('0x3b'));return request({'form':{'method':_0xf725('0x20'),'input_type':_0xf725('0x21'),'response_type':_0xf725('0x21'),'rest_data':JSON[_0xf725('0x28')]({'session':_0xd43171['id'],'module_name':_0xf725('0x18'),'name_value_list':[{'name':_0xf725('0x3c'),'value':_0x5a977c!==_0xf725('0x3d')?_0x5a977c:util['format'](_0xf725('0x3e'),_0x5032e5)},{'name':_0xf725('0x3a'),'value':_0x5032e5}]})}})['then'](function(_0x4e9b38){logger[_0xf725('0x2a')](_0xf725('0x3f'));return BPromise[_0xf725('0x34')]({'id':_0x4e9b38['id'],'name':_0x4e9b38[_0xf725('0x2f')][_0xf725('0x3c')]['value'],'phone':_0x4e9b38[_0xf725('0x2f')][_0xf725('0x3a')]['value']});});}});}function request(_0x48310d){logger[_0xf725('0x40')](_0xf725('0x41'),JSON['stringify'](_0x48310d));return rp(_['merge'](def,_0x48310d));}function getTags(_0x544ecc,_0x25ef33){var _0x31c3bb=[];if(_0x544ecc&&_0x544ecc[_0xf725('0x1b')]>0x0){_0x31c3bb=_[_0xf725('0x42')](_0x544ecc,_0x25ef33);}return _0x31c3bb;}function getCustomFields(_0x1534e6,_0x1802f0){var _0x4b69d0=[];var _0x4cc381={'custom_fields':[]};if(_0x1534e6[_0xf725('0x1b')]>0x0){_[_0xf725('0x1c')](_0x1534e6,function(_0x24a9b4){if(_0x24a9b4['type']==='string'&&_0x24a9b4[_0xf725('0x43')]&&!_0x24a9b4[_0xf725('0x44')]){_0x4cc381[_0x24a9b4[_0xf725('0x43')]['toLowerCase']()]=_0x24a9b4[_0xf725('0x45')][_0xf725('0x25')]();}else if(_0x24a9b4[_0xf725('0x46')]===_0xf725('0x47')&&_0x24a9b4['idField']&&_0x24a9b4['customField']){_0x4cc381[_0xf725('0x48')]['push']({'id':_0x24a9b4[_0xf725('0x1f')],'value':_0x24a9b4['content'][_0xf725('0x25')]()});}else if(_0x24a9b4[_0xf725('0x46')]===_0xf725('0x49')&&_0x24a9b4[_0xf725('0x1d')]&&_0x24a9b4['idField']&&_0x24a9b4[_0xf725('0x44')]){_0x1802f0[_0x24a9b4[_0xf725('0x1d')]]&&_0x4cc381[_0xf725('0x48')]['push']({'id':_0x24a9b4['idField'],'value':_0x1802f0[_0x24a9b4[_0xf725('0x1d')]]['toString']()});}else if(_0x24a9b4[_0xf725('0x46')]===_0xf725('0x4a')&&_0x24a9b4[_0xf725('0x4b')]&&_0x24a9b4[_0xf725('0x4b')][_0xf725('0xc')]&&_0x24a9b4['idField']&&_0x24a9b4[_0xf725('0x44')]){_0x1802f0[_0x24a9b4[_0xf725('0x4b')][_0xf725('0xc')][_0xf725('0x4c')]()]&&_0x4cc381['custom_fields'][_0xf725('0x1e')]({'id':_0x24a9b4[_0xf725('0x1f')],'value':_0x1802f0[_0x24a9b4[_0xf725('0x4b')]['name']['toLowerCase']()][_0xf725('0x25')]()});}});}return _0x4cc381;}function getConnection(_0x261d6d){return request({'method':_0xf725('0xa'),'form':{'method':_0xf725('0x4d'),'input_type':'JSON','response_type':_0xf725('0x21'),'rest_data':JSON[_0xf725('0x28')]({'user_auth':{'user_name':_0x261d6d[_0xf725('0x4e')],'password':_0x261d6d['password'],'encryption':_0xf725('0x4f')},'application':'xCALLY\x20Motion\x20integration'})}})[_0xf725('0x2e')](function(_0x209075){var _0x3d77ad=_0x209075;if(_0x3d77ad['id']){def[_0xf725('0x50')]=_0x3d77ad['id'];return BPromise[_0xf725('0x34')](_0x3d77ad);}else{throw new Error(util[_0xf725('0x38')](_0xf725('0x51'),_0x261d6d['id']));}});}function setRelationship(_0x242d6b,_0x3877dd,_0x33a4f2,_0x42ed79){return request({'form':{'method':_0xf725('0x52'),'input_type':'JSON','response_type':_0xf725('0x21'),'rest_data':JSON[_0xf725('0x28')]({'session':_0x242d6b['id'],'module_name':'Calls','module_id':_0x33a4f2['id'],'link_field_name':_0x42ed79,'related_ids':[_0x3877dd['id']],'name_value_list':[],'delete':0x0})}});}exports[_0xf725('0x53')]=function(_0x458016,_0x3c8e6b,_0x55df29,_0x46b75f,_0x3ba9a6,_0x458914){var _0x32a86e,_0x3d0c3a,_0x20e89b,_0x458dff;_0x458914[_0xf725('0x54')]=intUtil[_0xf725('0x55')](_0x458914[_0xf725('0x54')]);_0x458914[_0xf725('0x56')]=intUtil[_0xf725('0x55')](_0x458914[_0xf725('0x56')]);def[_0xf725('0x57')]=util[_0xf725('0x38')]('%s/service/v4_1/rest.php',_0x458914[_0xf725('0x54')]);if(_0x3ba9a6&&_0x3ba9a6[_0xf725('0x58')]){logger[_0xf725('0x2a')](_0xf725('0x59'),_0xf725('0x5a'));_0x3c8e6b[_0xf725('0x5b')]=util['format'](_0xf725('0x5c'),_0x458914[_0xf725('0x56')],_0x3c8e6b[_0xf725('0x5d')],md5(_0x3c8e6b[_0xf725('0x5d')]));}else{_0x3c8e6b[_0xf725('0x5b')]='';}return getConnection(_0x458914)['then'](function(_0x42a74f){_0x458dff=_0x42a74f;return getUser(_0x458914,_0x46b75f[_0xf725('0xc')],_0x458dff);})[_0xf725('0x2e')](function(_0x19c408){_0x32a86e=_0x19c408;logger[_0xf725('0x2a')]('The\x20User\x20ID\x20is:',_0x32a86e['id']);return getEndUser(_0x458914,_0x3c8e6b[_0xf725('0x5e')],_0x3c8e6b[_0xf725('0x5f')],_0x458dff);})[_0xf725('0x2e')](function(_0x17ddef){_0x3d0c3a=_0x17ddef;logger[_0xf725('0x2a')](_0xf725('0x60'),_0x3d0c3a['id']);return getTicket(_0x458914,_0x32a86e,_0x3d0c3a,_0x55df29,_0x3c8e6b,_0x55df29[_0xf725('0x61')],_0x458dff,_0xf725('0x62'));})[_0xf725('0x2e')](function(_0x36f002){_0x20e89b=_0x36f002;logger['info'](_0xf725('0x63'));logger[_0xf725('0x2a')]('The\x20Ticket\x20ID\x20is:',_0x20e89b['id']);return setRelationship(_0x458dff,_0x32a86e,_0x20e89b,_0xf725('0x64'));})[_0xf725('0x2e')](function(){return setRelationship(_0x458dff,_0x3d0c3a,_0x20e89b,'contacts');})[_0xf725('0x2e')](function(){return getServerInfo(_0x458dff);})['then'](function(_0x425e53){var _0x5ee877=parseInt(_0x425e53[_0xf725('0x65')]['charAt'](0x0));var _0x298cd4=util[_0xf725('0x38')](_0xf725('0x66'),_0x458914[_0xf725('0x54')],_0x20e89b['id']);if(_0x5ee877>0x6){_0x298cd4=util[_0xf725('0x38')](_0xf725('0x67'),_0x458914[_0xf725('0x54')],_0x20e89b['id']);}logger[_0xf725('0x2a')]('[QUEUE]',_0xf725('0x68'));emit(util[_0xf725('0x38')](_0xf725('0x69'),_0x46b75f[_0xf725('0xc')]),_0xf725('0x6a'),{'uri':_0x298cd4});})[_0xf725('0x6b')](function(_0x28c32a){logger['error'](_0xf725('0x59'),JSON[_0xf725('0x28')](_0x28c32a));});};exports['outbound']=function(_0x20597b,_0x5301b1,_0x36972a,_0x1a9617,_0x6e5689,_0x5763be,_0x38bc51){var _0x3a95ea,_0x3025f4,_0x4b1517,_0x275e6e;_0x5763be[_0xf725('0x54')]=intUtil[_0xf725('0x55')](_0x5763be['remoteUri']);_0x5763be[_0xf725('0x56')]=intUtil[_0xf725('0x55')](_0x5763be[_0xf725('0x56')]);def[_0xf725('0x57')]=util[_0xf725('0x38')](_0xf725('0x6c'),_0x5763be['remoteUri']);if(_0x38bc51&&_0x38bc51[_0xf725('0x6d')]&&_0x38bc51[_0xf725('0x6d')]!==_0xf725('0x6e')){logger[_0xf725('0x2a')](_0xf725('0x6f'),_0xf725('0x5a'));_0x5301b1['recordingURL']=util['format'](_0xf725('0x5c'),_0x5763be['serverUrl'],_0x5301b1['uniqueid'],md5(_0x5301b1['uniqueid']));}return getConnection(_0x5763be)[_0xf725('0x2e')](function(_0x7c15c4){_0x275e6e=_0x7c15c4;return getUser(_0x5763be,_0x1a9617[_0xf725('0xc')],_0x275e6e);})[_0xf725('0x2e')](function(_0x3f4b71){_0x3a95ea=_0x3f4b71;logger[_0xf725('0x2a')](_0xf725('0x70'),_0x3a95ea['id']);return getEndUser(_0x5763be,_0x5301b1[_0xf725('0x71')],_0x5301b1[_0xf725('0x72')],_0x275e6e);})[_0xf725('0x2e')](function(_0x2aa18b){_0x3025f4=_0x2aa18b;logger[_0xf725('0x2a')](_0xf725('0x60'),_0x3025f4['id']);return getTicket(_0x5763be,_0x3a95ea,_0x3025f4,_0x36972a,_0x5301b1,_0x36972a['Fields'],_0x275e6e,_0xf725('0x73'));})['then'](function(_0x552b63){_0x4b1517=_0x552b63;logger[_0xf725('0x2a')](_0xf725('0x63'));logger['info']('The\x20Ticket\x20ID\x20is:',_0x4b1517['id']);return setRelationship(_0x275e6e,_0x3a95ea,_0x4b1517,_0xf725('0x64'));})['then'](function(){return setRelationship(_0x275e6e,_0x3025f4,_0x4b1517,'contacts');})['then'](function(){return getServerInfo(_0x275e6e);})[_0xf725('0x2e')](function(_0x4fa38f){var _0x11362c=parseInt(_0x4fa38f['version'][_0xf725('0x74')](0x0));var _0xa9ea1e=util['format'](_0xf725('0x66'),_0x5763be[_0xf725('0x54')],_0x4b1517['id']);if(_0x11362c>0x6){_0xa9ea1e=util[_0xf725('0x38')](_0xf725('0x67'),_0x5763be[_0xf725('0x54')],_0x4b1517['id']);}logger[_0xf725('0x2a')](_0xf725('0x6f'),_0xf725('0x68'));emit(util['format'](_0xf725('0x69'),_0x1a9617['name']),'trigger:browser:url',{'uri':_0xa9ea1e});})[_0xf725('0x6b')](function(_0x5223da){logger[_0xf725('0x75')](_0xf725('0x6f'),JSON[_0xf725('0x28')](_0x5223da));});};exports['unmanaged']=function(_0x70f605,_0x20091e,_0x1f1624,_0x17400c,_0x4888ae,_0x4b5abb){var _0xdf577a,_0x3a2c8d,_0x3716e3,_0x29eb42;_0x4b5abb['remoteUri']=intUtil[_0xf725('0x55')](_0x4b5abb[_0xf725('0x54')]);_0x4b5abb[_0xf725('0x56')]=intUtil[_0xf725('0x55')](_0x4b5abb[_0xf725('0x56')]);def[_0xf725('0x57')]=util[_0xf725('0x38')](_0xf725('0x6c'),_0x4b5abb['remoteUri']);if(_0x4888ae&&_0x4888ae['monitor_format']){logger[_0xf725('0x2a')]('['+_0x20091e['lastevent']['toUpperCase']()+']',_0xf725('0x5a'));_0x20091e[_0xf725('0x5b')]=util['format']('%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s',_0x4b5abb[_0xf725('0x56')],_0x20091e[_0xf725('0x5d')],md5(_0x20091e[_0xf725('0x5d')]));}else{_0x20091e[_0xf725('0x5b')]='';}return getConnection(_0x4b5abb)['then'](function(_0x36c873){_0x29eb42=_0x36c873;if(!_[_0xf725('0x29')](_0x17400c)){return getUser(_0x4b5abb,_0x17400c[_0xf725('0xc')],_0x29eb42);}else{return getUser(_0x4b5abb,null,_0x29eb42);}})[_0xf725('0x2e')](function(_0x322600){_0xdf577a=_0x322600;logger[_0xf725('0x2a')](_0xf725('0x70'),_0xdf577a['id']);return getEndUser(_0x4b5abb,_0x20091e[_0xf725('0x5e')],_0x20091e[_0xf725('0x5f')],_0x29eb42);})['then'](function(_0x231ed6){_0x3a2c8d=_0x231ed6;logger[_0xf725('0x2a')](_0xf725('0x60'),_0x3a2c8d['id']);return getTicket(_0x4b5abb,_0xdf577a,_0x3a2c8d,_0x1f1624,_0x20091e,_0x1f1624[_0xf725('0x61')],_0x29eb42,_0xf725('0x62'));})[_0xf725('0x2e')](function(_0x3d9e3e){_0x3716e3=_0x3d9e3e;logger[_0xf725('0x2a')](_0xf725('0x63'));logger[_0xf725('0x2a')](_0xf725('0x76'),_0x3716e3['id']);return setRelationship(_0x29eb42,_0xdf577a,_0x3716e3,_0xf725('0x64'));})[_0xf725('0x2e')](function(){return setRelationship(_0x29eb42,_0x3a2c8d,_0x3716e3,_0xf725('0x77'));})['then'](function(){return getServerInfo(_0x29eb42);})[_0xf725('0x6b')](function(_0x4b47a6){logger[_0xf725('0x75')]('['+_0x20091e[_0xf725('0x78')][_0xf725('0x79')]()+']',JSON['stringify'](_0x4b47a6));});};
\ No newline at end of file
+var _0xa49d=['customField','nameField','content','custom_fields','variable','Variable','toLowerCase','username','password','PLAIN','xCALLY\x20Motion\x20integration','sessionID','set_relationship','remoteUri','stripTrailingSlash','serverUrl','%s/service/v4_1/rest.php','monitor_format','[QUEUE]','Recording\x20is\x20enabled!','recordingURL','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','uniqueid','The\x20User\x20ID\x20is:','Inbound','Ticket\x20created!','The\x20Ticket\x20ID\x20is:','users','version','charAt','Displaying\x20ticket\x20to\x20agent\x20in\x20a\x20new\x20tab...','user:%s','catch','outbound','uri','recordingFormat','none','[OUTBOUND]','destcalleridname','destcalleridnum','The\x20Enduser\x20ID\x20is:','Fields','contacts','%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','unmanaged','toUpperCase','isNil','calleridname','calleridnum','error','lastevent','request-promise','bluebird','md5','util','../../../../config/environment','../../../../config/logger','sugarcrm','redis','defaults','localhost','POST','emit','Creating\x20new\x20ticket...','getString','Subjects','assigned_user_id','created_by','description','Descriptions','date_start','toISOString','slice','replace','duration_hours','duration_minutes','parent_id','Contacts','parent_name','direction','length','variableName','push','idField','set_entry','JSON','stringify','Calls','Basic\x20%s','apiKey','toString','get_server_info','info','Getting\x20agent\x20with\x20name','Employees','format','INSTR\x20(\x20users.user_name,\x20\x22%s\x22)\x20>\x200','name','user_name','then','find','entry_list','name_value_list','value','Agent\x20found!','resolve','Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!','user_id','Agent\x20not\x20available,\x20using\x20the\x20admin\x20account!','Searching\x20enduser\x20with\x20phone','get_entry_list','contacts.phone_home\x20=\x20\x22%s\x22','phone_home','Enduser\x20not\x20found,\x20creating\x20a\x20new\x20enduser!','first_name','<unknown>','Caller\x20-\x20%s','debug','type','string'];(function(_0x52bfa5,_0x42cf21){var _0x26f80b=function(_0x73c5b0){while(--_0x73c5b0){_0x52bfa5['push'](_0x52bfa5['shift']());}};_0x26f80b(++_0x42cf21);}(_0xa49d,0xad));var _0xda49=function(_0x50f245,_0x1a0492){_0x50f245=_0x50f245-0x0;var _0x3eea8d=_0xa49d[_0x50f245];return _0x3eea8d;};'use strict';var _=require('lodash');var rp=require(_0xda49('0x0'));var BPromise=require(_0xda49('0x1'));var md5=require(_0xda49('0x2'));var util=require(_0xda49('0x3'));var Redis=require('ioredis');var intUtil=require('./util');var config=require(_0xda49('0x4'));var logger=require(_0xda49('0x5'))(_0xda49('0x6'));config[_0xda49('0x7')]=_[_0xda49('0x8')](config['redis'],{'host':_0xda49('0x9'),'port':0x18eb});var io=require('socket.io-emitter')(new Redis(config[_0xda49('0x7')]));var def={'method':_0xda49('0xa'),'json':!![]};function emit(_0x21ed85,_0x853db8,_0x2fa9d3){io['to'](_0x21ed85)[_0xda49('0xb')](_0x853db8,_0x2fa9d3);}function getTicket(_0x4200da,_0x47a8cd,_0x51da34,_0x4f5dc8,_0x2b137d,_0x5ab2f3,_0x4c5684,_0xcae296){logger['info'](_0xda49('0xc'));var _0x31620a=new Date();var _0x699fac=[{'name':'name','value':intUtil[_0xda49('0xd')](_0x4f5dc8[_0xda49('0xe')],_0x2b137d,'\x20')},{'name':_0xda49('0xf'),'value':_0x47a8cd['id']},{'name':_0xda49('0x10'),'value':_0x47a8cd['id']},{'name':_0xda49('0x11'),'value':intUtil['getString'](_0x4f5dc8[_0xda49('0x12')],_0x2b137d,'\x0a')},{'name':_0xda49('0x13'),'value':_0x31620a[_0xda49('0x14')]()[_0xda49('0x15')](0x0,0x13)[_0xda49('0x16')]('T','\x20')},{'name':_0xda49('0x17'),'value':'0'},{'name':_0xda49('0x18'),'value':'15'},{'name':_0xda49('0x19'),'value':_0x51da34['id']},{'name':'parent_type','value':_0xda49('0x1a')},{'name':_0xda49('0x1b'),'value':_0x51da34['name']},{'name':_0xda49('0x1c'),'value':_0xcae296}];if(_0x5ab2f3[_0xda49('0x1d')]){_['forEach'](_0x5ab2f3,function(_0x59cbeb){if(_0x2b137d[_0x59cbeb[_0xda49('0x1e')]]){_0x699fac[_0xda49('0x1f')]({'name':_0x59cbeb[_0xda49('0x20')],'value':_0x2b137d[_0x59cbeb[_0xda49('0x1e')]]});}});}return request({'form':{'method':_0xda49('0x21'),'input_type':_0xda49('0x22'),'response_type':_0xda49('0x22'),'rest_data':JSON[_0xda49('0x23')]({'session':_0x4c5684['id'],'module_name':_0xda49('0x24'),'name_value_list':_0x699fac})}});}function getAuth(_0x46789b){return util['format'](_0xda49('0x25'),new Buffer(_0x46789b[_0xda49('0x26')]+':X')[_0xda49('0x27')]('base64'));}function getServerInfo(_0x571651){return request({'form':{'method':_0xda49('0x28'),'input_type':_0xda49('0x22'),'response_type':'JSON','rest_data':JSON['stringify']({'session':_0x571651['id']})}});}function getUser(_0x295cf7,_0x2257ea,_0x1113f9){if(!_['isNil'](_0x2257ea)){logger[_0xda49('0x29')](_0xda49('0x2a'),_0x2257ea);return request({'form':{'method':'get_entry_list','input_type':'JSON','response_type':'JSON','rest_data':JSON[_0xda49('0x23')]({'session':_0x1113f9['id'],'module_name':_0xda49('0x2b'),'query':util[_0xda49('0x2c')](_0xda49('0x2d'),_0x2257ea),'order_by':'','offset':'0','select_fields':['id',_0xda49('0x2e'),_0xda49('0x2f')],'link_name_to_fields_array':[],'max_results':-0x1,'deleted':'0'})}})[_0xda49('0x30')](function(_0x162e8b){if(_0x162e8b['entry_list'][_0xda49('0x1d')]){var _0x338dd7=_[_0xda49('0x31')](_0x162e8b[_0xda49('0x32')],function(_0x432008){return _0x432008[_0xda49('0x33')][_0xda49('0x2f')][_0xda49('0x34')]===_0x2257ea;});if(_0x338dd7){logger[_0xda49('0x29')](_0xda49('0x35'));return BPromise[_0xda49('0x36')]({'id':_0x338dd7[_0xda49('0x33')]['id']['value'],'name':_0x338dd7['name_value_list'][_0xda49('0x2e')][_0xda49('0x34')]});}}logger[_0xda49('0x29')](_0xda49('0x37'));return BPromise[_0xda49('0x36')]({'id':_0x1113f9[_0xda49('0x33')][_0xda49('0x38')][_0xda49('0x34')],'name':_0x1113f9[_0xda49('0x33')][_0xda49('0x2f')][_0xda49('0x34')]});});}else{logger[_0xda49('0x29')](_0xda49('0x39'));return BPromise[_0xda49('0x36')]({'id':_0x1113f9['name_value_list'][_0xda49('0x38')][_0xda49('0x34')],'name':_0x1113f9[_0xda49('0x33')][_0xda49('0x2f')][_0xda49('0x34')]});}}function getEndUser(_0xeab34b,_0x37be77,_0x1b7ad7,_0x19cba1){logger[_0xda49('0x29')](_0xda49('0x3a'),_0x1b7ad7);return request({'form':{'method':_0xda49('0x3b'),'input_type':_0xda49('0x22'),'response_type':_0xda49('0x22'),'rest_data':JSON[_0xda49('0x23')]({'session':_0x19cba1['id'],'module_name':_0xda49('0x1a'),'query':util[_0xda49('0x2c')](_0xda49('0x3c'),_0x1b7ad7),'order_by':'','offset':'0','select_fields':['id',_0xda49('0x2e'),_0xda49('0x3d')],'link_name_to_fields_array':[],'max_results':-0x1,'deleted':'0'})}})[_0xda49('0x30')](function(_0x162981){if(_0x162981[_0xda49('0x32')][_0xda49('0x1d')]){var _0x4f5a1b=_[_0xda49('0x31')](_0x162981[_0xda49('0x32')],function(_0x3c3fbd){return _0x3c3fbd[_0xda49('0x33')][_0xda49('0x3d')][_0xda49('0x34')]===_0x1b7ad7;});if(_0x4f5a1b){logger[_0xda49('0x29')]('Enduser\x20found!');return BPromise[_0xda49('0x36')]({'id':_0x4f5a1b[_0xda49('0x33')]['id'][_0xda49('0x34')],'name':_0x4f5a1b[_0xda49('0x33')][_0xda49('0x2e')][_0xda49('0x34')],'phone':_0x4f5a1b[_0xda49('0x33')][_0xda49('0x3d')]['value']});}}else{logger[_0xda49('0x29')](_0xda49('0x3e'));return request({'form':{'method':'set_entry','input_type':_0xda49('0x22'),'response_type':_0xda49('0x22'),'rest_data':JSON[_0xda49('0x23')]({'session':_0x19cba1['id'],'module_name':_0xda49('0x1a'),'name_value_list':[{'name':_0xda49('0x3f'),'value':_0x37be77!==_0xda49('0x40')?_0x37be77:util[_0xda49('0x2c')](_0xda49('0x41'),_0x1b7ad7)},{'name':_0xda49('0x3d'),'value':_0x1b7ad7}]})}})['then'](function(_0x198295){logger['info']('Enduser\x20created.');return BPromise[_0xda49('0x36')]({'id':_0x198295['id'],'name':_0x198295['entry_list'][_0xda49('0x3f')][_0xda49('0x34')],'phone':_0x198295[_0xda49('0x32')][_0xda49('0x3d')][_0xda49('0x34')]});});}});}function request(_0xda34e6){logger[_0xda49('0x42')]('[HTTP]',JSON['stringify'](_0xda34e6));return rp(_['merge'](def,_0xda34e6));}function getTags(_0x5f1430,_0x5097f9){var _0x23f093=[];if(_0x5f1430&&_0x5f1430[_0xda49('0x1d')]>0x0){_0x23f093=_['map'](_0x5f1430,_0x5097f9);}return _0x23f093;}function getCustomFields(_0x3845cd,_0x4bbc44){var _0x2f2190=[];var _0x182679={'custom_fields':[]};if(_0x3845cd[_0xda49('0x1d')]>0x0){_['forEach'](_0x3845cd,function(_0x1e207b){if(_0x1e207b[_0xda49('0x43')]===_0xda49('0x44')&&_0x1e207b['nameField']&&!_0x1e207b[_0xda49('0x45')]){_0x182679[_0x1e207b[_0xda49('0x46')]['toLowerCase']()]=_0x1e207b[_0xda49('0x47')][_0xda49('0x27')]();}else if(_0x1e207b[_0xda49('0x43')]===_0xda49('0x44')&&_0x1e207b[_0xda49('0x20')]&&_0x1e207b[_0xda49('0x45')]){_0x182679[_0xda49('0x48')][_0xda49('0x1f')]({'id':_0x1e207b[_0xda49('0x20')],'value':_0x1e207b[_0xda49('0x47')][_0xda49('0x27')]()});}else if(_0x1e207b[_0xda49('0x43')]===_0xda49('0x49')&&_0x1e207b[_0xda49('0x1e')]&&_0x1e207b[_0xda49('0x20')]&&_0x1e207b[_0xda49('0x45')]){_0x4bbc44[_0x1e207b['variableName']]&&_0x182679[_0xda49('0x48')][_0xda49('0x1f')]({'id':_0x1e207b[_0xda49('0x20')],'value':_0x4bbc44[_0x1e207b[_0xda49('0x1e')]]['toString']()});}else if(_0x1e207b[_0xda49('0x43')]==='customVariable'&&_0x1e207b[_0xda49('0x4a')]&&_0x1e207b[_0xda49('0x4a')][_0xda49('0x2e')]&&_0x1e207b[_0xda49('0x20')]&&_0x1e207b['customField']){_0x4bbc44[_0x1e207b['Variable'][_0xda49('0x2e')]['toLowerCase']()]&&_0x182679[_0xda49('0x48')][_0xda49('0x1f')]({'id':_0x1e207b['idField'],'value':_0x4bbc44[_0x1e207b[_0xda49('0x4a')][_0xda49('0x2e')][_0xda49('0x4b')]()][_0xda49('0x27')]()});}});}return _0x182679;}function getConnection(_0x38730f){return request({'method':_0xda49('0xa'),'form':{'method':'login','input_type':_0xda49('0x22'),'response_type':'JSON','rest_data':JSON[_0xda49('0x23')]({'user_auth':{'user_name':_0x38730f[_0xda49('0x4c')],'password':_0x38730f[_0xda49('0x4d')],'encryption':_0xda49('0x4e')},'application':_0xda49('0x4f')})}})[_0xda49('0x30')](function(_0x2316ad){var _0x33df79=_0x2316ad;if(_0x33df79['id']){def[_0xda49('0x50')]=_0x33df79['id'];return BPromise[_0xda49('0x36')](_0x33df79);}else{throw new Error(util[_0xda49('0x2c')]('Account\x20%d\x20is\x20not\x20valid',_0x38730f['id']));}});}function setRelationship(_0x363509,_0x5e2648,_0x452048,_0x383581){return request({'form':{'method':_0xda49('0x51'),'input_type':_0xda49('0x22'),'response_type':'JSON','rest_data':JSON[_0xda49('0x23')]({'session':_0x363509['id'],'module_name':_0xda49('0x24'),'module_id':_0x452048['id'],'link_field_name':_0x383581,'related_ids':[_0x5e2648['id']],'name_value_list':[],'delete':0x0})}});}exports['queue']=function(_0x1c61e6,_0xcefcea,_0x1f41a9,_0x1c5e99,_0x5a5137,_0x3d7eb7){var _0xb5ed01,_0x4a7dc1,_0x1dbe5a,_0x351d07;_0x3d7eb7[_0xda49('0x52')]=intUtil[_0xda49('0x53')](_0x3d7eb7[_0xda49('0x52')]);_0x3d7eb7[_0xda49('0x54')]=intUtil[_0xda49('0x53')](_0x3d7eb7['serverUrl']);def['uri']=util[_0xda49('0x2c')](_0xda49('0x55'),_0x3d7eb7[_0xda49('0x52')]);if(_0x5a5137&&_0x5a5137[_0xda49('0x56')]){logger[_0xda49('0x29')](_0xda49('0x57'),_0xda49('0x58'));_0xcefcea[_0xda49('0x59')]=util[_0xda49('0x2c')](_0xda49('0x5a'),_0x3d7eb7['serverUrl'],_0xcefcea[_0xda49('0x5b')],md5(_0xcefcea[_0xda49('0x5b')]));}else{_0xcefcea[_0xda49('0x59')]='';}return getConnection(_0x3d7eb7)[_0xda49('0x30')](function(_0x2dc96b){_0x351d07=_0x2dc96b;return getUser(_0x3d7eb7,_0x1c5e99['name'],_0x351d07);})[_0xda49('0x30')](function(_0x2d5afe){_0xb5ed01=_0x2d5afe;logger[_0xda49('0x29')](_0xda49('0x5c'),_0xb5ed01['id']);return getEndUser(_0x3d7eb7,_0xcefcea['calleridname'],_0xcefcea['calleridnum'],_0x351d07);})[_0xda49('0x30')](function(_0x1d5377){_0x4a7dc1=_0x1d5377;logger[_0xda49('0x29')]('The\x20Enduser\x20ID\x20is:',_0x4a7dc1['id']);return getTicket(_0x3d7eb7,_0xb5ed01,_0x4a7dc1,_0x1f41a9,_0xcefcea,_0x1f41a9['Fields'],_0x351d07,_0xda49('0x5d'));})[_0xda49('0x30')](function(_0xdbabd2){_0x1dbe5a=_0xdbabd2;logger['info'](_0xda49('0x5e'));logger[_0xda49('0x29')](_0xda49('0x5f'),_0x1dbe5a['id']);return setRelationship(_0x351d07,_0xb5ed01,_0x1dbe5a,_0xda49('0x60'));})[_0xda49('0x30')](function(){return setRelationship(_0x351d07,_0x4a7dc1,_0x1dbe5a,'contacts');})[_0xda49('0x30')](function(){return getServerInfo(_0x351d07);})[_0xda49('0x30')](function(_0x1ed126){var _0x4acb9a=parseInt(_0x1ed126[_0xda49('0x61')][_0xda49('0x62')](0x0));var _0x1cde76=util[_0xda49('0x2c')]('%s/index.php?action=ajaxui#ajaxUILoc=index.php%3Fmodule%3DCalls%26action%3DEditView%26record%3D%s',_0x3d7eb7[_0xda49('0x52')],_0x1dbe5a['id']);if(_0x4acb9a>0x6){_0x1cde76=util[_0xda49('0x2c')]('%s/#bwc/index.php?module=Calls&action=EditView&record=%s',_0x3d7eb7[_0xda49('0x52')],_0x1dbe5a['id']);}logger[_0xda49('0x29')]('[QUEUE]',_0xda49('0x63'));emit(util[_0xda49('0x2c')](_0xda49('0x64'),_0x1c5e99[_0xda49('0x2e')]),'trigger:browser:url',{'uri':_0x1cde76});})[_0xda49('0x65')](function(_0x334492){logger['error'](_0xda49('0x57'),JSON[_0xda49('0x23')](_0x334492));});};exports[_0xda49('0x66')]=function(_0x1eb2cf,_0x3064df,_0x4ca1c4,_0x2e465b,_0x56826c,_0x4852dc,_0x3e18c9){var _0x3a8049,_0x53edbc,_0x20d8bc,_0x3868bf;_0x4852dc['remoteUri']=intUtil['stripTrailingSlash'](_0x4852dc[_0xda49('0x52')]);_0x4852dc[_0xda49('0x54')]=intUtil[_0xda49('0x53')](_0x4852dc[_0xda49('0x54')]);def[_0xda49('0x67')]=util[_0xda49('0x2c')](_0xda49('0x55'),_0x4852dc['remoteUri']);if(_0x3e18c9&&_0x3e18c9[_0xda49('0x68')]&&_0x3e18c9['recordingFormat']!==_0xda49('0x69')){logger[_0xda49('0x29')](_0xda49('0x6a'),_0xda49('0x58'));_0x3064df['recordingURL']=util[_0xda49('0x2c')](_0xda49('0x5a'),_0x4852dc[_0xda49('0x54')],_0x3064df[_0xda49('0x5b')],md5(_0x3064df['uniqueid']));}return getConnection(_0x4852dc)[_0xda49('0x30')](function(_0x484f65){_0x3868bf=_0x484f65;return getUser(_0x4852dc,_0x2e465b[_0xda49('0x2e')],_0x3868bf);})['then'](function(_0x5021d9){_0x3a8049=_0x5021d9;logger[_0xda49('0x29')](_0xda49('0x5c'),_0x3a8049['id']);return getEndUser(_0x4852dc,_0x3064df[_0xda49('0x6b')],_0x3064df[_0xda49('0x6c')],_0x3868bf);})[_0xda49('0x30')](function(_0x307d2d){_0x53edbc=_0x307d2d;logger[_0xda49('0x29')](_0xda49('0x6d'),_0x53edbc['id']);return getTicket(_0x4852dc,_0x3a8049,_0x53edbc,_0x4ca1c4,_0x3064df,_0x4ca1c4[_0xda49('0x6e')],_0x3868bf,'Outbound');})[_0xda49('0x30')](function(_0x3a13f0){_0x20d8bc=_0x3a13f0;logger[_0xda49('0x29')](_0xda49('0x5e'));logger[_0xda49('0x29')]('The\x20Ticket\x20ID\x20is:',_0x20d8bc['id']);return setRelationship(_0x3868bf,_0x3a8049,_0x20d8bc,'users');})[_0xda49('0x30')](function(){return setRelationship(_0x3868bf,_0x53edbc,_0x20d8bc,_0xda49('0x6f'));})[_0xda49('0x30')](function(){return getServerInfo(_0x3868bf);})[_0xda49('0x30')](function(_0x176940){var _0x1274e6=parseInt(_0x176940['version']['charAt'](0x0));var _0xa024d7=util[_0xda49('0x2c')](_0xda49('0x70'),_0x4852dc[_0xda49('0x52')],_0x20d8bc['id']);if(_0x1274e6>0x6){_0xa024d7=util['format'](_0xda49('0x71'),_0x4852dc[_0xda49('0x52')],_0x20d8bc['id']);}logger['info'](_0xda49('0x6a'),_0xda49('0x63'));emit(util[_0xda49('0x2c')](_0xda49('0x64'),_0x2e465b['name']),'trigger:browser:url',{'uri':_0xa024d7});})[_0xda49('0x65')](function(_0x20dc6e){logger['error']('[OUTBOUND]',JSON[_0xda49('0x23')](_0x20dc6e));});};exports[_0xda49('0x72')]=function(_0x5b3245,_0x2e2db1,_0x2c4ae3,_0x17cdb2,_0x2cabe9,_0x2884f3){var _0x760650,_0x45c959,_0x3afc46,_0x3a3f3d;_0x2884f3[_0xda49('0x52')]=intUtil[_0xda49('0x53')](_0x2884f3[_0xda49('0x52')]);_0x2884f3[_0xda49('0x54')]=intUtil[_0xda49('0x53')](_0x2884f3['serverUrl']);def[_0xda49('0x67')]=util[_0xda49('0x2c')](_0xda49('0x55'),_0x2884f3[_0xda49('0x52')]);if(_0x2cabe9&&_0x2cabe9[_0xda49('0x56')]){logger[_0xda49('0x29')]('['+_0x2e2db1['lastevent'][_0xda49('0x73')]()+']',_0xda49('0x58'));_0x2e2db1['recordingURL']=util[_0xda49('0x2c')](_0xda49('0x5a'),_0x2884f3[_0xda49('0x54')],_0x2e2db1[_0xda49('0x5b')],md5(_0x2e2db1[_0xda49('0x5b')]));}else{_0x2e2db1[_0xda49('0x59')]='';}return getConnection(_0x2884f3)['then'](function(_0x1dc902){_0x3a3f3d=_0x1dc902;if(!_[_0xda49('0x74')](_0x17cdb2)){return getUser(_0x2884f3,_0x17cdb2['name'],_0x3a3f3d);}else{return getUser(_0x2884f3,null,_0x3a3f3d);}})[_0xda49('0x30')](function(_0x1ffe2d){_0x760650=_0x1ffe2d;logger[_0xda49('0x29')](_0xda49('0x5c'),_0x760650['id']);return getEndUser(_0x2884f3,_0x2e2db1[_0xda49('0x75')],_0x2e2db1[_0xda49('0x76')],_0x3a3f3d);})['then'](function(_0x4fc9df){_0x45c959=_0x4fc9df;logger['info'](_0xda49('0x6d'),_0x45c959['id']);return getTicket(_0x2884f3,_0x760650,_0x45c959,_0x2c4ae3,_0x2e2db1,_0x2c4ae3[_0xda49('0x6e')],_0x3a3f3d,'Inbound');})[_0xda49('0x30')](function(_0x2cb850){_0x3afc46=_0x2cb850;logger['info']('Ticket\x20created!');logger[_0xda49('0x29')](_0xda49('0x5f'),_0x3afc46['id']);return setRelationship(_0x3a3f3d,_0x760650,_0x3afc46,'users');})[_0xda49('0x30')](function(){return setRelationship(_0x3a3f3d,_0x45c959,_0x3afc46,'contacts');})['then'](function(){return getServerInfo(_0x3a3f3d);})[_0xda49('0x65')](function(_0x40b421){logger[_0xda49('0x77')]('['+_0x2e2db1[_0xda49('0x78')][_0xda49('0x73')]()+']',JSON[_0xda49('0x23')](_0x40b421));});};
\ No newline at end of file