Built motion from commit (unavailable).|2.5.31
[motion2.git] / server / services / ami / trigger / integration / vtiger.js
index bc64fc6..e5cb6c3 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x9e9a=['accessKey','getchallenge','token','getConnection','[HTTP]','queue','stripTrailingSlash','monitor_format','Recording\x20is\x20enabled!','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','serverUrl','uniqueid','recordingURL','email','The\x20User\x20ID\x20is:','calleridname','Fields','Ticket\x20created!','The\x20Ticket\x20ID\x20is:','%s/index.php?module=HelpDesk&view=Detail&record=%s&app=SUPPORT','split','[QUEUE]','Displaying\x20ticket\x20to\x20agent\x20in\x20a\x20new\x20tab...','user:%s','trigger:browser:url','outbound','recordingFormat','destcalleridname','destcalleridnum','The\x20Enduser\x20ID\x20is:','[OUTBOUND]','unmanaged','lastevent','toUpperCase','lodash','request-promise','bluebird','md5','util','./util','../../../../config/environment','../../../../config/logger','vTiger','defaults','redis','localhost','socket.io-emitter','emit','forEach','includes','string','picklist','type','idField','variableName','toString','Variable','name','toLowerCase','info','Creating\x20new\x20ticket...','merge','Normal','Open','getString','POST','format','%s/webservice.php','remoteUri','create','HelpDesk','stringify','then','success','resolve','Ticket\x20could\x20not\x20be\x20created\x20due\x20to:\x20%s','error','catch','[vTiger],\x20%s,\x20%s,\x20%s','createTicket','validateEmail','Getting\x20agent\x20with\x20email','GET','query','username','sessionName','SELECT\x20first_name,\x20last_name,\x20email1\x20FROM\x20Users\x20WHERE\x20email1=\x27%s\x27;','length','result','email1','first_name','last_name','Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!','userId','admin','statusCode','getUser','Searching\x20end\x20user\x20with\x20phone','SELECT\x20id,\x20firstname,\x20lastname,\x20email,\x20phone,\x20mobile,\x20homephone,\x20otherphone,\x20assistantphone\x20FROM\x20Contacts\x20WHERE\x20phone\x20=\x20\x27%s\x27\x20OR\x20mobile\x20=\x27%s\x27\x20OR\x20homephone\x20=\x27%s\x27\x20OR\x20otherphone\x20=\x27%s\x27\x20OR\x20assistantphone\x20=\x27%s\x27;','firstname','lastname','Enduser\x20created.','phone'];(function(_0x5406a6,_0x383260){var _0x1c6771=function(_0x29c920){while(--_0x29c920){_0x5406a6['push'](_0x5406a6['shift']());}};_0x1c6771(++_0x383260);}(_0x9e9a,0x89));var _0xa9e9=function(_0x22e513,_0x53d375){_0x22e513=_0x22e513-0x0;var _0x55d29b=_0x9e9a[_0x22e513];return _0x55d29b;};'use strict';var _=require(_0xa9e9('0x0'));var rp=require(_0xa9e9('0x1'));var BPromise=require(_0xa9e9('0x2'));var md5=require(_0xa9e9('0x3'));var util=require(_0xa9e9('0x4'));var Redis=require('ioredis');var intUtil=require(_0xa9e9('0x5'));var config=require(_0xa9e9('0x6'));var logger=require(_0xa9e9('0x7'))(_0xa9e9('0x8'));config['redis']=_[_0xa9e9('0x9')](config[_0xa9e9('0xa')],{'host':_0xa9e9('0xb'),'port':0x18eb});var io=require(_0xa9e9('0xc'))(new Redis(config[_0xa9e9('0xa')]));function emit(_0x2b9147,_0x4619b0,_0x2d3a80){io['to'](_0x2b9147)[_0xa9e9('0xd')](_0x4619b0,_0x2d3a80);}function getCustomFields(_0x398d26,_0x364242){var _0x9f6b96={};if(_0x398d26['length']>0x0){_[_0xa9e9('0xe')](_0x398d26,function(_0x909d51){if(_[_0xa9e9('0xf')]([_0xa9e9('0x10'),_0xa9e9('0x11')],_0x909d51[_0xa9e9('0x12')])&&_0x909d51[_0xa9e9('0x13')]){_0x9f6b96[_0x909d51['idField']]=_0x909d51['content']['toString']();}else if(_0x909d51[_0xa9e9('0x12')]==='variable'&&_0x909d51[_0xa9e9('0x14')]&&_0x909d51['idField']&&_0x364242[_0x909d51['variableName']]){_0x9f6b96[_0x909d51['idField']]=_0x364242[_0x909d51[_0xa9e9('0x14')]][_0xa9e9('0x15')]();}else if(_0x909d51[_0xa9e9('0x12')]==='customVariable'&&_0x909d51[_0xa9e9('0x16')]&&_0x909d51[_0xa9e9('0x16')][_0xa9e9('0x17')]&&_0x909d51[_0xa9e9('0x13')]&&_0x364242[_0x909d51[_0xa9e9('0x16')][_0xa9e9('0x17')][_0xa9e9('0x18')]()]){_0x9f6b96[_0x909d51['idField']]=_0x364242[_0x909d51['Variable'][_0xa9e9('0x17')][_0xa9e9('0x18')]()]['toString']();}});}return _0x9f6b96;}function createTicket(_0xb6563b,_0x2df0f5,_0xd12402,_0x2d75cd,_0x3c54a5,_0xd773fc,_0x5f006d){logger[_0xa9e9('0x19')](_0xa9e9('0x1a'));var _0x41a904=_[_0xa9e9('0x1b')]({'parent_id':'','assigned_user_id':_0x2df0f5['id'],'ticketpriorities':_0xa9e9('0x1c'),'ticketstatus':_0xa9e9('0x1d'),'ticket_title':intUtil['getString'](_0x2d75cd['Subjects'],_0x3c54a5,'\x20'),'description':intUtil[_0xa9e9('0x1e')](_0x2d75cd['Descriptions'],_0x3c54a5,'\x0a'),'contact_id':_0xd12402['id']},getCustomFields(_0xd773fc,_0x3c54a5));var _0x2f2a5d={'method':_0xa9e9('0x1f'),'uri':util[_0xa9e9('0x20')](_0xa9e9('0x21'),_0xb6563b[_0xa9e9('0x22')]),'form':{'operation':_0xa9e9('0x23'),'username':_0xb6563b['username'],'sessionName':_0x5f006d['sessionName'],'elementType':_0xa9e9('0x24'),'element':JSON[_0xa9e9('0x25')](_0x41a904)},'json':!![]};return request(_0x2f2a5d)[_0xa9e9('0x26')](function(_0x3b2bdf){if(_0x3b2bdf[_0xa9e9('0x27')]){return BPromise[_0xa9e9('0x28')]({'id':_0x3b2bdf['result']['id']});}else{throw new Error(util[_0xa9e9('0x20')](_0xa9e9('0x29'),JSON['stringify'](_0x3b2bdf[_0xa9e9('0x2a')])));}})[_0xa9e9('0x2b')](function(_0x14e1db){var _0x21f762=_0x14e1db['statusCode']||0x1f4;logger[_0xa9e9('0x2a')](_0xa9e9('0x2c'),_0xa9e9('0x2d'),_0x21f762,JSON[_0xa9e9('0x25')](_0x14e1db));});}function getUser(_0xe5a750,_0x5de788,_0x3d06cf){if(intUtil[_0xa9e9('0x2e')](_0x5de788)){logger['info'](_0xa9e9('0x2f'),_0x5de788);return request({'method':_0xa9e9('0x30'),'uri':util[_0xa9e9('0x20')](_0xa9e9('0x21'),_0xe5a750[_0xa9e9('0x22')]),'qs':{'operation':_0xa9e9('0x31'),'username':_0xe5a750[_0xa9e9('0x32')],'sessionName':_0x3d06cf[_0xa9e9('0x33')],'query':util[_0xa9e9('0x20')](_0xa9e9('0x34'),_0x5de788)},'json':!![]})[_0xa9e9('0x26')](function(_0x2466f1){if(_0x2466f1[_0xa9e9('0x27')]&&_0x2466f1['result'][_0xa9e9('0x35')]){logger['info']('Agent\x20found!');return BPromise['resolve']({'id':_0x2466f1[_0xa9e9('0x36')][0x0]['id'],'email':_0x2466f1['result'][0x0][_0xa9e9('0x37')],'name':_0x2466f1[_0xa9e9('0x36')][0x0][_0xa9e9('0x38')]+'\x20'+_0x2466f1[_0xa9e9('0x36')][_0xa9e9('0x39')]});}else{logger[_0xa9e9('0x19')](_0xa9e9('0x3a'));return BPromise[_0xa9e9('0x28')]({'id':_0x3d06cf[_0xa9e9('0x3b')],'email':_0xe5a750[_0xa9e9('0x32')],'name':_0xa9e9('0x3c')});}})['catch'](function(_0x3af8ee){var _0x14eaaa=_0x3af8ee[_0xa9e9('0x3d')]||0x1f4;logger['error'](_0xa9e9('0x2c'),_0xa9e9('0x3e'),_0x14eaaa,JSON[_0xa9e9('0x25')](_0x3af8ee));});}else{logger['info'](_0xa9e9('0x3a'));return BPromise[_0xa9e9('0x28')]({'id':_0x3d06cf[_0xa9e9('0x3b')],'email':_0xe5a750[_0xa9e9('0x32')],'name':'admin'})[_0xa9e9('0x2b')](function(_0x13b49d){var _0x1c990e=_0x13b49d[_0xa9e9('0x3d')]||0x1f4;logger[_0xa9e9('0x2a')](_0xa9e9('0x2c'),_0xa9e9('0x3e'),_0x1c990e,JSON[_0xa9e9('0x25')](_0x13b49d));});}}function getEndUser(_0x110acc,_0x116874,_0x594e7a,_0x255a10){logger['info'](_0xa9e9('0x3f'),_0x594e7a);return request({'method':'GET','uri':util[_0xa9e9('0x20')](_0xa9e9('0x21'),_0x110acc[_0xa9e9('0x22')]),'qs':{'operation':'query','username':_0x110acc[_0xa9e9('0x32')],'sessionName':_0x255a10[_0xa9e9('0x33')],'query':util['format'](_0xa9e9('0x40'),_0x594e7a,_0x594e7a,_0x594e7a,_0x594e7a,_0x594e7a)},'json':!![]})[_0xa9e9('0x26')](function(_0x4d0182){if(_0x4d0182[_0xa9e9('0x27')]&&_0x4d0182[_0xa9e9('0x36')]['length']){logger[_0xa9e9('0x19')]('Enduser\x20found!');return BPromise[_0xa9e9('0x28')]({'id':_0x4d0182['result'][0x0]['id'],'name':_0x4d0182[_0xa9e9('0x36')][0x0][_0xa9e9('0x41')]+'\x20'+_0x4d0182[_0xa9e9('0x36')][0x0][_0xa9e9('0x42')],'phone':_0x594e7a});}else{logger['info']('Enduser\x20not\x20found,\x20creating\x20a\x20new\x20enduser!');return request({'method':_0xa9e9('0x1f'),'uri':util['format'](_0xa9e9('0x21'),_0x110acc[_0xa9e9('0x22')]),'form':{'operation':_0xa9e9('0x23'),'sessionName':_0x255a10[_0xa9e9('0x33')],'elementType':'Contacts','element':JSON[_0xa9e9('0x25')]({'lastname':_0x116874,'phone':_0x594e7a,'assigned_user_id':'\x20'})},'json':!![]})[_0xa9e9('0x26')](function(_0xacfffa){logger[_0xa9e9('0x19')](_0xa9e9('0x43'));return BPromise[_0xa9e9('0x28')]({'id':_0xacfffa[_0xa9e9('0x36')]['id'],'name':_0xacfffa[_0xa9e9('0x36')][_0xa9e9('0x42')],'phone':_0xacfffa[_0xa9e9('0x36')][_0xa9e9('0x44')]});})[_0xa9e9('0x2b')](function(_0x439957){var _0x1d86d6=_0x439957[_0xa9e9('0x3d')]||0x1f4;logger[_0xa9e9('0x2a')](_0xa9e9('0x2c'),'getEndUser',_0x1d86d6,JSON[_0xa9e9('0x25')](_0x439957));});}});}function getConnection(_0x330b93){var _0x188d6f=_0x330b93[_0xa9e9('0x32')];var _0x22c0c4=_0x330b93[_0xa9e9('0x45')];return request({'method':_0xa9e9('0x30'),'uri':util[_0xa9e9('0x20')]('%s/webservice.php',_0x330b93['remoteUri']),'qs':{'operation':_0xa9e9('0x46'),'username':_0x188d6f},'json':!![]})['then'](function(_0x458a91){if(_0x458a91[_0xa9e9('0x27')]){return request({'method':_0xa9e9('0x1f'),'uri':util[_0xa9e9('0x20')](_0xa9e9('0x21'),_0x330b93['remoteUri']),'form':{'operation':'login','username':_0x188d6f,'accessKey':md5(_0x458a91[_0xa9e9('0x36')][_0xa9e9('0x47')]+_0x22c0c4)},'json':!![]});}})['then'](function(_0x2843bf){if(_0x2843bf[_0xa9e9('0x27')]){return BPromise[_0xa9e9('0x28')](_0x2843bf[_0xa9e9('0x36')]);}else{throw new Error(util[_0xa9e9('0x20')]('Account\x20%d\x20is\x20not\x20valid',_0x330b93['id']));}})[_0xa9e9('0x2b')](function(_0x28e605){var _0x1faff7=_0x28e605['statusCode']||0x1f4;logger[_0xa9e9('0x2a')]('[vTiger],\x20%s,\x20%s,\x20%s',_0xa9e9('0x48'),_0x1faff7,JSON[_0xa9e9('0x25')](_0x28e605));});}function request(_0x4d1133){logger[_0xa9e9('0x19')](_0xa9e9('0x49'),JSON[_0xa9e9('0x25')](_0x4d1133));return rp(_0x4d1133);}exports[_0xa9e9('0x4a')]=function(_0x4b0110,_0x3df975,_0x4e445b,_0x56fcb5,_0x50899d,_0x5a4b78){var _0x179fce,_0xa677cd,_0x4dc3fb,_0x1d70f8;_0x5a4b78[_0xa9e9('0x22')]=intUtil[_0xa9e9('0x4b')](_0x5a4b78[_0xa9e9('0x22')]);if(_0x50899d&&_0x50899d[_0xa9e9('0x4c')]){logger[_0xa9e9('0x19')]('[QUEUE]',_0xa9e9('0x4d'));_0x3df975['recordingURL']=util[_0xa9e9('0x20')](_0xa9e9('0x4e'),_0x5a4b78[_0xa9e9('0x4f')],_0x3df975[_0xa9e9('0x50')],md5(_0x3df975[_0xa9e9('0x50')]));}else{_0x3df975[_0xa9e9('0x51')]='';}return getConnection(_0x5a4b78)[_0xa9e9('0x26')](function(_0x38d1f5){_0x1d70f8=_0x38d1f5;return getUser(_0x5a4b78,_0x56fcb5[_0xa9e9('0x52')],_0x1d70f8);})['then'](function(_0x1b0b34){_0x179fce=_0x1b0b34;logger[_0xa9e9('0x19')](_0xa9e9('0x53'),_0x179fce['id']);return getEndUser(_0x5a4b78,_0x3df975[_0xa9e9('0x54')],_0x3df975['calleridnum'],_0x1d70f8);})[_0xa9e9('0x26')](function(_0x2c4695){_0xa677cd=_0x2c4695;logger[_0xa9e9('0x19')]('The\x20Enduser\x20ID\x20is:',_0xa677cd['id']);return createTicket(_0x5a4b78,_0x179fce,_0xa677cd,_0x4e445b,_0x3df975,_0x4e445b[_0xa9e9('0x55')],_0x1d70f8);})[_0xa9e9('0x26')](function(_0x3f725a){_0x4dc3fb=_0x3f725a;logger[_0xa9e9('0x19')](_0xa9e9('0x56'));logger[_0xa9e9('0x19')](_0xa9e9('0x57'),_0x4dc3fb['id']);var _0x18c122=util['format'](_0xa9e9('0x58'),_0x5a4b78[_0xa9e9('0x22')],_[_0xa9e9('0x59')](_0x4dc3fb['id'],'x')[0x1]);logger['info'](_0xa9e9('0x5a'),_0xa9e9('0x5b'));emit(util[_0xa9e9('0x20')](_0xa9e9('0x5c'),_0x56fcb5[_0xa9e9('0x17')]),_0xa9e9('0x5d'),{'uri':_0x18c122});})[_0xa9e9('0x2b')](function(_0x2a2cd4){logger[_0xa9e9('0x2a')](_0xa9e9('0x5a'),JSON[_0xa9e9('0x25')](_0x2a2cd4));});};exports[_0xa9e9('0x5e')]=function(_0x439586,_0x33c2a9,_0x218a6d,_0x5318c6,_0x59e75e,_0x37b6b2,_0x539174){var _0x4a2363,_0x113c4e,_0x6fc9c3,_0xcc4071;_0x37b6b2[_0xa9e9('0x22')]=intUtil[_0xa9e9('0x4b')](_0x37b6b2['remoteUri']);_0x37b6b2['serverUrl']=intUtil[_0xa9e9('0x4b')](_0x37b6b2[_0xa9e9('0x4f')]);if(_0x539174&&_0x539174[_0xa9e9('0x5f')]&&_0x539174['recordingFormat']!=='none'){logger[_0xa9e9('0x19')]('[OUTBOUND]',_0xa9e9('0x4d'));_0x33c2a9[_0xa9e9('0x51')]=util[_0xa9e9('0x20')]('%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s',_0x37b6b2['serverUrl'],_0x33c2a9['uniqueid'],md5(_0x33c2a9[_0xa9e9('0x50')]));}return getConnection(_0x37b6b2)['then'](function(_0x202381){_0xcc4071=_0x202381;return getUser(_0x37b6b2,_0x5318c6['email'],_0xcc4071);})['then'](function(_0x3d6f24){_0x4a2363=_0x3d6f24;logger['info'](_0xa9e9('0x53'),_0x4a2363['id']);return getEndUser(_0x37b6b2,_0x33c2a9[_0xa9e9('0x60')],_0x33c2a9[_0xa9e9('0x61')],_0xcc4071);})[_0xa9e9('0x26')](function(_0x527b78){_0x113c4e=_0x527b78;logger['info'](_0xa9e9('0x62'),_0x113c4e['id']);return createTicket(_0x37b6b2,_0x4a2363,_0x113c4e,_0x218a6d,_0x33c2a9,_0x218a6d[_0xa9e9('0x55')],_0xcc4071);})[_0xa9e9('0x26')](function(_0x312707){_0x6fc9c3=_0x312707;logger[_0xa9e9('0x19')](_0xa9e9('0x56'));logger['info'](_0xa9e9('0x57'),_0x6fc9c3['id']);var _0x29b25a=util[_0xa9e9('0x20')]('%s/index.php?module=HelpDesk&view=Detail&record=%s&app=SUPPORT',_0x37b6b2[_0xa9e9('0x22')],_[_0xa9e9('0x59')](_0x6fc9c3['id'],'x')[0x1]);logger[_0xa9e9('0x19')](_0xa9e9('0x63'),_0xa9e9('0x5b'));emit(util[_0xa9e9('0x20')](_0xa9e9('0x5c'),_0x5318c6[_0xa9e9('0x17')]),_0xa9e9('0x5d'),{'uri':_0x29b25a});})[_0xa9e9('0x2b')](function(_0x42c103){logger[_0xa9e9('0x2a')](_0xa9e9('0x63'),JSON['stringify'](_0x42c103));});};exports[_0xa9e9('0x64')]=function(_0x3b3d81,_0x131229,_0x3f84bd,_0x479579,_0x3a8086,_0x593fdc){var _0x237137,_0x4a7cfc,_0x2b4ace,_0x270561;_0x593fdc['remoteUri']=intUtil[_0xa9e9('0x4b')](_0x593fdc[_0xa9e9('0x22')]);_0x593fdc[_0xa9e9('0x4f')]=intUtil[_0xa9e9('0x4b')](_0x593fdc[_0xa9e9('0x4f')]);if(_0x3a8086&&_0x3a8086[_0xa9e9('0x4c')]){logger[_0xa9e9('0x19')]('['+_0x131229[_0xa9e9('0x65')][_0xa9e9('0x66')]()+']',_0xa9e9('0x4d'));_0x131229[_0xa9e9('0x51')]=util[_0xa9e9('0x20')](_0xa9e9('0x4e'),_0x593fdc[_0xa9e9('0x4f')],_0x131229['uniqueid'],md5(_0x131229[_0xa9e9('0x50')]));}else{_0x131229[_0xa9e9('0x51')]='';}return getConnection(_0x593fdc)[_0xa9e9('0x26')](function(_0x20103b){_0x270561=_0x20103b;return getUser(_0x593fdc,'',_0x270561);})['then'](function(_0x127bab){_0x237137=_0x127bab;logger[_0xa9e9('0x19')](_0xa9e9('0x53'),_0x237137['id']);return getEndUser(_0x593fdc,_0x131229['calleridname'],_0x131229['calleridnum'],_0x270561);})[_0xa9e9('0x26')](function(_0x41dc79){_0x4a7cfc=_0x41dc79;logger[_0xa9e9('0x19')](_0xa9e9('0x62'),_0x4a7cfc['id']);return createTicket(_0x593fdc,_0x237137,_0x4a7cfc,_0x3f84bd,_0x131229,_0x3f84bd[_0xa9e9('0x55')],_0x270561);})[_0xa9e9('0x26')](function(_0x78ee65){_0x2b4ace=_0x78ee65;logger[_0xa9e9('0x19')](_0xa9e9('0x56'));logger[_0xa9e9('0x19')](_0xa9e9('0x57'),_0x2b4ace['id']);})[_0xa9e9('0x2b')](function(_0x4ec0d9){logger[_0xa9e9('0x2a')]('['+_0x131229[_0xa9e9('0x65')][_0xa9e9('0x66')]()+']',JSON[_0xa9e9('0x25')](_0x4ec0d9));});};
\ No newline at end of file
+var _0x242c=['Enduser\x20not\x20found,\x20creating\x20a\x20new\x20enduser!','Contacts','Enduser\x20created.','phone','getEndUser','accessKey','GET','getchallenge','login','token','Account\x20%d\x20is\x20not\x20valid','getConnection','[HTTP]','stripTrailingSlash','monitor_format','recordingURL','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','serverUrl','uniqueid','email','The\x20User\x20ID\x20is:','calleridname','Fields','Ticket\x20created!','The\x20Ticket\x20ID\x20is:','%s/index.php?module=HelpDesk&view=Detail&record=%s&app=SUPPORT','[QUEUE]','Displaying\x20ticket\x20to\x20agent\x20in\x20a\x20new\x20tab...','user:%s','trigger:browser:url','outbound','recordingFormat','[OUTBOUND]','Recording\x20is\x20enabled!','destcalleridnum','The\x20Enduser\x20ID\x20is:','split','unmanaged','lastevent','toUpperCase','calleridnum','lodash','request-promise','bluebird','md5','util','./util','../../../../config/environment','../../../../config/logger','vTiger','redis','localhost','socket.io-emitter','length','forEach','includes','picklist','type','idField','content','toString','variableName','customVariable','Variable','name','toLowerCase','info','Creating\x20new\x20ticket...','Normal','getString','Subjects','Descriptions','POST','%s/webservice.php','remoteUri','create','username','HelpDesk','success','resolve','result','stringify','error','catch','statusCode','[vTiger],\x20%s,\x20%s,\x20%s','createTicket','validateEmail','Getting\x20agent\x20with\x20email','format','query','sessionName','SELECT\x20first_name,\x20last_name,\x20email1\x20FROM\x20Users\x20WHERE\x20email1=\x27%s\x27;','then','Agent\x20found!','first_name','last_name','Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!','admin','getUser','userId','Searching\x20end\x20user\x20with\x20phone','Enduser\x20found!','firstname','lastname'];(function(_0x433fea,_0x37d2f7){var _0x4d52c1=function(_0x358d24){while(--_0x358d24){_0x433fea['push'](_0x433fea['shift']());}};_0x4d52c1(++_0x37d2f7);}(_0x242c,0xfb));var _0xc242=function(_0x2e29b4,_0x57262d){_0x2e29b4=_0x2e29b4-0x0;var _0x4ec6a6=_0x242c[_0x2e29b4];return _0x4ec6a6;};'use strict';var _=require(_0xc242('0x0'));var rp=require(_0xc242('0x1'));var BPromise=require(_0xc242('0x2'));var md5=require(_0xc242('0x3'));var util=require(_0xc242('0x4'));var Redis=require('ioredis');var intUtil=require(_0xc242('0x5'));var config=require(_0xc242('0x6'));var logger=require(_0xc242('0x7'))(_0xc242('0x8'));config[_0xc242('0x9')]=_['defaults'](config[_0xc242('0x9')],{'host':_0xc242('0xa'),'port':0x18eb});var io=require(_0xc242('0xb'))(new Redis(config[_0xc242('0x9')]));function emit(_0x11bc14,_0x3374e9,_0x47f994){io['to'](_0x11bc14)['emit'](_0x3374e9,_0x47f994);}function getCustomFields(_0x34a92f,_0x7ca4fb){var _0x19f39d={};if(_0x34a92f[_0xc242('0xc')]>0x0){_[_0xc242('0xd')](_0x34a92f,function(_0xb5712b){if(_[_0xc242('0xe')](['string',_0xc242('0xf')],_0xb5712b[_0xc242('0x10')])&&_0xb5712b[_0xc242('0x11')]){_0x19f39d[_0xb5712b[_0xc242('0x11')]]=_0xb5712b[_0xc242('0x12')][_0xc242('0x13')]();}else if(_0xb5712b[_0xc242('0x10')]==='variable'&&_0xb5712b[_0xc242('0x14')]&&_0xb5712b[_0xc242('0x11')]&&_0x7ca4fb[_0xb5712b['variableName']]){_0x19f39d[_0xb5712b[_0xc242('0x11')]]=_0x7ca4fb[_0xb5712b[_0xc242('0x14')]][_0xc242('0x13')]();}else if(_0xb5712b[_0xc242('0x10')]===_0xc242('0x15')&&_0xb5712b[_0xc242('0x16')]&&_0xb5712b[_0xc242('0x16')]['name']&&_0xb5712b[_0xc242('0x11')]&&_0x7ca4fb[_0xb5712b[_0xc242('0x16')][_0xc242('0x17')][_0xc242('0x18')]()]){_0x19f39d[_0xb5712b['idField']]=_0x7ca4fb[_0xb5712b['Variable'][_0xc242('0x17')]['toLowerCase']()][_0xc242('0x13')]();}});}return _0x19f39d;}function createTicket(_0x35de46,_0x3fd4dc,_0x14f420,_0x821f30,_0x2e1e6d,_0x21563e,_0x351241){logger[_0xc242('0x19')](_0xc242('0x1a'));var _0x52c3ba=_['merge']({'parent_id':'','assigned_user_id':_0x3fd4dc['id'],'ticketpriorities':_0xc242('0x1b'),'ticketstatus':'Open','ticket_title':intUtil[_0xc242('0x1c')](_0x821f30[_0xc242('0x1d')],_0x2e1e6d,'\x20'),'description':intUtil[_0xc242('0x1c')](_0x821f30[_0xc242('0x1e')],_0x2e1e6d,'\x0a'),'contact_id':_0x14f420['id']},getCustomFields(_0x21563e,_0x2e1e6d));var _0x408e7c={'method':_0xc242('0x1f'),'uri':util['format'](_0xc242('0x20'),_0x35de46[_0xc242('0x21')]),'form':{'operation':_0xc242('0x22'),'username':_0x35de46[_0xc242('0x23')],'sessionName':_0x351241['sessionName'],'elementType':_0xc242('0x24'),'element':JSON['stringify'](_0x52c3ba)},'json':!![]};return request(_0x408e7c)['then'](function(_0x54e67e){if(_0x54e67e[_0xc242('0x25')]){return BPromise[_0xc242('0x26')]({'id':_0x54e67e[_0xc242('0x27')]['id']});}else{throw new Error(util['format']('Ticket\x20could\x20not\x20be\x20created\x20due\x20to:\x20%s',JSON[_0xc242('0x28')](_0x54e67e[_0xc242('0x29')])));}})[_0xc242('0x2a')](function(_0x31106d){var _0x52208e=_0x31106d[_0xc242('0x2b')]||0x1f4;logger[_0xc242('0x29')](_0xc242('0x2c'),_0xc242('0x2d'),_0x52208e,JSON[_0xc242('0x28')](_0x31106d));});}function getUser(_0x2d8538,_0x395a8d,_0x2c0985){if(intUtil[_0xc242('0x2e')](_0x395a8d)){logger['info'](_0xc242('0x2f'),_0x395a8d);return request({'method':'GET','uri':util[_0xc242('0x30')](_0xc242('0x20'),_0x2d8538[_0xc242('0x21')]),'qs':{'operation':_0xc242('0x31'),'username':_0x2d8538[_0xc242('0x23')],'sessionName':_0x2c0985[_0xc242('0x32')],'query':util[_0xc242('0x30')](_0xc242('0x33'),_0x395a8d)},'json':!![]})[_0xc242('0x34')](function(_0x59b1e0){if(_0x59b1e0['success']&&_0x59b1e0[_0xc242('0x27')][_0xc242('0xc')]){logger[_0xc242('0x19')](_0xc242('0x35'));return BPromise[_0xc242('0x26')]({'id':_0x59b1e0[_0xc242('0x27')][0x0]['id'],'email':_0x59b1e0['result'][0x0]['email1'],'name':_0x59b1e0[_0xc242('0x27')][0x0][_0xc242('0x36')]+'\x20'+_0x59b1e0[_0xc242('0x27')][_0xc242('0x37')]});}else{logger[_0xc242('0x19')](_0xc242('0x38'));return BPromise[_0xc242('0x26')]({'id':_0x2c0985['userId'],'email':_0x2d8538[_0xc242('0x23')],'name':_0xc242('0x39')});}})[_0xc242('0x2a')](function(_0xf390ea){var _0x3b7d74=_0xf390ea['statusCode']||0x1f4;logger[_0xc242('0x29')](_0xc242('0x2c'),_0xc242('0x3a'),_0x3b7d74,JSON['stringify'](_0xf390ea));});}else{logger['info'](_0xc242('0x38'));return BPromise[_0xc242('0x26')]({'id':_0x2c0985[_0xc242('0x3b')],'email':_0x2d8538[_0xc242('0x23')],'name':_0xc242('0x39')})[_0xc242('0x2a')](function(_0x382c82){var _0x4d14c9=_0x382c82[_0xc242('0x2b')]||0x1f4;logger[_0xc242('0x29')](_0xc242('0x2c'),_0xc242('0x3a'),_0x4d14c9,JSON[_0xc242('0x28')](_0x382c82));});}}function getEndUser(_0x5801e5,_0x22bb88,_0x1e0faf,_0x494581){logger['info'](_0xc242('0x3c'),_0x1e0faf);return request({'method':'GET','uri':util[_0xc242('0x30')](_0xc242('0x20'),_0x5801e5[_0xc242('0x21')]),'qs':{'operation':_0xc242('0x31'),'username':_0x5801e5[_0xc242('0x23')],'sessionName':_0x494581[_0xc242('0x32')],'query':util['format']('SELECT\x20id,\x20firstname,\x20lastname,\x20email,\x20phone,\x20mobile,\x20homephone,\x20otherphone,\x20assistantphone\x20FROM\x20Contacts\x20WHERE\x20phone\x20=\x20\x27%s\x27\x20OR\x20mobile\x20=\x27%s\x27\x20OR\x20homephone\x20=\x27%s\x27\x20OR\x20otherphone\x20=\x27%s\x27\x20OR\x20assistantphone\x20=\x27%s\x27;',_0x1e0faf,_0x1e0faf,_0x1e0faf,_0x1e0faf,_0x1e0faf)},'json':!![]})[_0xc242('0x34')](function(_0x1feccb){if(_0x1feccb[_0xc242('0x25')]&&_0x1feccb[_0xc242('0x27')]['length']){logger[_0xc242('0x19')](_0xc242('0x3d'));return BPromise[_0xc242('0x26')]({'id':_0x1feccb['result'][0x0]['id'],'name':_0x1feccb[_0xc242('0x27')][0x0][_0xc242('0x3e')]+'\x20'+_0x1feccb[_0xc242('0x27')][0x0][_0xc242('0x3f')],'phone':_0x1e0faf});}else{logger['info'](_0xc242('0x40'));return request({'method':'POST','uri':util[_0xc242('0x30')]('%s/webservice.php',_0x5801e5[_0xc242('0x21')]),'form':{'operation':_0xc242('0x22'),'sessionName':_0x494581[_0xc242('0x32')],'elementType':_0xc242('0x41'),'element':JSON['stringify']({'lastname':_0x22bb88,'phone':_0x1e0faf,'assigned_user_id':'\x20'})},'json':!![]})['then'](function(_0x4e9bce){logger[_0xc242('0x19')](_0xc242('0x42'));return BPromise[_0xc242('0x26')]({'id':_0x4e9bce[_0xc242('0x27')]['id'],'name':_0x4e9bce['result'][_0xc242('0x3f')],'phone':_0x4e9bce[_0xc242('0x27')][_0xc242('0x43')]});})[_0xc242('0x2a')](function(_0x574332){var _0x145d23=_0x574332[_0xc242('0x2b')]||0x1f4;logger[_0xc242('0x29')](_0xc242('0x2c'),_0xc242('0x44'),_0x145d23,JSON['stringify'](_0x574332));});}});}function getConnection(_0x3f259d){var _0x12a005=_0x3f259d[_0xc242('0x23')];var _0x4fcf8b=_0x3f259d[_0xc242('0x45')];return request({'method':_0xc242('0x46'),'uri':util['format'](_0xc242('0x20'),_0x3f259d['remoteUri']),'qs':{'operation':_0xc242('0x47'),'username':_0x12a005},'json':!![]})['then'](function(_0x4e060d){if(_0x4e060d[_0xc242('0x25')]){return request({'method':_0xc242('0x1f'),'uri':util[_0xc242('0x30')](_0xc242('0x20'),_0x3f259d[_0xc242('0x21')]),'form':{'operation':_0xc242('0x48'),'username':_0x12a005,'accessKey':md5(_0x4e060d[_0xc242('0x27')][_0xc242('0x49')]+_0x4fcf8b)},'json':!![]});}})[_0xc242('0x34')](function(_0x1147bd){if(_0x1147bd[_0xc242('0x25')]){return BPromise['resolve'](_0x1147bd[_0xc242('0x27')]);}else{throw new Error(util[_0xc242('0x30')](_0xc242('0x4a'),_0x3f259d['id']));}})[_0xc242('0x2a')](function(_0x385b89){var _0x43ede3=_0x385b89[_0xc242('0x2b')]||0x1f4;logger[_0xc242('0x29')](_0xc242('0x2c'),_0xc242('0x4b'),_0x43ede3,JSON['stringify'](_0x385b89));});}function request(_0x1db979){logger[_0xc242('0x19')](_0xc242('0x4c'),JSON[_0xc242('0x28')](_0x1db979));return rp(_0x1db979);}exports['queue']=function(_0x16a66f,_0xa8b4fc,_0x557747,_0x3de8f2,_0x33f2a0,_0x569d9a){var _0x2e90be,_0x502178,_0x3a223e,_0x2db3f1;_0x569d9a[_0xc242('0x21')]=intUtil[_0xc242('0x4d')](_0x569d9a['remoteUri']);if(_0x33f2a0&&_0x33f2a0[_0xc242('0x4e')]){logger['info']('[QUEUE]','Recording\x20is\x20enabled!');_0xa8b4fc[_0xc242('0x4f')]=util[_0xc242('0x30')](_0xc242('0x50'),_0x569d9a[_0xc242('0x51')],_0xa8b4fc['uniqueid'],md5(_0xa8b4fc[_0xc242('0x52')]));}else{_0xa8b4fc[_0xc242('0x4f')]='';}return getConnection(_0x569d9a)[_0xc242('0x34')](function(_0x21b926){_0x2db3f1=_0x21b926;return getUser(_0x569d9a,_0x3de8f2[_0xc242('0x53')],_0x2db3f1);})[_0xc242('0x34')](function(_0x27d07a){_0x2e90be=_0x27d07a;logger[_0xc242('0x19')](_0xc242('0x54'),_0x2e90be['id']);return getEndUser(_0x569d9a,_0xa8b4fc[_0xc242('0x55')],_0xa8b4fc['calleridnum'],_0x2db3f1);})['then'](function(_0x53f640){_0x502178=_0x53f640;logger['info']('The\x20Enduser\x20ID\x20is:',_0x502178['id']);return createTicket(_0x569d9a,_0x2e90be,_0x502178,_0x557747,_0xa8b4fc,_0x557747[_0xc242('0x56')],_0x2db3f1);})[_0xc242('0x34')](function(_0x2631de){_0x3a223e=_0x2631de;logger['info'](_0xc242('0x57'));logger['info'](_0xc242('0x58'),_0x3a223e['id']);var _0x2952b0=util[_0xc242('0x30')](_0xc242('0x59'),_0x569d9a[_0xc242('0x21')],_['split'](_0x3a223e['id'],'x')[0x1]);logger[_0xc242('0x19')](_0xc242('0x5a'),_0xc242('0x5b'));emit(util['format'](_0xc242('0x5c'),_0x3de8f2[_0xc242('0x17')]),_0xc242('0x5d'),{'uri':_0x2952b0});})[_0xc242('0x2a')](function(_0x4b044a){logger[_0xc242('0x29')](_0xc242('0x5a'),JSON[_0xc242('0x28')](_0x4b044a));});};exports[_0xc242('0x5e')]=function(_0x22823a,_0x82ebc8,_0x5d126d,_0x426753,_0x5aad64,_0x17cb2c,_0x48b46b){var _0x1b024a,_0x1a6262,_0x2ca9f3,_0x3796ae;_0x17cb2c[_0xc242('0x21')]=intUtil['stripTrailingSlash'](_0x17cb2c[_0xc242('0x21')]);_0x17cb2c['serverUrl']=intUtil[_0xc242('0x4d')](_0x17cb2c[_0xc242('0x51')]);if(_0x48b46b&&_0x48b46b[_0xc242('0x5f')]&&_0x48b46b['recordingFormat']!=='none'){logger[_0xc242('0x19')](_0xc242('0x60'),_0xc242('0x61'));_0x82ebc8[_0xc242('0x4f')]=util[_0xc242('0x30')](_0xc242('0x50'),_0x17cb2c['serverUrl'],_0x82ebc8['uniqueid'],md5(_0x82ebc8[_0xc242('0x52')]));}return getConnection(_0x17cb2c)['then'](function(_0x51b43e){_0x3796ae=_0x51b43e;return getUser(_0x17cb2c,_0x426753[_0xc242('0x53')],_0x3796ae);})[_0xc242('0x34')](function(_0x5b2f7a){_0x1b024a=_0x5b2f7a;logger[_0xc242('0x19')](_0xc242('0x54'),_0x1b024a['id']);return getEndUser(_0x17cb2c,_0x82ebc8['destcalleridname'],_0x82ebc8[_0xc242('0x62')],_0x3796ae);})[_0xc242('0x34')](function(_0x3123a6){_0x1a6262=_0x3123a6;logger['info'](_0xc242('0x63'),_0x1a6262['id']);return createTicket(_0x17cb2c,_0x1b024a,_0x1a6262,_0x5d126d,_0x82ebc8,_0x5d126d[_0xc242('0x56')],_0x3796ae);})[_0xc242('0x34')](function(_0x217b60){_0x2ca9f3=_0x217b60;logger['info']('Ticket\x20created!');logger[_0xc242('0x19')]('The\x20Ticket\x20ID\x20is:',_0x2ca9f3['id']);var _0x419bf2=util[_0xc242('0x30')]('%s/index.php?module=HelpDesk&view=Detail&record=%s&app=SUPPORT',_0x17cb2c['remoteUri'],_[_0xc242('0x64')](_0x2ca9f3['id'],'x')[0x1]);logger[_0xc242('0x19')](_0xc242('0x60'),_0xc242('0x5b'));emit(util[_0xc242('0x30')](_0xc242('0x5c'),_0x426753['name']),_0xc242('0x5d'),{'uri':_0x419bf2});})['catch'](function(_0x5e03c0){logger[_0xc242('0x29')]('[OUTBOUND]',JSON['stringify'](_0x5e03c0));});};exports[_0xc242('0x65')]=function(_0x2828a3,_0x143be1,_0x43e6a9,_0x153729,_0x88a63e,_0x5983db){var _0x4a2deb,_0x317caf,_0x438170,_0x4b8fe8;_0x5983db[_0xc242('0x21')]=intUtil[_0xc242('0x4d')](_0x5983db[_0xc242('0x21')]);_0x5983db[_0xc242('0x51')]=intUtil[_0xc242('0x4d')](_0x5983db[_0xc242('0x51')]);if(_0x88a63e&&_0x88a63e[_0xc242('0x4e')]){logger[_0xc242('0x19')]('['+_0x143be1[_0xc242('0x66')][_0xc242('0x67')]()+']',_0xc242('0x61'));_0x143be1['recordingURL']=util[_0xc242('0x30')](_0xc242('0x50'),_0x5983db[_0xc242('0x51')],_0x143be1[_0xc242('0x52')],md5(_0x143be1[_0xc242('0x52')]));}else{_0x143be1[_0xc242('0x4f')]='';}return getConnection(_0x5983db)[_0xc242('0x34')](function(_0x376921){_0x4b8fe8=_0x376921;return getUser(_0x5983db,'',_0x4b8fe8);})['then'](function(_0x3c6efb){_0x4a2deb=_0x3c6efb;logger[_0xc242('0x19')](_0xc242('0x54'),_0x4a2deb['id']);return getEndUser(_0x5983db,_0x143be1['calleridname'],_0x143be1[_0xc242('0x68')],_0x4b8fe8);})[_0xc242('0x34')](function(_0x2866a0){_0x317caf=_0x2866a0;logger[_0xc242('0x19')]('The\x20Enduser\x20ID\x20is:',_0x317caf['id']);return createTicket(_0x5983db,_0x4a2deb,_0x317caf,_0x43e6a9,_0x143be1,_0x43e6a9[_0xc242('0x56')],_0x4b8fe8);})[_0xc242('0x34')](function(_0x4aebc2){_0x438170=_0x4aebc2;logger[_0xc242('0x19')](_0xc242('0x57'));logger[_0xc242('0x19')](_0xc242('0x58'),_0x438170['id']);})[_0xc242('0x2a')](function(_0x24cf61){logger[_0xc242('0x29')]('['+_0x143be1[_0xc242('0x66')][_0xc242('0x67')]()+']',JSON['stringify'](_0x24cf61));});};
\ No newline at end of file