Built motion from commit (unavailable).|2.5.27
[motion2.git] / server / services / ami / trigger / integration / desk.js
index 5a22540..dc9bcad 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x351d=['new','xCALLY','Motion','CTI','Tags','Descriptions','/api/v2/users/%d','user','getString','%s/customers/%d/cases','queue','stripTrailingSlash','serverUrl','monitor_format','[QUEUE]','Recording\x20is\x20enabled!','recordingURL','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','uniqueid','Authorization','email','calleridname','calleridnum','The\x20Enduser\x20ID\x20is:','integrationTab','Displaying\x20ticket\x20to\x20agent...','user:%s','trigger:desk:display','newTab','error','Desk\x20account\x20type\x20not\x20recognized','outbound','recordingFormat','none','[OUTBOUND]','The\x20User\x20ID\x20is:','destcalleridname','Ticket\x20created!','The\x20Ticket\x20ID\x20is:','trigger:browser:url','%s/agent/tickets/%s','catch','[ABANDONED]','lodash','md5','util','ioredis','../../../../config/environment','desk','redis','localhost','socket.io-emitter','emit','application/json','info','Getting\x20agent\x20with\x20email','%s/users','remoteUri','_embedded','entries','then','Agent\x20found!','format','%s/users/me','Invalid\x20email\x20format,\x20using\x20the\x20admin\x20account!','debug','stringify','defaults','GET','authType','basic','username','token','%s/token:%s','Basic\x20%s','base64','Searching\x20enduser\x20with\x20phone','total_entries','Enduser\x20found!','POST','length','map','type','string','nameField','customField','toLowerCase','content','toString','idField','custom_fields','variable','variableName','customVariable','Variable','name','priority','Creating\x20new\x20ticket...','merge','Subjects','phone'];(function(_0x2d7f0e,_0x3e6fbd){var _0x110b07=function(_0x557b00){while(--_0x557b00){_0x2d7f0e['push'](_0x2d7f0e['shift']());}};_0x110b07(++_0x3e6fbd);}(_0x351d,0x90));var _0xd351=function(_0x3876b8,_0x56ab35){_0x3876b8=_0x3876b8-0x0;var _0x1db290=_0x351d[_0x3876b8];return _0x1db290;};'use strict';var _=require(_0xd351('0x0'));var rp=require('request-promise');var md5=require(_0xd351('0x1'));var util=require(_0xd351('0x2'));var Redis=require(_0xd351('0x3'));var intUtil=require('./util');var config=require(_0xd351('0x4'));var logger=require('../../../../config/logger')(_0xd351('0x5'));config[_0xd351('0x6')]=_['defaults'](config[_0xd351('0x6')],{'host':_0xd351('0x7'),'port':0x18eb});var io=require(_0xd351('0x8'))(new Redis(config['redis']));function emit(_0x16b3f7,_0x235aa0,_0x4e1b06){io['to'](_0x16b3f7)[_0xd351('0x9')](_0x235aa0,_0x4e1b06);}var headers={'Content-Type':_0xd351('0xa'),'Accept':'application/json'};function getUser(_0x586c60,_0x44bf81){if(intUtil['validateEmail'](_0x44bf81)===!![]){logger[_0xd351('0xb')](_0xd351('0xc'),_0x44bf81);return request({'uri':util['format'](_0xd351('0xd'),_0x586c60[_0xd351('0xe')])})['then'](function(_0x12f262){if(_0x12f262['total_entries']){return _['find'](_0x12f262[_0xd351('0xf')][_0xd351('0x10')],{'email':_0x44bf81});}})[_0xd351('0x11')](function(_0x1eb2a9){if(_0x1eb2a9){logger['info'](_0xd351('0x12'));return _0x1eb2a9;}else{logger[_0xd351('0xb')]('Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!');return request({'uri':util[_0xd351('0x13')](_0xd351('0x14'),_0x586c60[_0xd351('0xe')])});}});}else{logger[_0xd351('0xb')](_0xd351('0x15'));return request({'uri':util['format'](_0xd351('0x14'),_0x586c60['remoteUri'])});}}function request(_0x5bdc03){logger[_0xd351('0x16')]('[HTTP]',JSON[_0xd351('0x17')](_0x5bdc03));return rp(_[_0xd351('0x18')](_0x5bdc03,{'method':_0xd351('0x19'),'headers':headers,'json':!![]}));}function getAuth(_0x4c6693){var _0x1e1a3c;if(_0x4c6693[_0xd351('0x1a')]===_0xd351('0x1b')){_0x1e1a3c=util[_0xd351('0x13')]('%s:%s',_0x4c6693[_0xd351('0x1c')],_0x4c6693['password']);}else if(_0x4c6693['authType']===_0xd351('0x1d')){_0x1e1a3c=util['format'](_0xd351('0x1e'),_0x4c6693[_0xd351('0x1c')],_0x4c6693[_0xd351('0x1d')]);}return util[_0xd351('0x13')](_0xd351('0x1f'),new Buffer(_0x1e1a3c)['toString'](_0xd351('0x20')));}function getEndUser(_0xbbc58,_0x241265,_0x4e447f){logger[_0xd351('0xb')](_0xd351('0x21'),_0x4e447f);return request({'uri':util[_0xd351('0x13')]('%s/customers/search',_0xbbc58[_0xd351('0xe')]),'qs':{'phone':_0x4e447f}})[_0xd351('0x11')](function(_0x4626c4){if(_0x4626c4[_0xd351('0x22')]){logger['info'](_0xd351('0x23'));return _0x4626c4['_embedded'][_0xd351('0x10')][0x0];}else{logger[_0xd351('0xb')]('Enduser\x20not\x20found,\x20creating\x20a\x20new\x20enduser!');return request({'uri':util[_0xd351('0x13')]('%s/customers',_0xbbc58['remoteUri']),'method':_0xd351('0x24'),'body':{'first_name':_0x241265,'title':_0x241265,'phone_numbers':[{'type':'work','value':_0x4e447f}]}});}});}function getTags(_0x546e67,_0x134580){var _0x555a50=[];if(_0x546e67&&_0x546e67[_0xd351('0x25')]>0x0){_0x555a50=_[_0xd351('0x26')](_0x546e67,_0x134580);}return _0x555a50;}function getCustomFields(_0x407b50,_0x4d3f48){var _0x71ce9c=[];var _0x4aa902={'custom_fields':{}};if(_0x407b50[_0xd351('0x25')]>0x0){_['forEach'](_0x407b50,function(_0x5f07b1){if(_0x5f07b1[_0xd351('0x27')]===_0xd351('0x28')&&_0x5f07b1[_0xd351('0x29')]&&!_0x5f07b1[_0xd351('0x2a')]){_0x4aa902[_0x5f07b1['nameField'][_0xd351('0x2b')]()]=_0x5f07b1[_0xd351('0x2c')][_0xd351('0x2d')]();}else if(_0x5f07b1[_0xd351('0x27')]===_0xd351('0x28')&&_0x5f07b1[_0xd351('0x2e')]&&_0x5f07b1[_0xd351('0x2a')]){_0x4aa902[_0xd351('0x2f')][_0x5f07b1[_0xd351('0x2e')]]=_0x5f07b1['content'][_0xd351('0x2d')]();}else if(_0x5f07b1[_0xd351('0x27')]===_0xd351('0x30')&&_0x5f07b1[_0xd351('0x31')]&&_0x5f07b1['idField']&&_0x5f07b1[_0xd351('0x2a')]){_0x4d3f48[_0x5f07b1[_0xd351('0x31')]]&&(_0x4aa902[_0xd351('0x2f')][_0x5f07b1[_0xd351('0x2e')]]=_0x4d3f48[_0x5f07b1[_0xd351('0x31')]][_0xd351('0x2d')]());}else if(_0x5f07b1[_0xd351('0x27')]===_0xd351('0x32')&&_0x5f07b1[_0xd351('0x33')]&&_0x5f07b1['Variable']['name']&&_0x5f07b1[_0xd351('0x2e')]&&_0x5f07b1[_0xd351('0x2a')]){_0x4d3f48[_0x5f07b1[_0xd351('0x33')][_0xd351('0x34')][_0xd351('0x2b')]()]&&(_0x4aa902[_0xd351('0x2f')][_0x5f07b1['idField']]=_0x4d3f48[_0x5f07b1['Variable'][_0xd351('0x34')]['toLowerCase']()][_0xd351('0x2d')]());}});}if(_0x4aa902[_0xd351('0x35')]){_0x4aa902[_0xd351('0x35')]=Number(_0x4aa902[_0xd351('0x35')]);}return _0x4aa902;}function getTicket(_0x33307,_0x134311,_0xeada4a,_0x8909e6,_0x302e89){logger[_0xd351('0xb')](_0xd351('0x36'));var _0x4b15db=_[_0xd351('0x37')]({'subject':intUtil['getString'](_0x8909e6[_0xd351('0x38')],_0x302e89,'\x20'),'type':_0xd351('0x39'),'status':_0xd351('0x3a'),'labels':[_0xd351('0x3b'),_0xd351('0x3c'),_0xd351('0x3d')]['concat'](getTags(_0x8909e6[_0xd351('0x3e')],_0xd351('0x34'))),'description':intUtil['getString'](_0x8909e6[_0xd351('0x3f')],_0x302e89,'\x0a'),'_links':{'assigned_user':{'href':util[_0xd351('0x13')](_0xd351('0x40'),_0x134311['id']),'class':_0xd351('0x41')}},'message':{'direction':'in','body':intUtil[_0xd351('0x42')](_0x8909e6['Descriptions'],_0x302e89,'\x0a')}},getCustomFields(_0x8909e6['Fields'],_0x302e89));return request({'uri':util[_0xd351('0x13')](_0xd351('0x43'),_0x33307['remoteUri'],_0xeada4a['id']),'method':'POST','body':_0x4b15db});}exports[_0xd351('0x44')]=function(_0x136545,_0x4ff06a,_0x570d57,_0x46af23,_0x18f9d1,_0x3b8526){var _0x456e06,_0x5fe6b0;_0x3b8526[_0xd351('0xe')]=intUtil[_0xd351('0x45')](_0x3b8526[_0xd351('0xe')]);_0x3b8526[_0xd351('0x46')]=intUtil['stripTrailingSlash'](_0x3b8526['serverUrl']);if(_0x18f9d1&&_0x18f9d1[_0xd351('0x47')]){logger[_0xd351('0xb')](_0xd351('0x48'),_0xd351('0x49'));_0x4ff06a[_0xd351('0x4a')]=util[_0xd351('0x13')](_0xd351('0x4b'),_0x3b8526[_0xd351('0x46')],_0x4ff06a[_0xd351('0x4c')],md5(_0x4ff06a[_0xd351('0x4c')]));}else{_0x4ff06a[_0xd351('0x4a')]='';}headers[_0xd351('0x4d')]=getAuth(_0x3b8526);return getUser(_0x3b8526,_0x46af23[_0xd351('0x4e')])[_0xd351('0x11')](function(_0x316210){_0x456e06=_0x316210;logger[_0xd351('0xb')]('The\x20User\x20ID\x20is:',_0x456e06['id']);return getEndUser(_0x3b8526,_0x4ff06a[_0xd351('0x4f')],_0x4ff06a[_0xd351('0x50')]);})[_0xd351('0x11')](function(_0x56616f){_0x5fe6b0=_0x56616f;logger[_0xd351('0xb')](_0xd351('0x51'),_0x5fe6b0['id']);return getTicket(_0x3b8526,_0x456e06,_0x5fe6b0,_0x570d57,_0x4ff06a);})[_0xd351('0x11')](function(_0x15adcb){if(_0x15adcb){logger[_0xd351('0xb')]('Ticket\x20created!');logger[_0xd351('0xb')]('The\x20Ticket\x20ID\x20is:',_0x15adcb['id']);switch(_0x3b8526[_0xd351('0x27')]){case _0xd351('0x52'):logger['info']('[QUEUE]',_0xd351('0x53'));emit(util[_0xd351('0x13')](_0xd351('0x54'),_0x46af23['name']),_0xd351('0x55'),{'recordId':_0x15adcb['id']});break;case _0xd351('0x56'):logger['info'](_0xd351('0x48'),'Displaying\x20ticket\x20to\x20agent\x20in\x20a\x20new\x20tab...');emit(util[_0xd351('0x13')](_0xd351('0x54'),_0x46af23['name']),'trigger:browser:url',{'uri':util[_0xd351('0x13')]('https://xcally.desk.com/web/agent/case/%d',_0x15adcb['id'])});break;default:logger[_0xd351('0x57')](_0xd351('0x48'),_0xd351('0x58'));}}})['catch'](function(_0x3e281c){console['error'](_0x3e281c);logger['error']('[QUEUE]',JSON[_0xd351('0x17')](_0x3e281c));});};exports[_0xd351('0x59')]=function(_0x334029,_0x5a2e9b,_0x554e3a,_0x1748f0,_0x42f248,_0x51a53e,_0x2a87cf){var _0x202bc4,_0x574e08;_0x51a53e[_0xd351('0xe')]=intUtil['stripTrailingSlash'](_0x51a53e[_0xd351('0xe')]);_0x51a53e['serverUrl']=intUtil[_0xd351('0x45')](_0x51a53e[_0xd351('0x46')]);if(_0x2a87cf&&_0x2a87cf[_0xd351('0x5a')]&&_0x2a87cf[_0xd351('0x5a')]!==_0xd351('0x5b')){logger[_0xd351('0xb')](_0xd351('0x5c'),'Recording\x20is\x20enabled!');_0x5a2e9b['recordingURL']=util[_0xd351('0x13')](_0xd351('0x4b'),_0x51a53e['serverUrl'],_0x5a2e9b[_0xd351('0x4c')],md5(_0x5a2e9b[_0xd351('0x4c')]));}headers[_0xd351('0x4d')]=getAuth(_0x51a53e);return getUser(_0x51a53e,_0x1748f0['email'])[_0xd351('0x11')](function(_0x5e2dac){_0x202bc4=_0x5e2dac;logger['info'](_0xd351('0x5d'),_0x202bc4['id']);return getEndUser(_0x51a53e,_0x5a2e9b[_0xd351('0x5e')],_0x5a2e9b['destcalleridnum']);})[_0xd351('0x11')](function(_0x399465){_0x574e08=_0x399465;logger[_0xd351('0xb')](_0xd351('0x51'),_0x574e08['id']);return getTicket(_0x51a53e,_0x202bc4,_0x574e08,_0x554e3a,_0x5a2e9b);})[_0xd351('0x11')](function(_0x2dc745){if(_0x2dc745){logger['info'](_0xd351('0x5f'));logger[_0xd351('0xb')](_0xd351('0x60'),_0x2dc745['id']);switch(_0x51a53e[_0xd351('0x27')]){case _0xd351('0x52'):logger[_0xd351('0xb')](_0xd351('0x48'),'Displaying\x20ticket\x20to\x20agent...');emit(util[_0xd351('0x13')]('user:%s',_0x1748f0[_0xd351('0x34')]),_0xd351('0x55'),{'recordId':_0x2dc745['id']});break;case _0xd351('0x56'):logger[_0xd351('0xb')](_0xd351('0x48'),'Displaying\x20ticket\x20to\x20agent\x20in\x20a\x20new\x20tab...');emit(util[_0xd351('0x13')]('user:%s',_0x1748f0[_0xd351('0x34')]),_0xd351('0x61'),{'uri':util[_0xd351('0x13')](_0xd351('0x62'),_0x51a53e[_0xd351('0xe')],_0x2dc745['id'])});break;default:logger['error']('[OUTBOUND]',_0xd351('0x58'));}}})[_0xd351('0x63')](function(_0x4b9367){logger[_0xd351('0x57')](_0xd351('0x5c'),JSON[_0xd351('0x17')](_0x4b9367));});};exports['abandoned']=function(_0x2b47ab,_0xbf46c8,_0x284d12,_0x5dbdef,_0x5d13ec,_0x508e5f){var _0x40c78b,_0x126c51;_0x508e5f[_0xd351('0xe')]=intUtil[_0xd351('0x45')](_0x508e5f[_0xd351('0xe')]);_0x508e5f[_0xd351('0x46')]=intUtil[_0xd351('0x45')](_0x508e5f['serverUrl']);if(_0x5d13ec&&_0x5d13ec[_0xd351('0x47')]){logger['info']('[ABANDONED]',_0xd351('0x49'));_0xbf46c8[_0xd351('0x4a')]=util['format'](_0xd351('0x4b'),_0x508e5f['serverUrl'],_0xbf46c8['uniqueid'],md5(_0xbf46c8['uniqueid']));}else{_0xbf46c8[_0xd351('0x4a')]='';}headers[_0xd351('0x4d')]=getAuth(_0x508e5f);return getUser(_0x508e5f)[_0xd351('0x11')](function(_0x4a946d){_0x40c78b=_0x4a946d;logger[_0xd351('0xb')](_0xd351('0x5d'),_0x40c78b['id']);return getEndUser(_0x508e5f,_0xbf46c8[_0xd351('0x4f')],_0xbf46c8[_0xd351('0x50')]);})[_0xd351('0x11')](function(_0x475534){_0x126c51=_0x475534;logger[_0xd351('0xb')](_0xd351('0x51'),_0x126c51['id']);return getTicket(_0x508e5f,_0x40c78b,_0x126c51,_0x284d12,_0xbf46c8);})[_0xd351('0x11')](function(_0x22672){if(_0x22672){logger[_0xd351('0xb')]('Ticket\x20created!');logger[_0xd351('0xb')](_0xd351('0x60'),_0x22672['id']);}})[_0xd351('0x63')](function(_0xcc7a10){logger[_0xd351('0x57')](_0xd351('0x64'),JSON['stringify'](_0xcc7a10));});};
\ No newline at end of file
+var _0xb46c=['Ticket\x20created!','The\x20Ticket\x20ID\x20is:','Displaying\x20ticket\x20to\x20agent...','user:%s','newTab','trigger:browser:url','error','Desk\x20account\x20type\x20not\x20recognized','outbound','recordingFormat','[OUTBOUND]','destcalleridname','destcalleridnum','The\x20Enduser\x20ID\x20is:','integrationTab','trigger:desk:display','Displaying\x20ticket\x20to\x20agent\x20in\x20a\x20new\x20tab...','catch','unmanaged','toUpperCase','lastevent','request-promise','md5','util','ioredis','./util','../../../../config/logger','desk','redis','localhost','socket.io-emitter','emit','application/json','validateEmail','Getting\x20agent\x20with\x20email','format','%s/users','remoteUri','total_entries','find','_embedded','entries','then','info','Agent\x20found!','Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!','%s/users/me','Invalid\x20email\x20format,\x20using\x20the\x20admin\x20account!','debug','stringify','defaults','GET','authType','%s:%s','username','password','token','%s/token:%s','toString','base64','Searching\x20enduser\x20with\x20phone','Enduser\x20not\x20found,\x20creating\x20a\x20new\x20enduser!','%s/customers','POST','map','length','string','picklist','type','nameField','customField','content','idField','variable','variableName','custom_fields','Variable','name','priority','Creating\x20new\x20ticket...','merge','getString','Subjects','phone','new','xCALLY','Motion','concat','Tags','/api/v2/users/%d','Descriptions','queue','stripTrailingSlash','monitor_format','[QUEUE]','Recording\x20is\x20enabled!','recordingURL','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','serverUrl','uniqueid','Authorization','email','The\x20User\x20ID\x20is:','calleridname','calleridnum'];(function(_0x3ab51d,_0x2fa01d){var _0x29a04e=function(_0x7807b0){while(--_0x7807b0){_0x3ab51d['push'](_0x3ab51d['shift']());}};_0x29a04e(++_0x2fa01d);}(_0xb46c,0x150));var _0xcb46=function(_0x643324,_0x1f51af){_0x643324=_0x643324-0x0;var _0x56f4cc=_0xb46c[_0x643324];return _0x56f4cc;};'use strict';var _=require('lodash');var rp=require(_0xcb46('0x0'));var md5=require(_0xcb46('0x1'));var util=require(_0xcb46('0x2'));var Redis=require(_0xcb46('0x3'));var intUtil=require(_0xcb46('0x4'));var config=require('../../../../config/environment');var logger=require(_0xcb46('0x5'))(_0xcb46('0x6'));config[_0xcb46('0x7')]=_['defaults'](config['redis'],{'host':_0xcb46('0x8'),'port':0x18eb});var io=require(_0xcb46('0x9'))(new Redis(config[_0xcb46('0x7')]));function emit(_0x159a06,_0x28e8cc,_0xb54dde){io['to'](_0x159a06)[_0xcb46('0xa')](_0x28e8cc,_0xb54dde);}var headers={'Content-Type':'application/json','Accept':_0xcb46('0xb')};function getUser(_0x103824,_0x5714ce){if(intUtil[_0xcb46('0xc')](_0x5714ce)===!![]){logger['info'](_0xcb46('0xd'),_0x5714ce);return request({'uri':util[_0xcb46('0xe')](_0xcb46('0xf'),_0x103824[_0xcb46('0x10')])})['then'](function(_0x580a10){if(_0x580a10[_0xcb46('0x11')]){return _[_0xcb46('0x12')](_0x580a10[_0xcb46('0x13')][_0xcb46('0x14')],{'email':_0x5714ce});}})[_0xcb46('0x15')](function(_0x189dc2){if(_0x189dc2){logger[_0xcb46('0x16')](_0xcb46('0x17'));return _0x189dc2;}else{logger[_0xcb46('0x16')](_0xcb46('0x18'));return request({'uri':util['format'](_0xcb46('0x19'),_0x103824[_0xcb46('0x10')])});}});}else{logger[_0xcb46('0x16')](_0xcb46('0x1a'));return request({'uri':util[_0xcb46('0xe')](_0xcb46('0x19'),_0x103824[_0xcb46('0x10')])});}}function request(_0x1754f5){logger[_0xcb46('0x1b')]('[HTTP]',JSON[_0xcb46('0x1c')](_0x1754f5));return rp(_[_0xcb46('0x1d')](_0x1754f5,{'method':_0xcb46('0x1e'),'headers':headers,'json':!![]}));}function getAuth(_0x9c7318){var _0x53e9fb;if(_0x9c7318[_0xcb46('0x1f')]==='basic'){_0x53e9fb=util['format'](_0xcb46('0x20'),_0x9c7318[_0xcb46('0x21')],_0x9c7318[_0xcb46('0x22')]);}else if(_0x9c7318[_0xcb46('0x1f')]===_0xcb46('0x23')){_0x53e9fb=util[_0xcb46('0xe')](_0xcb46('0x24'),_0x9c7318[_0xcb46('0x21')],_0x9c7318['token']);}return util['format']('Basic\x20%s',new Buffer(_0x53e9fb)[_0xcb46('0x25')](_0xcb46('0x26')));}function getEndUser(_0x13b5e2,_0xf21d02,_0x3c3579){logger[_0xcb46('0x16')](_0xcb46('0x27'),_0x3c3579);return request({'uri':util[_0xcb46('0xe')]('%s/customers/search',_0x13b5e2[_0xcb46('0x10')]),'qs':{'phone':_0x3c3579}})[_0xcb46('0x15')](function(_0x14d5dc){if(_0x14d5dc[_0xcb46('0x11')]){logger[_0xcb46('0x16')]('Enduser\x20found!');return _0x14d5dc['_embedded'][_0xcb46('0x14')][0x0];}else{logger[_0xcb46('0x16')](_0xcb46('0x28'));return request({'uri':util[_0xcb46('0xe')](_0xcb46('0x29'),_0x13b5e2[_0xcb46('0x10')]),'method':_0xcb46('0x2a'),'body':{'first_name':_0xf21d02,'title':_0xf21d02,'phone_numbers':[{'type':'work','value':_0x3c3579}]}});}});}function getTags(_0x1452c2,_0x16eca7){var _0x34cc89=[];if(_0x1452c2&&_0x1452c2['length']>0x0){_0x34cc89=_[_0xcb46('0x2b')](_0x1452c2,_0x16eca7);}return _0x34cc89;}function getCustomFields(_0x593518,_0x4e0cc2){var _0x4f7a5c=[];var _0x2f2e93={'custom_fields':{}};if(_0x593518[_0xcb46('0x2c')]>0x0){_['forEach'](_0x593518,function(_0x5b73ad){if(_['includes']([_0xcb46('0x2d'),_0xcb46('0x2e')],_0x5b73ad[_0xcb46('0x2f')])&&_0x5b73ad[_0xcb46('0x30')]&&!_0x5b73ad[_0xcb46('0x31')]){_0x2f2e93[_0x5b73ad[_0xcb46('0x30')]['toLowerCase']()]=_0x5b73ad[_0xcb46('0x32')][_0xcb46('0x25')]();}else if(_['includes'](['string',_0xcb46('0x2e')],_0x5b73ad['type'])&&_0x5b73ad[_0xcb46('0x33')]&&_0x5b73ad[_0xcb46('0x31')]){_0x2f2e93['custom_fields'][_0x5b73ad[_0xcb46('0x33')]]=_0x5b73ad[_0xcb46('0x32')][_0xcb46('0x25')]();}else if(_0x5b73ad['type']===_0xcb46('0x34')&&_0x5b73ad[_0xcb46('0x35')]&&_0x5b73ad['idField']&&_0x5b73ad[_0xcb46('0x31')]){_0x4e0cc2[_0x5b73ad[_0xcb46('0x35')]]&&(_0x2f2e93[_0xcb46('0x36')][_0x5b73ad[_0xcb46('0x33')]]=_0x4e0cc2[_0x5b73ad[_0xcb46('0x35')]]['toString']());}else if(_0x5b73ad['type']==='customVariable'&&_0x5b73ad['Variable']&&_0x5b73ad[_0xcb46('0x37')][_0xcb46('0x38')]&&_0x5b73ad[_0xcb46('0x33')]&&_0x5b73ad['customField']){_0x4e0cc2[_0x5b73ad['Variable']['name']['toLowerCase']()]&&(_0x2f2e93[_0xcb46('0x36')][_0x5b73ad[_0xcb46('0x33')]]=_0x4e0cc2[_0x5b73ad[_0xcb46('0x37')][_0xcb46('0x38')]['toLowerCase']()][_0xcb46('0x25')]());}});}if(_0x2f2e93[_0xcb46('0x39')]){_0x2f2e93['priority']=Number(_0x2f2e93[_0xcb46('0x39')]);}return _0x2f2e93;}function getTicket(_0x3bf12e,_0x4e97fb,_0x3d2f1b,_0x49139c,_0x530a2e){logger[_0xcb46('0x16')](_0xcb46('0x3a'));var _0x1bd6ae=_[_0xcb46('0x3b')]({'subject':intUtil[_0xcb46('0x3c')](_0x49139c[_0xcb46('0x3d')],_0x530a2e,'\x20'),'type':_0xcb46('0x3e'),'status':_0xcb46('0x3f'),'labels':[_0xcb46('0x40'),_0xcb46('0x41'),'CTI'][_0xcb46('0x42')](getTags(_0x49139c[_0xcb46('0x43')],'name')),'description':intUtil['getString'](_0x49139c['Descriptions'],_0x530a2e,'\x0a'),'_links':{'assigned_user':{'href':util[_0xcb46('0xe')](_0xcb46('0x44'),_0x4e97fb['id']),'class':'user'}},'message':{'direction':'in','body':intUtil['getString'](_0x49139c[_0xcb46('0x45')],_0x530a2e,'\x0a')}},getCustomFields(_0x49139c['Fields'],_0x530a2e));return request({'uri':util[_0xcb46('0xe')]('%s/customers/%d/cases',_0x3bf12e[_0xcb46('0x10')],_0x3d2f1b['id']),'method':_0xcb46('0x2a'),'body':_0x1bd6ae});}exports[_0xcb46('0x46')]=function(_0x18f601,_0x297d1,_0x44f914,_0x5c87c5,_0x35fe5c,_0x3f4567){var _0x34f9ba,_0x45e2a7;_0x3f4567[_0xcb46('0x10')]=intUtil[_0xcb46('0x47')](_0x3f4567[_0xcb46('0x10')]);_0x3f4567['serverUrl']=intUtil[_0xcb46('0x47')](_0x3f4567['serverUrl']);if(_0x35fe5c&&_0x35fe5c[_0xcb46('0x48')]){logger[_0xcb46('0x16')](_0xcb46('0x49'),_0xcb46('0x4a'));_0x297d1[_0xcb46('0x4b')]=util[_0xcb46('0xe')](_0xcb46('0x4c'),_0x3f4567[_0xcb46('0x4d')],_0x297d1[_0xcb46('0x4e')],md5(_0x297d1[_0xcb46('0x4e')]));}else{_0x297d1['recordingURL']='';}headers[_0xcb46('0x4f')]=getAuth(_0x3f4567);return getUser(_0x3f4567,_0x5c87c5[_0xcb46('0x50')])[_0xcb46('0x15')](function(_0x337dd1){_0x34f9ba=_0x337dd1;logger[_0xcb46('0x16')](_0xcb46('0x51'),_0x34f9ba['id']);return getEndUser(_0x3f4567,_0x297d1[_0xcb46('0x52')],_0x297d1[_0xcb46('0x53')]);})['then'](function(_0x3b4b43){_0x45e2a7=_0x3b4b43;logger[_0xcb46('0x16')]('The\x20Enduser\x20ID\x20is:',_0x45e2a7['id']);return getTicket(_0x3f4567,_0x34f9ba,_0x45e2a7,_0x44f914,_0x297d1);})['then'](function(_0x36d1ab){if(_0x36d1ab){logger[_0xcb46('0x16')](_0xcb46('0x54'));logger[_0xcb46('0x16')](_0xcb46('0x55'),_0x36d1ab['id']);switch(_0x3f4567[_0xcb46('0x2f')]){case'integrationTab':logger[_0xcb46('0x16')](_0xcb46('0x49'),_0xcb46('0x56'));emit(util[_0xcb46('0xe')](_0xcb46('0x57'),_0x5c87c5[_0xcb46('0x38')]),'trigger:desk:display',{'recordId':_0x36d1ab['id']});break;case _0xcb46('0x58'):logger[_0xcb46('0x16')](_0xcb46('0x49'),'Displaying\x20ticket\x20to\x20agent\x20in\x20a\x20new\x20tab...');emit(util[_0xcb46('0xe')]('user:%s',_0x5c87c5['name']),_0xcb46('0x59'),{'uri':util['format']('https://xcally.desk.com/web/agent/case/%d',_0x36d1ab['id'])});break;default:logger[_0xcb46('0x5a')](_0xcb46('0x49'),_0xcb46('0x5b'));}}})['catch'](function(_0x45485d){console[_0xcb46('0x5a')](_0x45485d);logger['error'](_0xcb46('0x49'),JSON['stringify'](_0x45485d));});};exports[_0xcb46('0x5c')]=function(_0x2f0543,_0x552064,_0x58c82b,_0x55e9a9,_0x378614,_0x2b1a69,_0x591a1d){var _0x15e48a,_0x229600;_0x2b1a69[_0xcb46('0x10')]=intUtil[_0xcb46('0x47')](_0x2b1a69[_0xcb46('0x10')]);_0x2b1a69[_0xcb46('0x4d')]=intUtil['stripTrailingSlash'](_0x2b1a69['serverUrl']);if(_0x591a1d&&_0x591a1d[_0xcb46('0x5d')]&&_0x591a1d['recordingFormat']!=='none'){logger[_0xcb46('0x16')](_0xcb46('0x5e'),_0xcb46('0x4a'));_0x552064[_0xcb46('0x4b')]=util[_0xcb46('0xe')](_0xcb46('0x4c'),_0x2b1a69['serverUrl'],_0x552064[_0xcb46('0x4e')],md5(_0x552064[_0xcb46('0x4e')]));}headers[_0xcb46('0x4f')]=getAuth(_0x2b1a69);return getUser(_0x2b1a69,_0x55e9a9[_0xcb46('0x50')])[_0xcb46('0x15')](function(_0x2b537f){_0x15e48a=_0x2b537f;logger[_0xcb46('0x16')]('The\x20User\x20ID\x20is:',_0x15e48a['id']);return getEndUser(_0x2b1a69,_0x552064[_0xcb46('0x5f')],_0x552064[_0xcb46('0x60')]);})[_0xcb46('0x15')](function(_0x15e3a9){_0x229600=_0x15e3a9;logger[_0xcb46('0x16')](_0xcb46('0x61'),_0x229600['id']);return getTicket(_0x2b1a69,_0x15e48a,_0x229600,_0x58c82b,_0x552064);})['then'](function(_0x2741ee){if(_0x2741ee){logger[_0xcb46('0x16')](_0xcb46('0x54'));logger['info'](_0xcb46('0x55'),_0x2741ee['id']);switch(_0x2b1a69['type']){case _0xcb46('0x62'):logger['info']('[QUEUE]',_0xcb46('0x56'));emit(util[_0xcb46('0xe')](_0xcb46('0x57'),_0x55e9a9[_0xcb46('0x38')]),_0xcb46('0x63'),{'recordId':_0x2741ee['id']});break;case _0xcb46('0x58'):logger['info']('[QUEUE]',_0xcb46('0x64'));emit(util['format'](_0xcb46('0x57'),_0x55e9a9[_0xcb46('0x38')]),_0xcb46('0x59'),{'uri':util['format']('%s/agent/tickets/%s',_0x2b1a69[_0xcb46('0x10')],_0x2741ee['id'])});break;default:logger[_0xcb46('0x5a')](_0xcb46('0x5e'),'Desk\x20account\x20type\x20not\x20recognized');}}})[_0xcb46('0x65')](function(_0x246f2e){logger['error'](_0xcb46('0x5e'),JSON['stringify'](_0x246f2e));});};exports[_0xcb46('0x66')]=function(_0x3c10d9,_0x1a65f5,_0x5a8fbb,_0x4fcf38,_0x5c2066,_0x5376d6){var _0x41f505,_0x587c74;_0x5376d6[_0xcb46('0x10')]=intUtil[_0xcb46('0x47')](_0x5376d6['remoteUri']);_0x5376d6[_0xcb46('0x4d')]=intUtil[_0xcb46('0x47')](_0x5376d6['serverUrl']);if(_0x5c2066&&_0x5c2066[_0xcb46('0x48')]){logger[_0xcb46('0x16')]('['+_0x1a65f5['lastevent'][_0xcb46('0x67')]()+']',_0xcb46('0x4a'));_0x1a65f5[_0xcb46('0x4b')]=util[_0xcb46('0xe')](_0xcb46('0x4c'),_0x5376d6[_0xcb46('0x4d')],_0x1a65f5['uniqueid'],md5(_0x1a65f5[_0xcb46('0x4e')]));}else{_0x1a65f5[_0xcb46('0x4b')]='';}headers[_0xcb46('0x4f')]=getAuth(_0x5376d6);return getUser(_0x5376d6)[_0xcb46('0x15')](function(_0x315445){_0x41f505=_0x315445;logger[_0xcb46('0x16')](_0xcb46('0x51'),_0x41f505['id']);return getEndUser(_0x5376d6,_0x1a65f5[_0xcb46('0x52')],_0x1a65f5['calleridnum']);})[_0xcb46('0x15')](function(_0x20b7a0){_0x587c74=_0x20b7a0;logger[_0xcb46('0x16')]('The\x20Enduser\x20ID\x20is:',_0x587c74['id']);return getTicket(_0x5376d6,_0x41f505,_0x587c74,_0x5a8fbb,_0x1a65f5);})[_0xcb46('0x15')](function(_0x15fd41){if(_0x15fd41){logger[_0xcb46('0x16')]('Ticket\x20created!');logger['info']('The\x20Ticket\x20ID\x20is:',_0x15fd41['id']);}})[_0xcb46('0x65')](function(_0x3789c9){logger['error']('['+_0x1a65f5[_0xcb46('0x68')]['toUpperCase']()+']',JSON[_0xcb46('0x1c')](_0x3789c9));});};
\ No newline at end of file