Built motion from commit 5ae82ce5.|2.6.7
[motion2.git] / server / services / ami / trigger / integration / zendesk.js
index b56c9bc..7b6b928 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x2588=['custom_fields','push','variable','variableName','customVariable','Variable','name','toLowerCase','queue','stripTrailingSlash','serverUrl','monitor_format','[QUEUE]','Recording\x20is\x20enabled!','recordingURL','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','uniqueid','The\x20User\x20ID\x20is:','calleridname','calleridnum','The\x20Enduser\x20ID\x20is:','The\x20Ticket\x20ID\x20is:','Displaying\x20ticket\x20to\x20agent...','%s/channels/voice/agents/%d/tickets/%d/display.json','Displaying\x20ticket\x20to\x20agent\x20in\x20a\x20new\x20tab...','user:%s','trigger:browser:url','%s/agent/tickets/%s','replace','/api/v2','Zendesk\x20account\x20type\x20not\x20recognized','catch','error','inspect','recordingFormat','none','[OUTBOUND]','Authorization','email','newTab','[OUTBOUND]\x20Error\x20running\x20Zendesk\x20integration','unmanaged','lastevent','toUpperCase','\x20Error\x20running\x20Zendesk\x20integration','lodash','md5','./util','../../../../config/environment','../../../../config/logger','redis','socket.io-emitter','emit','application/json','info','Creating\x20new\x20ticket...','format','%s/tickets.json','remoteUri','POST','merge','Tags','Subjects','Descriptions','getString','then','Ticket\x20created!','ticket','validateEmail','Getting\x20agent\x20with\x20email','%s/search.json','type:user\x20role:agent\x20email:%s','count','Agent\x20found!','find','results','agent','Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!','%s/users/me.json','Admin\x20account\x20selected.','user','Searching\x20enduser\x20with\x20phone','length','Enduser\x20not\x20found,\x20creating\x20a\x20new\x20enduser!','%s/users.json','end-user','Enduser\x20created.','authType','%s:%s','password','token','%s/token:%s','username','toString','base64','debug','[HTTP]','stringify','map','forEach','includes','string','picklist','type','nameField','customField','content','idField'];(function(_0x28edda,_0xbd447a){var _0x21f4a4=function(_0x5ae05e){while(--_0x5ae05e){_0x28edda['push'](_0x28edda['shift']());}};_0x21f4a4(++_0xbd447a);}(_0x2588,0x99));var _0x8258=function(_0x5cb99c,_0x4d325d){_0x5cb99c=_0x5cb99c-0x0;var _0x465e3a=_0x2588[_0x5cb99c];return _0x465e3a;};'use strict';var _=require(_0x8258('0x0'));var rp=require('request-promise');var md5=require(_0x8258('0x1'));var util=require('util');var Redis=require('ioredis');var intUtil=require(_0x8258('0x2'));var config=require(_0x8258('0x3'));var logger=require(_0x8258('0x4'))('zendesk');config[_0x8258('0x5')]=_['defaults'](config[_0x8258('0x5')],{'host':'localhost','port':0x18eb});var io=require(_0x8258('0x6'))(new Redis(config[_0x8258('0x5')]));function emit(_0x494a17,_0x41da12,_0x533685){io['to'](_0x494a17)[_0x8258('0x7')](_0x41da12,_0x533685);}var headers={'Content-Type':_0x8258('0x8'),'Accept':'application/json'};function getTicket(_0x392f1c,_0x48f5b8,_0x4aade2,_0x130888,_0x1dcdb1){logger[_0x8258('0x9')](_0x8258('0xa'));return request({'uri':util[_0x8258('0xb')](_0x8258('0xc'),_0x392f1c[_0x8258('0xd')]),'method':_0x8258('0xe'),'body':{'ticket':_[_0x8258('0xf')]({'requester_id':_0x4aade2['id'],'submitter_id':_0x48f5b8?_0x48f5b8['id']:undefined,'assignee_id':_0x48f5b8?_0x48f5b8['id']:undefined,'tags':getTags(_0x130888[_0x8258('0x10')],'name'),'subject':intUtil['getString'](_0x130888[_0x8258('0x11')],_0x1dcdb1,'\x20'),'description':intUtil['getString'](_0x130888[_0x8258('0x12')],_0x1dcdb1,'\x0a'),'comment':{'public':![],'body':intUtil[_0x8258('0x13')](_0x130888[_0x8258('0x12')],_0x1dcdb1,'\x0a')}},getCustomFields(_0x130888['Fields'],_0x1dcdb1))}})[_0x8258('0x14')](function(_0x738aae){logger[_0x8258('0x9')](_0x8258('0x15'));return _0x738aae[_0x8258('0x16')];});}function getUser(_0x53bc8e,_0x3bc7bd){if(intUtil[_0x8258('0x17')](_0x3bc7bd)){logger[_0x8258('0x9')](_0x8258('0x18'),_0x3bc7bd);return request({'uri':util[_0x8258('0xb')](_0x8258('0x19'),_0x53bc8e['remoteUri']),'qs':{'query':util[_0x8258('0xb')](_0x8258('0x1a'),_0x3bc7bd)}})['then'](function(_0x3868e5){if(_0x3868e5[_0x8258('0x1b')]){logger['info'](_0x8258('0x1c'));return _[_0x8258('0x1d')](_0x3868e5[_0x8258('0x1e')],{'email':_0x3bc7bd,'role':_0x8258('0x1f')});}else{logger['info'](_0x8258('0x20'));return request({'uri':util[_0x8258('0xb')](_0x8258('0x21'),_0x53bc8e[_0x8258('0xd')])})[_0x8258('0x14')](function(_0x1ce500){logger[_0x8258('0x9')](_0x8258('0x22'));return _0x1ce500[_0x8258('0x23')];});}});}else{logger['info'](_0x8258('0x20'));return request({'uri':util[_0x8258('0xb')]('%s/users/me.json',_0x53bc8e['remoteUri'])})[_0x8258('0x14')](function(_0x4b0d42){logger[_0x8258('0x9')](_0x8258('0x22'));return _0x4b0d42[_0x8258('0x23')];});}}function getEndUser(_0x5a92f9,_0x1a630e,_0x1197f6){logger[_0x8258('0x9')](_0x8258('0x24'),_0x1197f6);return request({'uri':util[_0x8258('0xb')](_0x8258('0x19'),_0x5a92f9[_0x8258('0xd')]),'qs':{'query':util[_0x8258('0xb')]('type:user\x20role:end-user\x20phone:%s',_0x1197f6)}})[_0x8258('0x14')](function(_0xc8e1a2){var _0x49acda;if(_0xc8e1a2[_0x8258('0x1e')]['length']){_0xc8e1a2[_0x8258('0x1e')]=_['filter'](_0xc8e1a2['results'],{'suspended':![],'role':'end-user'});if(_0xc8e1a2[_0x8258('0x1e')][_0x8258('0x25')]){_0x49acda=_['first'](_0xc8e1a2[_0x8258('0x1e')]);}}if(_0x49acda){logger['info']('Enduser\x20found!');return _0x49acda;}else{logger[_0x8258('0x9')](_0x8258('0x26'));return request({'uri':util[_0x8258('0xb')](_0x8258('0x27'),_0x5a92f9[_0x8258('0xd')]),'method':'POST','body':{'user':{'role':_0x8258('0x28'),'name':util[_0x8258('0xb')]('Caller\x20-\x20%s',_0x1a630e||_0x1197f6),'phone':_0x1197f6}}})['then'](function(_0x4ea41f){logger[_0x8258('0x9')](_0x8258('0x29'));return _0x4ea41f['user'];});}});}function getAuth(_0x286003){var _0x2bbbc2;if(_0x286003[_0x8258('0x2a')]==='password'){_0x2bbbc2=util[_0x8258('0xb')](_0x8258('0x2b'),_0x286003['username'],_0x286003[_0x8258('0x2c')]);}else if(_0x286003['authType']===_0x8258('0x2d')){_0x2bbbc2=util['format'](_0x8258('0x2e'),_0x286003[_0x8258('0x2f')],_0x286003[_0x8258('0x2d')]);}return util[_0x8258('0xb')]('Basic\x20%s',new Buffer(_0x2bbbc2)[_0x8258('0x30')](_0x8258('0x31')));}function request(_0x2f127a){logger[_0x8258('0x32')](_0x8258('0x33'),JSON[_0x8258('0x34')](_0x2f127a));return rp(_['defaults'](_0x2f127a,{'method':'GET','headers':headers,'json':!![]}));}function getTags(_0xe5e7e1,_0x478d1a){var _0x2d1e86=[];if(_0xe5e7e1&&_0xe5e7e1[_0x8258('0x25')]>0x0){_0x2d1e86=_[_0x8258('0x35')](_0xe5e7e1,_0x478d1a);}return _0x2d1e86;}function getCustomFields(_0x331dd4,_0x1bb7e6){var _0x163ccb=[];var _0x2aa5a5={'custom_fields':[]};if(_0x331dd4[_0x8258('0x25')]>0x0){_[_0x8258('0x36')](_0x331dd4,function(_0x378195){if(_[_0x8258('0x37')]([_0x8258('0x38'),_0x8258('0x39')],_0x378195[_0x8258('0x3a')])&&_0x378195[_0x8258('0x3b')]&&!_0x378195[_0x8258('0x3c')]){_0x2aa5a5[_0x378195[_0x8258('0x3b')]['toLowerCase']()]=_0x378195[_0x8258('0x3d')]['toString']();}else if(_[_0x8258('0x37')](['string',_0x8258('0x39')],_0x378195['type'])&&_0x378195[_0x8258('0x3e')]&&_0x378195[_0x8258('0x3c')]){_0x2aa5a5[_0x8258('0x3f')][_0x8258('0x40')]({'id':_0x378195[_0x8258('0x3e')],'value':_0x378195[_0x8258('0x3d')]['toString']()});}else if(_0x378195['type']===_0x8258('0x41')&&_0x378195['variableName']&&_0x378195[_0x8258('0x3e')]&&_0x378195[_0x8258('0x3c')]){_0x1bb7e6[_0x378195['variableName']]&&_0x2aa5a5[_0x8258('0x3f')][_0x8258('0x40')]({'id':_0x378195['idField'],'value':_0x1bb7e6[_0x378195[_0x8258('0x42')]][_0x8258('0x30')]()});}else if(_0x378195['type']===_0x8258('0x43')&&_0x378195['Variable']&&_0x378195[_0x8258('0x44')]['name']&&_0x378195['idField']&&_0x378195[_0x8258('0x3c')]){_0x1bb7e6[_0x378195[_0x8258('0x44')][_0x8258('0x45')][_0x8258('0x46')]()]&&_0x2aa5a5['custom_fields'][_0x8258('0x40')]({'id':_0x378195[_0x8258('0x3e')],'value':_0x1bb7e6[_0x378195[_0x8258('0x44')][_0x8258('0x45')][_0x8258('0x46')]()][_0x8258('0x30')]()});}});}return _0x2aa5a5;}exports[_0x8258('0x47')]=function(_0x3c02f6,_0x336a7e,_0x25b5ca,_0x345755,_0x380a95,_0x495ef8){var _0x10377d,_0x310772;_0x495ef8[_0x8258('0xd')]=intUtil[_0x8258('0x48')](_0x495ef8[_0x8258('0xd')]);_0x495ef8[_0x8258('0x49')]=intUtil[_0x8258('0x48')](_0x495ef8['serverUrl']);if(_0x380a95&&_0x380a95[_0x8258('0x4a')]){logger[_0x8258('0x9')](_0x8258('0x4b'),_0x8258('0x4c'));_0x336a7e[_0x8258('0x4d')]=util['format'](_0x8258('0x4e'),_0x495ef8[_0x8258('0x49')],_0x336a7e[_0x8258('0x4f')],md5(_0x336a7e['uniqueid']));}else{_0x336a7e[_0x8258('0x4d')]='';}headers['Authorization']=getAuth(_0x495ef8);return getUser(_0x495ef8,_0x345755['email'])[_0x8258('0x14')](function(_0x196417){_0x10377d=_0x196417;logger[_0x8258('0x9')](_0x8258('0x50'),_0x10377d['id']);return getEndUser(_0x495ef8,_0x336a7e[_0x8258('0x51')],_0x336a7e[_0x8258('0x52')]);})['then'](function(_0x1b3817){_0x310772=_0x1b3817;logger[_0x8258('0x9')](_0x8258('0x53'),_0x310772['id']);return getTicket(_0x495ef8,_0x10377d,_0x310772,_0x25b5ca,_0x336a7e);})[_0x8258('0x14')](function(_0x52e6d4){if(_0x52e6d4){logger[_0x8258('0x9')](_0x8258('0x54'),_0x52e6d4['id']);switch(_0x495ef8[_0x8258('0x3a')]){case'integrationTab':logger[_0x8258('0x9')](_0x8258('0x4b'),_0x8258('0x55'));return request({'uri':util['format'](_0x8258('0x56'),_0x495ef8['remoteUri'],_0x10377d['id'],_0x52e6d4['id']),'method':_0x8258('0xe')});case'newTab':logger[_0x8258('0x9')](_0x8258('0x4b'),_0x8258('0x57'));emit(util[_0x8258('0xb')](_0x8258('0x58'),_0x345755[_0x8258('0x45')]),_0x8258('0x59'),{'uri':util[_0x8258('0xb')](_0x8258('0x5a'),_0x495ef8[_0x8258('0xd')][_0x8258('0x5b')](_0x8258('0x5c'),''),_0x52e6d4['id'])});break;default:logger['error']('[QUEUE]',_0x8258('0x5d'));}}})[_0x8258('0x5e')](function(_0x2e7402){logger[_0x8258('0x5f')]('[QUEUE]\x20Error\x20running\x20Zendesk\x20integration',util[_0x8258('0x60')](_0x2e7402,{'showHidden':!![],'depth':null}));});};exports['outbound']=function(_0x4246aa,_0x41c0d0,_0x528f9e,_0x1d0cc3,_0x47a588,_0x460d54,_0x234ba3){var _0x36cef0,_0x4332f0;_0x460d54[_0x8258('0xd')]=intUtil[_0x8258('0x48')](_0x460d54[_0x8258('0xd')]);_0x460d54[_0x8258('0x49')]=intUtil[_0x8258('0x48')](_0x460d54['serverUrl']);if(_0x234ba3&&_0x234ba3[_0x8258('0x61')]&&_0x234ba3['recordingFormat']!==_0x8258('0x62')){logger['info'](_0x8258('0x63'),'Recording\x20is\x20enabled!');_0x41c0d0[_0x8258('0x4d')]=util[_0x8258('0xb')](_0x8258('0x4e'),_0x460d54[_0x8258('0x49')],_0x41c0d0[_0x8258('0x4f')],md5(_0x41c0d0[_0x8258('0x4f')]));}headers[_0x8258('0x64')]=getAuth(_0x460d54);return getUser(_0x460d54,_0x1d0cc3[_0x8258('0x65')])[_0x8258('0x14')](function(_0x28983c){_0x36cef0=_0x28983c;logger[_0x8258('0x9')](_0x8258('0x50'),_0x36cef0['id']);return getEndUser(_0x460d54,_0x41c0d0['destcalleridname'],_0x41c0d0['destcalleridnum']);})[_0x8258('0x14')](function(_0x15c17a){_0x4332f0=_0x15c17a;logger[_0x8258('0x9')](_0x8258('0x53'),_0x4332f0['id']);return getTicket(_0x460d54,_0x36cef0,_0x4332f0,_0x528f9e,_0x41c0d0);})[_0x8258('0x14')](function(_0x46eea8){if(_0x46eea8){logger[_0x8258('0x9')](_0x8258('0x54'),_0x46eea8['id']);switch(_0x460d54[_0x8258('0x3a')]){case'integrationTab':logger[_0x8258('0x9')](_0x8258('0x63'),_0x8258('0x55'));return request({'uri':util[_0x8258('0xb')]('%s/channels/voice/agents/%d/tickets/%d/display.json',_0x460d54[_0x8258('0xd')],_0x36cef0['id'],_0x46eea8['id']),'method':_0x8258('0xe')});case _0x8258('0x66'):logger[_0x8258('0x9')]('[OUTBOUND]',_0x8258('0x57'));emit(util[_0x8258('0xb')](_0x8258('0x58'),_0x1d0cc3['name']),'trigger:browser:url',{'uri':util[_0x8258('0xb')](_0x8258('0x5a'),_0x460d54[_0x8258('0xd')][_0x8258('0x5b')](_0x8258('0x5c'),''),_0x46eea8['id'])});break;default:logger[_0x8258('0x5f')](_0x8258('0x63'),_0x8258('0x5d'));}}})[_0x8258('0x5e')](function(_0x4b571b){logger['error'](_0x8258('0x67'),util[_0x8258('0x60')](_0x4b571b,{'showHidden':!![],'depth':null}));});};exports[_0x8258('0x68')]=function(_0x3ca6ea,_0x29ecd8,_0x5ee488,_0x418ffa,_0x759d3b,_0x490013){var _0x3d508f,_0x219e93;_0x490013['remoteUri']=intUtil[_0x8258('0x48')](_0x490013['remoteUri']);_0x490013[_0x8258('0x49')]=intUtil[_0x8258('0x48')](_0x490013[_0x8258('0x49')]);if(_0x759d3b&&_0x759d3b['monitor_format']){logger[_0x8258('0x9')]('['+_0x29ecd8[_0x8258('0x69')]['toUpperCase']()+']',_0x8258('0x4c'));_0x29ecd8[_0x8258('0x4d')]=util[_0x8258('0xb')]('%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s',_0x490013[_0x8258('0x49')],_0x29ecd8[_0x8258('0x4f')],md5(_0x29ecd8[_0x8258('0x4f')]));}else{_0x29ecd8[_0x8258('0x4d')]='';}headers[_0x8258('0x64')]=getAuth(_0x490013);return getUser(_0x490013)[_0x8258('0x14')](function(_0x1f7e11){_0x3d508f=_0x1f7e11;logger['info'](_0x8258('0x50'),_0x3d508f['id']);return getEndUser(_0x490013,_0x29ecd8[_0x8258('0x51')],_0x29ecd8['calleridnum']);})['then'](function(_0x1a29eb){_0x219e93=_0x1a29eb;logger[_0x8258('0x9')]('The\x20Enduser\x20ID\x20is:',_0x219e93['id']);return getTicket(_0x490013,_0x3d508f,_0x219e93,_0x5ee488,_0x29ecd8);})[_0x8258('0x14')](function(_0x4dc391){if(_0x4dc391){logger[_0x8258('0x9')](_0x8258('0x54'),_0x4dc391['id']);}})[_0x8258('0x5e')](function(_0x5c6459){logger[_0x8258('0x5f')]('['+_0x29ecd8['lastevent'][_0x8258('0x6a')]()+']'+_0x8258('0x6b'),util[_0x8258('0x60')](_0x5c6459,{'showHidden':!![],'depth':null}));});};
\ No newline at end of file
+var _0x6f4e=['content','picklist','type','idField','custom_fields','push','variable','variableName','customVariable','name','Variable','queue','stripTrailingSlash','serverUrl','monitor_format','Recording\x20is\x20enabled!','recordingURL','uniqueid','Authorization','email','The\x20Enduser\x20ID\x20is:','The\x20Ticket\x20ID\x20is:','integrationTab','[QUEUE]','Displaying\x20ticket\x20to\x20agent...','%s/channels/voice/agents/%d/tickets/%d/display.json','newTab','user:%s','%s/agent/tickets/%s','/api/v2','error','outbound','recordingFormat','none','[OUTBOUND]','destcalleridnum','trigger:browser:url','replace','Zendesk\x20account\x20type\x20not\x20recognized','catch','unmanaged','lastevent','toUpperCase','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','The\x20User\x20ID\x20is:','calleridname','calleridnum','\x20Error\x20running\x20Zendesk\x20integration','inspect','lodash','request-promise','ioredis','./util','../../../../config/logger','redis','defaults','localhost','socket.io-emitter','emit','application/json','info','format','%s/tickets.json','remoteUri','POST','merge','getString','Subjects','Descriptions','Fields','then','ticket','validateEmail','Getting\x20agent\x20with\x20email','%s/search.json','type:user\x20role:agent\x20email:%s','count','Agent\x20found!','agent','%s/users/me.json','Admin\x20account\x20selected.','user','Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!','Searching\x20enduser\x20with\x20phone','length','results','end-user','first','Caller\x20-\x20%s','Enduser\x20created.','authType','password','%s:%s','username','token','Basic\x20%s','toString','debug','[HTTP]','stringify','GET','map','includes','string','nameField','customField','toLowerCase'];(function(_0x2978e1,_0x26b3f5){var _0xca0ea8=function(_0x289c2e){while(--_0x289c2e){_0x2978e1['push'](_0x2978e1['shift']());}};_0xca0ea8(++_0x26b3f5);}(_0x6f4e,0x1dd));var _0xe6f4=function(_0x2efe86,_0x30867f){_0x2efe86=_0x2efe86-0x0;var _0xcc7579=_0x6f4e[_0x2efe86];return _0xcc7579;};'use strict';var _=require(_0xe6f4('0x0'));var rp=require(_0xe6f4('0x1'));var md5=require('md5');var util=require('util');var Redis=require(_0xe6f4('0x2'));var intUtil=require(_0xe6f4('0x3'));var config=require('../../../../config/environment');var logger=require(_0xe6f4('0x4'))('zendesk');config[_0xe6f4('0x5')]=_[_0xe6f4('0x6')](config[_0xe6f4('0x5')],{'host':_0xe6f4('0x7'),'port':0x18eb});var io=require(_0xe6f4('0x8'))(new Redis(config['redis']));function emit(_0x406364,_0x18d39b,_0x289f05){io['to'](_0x406364)[_0xe6f4('0x9')](_0x18d39b,_0x289f05);}var headers={'Content-Type':_0xe6f4('0xa'),'Accept':_0xe6f4('0xa')};function getTicket(_0x1f0f1a,_0x5b3f26,_0x3efeb3,_0x5dcb0c,_0x461097){logger[_0xe6f4('0xb')]('Creating\x20new\x20ticket...');return request({'uri':util[_0xe6f4('0xc')](_0xe6f4('0xd'),_0x1f0f1a[_0xe6f4('0xe')]),'method':_0xe6f4('0xf'),'body':{'ticket':_[_0xe6f4('0x10')]({'requester_id':_0x3efeb3['id'],'submitter_id':_0x5b3f26?_0x5b3f26['id']:undefined,'assignee_id':_0x5b3f26?_0x5b3f26['id']:undefined,'tags':getTags(_0x5dcb0c['Tags'],'name'),'subject':intUtil[_0xe6f4('0x11')](_0x5dcb0c[_0xe6f4('0x12')],_0x461097,'\x20'),'description':intUtil['getString'](_0x5dcb0c[_0xe6f4('0x13')],_0x461097,'\x0a'),'comment':{'public':![],'body':intUtil[_0xe6f4('0x11')](_0x5dcb0c[_0xe6f4('0x13')],_0x461097,'\x0a')}},getCustomFields(_0x5dcb0c[_0xe6f4('0x14')],_0x461097))}})[_0xe6f4('0x15')](function(_0x2461f3){logger[_0xe6f4('0xb')]('Ticket\x20created!');return _0x2461f3[_0xe6f4('0x16')];});}function getUser(_0x1bfdc6,_0x26083e){if(intUtil[_0xe6f4('0x17')](_0x26083e)){logger[_0xe6f4('0xb')](_0xe6f4('0x18'),_0x26083e);return request({'uri':util[_0xe6f4('0xc')](_0xe6f4('0x19'),_0x1bfdc6[_0xe6f4('0xe')]),'qs':{'query':util[_0xe6f4('0xc')](_0xe6f4('0x1a'),_0x26083e)}})[_0xe6f4('0x15')](function(_0x3ed287){if(_0x3ed287[_0xe6f4('0x1b')]){logger[_0xe6f4('0xb')](_0xe6f4('0x1c'));return _['find'](_0x3ed287['results'],{'email':_0x26083e,'role':_0xe6f4('0x1d')});}else{logger[_0xe6f4('0xb')]('Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!');return request({'uri':util[_0xe6f4('0xc')](_0xe6f4('0x1e'),_0x1bfdc6['remoteUri'])})[_0xe6f4('0x15')](function(_0x5e03ae){logger[_0xe6f4('0xb')](_0xe6f4('0x1f'));return _0x5e03ae[_0xe6f4('0x20')];});}});}else{logger[_0xe6f4('0xb')](_0xe6f4('0x21'));return request({'uri':util[_0xe6f4('0xc')](_0xe6f4('0x1e'),_0x1bfdc6[_0xe6f4('0xe')])})[_0xe6f4('0x15')](function(_0x53353e){logger[_0xe6f4('0xb')](_0xe6f4('0x1f'));return _0x53353e[_0xe6f4('0x20')];});}}function getEndUser(_0x254655,_0x6d9101,_0x48c095){logger[_0xe6f4('0xb')](_0xe6f4('0x22'),_0x48c095);return request({'uri':util[_0xe6f4('0xc')](_0xe6f4('0x19'),_0x254655[_0xe6f4('0xe')]),'qs':{'query':util[_0xe6f4('0xc')]('type:user\x20role:end-user\x20phone:%s',_0x48c095)}})['then'](function(_0x2a118c){var _0x46e00b;if(_0x2a118c['results'][_0xe6f4('0x23')]){_0x2a118c[_0xe6f4('0x24')]=_['filter'](_0x2a118c['results'],{'suspended':![],'role':_0xe6f4('0x25')});if(_0x2a118c[_0xe6f4('0x24')][_0xe6f4('0x23')]){_0x46e00b=_[_0xe6f4('0x26')](_0x2a118c[_0xe6f4('0x24')]);}}if(_0x46e00b){logger[_0xe6f4('0xb')]('Enduser\x20found!');return _0x46e00b;}else{logger['info']('Enduser\x20not\x20found,\x20creating\x20a\x20new\x20enduser!');return request({'uri':util['format']('%s/users.json',_0x254655[_0xe6f4('0xe')]),'method':_0xe6f4('0xf'),'body':{'user':{'role':_0xe6f4('0x25'),'name':util[_0xe6f4('0xc')](_0xe6f4('0x27'),_0x6d9101||_0x48c095),'phone':_0x48c095}}})[_0xe6f4('0x15')](function(_0x50ae93){logger['info'](_0xe6f4('0x28'));return _0x50ae93[_0xe6f4('0x20')];});}});}function getAuth(_0x167db0){var _0x51a3eb;if(_0x167db0[_0xe6f4('0x29')]===_0xe6f4('0x2a')){_0x51a3eb=util['format'](_0xe6f4('0x2b'),_0x167db0[_0xe6f4('0x2c')],_0x167db0[_0xe6f4('0x2a')]);}else if(_0x167db0[_0xe6f4('0x29')]===_0xe6f4('0x2d')){_0x51a3eb=util[_0xe6f4('0xc')]('%s/token:%s',_0x167db0[_0xe6f4('0x2c')],_0x167db0[_0xe6f4('0x2d')]);}return util['format'](_0xe6f4('0x2e'),new Buffer(_0x51a3eb)[_0xe6f4('0x2f')]('base64'));}function request(_0x1bffc2){logger[_0xe6f4('0x30')](_0xe6f4('0x31'),JSON[_0xe6f4('0x32')](_0x1bffc2));return rp(_[_0xe6f4('0x6')](_0x1bffc2,{'method':_0xe6f4('0x33'),'headers':headers,'json':!![]}));}function getTags(_0x46bd73,_0x44c761){var _0x1c1d79=[];if(_0x46bd73&&_0x46bd73[_0xe6f4('0x23')]>0x0){_0x1c1d79=_[_0xe6f4('0x34')](_0x46bd73,_0x44c761);}return _0x1c1d79;}function getCustomFields(_0x1910c6,_0xa6b5e9){var _0x4e517a=[];var _0x1433cd={'custom_fields':[]};if(_0x1910c6['length']>0x0){_['forEach'](_0x1910c6,function(_0x3466e5){if(_[_0xe6f4('0x35')]([_0xe6f4('0x36'),'picklist'],_0x3466e5['type'])&&_0x3466e5[_0xe6f4('0x37')]&&!_0x3466e5[_0xe6f4('0x38')]){_0x1433cd[_0x3466e5[_0xe6f4('0x37')][_0xe6f4('0x39')]()]=_0x3466e5[_0xe6f4('0x3a')][_0xe6f4('0x2f')]();}else if(_[_0xe6f4('0x35')]([_0xe6f4('0x36'),_0xe6f4('0x3b')],_0x3466e5[_0xe6f4('0x3c')])&&_0x3466e5[_0xe6f4('0x3d')]&&_0x3466e5['customField']){_0x1433cd[_0xe6f4('0x3e')][_0xe6f4('0x3f')]({'id':_0x3466e5[_0xe6f4('0x3d')],'value':_0x3466e5[_0xe6f4('0x3a')][_0xe6f4('0x2f')]()});}else if(_0x3466e5['type']===_0xe6f4('0x40')&&_0x3466e5['variableName']&&_0x3466e5[_0xe6f4('0x3d')]&&_0x3466e5[_0xe6f4('0x38')]){_0xa6b5e9[_0x3466e5[_0xe6f4('0x41')]]&&_0x1433cd[_0xe6f4('0x3e')]['push']({'id':_0x3466e5[_0xe6f4('0x3d')],'value':_0xa6b5e9[_0x3466e5[_0xe6f4('0x41')]][_0xe6f4('0x2f')]()});}else if(_0x3466e5[_0xe6f4('0x3c')]===_0xe6f4('0x42')&&_0x3466e5['Variable']&&_0x3466e5['Variable'][_0xe6f4('0x43')]&&_0x3466e5[_0xe6f4('0x3d')]&&_0x3466e5[_0xe6f4('0x38')]){_0xa6b5e9[_0x3466e5[_0xe6f4('0x44')][_0xe6f4('0x43')][_0xe6f4('0x39')]()]&&_0x1433cd['custom_fields'][_0xe6f4('0x3f')]({'id':_0x3466e5[_0xe6f4('0x3d')],'value':_0xa6b5e9[_0x3466e5[_0xe6f4('0x44')]['name'][_0xe6f4('0x39')]()][_0xe6f4('0x2f')]()});}});}return _0x1433cd;}exports[_0xe6f4('0x45')]=function(_0x3518a2,_0x3bf77d,_0x1e5d05,_0x438258,_0x7f5ad9,_0x5bf973){var _0x58da72,_0x488412;_0x5bf973[_0xe6f4('0xe')]=intUtil[_0xe6f4('0x46')](_0x5bf973[_0xe6f4('0xe')]);_0x5bf973[_0xe6f4('0x47')]=intUtil['stripTrailingSlash'](_0x5bf973[_0xe6f4('0x47')]);if(_0x7f5ad9&&_0x7f5ad9[_0xe6f4('0x48')]){logger[_0xe6f4('0xb')]('[QUEUE]',_0xe6f4('0x49'));_0x3bf77d[_0xe6f4('0x4a')]=util[_0xe6f4('0xc')]('%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s',_0x5bf973[_0xe6f4('0x47')],_0x3bf77d[_0xe6f4('0x4b')],md5(_0x3bf77d[_0xe6f4('0x4b')]));}else{_0x3bf77d[_0xe6f4('0x4a')]='';}headers[_0xe6f4('0x4c')]=getAuth(_0x5bf973);return getUser(_0x5bf973,_0x438258[_0xe6f4('0x4d')])['then'](function(_0x35855a){_0x58da72=_0x35855a;logger[_0xe6f4('0xb')]('The\x20User\x20ID\x20is:',_0x58da72['id']);return getEndUser(_0x5bf973,_0x3bf77d['calleridname'],_0x3bf77d['calleridnum']);})[_0xe6f4('0x15')](function(_0x4a973e){_0x488412=_0x4a973e;logger[_0xe6f4('0xb')](_0xe6f4('0x4e'),_0x488412['id']);return getTicket(_0x5bf973,_0x58da72,_0x488412,_0x1e5d05,_0x3bf77d);})[_0xe6f4('0x15')](function(_0x2a5f92){if(_0x2a5f92){logger[_0xe6f4('0xb')](_0xe6f4('0x4f'),_0x2a5f92['id']);switch(_0x5bf973[_0xe6f4('0x3c')]){case _0xe6f4('0x50'):logger[_0xe6f4('0xb')](_0xe6f4('0x51'),_0xe6f4('0x52'));return request({'uri':util['format'](_0xe6f4('0x53'),_0x5bf973[_0xe6f4('0xe')],_0x58da72['id'],_0x2a5f92['id']),'method':_0xe6f4('0xf')});case _0xe6f4('0x54'):logger[_0xe6f4('0xb')](_0xe6f4('0x51'),'Displaying\x20ticket\x20to\x20agent\x20in\x20a\x20new\x20tab...');emit(util[_0xe6f4('0xc')](_0xe6f4('0x55'),_0x438258['name']),'trigger:browser:url',{'uri':util['format'](_0xe6f4('0x56'),_0x5bf973[_0xe6f4('0xe')]['replace'](_0xe6f4('0x57'),''),_0x2a5f92['id'])});break;default:logger[_0xe6f4('0x58')]('[QUEUE]','Zendesk\x20account\x20type\x20not\x20recognized');}}})['catch'](function(_0x56b9d5){logger['error']('[QUEUE]\x20Error\x20running\x20Zendesk\x20integration',util['inspect'](_0x56b9d5,{'showHidden':!![],'depth':null}));});};exports[_0xe6f4('0x59')]=function(_0xb3079f,_0x29b8b2,_0x4a5b84,_0x35ca91,_0xdcd423,_0x47f0c6,_0x243f56){var _0x2e2127,_0x2db212;_0x47f0c6[_0xe6f4('0xe')]=intUtil[_0xe6f4('0x46')](_0x47f0c6[_0xe6f4('0xe')]);_0x47f0c6[_0xe6f4('0x47')]=intUtil['stripTrailingSlash'](_0x47f0c6[_0xe6f4('0x47')]);if(_0x243f56&&_0x243f56[_0xe6f4('0x5a')]&&_0x243f56['recordingFormat']!==_0xe6f4('0x5b')){logger[_0xe6f4('0xb')](_0xe6f4('0x5c'),_0xe6f4('0x49'));_0x29b8b2[_0xe6f4('0x4a')]=util[_0xe6f4('0xc')]('%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s',_0x47f0c6[_0xe6f4('0x47')],_0x29b8b2['uniqueid'],md5(_0x29b8b2[_0xe6f4('0x4b')]));}headers['Authorization']=getAuth(_0x47f0c6);return getUser(_0x47f0c6,_0x35ca91[_0xe6f4('0x4d')])['then'](function(_0x4d4f49){_0x2e2127=_0x4d4f49;logger[_0xe6f4('0xb')]('The\x20User\x20ID\x20is:',_0x2e2127['id']);return getEndUser(_0x47f0c6,_0x29b8b2['destcalleridname'],_0x29b8b2[_0xe6f4('0x5d')]);})[_0xe6f4('0x15')](function(_0x4cd312){_0x2db212=_0x4cd312;logger[_0xe6f4('0xb')](_0xe6f4('0x4e'),_0x2db212['id']);return getTicket(_0x47f0c6,_0x2e2127,_0x2db212,_0x4a5b84,_0x29b8b2);})[_0xe6f4('0x15')](function(_0x47ecdf){if(_0x47ecdf){logger['info'](_0xe6f4('0x4f'),_0x47ecdf['id']);switch(_0x47f0c6['type']){case _0xe6f4('0x50'):logger[_0xe6f4('0xb')](_0xe6f4('0x5c'),_0xe6f4('0x52'));return request({'uri':util[_0xe6f4('0xc')](_0xe6f4('0x53'),_0x47f0c6[_0xe6f4('0xe')],_0x2e2127['id'],_0x47ecdf['id']),'method':_0xe6f4('0xf')});case _0xe6f4('0x54'):logger[_0xe6f4('0xb')](_0xe6f4('0x5c'),'Displaying\x20ticket\x20to\x20agent\x20in\x20a\x20new\x20tab...');emit(util[_0xe6f4('0xc')]('user:%s',_0x35ca91[_0xe6f4('0x43')]),_0xe6f4('0x5e'),{'uri':util[_0xe6f4('0xc')](_0xe6f4('0x56'),_0x47f0c6[_0xe6f4('0xe')][_0xe6f4('0x5f')](_0xe6f4('0x57'),''),_0x47ecdf['id'])});break;default:logger['error'](_0xe6f4('0x5c'),_0xe6f4('0x60'));}}})[_0xe6f4('0x61')](function(_0x1c1d8a){logger[_0xe6f4('0x58')]('[OUTBOUND]\x20Error\x20running\x20Zendesk\x20integration',util['inspect'](_0x1c1d8a,{'showHidden':!![],'depth':null}));});};exports[_0xe6f4('0x62')]=function(_0x10b4dc,_0x38ed77,_0x51e311,_0x192dc1,_0x4fb899,_0x28faf5){var _0xcfc185,_0x3b0d84;_0x28faf5[_0xe6f4('0xe')]=intUtil[_0xe6f4('0x46')](_0x28faf5[_0xe6f4('0xe')]);_0x28faf5[_0xe6f4('0x47')]=intUtil[_0xe6f4('0x46')](_0x28faf5[_0xe6f4('0x47')]);if(_0x4fb899&&_0x4fb899['monitor_format']){logger['info']('['+_0x38ed77[_0xe6f4('0x63')][_0xe6f4('0x64')]()+']',_0xe6f4('0x49'));_0x38ed77[_0xe6f4('0x4a')]=util[_0xe6f4('0xc')](_0xe6f4('0x65'),_0x28faf5['serverUrl'],_0x38ed77[_0xe6f4('0x4b')],md5(_0x38ed77[_0xe6f4('0x4b')]));}else{_0x38ed77['recordingURL']='';}headers['Authorization']=getAuth(_0x28faf5);return getUser(_0x28faf5)[_0xe6f4('0x15')](function(_0x351638){_0xcfc185=_0x351638;logger['info'](_0xe6f4('0x66'),_0xcfc185['id']);return getEndUser(_0x28faf5,_0x38ed77[_0xe6f4('0x67')],_0x38ed77[_0xe6f4('0x68')]);})[_0xe6f4('0x15')](function(_0x1362a3){_0x3b0d84=_0x1362a3;logger[_0xe6f4('0xb')](_0xe6f4('0x4e'),_0x3b0d84['id']);return getTicket(_0x28faf5,_0xcfc185,_0x3b0d84,_0x51e311,_0x38ed77);})['then'](function(_0x3b0fe3){if(_0x3b0fe3){logger[_0xe6f4('0xb')](_0xe6f4('0x4f'),_0x3b0fe3['id']);}})['catch'](function(_0xfbf186){logger[_0xe6f4('0x58')]('['+_0x38ed77[_0xe6f4('0x63')][_0xe6f4('0x64')]()+']'+_0xe6f4('0x69'),util[_0xe6f4('0x6a')](_0xfbf186,{'showHidden':!![],'depth':null}));});};
\ No newline at end of file