Built motion from commit (unavailable).|2.5.21
[motion2.git] / server / services / ami / trigger / integration / vtiger.js
index 3ecf420..6a81a04 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x8f09=['bluebird','md5','util','ioredis','./util','../../../../config/environment','vTiger','redis','defaults','localhost','socket.io-emitter','emit','length','forEach','type','string','idField','content','variable','variableName','toString','customVariable','Variable','name','toLowerCase','Creating\x20new\x20ticket...','Open','getString','Subjects','Descriptions','POST','%s/webservice.php','remoteUri','create','username','sessionName','HelpDesk','stringify','then','success','resolve','result','Ticket\x20could\x20not\x20be\x20created\x20due\x20to:\x20%s','error','catch','createTicket','validateEmail','info','Getting\x20agent\x20with\x20email','format','SELECT\x20first_name,\x20last_name,\x20email1\x20FROM\x20Users\x20WHERE\x20email1=\x27%s\x27;','email1','first_name','last_name','userId','admin','statusCode','getUser','[vTiger],\x20%s,\x20%s,\x20%s','Searching\x20end\x20user\x20with\x20phone','GET','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;','Enduser\x20found!','firstname','lastname','Enduser\x20not\x20found,\x20creating\x20a\x20new\x20enduser!','Enduser\x20created.','getEndUser','accessKey','getchallenge','login','token','Account\x20%d\x20is\x20not\x20valid','getConnection','[HTTP]','queue','stripTrailingSlash','monitor_format','[QUEUE]','recordingURL','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','serverUrl','uniqueid','email','calleridnum','The\x20Enduser\x20ID\x20is:','Fields','split','Displaying\x20ticket\x20to\x20agent\x20in\x20a\x20new\x20tab...','user:%s','trigger:browser:url','recordingFormat','none','[OUTBOUND]','Recording\x20is\x20enabled!','The\x20User\x20ID\x20is:','destcalleridnum','Ticket\x20created!','The\x20Ticket\x20ID\x20is:','%s/index.php?module=HelpDesk&view=Detail&record=%s&app=SUPPORT','unmanaged','toUpperCase','lastevent','request-promise'];(function(_0x14add3,_0x13ce8d){var _0x4a174f=function(_0x2b3ed7){while(--_0x2b3ed7){_0x14add3['push'](_0x14add3['shift']());}};_0x4a174f(++_0x13ce8d);}(_0x8f09,0x19f));var _0x98f0=function(_0x2f38ca,_0x3bae29){_0x2f38ca=_0x2f38ca-0x0;var _0x2f914d=_0x8f09[_0x2f38ca];return _0x2f914d;};'use strict';var _=require('lodash');var rp=require(_0x98f0('0x0'));var BPromise=require(_0x98f0('0x1'));var md5=require(_0x98f0('0x2'));var util=require(_0x98f0('0x3'));var Redis=require(_0x98f0('0x4'));var intUtil=require(_0x98f0('0x5'));var config=require(_0x98f0('0x6'));var logger=require('../../../../config/logger')(_0x98f0('0x7'));config[_0x98f0('0x8')]=_[_0x98f0('0x9')](config[_0x98f0('0x8')],{'host':_0x98f0('0xa'),'port':0x18eb});var io=require(_0x98f0('0xb'))(new Redis(config[_0x98f0('0x8')]));function emit(_0x2b86b5,_0x2bce67,_0x38131b){io['to'](_0x2b86b5)[_0x98f0('0xc')](_0x2bce67,_0x38131b);}function getCustomFields(_0x3c42ba,_0x592687){var _0x289df9={};if(_0x3c42ba[_0x98f0('0xd')]>0x0){_[_0x98f0('0xe')](_0x3c42ba,function(_0x1d35d4){if(_0x1d35d4[_0x98f0('0xf')]===_0x98f0('0x10')&&_0x1d35d4['idField']){_0x289df9[_0x1d35d4[_0x98f0('0x11')]]=_0x1d35d4[_0x98f0('0x12')]['toString']();}else if(_0x1d35d4[_0x98f0('0xf')]===_0x98f0('0x13')&&_0x1d35d4[_0x98f0('0x14')]&&_0x1d35d4[_0x98f0('0x11')]&&_0x592687[_0x1d35d4['variableName']]){_0x289df9[_0x1d35d4[_0x98f0('0x11')]]=_0x592687[_0x1d35d4[_0x98f0('0x14')]][_0x98f0('0x15')]();}else if(_0x1d35d4[_0x98f0('0xf')]===_0x98f0('0x16')&&_0x1d35d4[_0x98f0('0x17')]&&_0x1d35d4[_0x98f0('0x17')][_0x98f0('0x18')]&&_0x1d35d4['idField']&&_0x592687[_0x1d35d4[_0x98f0('0x17')][_0x98f0('0x18')]['toLowerCase']()]){_0x289df9[_0x1d35d4[_0x98f0('0x11')]]=_0x592687[_0x1d35d4[_0x98f0('0x17')][_0x98f0('0x18')][_0x98f0('0x19')]()][_0x98f0('0x15')]();}});}return _0x289df9;}function createTicket(_0x1548bb,_0x744e8c,_0x4cd9b9,_0x1c2de2,_0x331249,_0x321c78,_0x5ba836){logger['info'](_0x98f0('0x1a'));var _0x3a7557=_['merge']({'parent_id':'','assigned_user_id':_0x744e8c['id'],'ticketpriorities':'Normal','ticketstatus':_0x98f0('0x1b'),'ticket_title':intUtil[_0x98f0('0x1c')](_0x1c2de2[_0x98f0('0x1d')],_0x331249,'\x20'),'description':intUtil[_0x98f0('0x1c')](_0x1c2de2[_0x98f0('0x1e')],_0x331249,'\x0a'),'contact_id':_0x4cd9b9['id']},getCustomFields(_0x321c78,_0x331249));var _0x3d0d08={'method':_0x98f0('0x1f'),'uri':util['format'](_0x98f0('0x20'),_0x1548bb[_0x98f0('0x21')]),'form':{'operation':_0x98f0('0x22'),'username':_0x1548bb[_0x98f0('0x23')],'sessionName':_0x5ba836[_0x98f0('0x24')],'elementType':_0x98f0('0x25'),'element':JSON[_0x98f0('0x26')](_0x3a7557)},'json':!![]};return request(_0x3d0d08)[_0x98f0('0x27')](function(_0x28896c){if(_0x28896c[_0x98f0('0x28')]){return BPromise[_0x98f0('0x29')]({'id':_0x28896c[_0x98f0('0x2a')]['id']});}else{throw new Error(util['format'](_0x98f0('0x2b'),JSON[_0x98f0('0x26')](_0x28896c[_0x98f0('0x2c')])));}})[_0x98f0('0x2d')](function(_0x529987){var _0x4718fd=_0x529987['statusCode']||0x1f4;logger[_0x98f0('0x2c')]('[vTiger],\x20%s,\x20%s,\x20%s',_0x98f0('0x2e'),_0x4718fd,JSON[_0x98f0('0x26')](_0x529987));});}function getUser(_0x1398ec,_0x13eed7,_0x43358d){if(intUtil[_0x98f0('0x2f')](_0x13eed7)){logger[_0x98f0('0x30')](_0x98f0('0x31'),_0x13eed7);return request({'method':'GET','uri':util[_0x98f0('0x32')](_0x98f0('0x20'),_0x1398ec[_0x98f0('0x21')]),'qs':{'operation':'query','username':_0x1398ec['username'],'sessionName':_0x43358d['sessionName'],'query':util[_0x98f0('0x32')](_0x98f0('0x33'),_0x13eed7)},'json':!![]})[_0x98f0('0x27')](function(_0x231c14){if(_0x231c14[_0x98f0('0x28')]&&_0x231c14[_0x98f0('0x2a')]['length']){logger['info']('Agent\x20found!');return BPromise[_0x98f0('0x29')]({'id':_0x231c14[_0x98f0('0x2a')][0x0]['id'],'email':_0x231c14[_0x98f0('0x2a')][0x0][_0x98f0('0x34')],'name':_0x231c14[_0x98f0('0x2a')][0x0][_0x98f0('0x35')]+'\x20'+_0x231c14['result'][_0x98f0('0x36')]});}else{logger[_0x98f0('0x30')]('Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!');return BPromise[_0x98f0('0x29')]({'id':_0x43358d[_0x98f0('0x37')],'email':_0x1398ec[_0x98f0('0x23')],'name':_0x98f0('0x38')});}})['catch'](function(_0x72c628){var _0x1befad=_0x72c628[_0x98f0('0x39')]||0x1f4;logger['error']('[vTiger],\x20%s,\x20%s,\x20%s',_0x98f0('0x3a'),_0x1befad,JSON[_0x98f0('0x26')](_0x72c628));});}else{logger[_0x98f0('0x30')]('Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!');return BPromise[_0x98f0('0x29')]({'id':_0x43358d[_0x98f0('0x37')],'email':_0x1398ec[_0x98f0('0x23')],'name':_0x98f0('0x38')})[_0x98f0('0x2d')](function(_0xdc2533){var _0x31d208=_0xdc2533[_0x98f0('0x39')]||0x1f4;logger[_0x98f0('0x2c')](_0x98f0('0x3b'),_0x98f0('0x3a'),_0x31d208,JSON[_0x98f0('0x26')](_0xdc2533));});}}function getEndUser(_0xe0a9f4,_0x5ea256,_0x4158d9,_0x3eac17){logger[_0x98f0('0x30')](_0x98f0('0x3c'),_0x4158d9);return request({'method':_0x98f0('0x3d'),'uri':util[_0x98f0('0x32')](_0x98f0('0x20'),_0xe0a9f4[_0x98f0('0x21')]),'qs':{'operation':'query','username':_0xe0a9f4[_0x98f0('0x23')],'sessionName':_0x3eac17[_0x98f0('0x24')],'query':util[_0x98f0('0x32')](_0x98f0('0x3e'),_0x4158d9,_0x4158d9,_0x4158d9,_0x4158d9,_0x4158d9)},'json':!![]})['then'](function(_0x2edfcd){if(_0x2edfcd[_0x98f0('0x28')]&&_0x2edfcd['result'][_0x98f0('0xd')]){logger[_0x98f0('0x30')](_0x98f0('0x3f'));return BPromise['resolve']({'id':_0x2edfcd['result'][0x0]['id'],'name':_0x2edfcd['result'][0x0][_0x98f0('0x40')]+'\x20'+_0x2edfcd[_0x98f0('0x2a')][0x0][_0x98f0('0x41')],'phone':_0x4158d9});}else{logger[_0x98f0('0x30')](_0x98f0('0x42'));return request({'method':_0x98f0('0x1f'),'uri':util[_0x98f0('0x32')]('%s/webservice.php',_0xe0a9f4[_0x98f0('0x21')]),'form':{'operation':'create','sessionName':_0x3eac17[_0x98f0('0x24')],'elementType':'Contacts','element':JSON[_0x98f0('0x26')]({'lastname':_0x5ea256,'phone':_0x4158d9,'assigned_user_id':'\x20'})},'json':!![]})[_0x98f0('0x27')](function(_0x2f8c6b){logger[_0x98f0('0x30')](_0x98f0('0x43'));return BPromise[_0x98f0('0x29')]({'id':_0x2f8c6b[_0x98f0('0x2a')]['id'],'name':_0x2f8c6b['result'][_0x98f0('0x41')],'phone':_0x2f8c6b[_0x98f0('0x2a')]['phone']});})[_0x98f0('0x2d')](function(_0x3aea8f){var _0x497a60=_0x3aea8f[_0x98f0('0x39')]||0x1f4;logger[_0x98f0('0x2c')](_0x98f0('0x3b'),_0x98f0('0x44'),_0x497a60,JSON[_0x98f0('0x26')](_0x3aea8f));});}});}function getConnection(_0x1cf5d9){var _0x479bff=_0x1cf5d9[_0x98f0('0x23')];var _0x15e988=_0x1cf5d9[_0x98f0('0x45')];return request({'method':_0x98f0('0x3d'),'uri':util[_0x98f0('0x32')]('%s/webservice.php',_0x1cf5d9['remoteUri']),'qs':{'operation':_0x98f0('0x46'),'username':_0x479bff},'json':!![]})[_0x98f0('0x27')](function(_0x18c6c9){if(_0x18c6c9[_0x98f0('0x28')]){return request({'method':'POST','uri':util[_0x98f0('0x32')](_0x98f0('0x20'),_0x1cf5d9[_0x98f0('0x21')]),'form':{'operation':_0x98f0('0x47'),'username':_0x479bff,'accessKey':md5(_0x18c6c9['result'][_0x98f0('0x48')]+_0x15e988)},'json':!![]});}})[_0x98f0('0x27')](function(_0x2c54b9){if(_0x2c54b9[_0x98f0('0x28')]){return BPromise[_0x98f0('0x29')](_0x2c54b9[_0x98f0('0x2a')]);}else{throw new Error(util['format'](_0x98f0('0x49'),_0x1cf5d9['id']));}})[_0x98f0('0x2d')](function(_0x4c1f67){var _0x3f00e3=_0x4c1f67[_0x98f0('0x39')]||0x1f4;logger['error'](_0x98f0('0x3b'),_0x98f0('0x4a'),_0x3f00e3,JSON[_0x98f0('0x26')](_0x4c1f67));});}function request(_0x2cdbc0){logger[_0x98f0('0x30')](_0x98f0('0x4b'),JSON['stringify'](_0x2cdbc0));return rp(_0x2cdbc0);}exports[_0x98f0('0x4c')]=function(_0x93c47f,_0x29414f,_0x3ed620,_0x4a293e,_0x4bcbff,_0x5f171e){var _0x21a099,_0x169778,_0x2c345d,_0x2ea2a9;_0x5f171e[_0x98f0('0x21')]=intUtil[_0x98f0('0x4d')](_0x5f171e['remoteUri']);if(_0x4bcbff&&_0x4bcbff[_0x98f0('0x4e')]){logger[_0x98f0('0x30')](_0x98f0('0x4f'),'Recording\x20is\x20enabled!');_0x29414f[_0x98f0('0x50')]=util[_0x98f0('0x32')](_0x98f0('0x51'),_0x5f171e[_0x98f0('0x52')],_0x29414f[_0x98f0('0x53')],md5(_0x29414f[_0x98f0('0x53')]));}else{_0x29414f[_0x98f0('0x50')]='';}return getConnection(_0x5f171e)[_0x98f0('0x27')](function(_0x87cf75){_0x2ea2a9=_0x87cf75;return getUser(_0x5f171e,_0x4a293e[_0x98f0('0x54')],_0x2ea2a9);})[_0x98f0('0x27')](function(_0x243b9c){_0x21a099=_0x243b9c;logger[_0x98f0('0x30')]('The\x20User\x20ID\x20is:',_0x21a099['id']);return getEndUser(_0x5f171e,_0x29414f['calleridname'],_0x29414f[_0x98f0('0x55')],_0x2ea2a9);})['then'](function(_0x857ecb){_0x169778=_0x857ecb;logger[_0x98f0('0x30')](_0x98f0('0x56'),_0x169778['id']);return createTicket(_0x5f171e,_0x21a099,_0x169778,_0x3ed620,_0x29414f,_0x3ed620[_0x98f0('0x57')],_0x2ea2a9);})[_0x98f0('0x27')](function(_0x1cee05){_0x2c345d=_0x1cee05;logger[_0x98f0('0x30')]('Ticket\x20created!');logger['info']('The\x20Ticket\x20ID\x20is:',_0x2c345d['id']);var _0x19a14e=util[_0x98f0('0x32')]('%s/index.php?module=HelpDesk&view=Detail&record=%s&app=SUPPORT',_0x5f171e[_0x98f0('0x21')],_[_0x98f0('0x58')](_0x2c345d['id'],'x')[0x1]);logger[_0x98f0('0x30')](_0x98f0('0x4f'),_0x98f0('0x59'));emit(util[_0x98f0('0x32')](_0x98f0('0x5a'),_0x4a293e[_0x98f0('0x18')]),_0x98f0('0x5b'),{'uri':_0x19a14e});})[_0x98f0('0x2d')](function(_0x5c73c4){logger[_0x98f0('0x2c')](_0x98f0('0x4f'),JSON[_0x98f0('0x26')](_0x5c73c4));});};exports['outbound']=function(_0x56dafa,_0x208a36,_0x2449f4,_0x5e4f4e,_0x1c1ff5,_0x382a44,_0x3d87f1){var _0x170c4f,_0x391bd2,_0x118b75,_0x5c71ea;_0x382a44['remoteUri']=intUtil['stripTrailingSlash'](_0x382a44['remoteUri']);_0x382a44[_0x98f0('0x52')]=intUtil[_0x98f0('0x4d')](_0x382a44['serverUrl']);if(_0x3d87f1&&_0x3d87f1[_0x98f0('0x5c')]&&_0x3d87f1['recordingFormat']!==_0x98f0('0x5d')){logger[_0x98f0('0x30')](_0x98f0('0x5e'),_0x98f0('0x5f'));_0x208a36[_0x98f0('0x50')]=util['format'](_0x98f0('0x51'),_0x382a44[_0x98f0('0x52')],_0x208a36[_0x98f0('0x53')],md5(_0x208a36[_0x98f0('0x53')]));}return getConnection(_0x382a44)['then'](function(_0x1ea348){_0x5c71ea=_0x1ea348;return getUser(_0x382a44,_0x5e4f4e[_0x98f0('0x54')],_0x5c71ea);})['then'](function(_0x37a2ba){_0x170c4f=_0x37a2ba;logger[_0x98f0('0x30')](_0x98f0('0x60'),_0x170c4f['id']);return getEndUser(_0x382a44,_0x208a36['destcalleridname'],_0x208a36[_0x98f0('0x61')],_0x5c71ea);})[_0x98f0('0x27')](function(_0x3e0bf0){_0x391bd2=_0x3e0bf0;logger[_0x98f0('0x30')](_0x98f0('0x56'),_0x391bd2['id']);return createTicket(_0x382a44,_0x170c4f,_0x391bd2,_0x2449f4,_0x208a36,_0x2449f4['Fields'],_0x5c71ea);})['then'](function(_0xbd4c24){_0x118b75=_0xbd4c24;logger[_0x98f0('0x30')](_0x98f0('0x62'));logger[_0x98f0('0x30')](_0x98f0('0x63'),_0x118b75['id']);var _0x3005b4=util[_0x98f0('0x32')](_0x98f0('0x64'),_0x382a44[_0x98f0('0x21')],_[_0x98f0('0x58')](_0x118b75['id'],'x')[0x1]);logger[_0x98f0('0x30')](_0x98f0('0x5e'),_0x98f0('0x59'));emit(util[_0x98f0('0x32')](_0x98f0('0x5a'),_0x5e4f4e['name']),_0x98f0('0x5b'),{'uri':_0x3005b4});})[_0x98f0('0x2d')](function(_0x5b2563){logger[_0x98f0('0x2c')](_0x98f0('0x5e'),JSON[_0x98f0('0x26')](_0x5b2563));});};exports[_0x98f0('0x65')]=function(_0x3d557c,_0x18931b,_0x18fbd8,_0x1ce140,_0x3a2418,_0xa9eadb){var _0x50b878,_0x30f5d8,_0x564e91,_0xffa5ed;_0xa9eadb[_0x98f0('0x21')]=intUtil[_0x98f0('0x4d')](_0xa9eadb[_0x98f0('0x21')]);_0xa9eadb[_0x98f0('0x52')]=intUtil[_0x98f0('0x4d')](_0xa9eadb[_0x98f0('0x52')]);if(_0x3a2418&&_0x3a2418[_0x98f0('0x4e')]){logger[_0x98f0('0x30')]('['+_0x18931b['lastevent'][_0x98f0('0x66')]()+']',_0x98f0('0x5f'));_0x18931b[_0x98f0('0x50')]=util[_0x98f0('0x32')]('%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s',_0xa9eadb[_0x98f0('0x52')],_0x18931b[_0x98f0('0x53')],md5(_0x18931b[_0x98f0('0x53')]));}else{_0x18931b['recordingURL']='';}return getConnection(_0xa9eadb)[_0x98f0('0x27')](function(_0x39820e){_0xffa5ed=_0x39820e;return getUser(_0xa9eadb,'',_0xffa5ed);})[_0x98f0('0x27')](function(_0x94dbe0){_0x50b878=_0x94dbe0;logger[_0x98f0('0x30')]('The\x20User\x20ID\x20is:',_0x50b878['id']);return getEndUser(_0xa9eadb,_0x18931b['calleridname'],_0x18931b[_0x98f0('0x55')],_0xffa5ed);})[_0x98f0('0x27')](function(_0x219eef){_0x30f5d8=_0x219eef;logger['info'](_0x98f0('0x56'),_0x30f5d8['id']);return createTicket(_0xa9eadb,_0x50b878,_0x30f5d8,_0x18fbd8,_0x18931b,_0x18fbd8[_0x98f0('0x57')],_0xffa5ed);})[_0x98f0('0x27')](function(_0x5359f6){_0x564e91=_0x5359f6;logger[_0x98f0('0x30')]('Ticket\x20created!');logger[_0x98f0('0x30')](_0x98f0('0x63'),_0x564e91['id']);})[_0x98f0('0x2d')](function(_0x55d676){logger[_0x98f0('0x2c')]('['+_0x18931b[_0x98f0('0x67')][_0x98f0('0x66')]()+']',JSON['stringify'](_0x55d676));});};
\ No newline at end of file
+var _0x87e1=['../../../../config/logger','redis','defaults','localhost','emit','length','forEach','type','string','idField','content','toString','variableName','Variable','name','toLowerCase','info','Creating\x20new\x20ticket...','merge','Normal','Open','Descriptions','POST','format','remoteUri','create','sessionName','HelpDesk','stringify','then','success','result','Ticket\x20could\x20not\x20be\x20created\x20due\x20to:\x20%s','error','catch','createTicket','validateEmail','%s/webservice.php','query','username','SELECT\x20first_name,\x20last_name,\x20email1\x20FROM\x20Users\x20WHERE\x20email1=\x27%s\x27;','Agent\x20found!','email1','last_name','Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!','resolve','userId','admin','statusCode','[vTiger],\x20%s,\x20%s,\x20%s','getUser','Searching\x20end\x20user\x20with\x20phone','GET','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;','Enduser\x20found!','firstname','lastname','Enduser\x20not\x20found,\x20creating\x20a\x20new\x20enduser!','Contacts','getEndUser','accessKey','login','token','Account\x20%d\x20is\x20not\x20valid','getConnection','stripTrailingSlash','monitor_format','[QUEUE]','recordingURL','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','serverUrl','uniqueid','The\x20User\x20ID\x20is:','calleridname','calleridnum','The\x20Enduser\x20ID\x20is:','Fields','Ticket\x20created!','The\x20Ticket\x20ID\x20is:','%s/index.php?module=HelpDesk&view=Detail&record=%s&app=SUPPORT','split','Displaying\x20ticket\x20to\x20agent\x20in\x20a\x20new\x20tab...','trigger:browser:url','outbound','recordingFormat','none','[OUTBOUND]','Recording\x20is\x20enabled!','email','destcalleridnum','user:%s','unmanaged','lastevent','toUpperCase','lodash','bluebird','md5','ioredis','./util'];(function(_0x47a12a,_0x70f591){var _0x30cd40=function(_0x46b68f){while(--_0x46b68f){_0x47a12a['push'](_0x47a12a['shift']());}};_0x30cd40(++_0x70f591);}(_0x87e1,0x187));var _0x187e=function(_0x1be448,_0x1fb778){_0x1be448=_0x1be448-0x0;var _0x39a54d=_0x87e1[_0x1be448];return _0x39a54d;};'use strict';var _=require(_0x187e('0x0'));var rp=require('request-promise');var BPromise=require(_0x187e('0x1'));var md5=require(_0x187e('0x2'));var util=require('util');var Redis=require(_0x187e('0x3'));var intUtil=require(_0x187e('0x4'));var config=require('../../../../config/environment');var logger=require(_0x187e('0x5'))('vTiger');config[_0x187e('0x6')]=_[_0x187e('0x7')](config['redis'],{'host':_0x187e('0x8'),'port':0x18eb});var io=require('socket.io-emitter')(new Redis(config[_0x187e('0x6')]));function emit(_0x4915f4,_0x1e725f,_0x3e7717){io['to'](_0x4915f4)[_0x187e('0x9')](_0x1e725f,_0x3e7717);}function getCustomFields(_0x5e76fd,_0x2eebee){var _0xa467bb={};if(_0x5e76fd[_0x187e('0xa')]>0x0){_[_0x187e('0xb')](_0x5e76fd,function(_0x2fc86f){if(_0x2fc86f[_0x187e('0xc')]===_0x187e('0xd')&&_0x2fc86f[_0x187e('0xe')]){_0xa467bb[_0x2fc86f[_0x187e('0xe')]]=_0x2fc86f[_0x187e('0xf')][_0x187e('0x10')]();}else if(_0x2fc86f[_0x187e('0xc')]==='variable'&&_0x2fc86f[_0x187e('0x11')]&&_0x2fc86f[_0x187e('0xe')]&&_0x2eebee[_0x2fc86f[_0x187e('0x11')]]){_0xa467bb[_0x2fc86f[_0x187e('0xe')]]=_0x2eebee[_0x2fc86f['variableName']][_0x187e('0x10')]();}else if(_0x2fc86f['type']==='customVariable'&&_0x2fc86f[_0x187e('0x12')]&&_0x2fc86f[_0x187e('0x12')][_0x187e('0x13')]&&_0x2fc86f['idField']&&_0x2eebee[_0x2fc86f[_0x187e('0x12')][_0x187e('0x13')][_0x187e('0x14')]()]){_0xa467bb[_0x2fc86f[_0x187e('0xe')]]=_0x2eebee[_0x2fc86f[_0x187e('0x12')]['name'][_0x187e('0x14')]()][_0x187e('0x10')]();}});}return _0xa467bb;}function createTicket(_0x793504,_0x4d6b65,_0x3a0712,_0x4904be,_0x47b3f8,_0x5e4b0a,_0x3b364c){logger[_0x187e('0x15')](_0x187e('0x16'));var _0x412c17=_[_0x187e('0x17')]({'parent_id':'','assigned_user_id':_0x4d6b65['id'],'ticketpriorities':_0x187e('0x18'),'ticketstatus':_0x187e('0x19'),'ticket_title':intUtil['getString'](_0x4904be['Subjects'],_0x47b3f8,'\x20'),'description':intUtil['getString'](_0x4904be[_0x187e('0x1a')],_0x47b3f8,'\x0a'),'contact_id':_0x3a0712['id']},getCustomFields(_0x5e4b0a,_0x47b3f8));var _0x1409b9={'method':_0x187e('0x1b'),'uri':util[_0x187e('0x1c')]('%s/webservice.php',_0x793504[_0x187e('0x1d')]),'form':{'operation':_0x187e('0x1e'),'username':_0x793504['username'],'sessionName':_0x3b364c[_0x187e('0x1f')],'elementType':_0x187e('0x20'),'element':JSON[_0x187e('0x21')](_0x412c17)},'json':!![]};return request(_0x1409b9)[_0x187e('0x22')](function(_0x463640){if(_0x463640[_0x187e('0x23')]){return BPromise['resolve']({'id':_0x463640[_0x187e('0x24')]['id']});}else{throw new Error(util[_0x187e('0x1c')](_0x187e('0x25'),JSON['stringify'](_0x463640[_0x187e('0x26')])));}})[_0x187e('0x27')](function(_0x425309){var _0xedae39=_0x425309['statusCode']||0x1f4;logger[_0x187e('0x26')]('[vTiger],\x20%s,\x20%s,\x20%s',_0x187e('0x28'),_0xedae39,JSON[_0x187e('0x21')](_0x425309));});}function getUser(_0x219e70,_0x39b0c6,_0x5ab526){if(intUtil[_0x187e('0x29')](_0x39b0c6)){logger[_0x187e('0x15')]('Getting\x20agent\x20with\x20email',_0x39b0c6);return request({'method':'GET','uri':util[_0x187e('0x1c')](_0x187e('0x2a'),_0x219e70[_0x187e('0x1d')]),'qs':{'operation':_0x187e('0x2b'),'username':_0x219e70[_0x187e('0x2c')],'sessionName':_0x5ab526[_0x187e('0x1f')],'query':util[_0x187e('0x1c')](_0x187e('0x2d'),_0x39b0c6)},'json':!![]})[_0x187e('0x22')](function(_0x35cb37){if(_0x35cb37[_0x187e('0x23')]&&_0x35cb37['result'][_0x187e('0xa')]){logger[_0x187e('0x15')](_0x187e('0x2e'));return BPromise['resolve']({'id':_0x35cb37[_0x187e('0x24')][0x0]['id'],'email':_0x35cb37[_0x187e('0x24')][0x0][_0x187e('0x2f')],'name':_0x35cb37['result'][0x0]['first_name']+'\x20'+_0x35cb37['result'][_0x187e('0x30')]});}else{logger[_0x187e('0x15')](_0x187e('0x31'));return BPromise[_0x187e('0x32')]({'id':_0x5ab526[_0x187e('0x33')],'email':_0x219e70[_0x187e('0x2c')],'name':_0x187e('0x34')});}})[_0x187e('0x27')](function(_0x24377c){var _0x25223e=_0x24377c[_0x187e('0x35')]||0x1f4;logger[_0x187e('0x26')](_0x187e('0x36'),_0x187e('0x37'),_0x25223e,JSON[_0x187e('0x21')](_0x24377c));});}else{logger[_0x187e('0x15')](_0x187e('0x31'));return BPromise['resolve']({'id':_0x5ab526[_0x187e('0x33')],'email':_0x219e70[_0x187e('0x2c')],'name':_0x187e('0x34')})[_0x187e('0x27')](function(_0x3b5b08){var _0x21fc97=_0x3b5b08[_0x187e('0x35')]||0x1f4;logger[_0x187e('0x26')](_0x187e('0x36'),_0x187e('0x37'),_0x21fc97,JSON[_0x187e('0x21')](_0x3b5b08));});}}function getEndUser(_0x192dc8,_0xf0e7c3,_0x4637e4,_0x531267){logger[_0x187e('0x15')](_0x187e('0x38'),_0x4637e4);return request({'method':_0x187e('0x39'),'uri':util[_0x187e('0x1c')](_0x187e('0x2a'),_0x192dc8[_0x187e('0x1d')]),'qs':{'operation':'query','username':_0x192dc8['username'],'sessionName':_0x531267[_0x187e('0x1f')],'query':util[_0x187e('0x1c')](_0x187e('0x3a'),_0x4637e4,_0x4637e4,_0x4637e4,_0x4637e4,_0x4637e4)},'json':!![]})['then'](function(_0x440d8c){if(_0x440d8c['success']&&_0x440d8c[_0x187e('0x24')]['length']){logger[_0x187e('0x15')](_0x187e('0x3b'));return BPromise['resolve']({'id':_0x440d8c[_0x187e('0x24')][0x0]['id'],'name':_0x440d8c[_0x187e('0x24')][0x0][_0x187e('0x3c')]+'\x20'+_0x440d8c[_0x187e('0x24')][0x0][_0x187e('0x3d')],'phone':_0x4637e4});}else{logger[_0x187e('0x15')](_0x187e('0x3e'));return request({'method':_0x187e('0x1b'),'uri':util[_0x187e('0x1c')](_0x187e('0x2a'),_0x192dc8[_0x187e('0x1d')]),'form':{'operation':_0x187e('0x1e'),'sessionName':_0x531267[_0x187e('0x1f')],'elementType':_0x187e('0x3f'),'element':JSON[_0x187e('0x21')]({'lastname':_0xf0e7c3,'phone':_0x4637e4,'assigned_user_id':'\x20'})},'json':!![]})[_0x187e('0x22')](function(_0x28e277){logger[_0x187e('0x15')]('Enduser\x20created.');return BPromise[_0x187e('0x32')]({'id':_0x28e277['result']['id'],'name':_0x28e277['result'][_0x187e('0x3d')],'phone':_0x28e277[_0x187e('0x24')]['phone']});})[_0x187e('0x27')](function(_0x38da18){var _0x3b0df6=_0x38da18[_0x187e('0x35')]||0x1f4;logger[_0x187e('0x26')](_0x187e('0x36'),_0x187e('0x40'),_0x3b0df6,JSON[_0x187e('0x21')](_0x38da18));});}});}function getConnection(_0x4f57d4){var _0x22865d=_0x4f57d4['username'];var _0x4f393d=_0x4f57d4[_0x187e('0x41')];return request({'method':_0x187e('0x39'),'uri':util['format'](_0x187e('0x2a'),_0x4f57d4[_0x187e('0x1d')]),'qs':{'operation':'getchallenge','username':_0x22865d},'json':!![]})[_0x187e('0x22')](function(_0x7662f6){if(_0x7662f6['success']){return request({'method':'POST','uri':util['format'](_0x187e('0x2a'),_0x4f57d4[_0x187e('0x1d')]),'form':{'operation':_0x187e('0x42'),'username':_0x22865d,'accessKey':md5(_0x7662f6['result'][_0x187e('0x43')]+_0x4f393d)},'json':!![]});}})['then'](function(_0x1e96c5){if(_0x1e96c5[_0x187e('0x23')]){return BPromise[_0x187e('0x32')](_0x1e96c5[_0x187e('0x24')]);}else{throw new Error(util[_0x187e('0x1c')](_0x187e('0x44'),_0x4f57d4['id']));}})[_0x187e('0x27')](function(_0x1e946c){var _0x78c2f4=_0x1e946c[_0x187e('0x35')]||0x1f4;logger[_0x187e('0x26')](_0x187e('0x36'),_0x187e('0x45'),_0x78c2f4,JSON[_0x187e('0x21')](_0x1e946c));});}function request(_0x43660c){logger['info']('[HTTP]',JSON[_0x187e('0x21')](_0x43660c));return rp(_0x43660c);}exports['queue']=function(_0x561863,_0x24e53e,_0x2a2df0,_0x16a3b4,_0x2a3969,_0x29ec06){var _0x31ba97,_0x3fe433,_0x1d6dc9,_0x5a9a2c;_0x29ec06[_0x187e('0x1d')]=intUtil[_0x187e('0x46')](_0x29ec06[_0x187e('0x1d')]);if(_0x2a3969&&_0x2a3969[_0x187e('0x47')]){logger['info'](_0x187e('0x48'),'Recording\x20is\x20enabled!');_0x24e53e[_0x187e('0x49')]=util['format'](_0x187e('0x4a'),_0x29ec06[_0x187e('0x4b')],_0x24e53e[_0x187e('0x4c')],md5(_0x24e53e[_0x187e('0x4c')]));}else{_0x24e53e[_0x187e('0x49')]='';}return getConnection(_0x29ec06)[_0x187e('0x22')](function(_0x4a89fb){_0x5a9a2c=_0x4a89fb;return getUser(_0x29ec06,_0x16a3b4['email'],_0x5a9a2c);})[_0x187e('0x22')](function(_0x27c44c){_0x31ba97=_0x27c44c;logger[_0x187e('0x15')](_0x187e('0x4d'),_0x31ba97['id']);return getEndUser(_0x29ec06,_0x24e53e[_0x187e('0x4e')],_0x24e53e[_0x187e('0x4f')],_0x5a9a2c);})[_0x187e('0x22')](function(_0x3c604e){_0x3fe433=_0x3c604e;logger['info'](_0x187e('0x50'),_0x3fe433['id']);return createTicket(_0x29ec06,_0x31ba97,_0x3fe433,_0x2a2df0,_0x24e53e,_0x2a2df0[_0x187e('0x51')],_0x5a9a2c);})[_0x187e('0x22')](function(_0x2dd311){_0x1d6dc9=_0x2dd311;logger[_0x187e('0x15')](_0x187e('0x52'));logger[_0x187e('0x15')](_0x187e('0x53'),_0x1d6dc9['id']);var _0x1514c3=util[_0x187e('0x1c')](_0x187e('0x54'),_0x29ec06[_0x187e('0x1d')],_[_0x187e('0x55')](_0x1d6dc9['id'],'x')[0x1]);logger[_0x187e('0x15')]('[QUEUE]',_0x187e('0x56'));emit(util['format']('user:%s',_0x16a3b4['name']),_0x187e('0x57'),{'uri':_0x1514c3});})[_0x187e('0x27')](function(_0x27ab2a){logger['error'](_0x187e('0x48'),JSON[_0x187e('0x21')](_0x27ab2a));});};exports[_0x187e('0x58')]=function(_0x36fc2d,_0x603ec8,_0x79b737,_0x40660c,_0x3f7127,_0x4fad84,_0x17a6e3){var _0xf05f7f,_0x4f7373,_0x2ccf9f,_0x34f5b5;_0x4fad84[_0x187e('0x1d')]=intUtil['stripTrailingSlash'](_0x4fad84[_0x187e('0x1d')]);_0x4fad84['serverUrl']=intUtil['stripTrailingSlash'](_0x4fad84[_0x187e('0x4b')]);if(_0x17a6e3&&_0x17a6e3[_0x187e('0x59')]&&_0x17a6e3[_0x187e('0x59')]!==_0x187e('0x5a')){logger['info'](_0x187e('0x5b'),_0x187e('0x5c'));_0x603ec8['recordingURL']=util[_0x187e('0x1c')](_0x187e('0x4a'),_0x4fad84[_0x187e('0x4b')],_0x603ec8['uniqueid'],md5(_0x603ec8[_0x187e('0x4c')]));}return getConnection(_0x4fad84)[_0x187e('0x22')](function(_0x226e10){_0x34f5b5=_0x226e10;return getUser(_0x4fad84,_0x40660c[_0x187e('0x5d')],_0x34f5b5);})[_0x187e('0x22')](function(_0x35e3bb){_0xf05f7f=_0x35e3bb;logger['info']('The\x20User\x20ID\x20is:',_0xf05f7f['id']);return getEndUser(_0x4fad84,_0x603ec8['destcalleridname'],_0x603ec8[_0x187e('0x5e')],_0x34f5b5);})['then'](function(_0x5e4733){_0x4f7373=_0x5e4733;logger[_0x187e('0x15')]('The\x20Enduser\x20ID\x20is:',_0x4f7373['id']);return createTicket(_0x4fad84,_0xf05f7f,_0x4f7373,_0x79b737,_0x603ec8,_0x79b737['Fields'],_0x34f5b5);})[_0x187e('0x22')](function(_0x58b504){_0x2ccf9f=_0x58b504;logger['info'](_0x187e('0x52'));logger[_0x187e('0x15')](_0x187e('0x53'),_0x2ccf9f['id']);var _0x1c4b09=util[_0x187e('0x1c')](_0x187e('0x54'),_0x4fad84['remoteUri'],_[_0x187e('0x55')](_0x2ccf9f['id'],'x')[0x1]);logger[_0x187e('0x15')]('[OUTBOUND]',_0x187e('0x56'));emit(util[_0x187e('0x1c')](_0x187e('0x5f'),_0x40660c[_0x187e('0x13')]),_0x187e('0x57'),{'uri':_0x1c4b09});})[_0x187e('0x27')](function(_0x53dc89){logger[_0x187e('0x26')]('[OUTBOUND]',JSON[_0x187e('0x21')](_0x53dc89));});};exports[_0x187e('0x60')]=function(_0x8b296c,_0x350622,_0x425684,_0x33717f,_0x535d36,_0x28d769){var _0x46cd62,_0x2c929b,_0x208435,_0x4e4123;_0x28d769['remoteUri']=intUtil[_0x187e('0x46')](_0x28d769[_0x187e('0x1d')]);_0x28d769['serverUrl']=intUtil['stripTrailingSlash'](_0x28d769[_0x187e('0x4b')]);if(_0x535d36&&_0x535d36[_0x187e('0x47')]){logger['info']('['+_0x350622[_0x187e('0x61')]['toUpperCase']()+']',_0x187e('0x5c'));_0x350622['recordingURL']=util[_0x187e('0x1c')](_0x187e('0x4a'),_0x28d769[_0x187e('0x4b')],_0x350622[_0x187e('0x4c')],md5(_0x350622['uniqueid']));}else{_0x350622['recordingURL']='';}return getConnection(_0x28d769)[_0x187e('0x22')](function(_0x2f68d4){_0x4e4123=_0x2f68d4;return getUser(_0x28d769,'',_0x4e4123);})['then'](function(_0xefa2c2){_0x46cd62=_0xefa2c2;logger[_0x187e('0x15')](_0x187e('0x4d'),_0x46cd62['id']);return getEndUser(_0x28d769,_0x350622[_0x187e('0x4e')],_0x350622[_0x187e('0x4f')],_0x4e4123);})[_0x187e('0x22')](function(_0x3e1578){_0x2c929b=_0x3e1578;logger[_0x187e('0x15')]('The\x20Enduser\x20ID\x20is:',_0x2c929b['id']);return createTicket(_0x28d769,_0x46cd62,_0x2c929b,_0x425684,_0x350622,_0x425684['Fields'],_0x4e4123);})[_0x187e('0x22')](function(_0x311dc3){_0x208435=_0x311dc3;logger[_0x187e('0x15')](_0x187e('0x52'));logger[_0x187e('0x15')](_0x187e('0x53'),_0x208435['id']);})['catch'](function(_0x1192f9){logger[_0x187e('0x26')]('['+_0x350622[_0x187e('0x61')][_0x187e('0x62')]()+']',JSON[_0x187e('0x21')](_0x1192f9));});};
\ No newline at end of file