Built motion from commit 709aa6fb5ed03aa61bc373fcdbf622215d37d30b. Version 3.0.0...
[motion-next.git] / server / services / ami / trigger / integration / zendesk.js
1 const a1146_0x420d=['ticket','type','%s/users.json','%s/search.json','md5','variableName','format','first','merge','none','uniqueid','%s/tickets.json','idField','serverUrl','Enduser\x20not\x20found,\x20creating\x20a\x20new\x20enduser!','newTab','Displaying\x20ticket\x20to\x20agent\x20in\x20a\x20new\x20tab...','remoteUri','POST','getString','Ticket\x20created!','Recording\x20is\x20enabled!','calleridnum','destcalleridname','The\x20Enduser\x20ID\x20is:','type:user\x20role:end-user\x20phone:%s','request-promise-native','%s/channels/voice/agents/%d/tickets/%d/display.json','application/json','email','emit','replace','Fields','string','count','Displaying\x20ticket\x20to\x20agent...','user','destcalleridnum','../../../../rediscache','nameField','find','Searching\x20enduser\x20with\x20phone','catch','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','push','toString','Agent\x20found!','queue','Admin\x20account\x20selected.','username','unmanaged','stripTrailingSlash','calleridname','integrationTab','type:user\x20role:agent\x20email:%s','user:%s','[OUTBOUND]\x20Error\x20running\x20Zendesk\x20integration','%s/agent/tickets/%s','%s/token:%s','recordingFormat','toLowerCase','./util','Subjects','then','The\x20User\x20ID\x20is:','Authorization','authType','%s:%s','defaults','forEach','end-user','Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!','error','[QUEUE]\x20Error\x20running\x20Zendesk\x20integration','token','Zendesk\x20account\x20type\x20not\x20recognized','/api/v2','Enduser\x20found!','Caller\x20-\x20%s','Getting\x20agent\x20with\x20email','recordingURL','name','%s/users/me.json','util','results','map','inspect','custom_fields','monitor_format','trigger:browser:url','toUpperCase','variable','info','GET','password','Creating\x20new\x20ticket...','[QUEUE]','Variable','length','The\x20Ticket\x20ID\x20is:','lodash','Tags','Descriptions','customField','[OUTBOUND]','from'];(function(_0x133cf0,_0x420df7){const _0x2a00c9=function(_0x3439de){while(--_0x3439de){_0x133cf0['push'](_0x133cf0['shift']());}};_0x2a00c9(++_0x420df7);}(a1146_0x420d,0x148));const a1146_0x2a00=function(_0x133cf0,_0x420df7){_0x133cf0=_0x133cf0-0x0;let _0x2a00c9=a1146_0x420d[_0x133cf0];return _0x2a00c9;};const _0x488f6a=a1146_0x2a00;'use strict';const _=require(_0x488f6a('0x5a')),rp=require(_0x488f6a('0x10')),md5=require(_0x488f6a('0x64')),util=require(_0x488f6a('0x49')),intUtil=require(_0x488f6a('0x33')),logger=require('../../../../config/logger')('zendesk'),{getSocket}=require(_0x488f6a('0x1c')),io=getSocket();function emit(_0x3439de,_0x1f72d8,_0x246a6f){const _0x5d824c=_0x488f6a;io['to'](_0x3439de)[_0x5d824c('0x14')](_0x1f72d8,_0x246a6f);}const headers={'Content-Type':_0x488f6a('0x12'),'Accept':'application/json'};function getTicket(_0x586f38,_0x53909c,_0x529e4d,_0x4591b7,_0x50e817){const _0x193129=_0x488f6a;return logger[_0x193129('0x52')](_0x193129('0x55')),request({'uri':util['format'](_0x193129('0x1'),_0x586f38[_0x193129('0x7')]),'method':'POST','body':{'ticket':_[_0x193129('0x68')]({'requester_id':_0x529e4d['id'],'submitter_id':_0x53909c?_0x53909c['id']:undefined,'assignee_id':_0x53909c?_0x53909c['id']:undefined,'tags':getTags(_0x4591b7[_0x193129('0x5b')],_0x193129('0x47')),'subject':intUtil[_0x193129('0x9')](_0x4591b7[_0x193129('0x34')],_0x50e817,'\x20'),'description':intUtil[_0x193129('0x9')](_0x4591b7[_0x193129('0x5c')],_0x50e817,'\x0a'),'comment':{'public':![],'body':intUtil[_0x193129('0x9')](_0x4591b7[_0x193129('0x5c')],_0x50e817,'\x0a')}},getCustomFields(_0x4591b7[_0x193129('0x16')],_0x50e817))}})[_0x193129('0x35')](function(_0xd1ac19){const _0x76c7a2=_0x193129;return logger[_0x76c7a2('0x52')](_0x76c7a2('0xa')),_0xd1ac19[_0x76c7a2('0x60')];});}function getUser(_0x2e785f,_0x32e20b){const _0x4ec2b0=_0x488f6a;return intUtil['validateEmail'](_0x32e20b)?(logger[_0x4ec2b0('0x52')](_0x4ec2b0('0x45'),_0x32e20b),request({'uri':util[_0x4ec2b0('0x66')](_0x4ec2b0('0x63'),_0x2e785f[_0x4ec2b0('0x7')]),'qs':{'query':util[_0x4ec2b0('0x66')](_0x4ec2b0('0x2c'),_0x32e20b)}})[_0x4ec2b0('0x35')](function(_0x1e80f4){const _0x11a072=_0x4ec2b0;return _0x1e80f4[_0x11a072('0x18')]?(logger[_0x11a072('0x52')](_0x11a072('0x24')),_[_0x11a072('0x1e')](_0x1e80f4[_0x11a072('0x4a')],{'email':_0x32e20b,'role':'agent'})):(logger[_0x11a072('0x52')](_0x11a072('0x3d')),request({'uri':util['format']('%s/users/me.json',_0x2e785f[_0x11a072('0x7')])})['then'](function(_0x3da1ba){const _0x1e4602=_0x11a072;return logger[_0x1e4602('0x52')](_0x1e4602('0x26')),_0x3da1ba[_0x1e4602('0x1a')];}));})):(logger[_0x4ec2b0('0x52')](_0x4ec2b0('0x3d')),request({'uri':util['format'](_0x4ec2b0('0x48'),_0x2e785f['remoteUri'])})['then'](function(_0x21a409){const _0x2ac863=_0x4ec2b0;return logger[_0x2ac863('0x52')](_0x2ac863('0x26')),_0x21a409[_0x2ac863('0x1a')];}));}function getEndUser(_0x2f44c0,_0xa211dd,_0x3815ad){const _0x437743=_0x488f6a;return logger['info'](_0x437743('0x1f'),_0x3815ad),request({'uri':util['format'](_0x437743('0x63'),_0x2f44c0[_0x437743('0x7')]),'qs':{'query':util[_0x437743('0x66')](_0x437743('0xf'),_0x3815ad)}})[_0x437743('0x35')](function(_0x3e7a4a){const _0x330948=_0x437743;let _0x43503c;return _0x3e7a4a['results']['length']&&(_0x3e7a4a['results']=_['filter'](_0x3e7a4a['results'],{'suspended':![],'role':_0x330948('0x3c')}),_0x3e7a4a[_0x330948('0x4a')][_0x330948('0x58')]&&(_0x43503c=_[_0x330948('0x67')](_0x3e7a4a[_0x330948('0x4a')]))),_0x43503c?(logger['info'](_0x330948('0x43')),_0x43503c):(logger[_0x330948('0x52')](_0x330948('0x4')),request({'uri':util[_0x330948('0x66')](_0x330948('0x62'),_0x2f44c0[_0x330948('0x7')]),'method':_0x330948('0x8'),'body':{'user':{'role':'end-user','name':util[_0x330948('0x66')](_0x330948('0x44'),_0xa211dd||_0x3815ad),'phone':_0x3815ad}}})['then'](function(_0xf771f2){const _0x59cb56=_0x330948;return logger[_0x59cb56('0x52')]('Enduser\x20created.'),_0xf771f2[_0x59cb56('0x1a')];}));});}function getAuth(_0x7eec41){const _0x36c2d3=_0x488f6a;let _0x50b2e7;if(_0x7eec41[_0x36c2d3('0x38')]===_0x36c2d3('0x54'))_0x50b2e7=util['format'](_0x36c2d3('0x39'),_0x7eec41[_0x36c2d3('0x27')],_0x7eec41[_0x36c2d3('0x54')]);else _0x7eec41[_0x36c2d3('0x38')]===_0x36c2d3('0x40')&&(_0x50b2e7=util['format'](_0x36c2d3('0x30'),_0x7eec41[_0x36c2d3('0x27')],_0x7eec41[_0x36c2d3('0x40')]));return util[_0x36c2d3('0x66')]('Basic\x20%s',Buffer[_0x36c2d3('0x5f')](_0x50b2e7)[_0x36c2d3('0x23')]('base64'));}function request(_0x192710){const _0x5c29b5=_0x488f6a;return logger['debug']('[HTTP]',JSON['stringify'](_0x192710)),rp(_[_0x5c29b5('0x3a')](_0x192710,{'method':_0x5c29b5('0x53'),'headers':headers,'json':!![]}));}function getTags(_0x3c25ea,_0x80b29e){const _0x476d60=_0x488f6a;let _0x10a770=[];return _0x3c25ea&&_0x3c25ea[_0x476d60('0x58')]>0x0&&(_0x10a770=_[_0x476d60('0x4b')](_0x3c25ea,_0x80b29e)),_0x10a770;}function getCustomFields(_0x6b7708,_0x428cc9){const _0x509786=_0x488f6a,_0x516c1a={'custom_fields':[]};return _0x6b7708[_0x509786('0x58')]>0x0&&_[_0x509786('0x3b')](_0x6b7708,function(_0x5d8018){const _0x228e5e=_0x509786;if(_0x5d8018['type']===_0x228e5e('0x17')&&_0x5d8018[_0x228e5e('0x1d')]&&!_0x5d8018[_0x228e5e('0x5d')])_0x516c1a[_0x5d8018[_0x228e5e('0x1d')][_0x228e5e('0x32')]()]=_0x5d8018['content'][_0x228e5e('0x23')]();else{if(_0x5d8018['type']===_0x228e5e('0x17')&&_0x5d8018['idField']&&_0x5d8018[_0x228e5e('0x5d')])_0x516c1a[_0x228e5e('0x4d')]['push']({'id':_0x5d8018[_0x228e5e('0x2')],'value':_0x5d8018['content'][_0x228e5e('0x23')]()});else{if(_0x5d8018['type']===_0x228e5e('0x51')&&_0x5d8018[_0x228e5e('0x65')]&&_0x5d8018['idField']&&_0x5d8018[_0x228e5e('0x5d')])_0x428cc9[_0x5d8018[_0x228e5e('0x65')]]&&_0x516c1a[_0x228e5e('0x4d')][_0x228e5e('0x22')]({'id':_0x5d8018[_0x228e5e('0x2')],'value':_0x428cc9[_0x5d8018[_0x228e5e('0x65')]][_0x228e5e('0x23')]()});else _0x5d8018[_0x228e5e('0x61')]==='customVariable'&&_0x5d8018[_0x228e5e('0x57')]&&_0x5d8018[_0x228e5e('0x57')][_0x228e5e('0x47')]&&_0x5d8018[_0x228e5e('0x2')]&&_0x5d8018[_0x228e5e('0x5d')]&&(_0x428cc9[_0x5d8018[_0x228e5e('0x57')]['name'][_0x228e5e('0x32')]()]&&_0x516c1a['custom_fields'][_0x228e5e('0x22')]({'id':_0x5d8018['idField'],'value':_0x428cc9[_0x5d8018[_0x228e5e('0x57')]['name'][_0x228e5e('0x32')]()][_0x228e5e('0x23')]()}));}}}),_0x516c1a;}exports[_0x488f6a('0x25')]=function(_0x2c2432,_0xa793c9,_0x334f97,_0x2aaa81,_0x1efaa8,_0x1cf279){const _0xb8211d=_0x488f6a;let _0x6b69a7,_0x3c07ce;return _0x1cf279[_0xb8211d('0x7')]=intUtil[_0xb8211d('0x29')](_0x1cf279['remoteUri']),_0x1cf279[_0xb8211d('0x3')]=intUtil[_0xb8211d('0x29')](_0x1cf279['serverUrl']),_0x1efaa8&&_0x1efaa8['monitor_format']?(logger[_0xb8211d('0x52')](_0xb8211d('0x56'),'Recording\x20is\x20enabled!'),_0xa793c9[_0xb8211d('0x46')]=util[_0xb8211d('0x66')](_0xb8211d('0x21'),_0x1cf279[_0xb8211d('0x3')],_0xa793c9[_0xb8211d('0x0')],md5(_0xa793c9[_0xb8211d('0x0')]))):_0xa793c9[_0xb8211d('0x46')]='',headers[_0xb8211d('0x37')]=getAuth(_0x1cf279),getUser(_0x1cf279,_0x2aaa81['email'])[_0xb8211d('0x35')](function(_0x23ec06){const _0xfb58be=_0xb8211d;return _0x6b69a7=_0x23ec06,logger['info'](_0xfb58be('0x36'),_0x6b69a7['id']),getEndUser(_0x1cf279,_0xa793c9[_0xfb58be('0x2a')],_0xa793c9[_0xfb58be('0xc')]);})['then'](function(_0x10dcf5){const _0x36e4da=_0xb8211d;return _0x3c07ce=_0x10dcf5,logger[_0x36e4da('0x52')](_0x36e4da('0xe'),_0x3c07ce['id']),getTicket(_0x1cf279,_0x6b69a7,_0x3c07ce,_0x334f97,_0xa793c9);})[_0xb8211d('0x35')](function(_0x18eeef){const _0x1eca37=_0xb8211d;if(_0x18eeef){logger[_0x1eca37('0x52')](_0x1eca37('0x59'),_0x18eeef['id']);switch(_0x1cf279['type']){case _0x1eca37('0x2b'):logger[_0x1eca37('0x52')](_0x1eca37('0x56'),'Displaying\x20ticket\x20to\x20agent...');return request({'uri':util[_0x1eca37('0x66')]('%s/channels/voice/agents/%d/tickets/%d/display.json',_0x1cf279[_0x1eca37('0x7')],_0x6b69a7['id'],_0x18eeef['id']),'method':'POST'});case _0x1eca37('0x5'):logger[_0x1eca37('0x52')](_0x1eca37('0x56'),_0x1eca37('0x6')),emit(util['format'](_0x1eca37('0x2d'),_0x2aaa81[_0x1eca37('0x47')]),_0x1eca37('0x4f'),{'uri':util[_0x1eca37('0x66')](_0x1eca37('0x2f'),_0x1cf279[_0x1eca37('0x7')][_0x1eca37('0x15')]('/api/v2'),_0x18eeef['id'])});break;default:logger[_0x1eca37('0x3e')](_0x1eca37('0x56'),_0x1eca37('0x41'));}}})[_0xb8211d('0x20')](function(_0x145ccb){const _0x1f4cdb=_0xb8211d;logger['error'](_0x1f4cdb('0x3f'),util[_0x1f4cdb('0x4c')](_0x145ccb,{'showHidden':!![],'depth':null}));});},exports['outbound']=function(_0x3aa299,_0x3fdf6e,_0x4a937b,_0x272027,_0x2c9847,_0x95030f,_0x1ecf39){const _0x40a7b1=_0x488f6a;let _0x1ccc48,_0x5cfd65;return _0x95030f[_0x40a7b1('0x7')]=intUtil[_0x40a7b1('0x29')](_0x95030f[_0x40a7b1('0x7')]),_0x95030f[_0x40a7b1('0x3')]=intUtil[_0x40a7b1('0x29')](_0x95030f[_0x40a7b1('0x3')]),_0x1ecf39&&_0x1ecf39[_0x40a7b1('0x31')]&&_0x1ecf39[_0x40a7b1('0x31')]!==_0x40a7b1('0x69')&&(logger[_0x40a7b1('0x52')](_0x40a7b1('0x5e'),_0x40a7b1('0xb')),_0x3fdf6e[_0x40a7b1('0x46')]=util[_0x40a7b1('0x66')](_0x40a7b1('0x21'),_0x95030f[_0x40a7b1('0x3')],_0x3fdf6e[_0x40a7b1('0x0')],md5(_0x3fdf6e[_0x40a7b1('0x0')]))),headers[_0x40a7b1('0x37')]=getAuth(_0x95030f),getUser(_0x95030f,_0x272027[_0x40a7b1('0x13')])[_0x40a7b1('0x35')](function(_0x14713d){const _0x15e815=_0x40a7b1;return _0x1ccc48=_0x14713d,logger['info'](_0x15e815('0x36'),_0x1ccc48['id']),getEndUser(_0x95030f,_0x3fdf6e[_0x15e815('0xd')],_0x3fdf6e[_0x15e815('0x1b')]);})[_0x40a7b1('0x35')](function(_0x9429f){const _0xa9de8f=_0x40a7b1;return _0x5cfd65=_0x9429f,logger[_0xa9de8f('0x52')](_0xa9de8f('0xe'),_0x5cfd65['id']),getTicket(_0x95030f,_0x1ccc48,_0x5cfd65,_0x4a937b,_0x3fdf6e);})[_0x40a7b1('0x35')](function(_0x285e8f){const _0x36f22e=_0x40a7b1;if(_0x285e8f){logger[_0x36f22e('0x52')](_0x36f22e('0x59'),_0x285e8f['id']);switch(_0x95030f[_0x36f22e('0x61')]){case _0x36f22e('0x2b'):logger[_0x36f22e('0x52')](_0x36f22e('0x5e'),_0x36f22e('0x19'));return request({'uri':util[_0x36f22e('0x66')](_0x36f22e('0x11'),_0x95030f['remoteUri'],_0x1ccc48['id'],_0x285e8f['id']),'method':_0x36f22e('0x8')});case'newTab':logger[_0x36f22e('0x52')]('[OUTBOUND]',_0x36f22e('0x6')),emit(util['format'](_0x36f22e('0x2d'),_0x272027['name']),_0x36f22e('0x4f'),{'uri':util[_0x36f22e('0x66')]('%s/agent/tickets/%s',_0x95030f['remoteUri']['replace'](_0x36f22e('0x42')),_0x285e8f['id'])});break;default:logger[_0x36f22e('0x3e')]('[OUTBOUND]',_0x36f22e('0x41'));}}})[_0x40a7b1('0x20')](function(_0x2ae39c){const _0xed510e=_0x40a7b1;logger[_0xed510e('0x3e')](_0xed510e('0x2e'),util['inspect'](_0x2ae39c,{'showHidden':!![],'depth':null}));});},exports[_0x488f6a('0x28')]=function(_0x24dced,_0x30faf8,_0x189aa3,_0x207485,_0x3cea51,_0x2722aa){const _0x14a9a6=_0x488f6a;let _0x2f3f9a,_0x47d530;return _0x2722aa['remoteUri']=intUtil[_0x14a9a6('0x29')](_0x2722aa[_0x14a9a6('0x7')]),_0x2722aa[_0x14a9a6('0x3')]=intUtil['stripTrailingSlash'](_0x2722aa[_0x14a9a6('0x3')]),_0x3cea51&&_0x3cea51[_0x14a9a6('0x4e')]?(logger[_0x14a9a6('0x52')]('['+_0x30faf8['lastevent'][_0x14a9a6('0x50')]()+']','Recording\x20is\x20enabled!'),_0x30faf8[_0x14a9a6('0x46')]=util[_0x14a9a6('0x66')](_0x14a9a6('0x21'),_0x2722aa[_0x14a9a6('0x3')],_0x30faf8['uniqueid'],md5(_0x30faf8[_0x14a9a6('0x0')]))):_0x30faf8[_0x14a9a6('0x46')]='',headers[_0x14a9a6('0x37')]=getAuth(_0x2722aa),getUser(_0x2722aa)[_0x14a9a6('0x35')](function(_0xbf4d67){const _0x1ba6bc=_0x14a9a6;return _0x2f3f9a=_0xbf4d67,logger[_0x1ba6bc('0x52')](_0x1ba6bc('0x36'),_0x2f3f9a['id']),getEndUser(_0x2722aa,_0x30faf8[_0x1ba6bc('0x2a')],_0x30faf8[_0x1ba6bc('0xc')]);})[_0x14a9a6('0x35')](function(_0x3c8ab8){const _0x4b9287=_0x14a9a6;return _0x47d530=_0x3c8ab8,logger['info'](_0x4b9287('0xe'),_0x47d530['id']),getTicket(_0x2722aa,_0x2f3f9a,_0x47d530,_0x189aa3,_0x30faf8);})[_0x14a9a6('0x35')](function(_0x48eab0){const _0x47a61e=_0x14a9a6;_0x48eab0&&logger[_0x47a61e('0x52')]('The\x20Ticket\x20ID\x20is:',_0x48eab0['id']);})['catch'](function(_0x1b8289){const _0x471a23=_0x14a9a6;logger[_0x471a23('0x3e')]('['+_0x30faf8['lastevent']['toUpperCase']()+']'+'\x20Error\x20running\x20Zendesk\x20integration',util[_0x471a23('0x4c')](_0x1b8289,{'showHidden':!![],'depth':null}));});};