Built motion from commit 56a37f2a.|2.6.21
[motion2.git] / server / services / ami / trigger / integration / zendesk.js
index 1373b1d..7b8e764 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x74c5=['Variable','name','custom_fields','queue','stripTrailingSlash','serverUrl','monitor_format','Recording\x20is\x20enabled!','recordingURL','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','Authorization','email','The\x20User\x20ID\x20is:','calleridnum','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','trigger:browser:url','%s/agent/tickets/%s','replace','/api/v2','Zendesk\x20account\x20type\x20not\x20recognized','inspect','outbound','recordingFormat','none','[OUTBOUND]','uniqueid','destcalleridname','Displaying\x20ticket\x20to\x20agent\x20in\x20a\x20new\x20tab...','error','catch','toUpperCase','calleridname','\x20Error\x20running\x20Zendesk\x20integration','lodash','request-promise','md5','util','ioredis','./util','../../../../config/environment','../../../../config/logger','zendesk','redis','defaults','socket.io-emitter','emit','application/json','info','Creating\x20new\x20ticket...','%s/tickets.json','POST','Tags','Subjects','getString','Descriptions','then','ticket','validateEmail','Getting\x20agent\x20with\x20email','format','%s/search.json','type:user\x20role:agent\x20email:%s','count','Agent\x20found!','find','results','agent','remoteUri','Admin\x20account\x20selected.','Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!','%s/users/me.json','user','Searching\x20enduser\x20with\x20phone','type:user\x20role:end-user\x20phone:%s','end-user','first','Enduser\x20found!','Enduser\x20not\x20found,\x20creating\x20a\x20new\x20enduser!','%s/users.json','Caller\x20-\x20%s','Enduser\x20created.','authType','password','%s:%s','token','%s/token:%s','base64','[HTTP]','length','includes','string','type','nameField','customField','toLowerCase','content','toString','picklist','push','variable','variableName','idField','customVariable'];(function(_0x3feae8,_0x2d60b3){var _0x59693b=function(_0x39c2aa){while(--_0x39c2aa){_0x3feae8['push'](_0x3feae8['shift']());}};_0x59693b(++_0x2d60b3);}(_0x74c5,0x104));var _0x574c=function(_0xbc1a4b,_0x4dfbe4){_0xbc1a4b=_0xbc1a4b-0x0;var _0x108b87=_0x74c5[_0xbc1a4b];return _0x108b87;};'use strict';var _=require(_0x574c('0x0'));var rp=require(_0x574c('0x1'));var md5=require(_0x574c('0x2'));var util=require(_0x574c('0x3'));var Redis=require(_0x574c('0x4'));var intUtil=require(_0x574c('0x5'));var config=require(_0x574c('0x6'));var logger=require(_0x574c('0x7'))(_0x574c('0x8'));config[_0x574c('0x9')]=_[_0x574c('0xa')](config[_0x574c('0x9')],{'host':'localhost','port':0x18eb});var io=require(_0x574c('0xb'))(new Redis(config['redis']));function emit(_0x5cdf8b,_0x407c39,_0x150ea9){io['to'](_0x5cdf8b)[_0x574c('0xc')](_0x407c39,_0x150ea9);}var headers={'Content-Type':_0x574c('0xd'),'Accept':_0x574c('0xd')};function getTicket(_0x434392,_0x36b9c5,_0x306480,_0xb27d21,_0x27e9fb){logger[_0x574c('0xe')](_0x574c('0xf'));return request({'uri':util['format'](_0x574c('0x10'),_0x434392['remoteUri']),'method':_0x574c('0x11'),'body':{'ticket':_['merge']({'requester_id':_0x306480['id'],'submitter_id':_0x36b9c5?_0x36b9c5['id']:undefined,'assignee_id':_0x36b9c5?_0x36b9c5['id']:undefined,'tags':getTags(_0xb27d21[_0x574c('0x12')],'name'),'subject':intUtil['getString'](_0xb27d21[_0x574c('0x13')],_0x27e9fb,'\x20'),'description':intUtil[_0x574c('0x14')](_0xb27d21[_0x574c('0x15')],_0x27e9fb,'\x0a'),'comment':{'public':![],'body':intUtil[_0x574c('0x14')](_0xb27d21[_0x574c('0x15')],_0x27e9fb,'\x0a')}},getCustomFields(_0xb27d21['Fields'],_0x27e9fb))}})[_0x574c('0x16')](function(_0x6de002){logger[_0x574c('0xe')]('Ticket\x20created!');return _0x6de002[_0x574c('0x17')];});}function getUser(_0x4781dc,_0x2ca08f){if(intUtil[_0x574c('0x18')](_0x2ca08f)){logger[_0x574c('0xe')](_0x574c('0x19'),_0x2ca08f);return request({'uri':util[_0x574c('0x1a')](_0x574c('0x1b'),_0x4781dc['remoteUri']),'qs':{'query':util[_0x574c('0x1a')](_0x574c('0x1c'),_0x2ca08f)}})[_0x574c('0x16')](function(_0x49b5ad){if(_0x49b5ad[_0x574c('0x1d')]){logger['info'](_0x574c('0x1e'));return _[_0x574c('0x1f')](_0x49b5ad[_0x574c('0x20')],{'email':_0x2ca08f,'role':_0x574c('0x21')});}else{logger['info']('Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!');return request({'uri':util[_0x574c('0x1a')]('%s/users/me.json',_0x4781dc[_0x574c('0x22')])})[_0x574c('0x16')](function(_0x53ea19){logger[_0x574c('0xe')](_0x574c('0x23'));return _0x53ea19['user'];});}});}else{logger[_0x574c('0xe')](_0x574c('0x24'));return request({'uri':util[_0x574c('0x1a')](_0x574c('0x25'),_0x4781dc[_0x574c('0x22')])})[_0x574c('0x16')](function(_0x29ffdd){logger[_0x574c('0xe')](_0x574c('0x23'));return _0x29ffdd[_0x574c('0x26')];});}}function getEndUser(_0x4d9e2a,_0x4ec527,_0x3fd737){logger['info'](_0x574c('0x27'),_0x3fd737);return request({'uri':util[_0x574c('0x1a')](_0x574c('0x1b'),_0x4d9e2a[_0x574c('0x22')]),'qs':{'query':util['format'](_0x574c('0x28'),_0x3fd737)}})[_0x574c('0x16')](function(_0x678d07){var _0x43c53b;if(_0x678d07['results']['length']){_0x678d07[_0x574c('0x20')]=_['filter'](_0x678d07[_0x574c('0x20')],{'suspended':![],'role':_0x574c('0x29')});if(_0x678d07[_0x574c('0x20')]['length']){_0x43c53b=_[_0x574c('0x2a')](_0x678d07[_0x574c('0x20')]);}}if(_0x43c53b){logger[_0x574c('0xe')](_0x574c('0x2b'));return _0x43c53b;}else{logger[_0x574c('0xe')](_0x574c('0x2c'));return request({'uri':util[_0x574c('0x1a')](_0x574c('0x2d'),_0x4d9e2a[_0x574c('0x22')]),'method':_0x574c('0x11'),'body':{'user':{'role':_0x574c('0x29'),'name':util[_0x574c('0x1a')](_0x574c('0x2e'),_0x4ec527||_0x3fd737),'phone':_0x3fd737}}})['then'](function(_0x19efb2){logger[_0x574c('0xe')](_0x574c('0x2f'));return _0x19efb2['user'];});}});}function getAuth(_0x13bb99){var _0xf2f31e;if(_0x13bb99[_0x574c('0x30')]===_0x574c('0x31')){_0xf2f31e=util[_0x574c('0x1a')](_0x574c('0x32'),_0x13bb99['username'],_0x13bb99[_0x574c('0x31')]);}else if(_0x13bb99[_0x574c('0x30')]===_0x574c('0x33')){_0xf2f31e=util[_0x574c('0x1a')](_0x574c('0x34'),_0x13bb99['username'],_0x13bb99[_0x574c('0x33')]);}return util[_0x574c('0x1a')]('Basic\x20%s',new Buffer(_0xf2f31e)['toString'](_0x574c('0x35')));}function request(_0x1c9b4c){logger['debug'](_0x574c('0x36'),JSON['stringify'](_0x1c9b4c));return rp(_[_0x574c('0xa')](_0x1c9b4c,{'method':'GET','headers':headers,'json':!![]}));}function getTags(_0x1dc4e0,_0x32c9f1){var _0x3c6db7=[];if(_0x1dc4e0&&_0x1dc4e0[_0x574c('0x37')]>0x0){_0x3c6db7=_['map'](_0x1dc4e0,_0x32c9f1);}return _0x3c6db7;}function getCustomFields(_0x191717,_0x2f07a7){var _0x50877b=[];var _0x58916c={'custom_fields':[]};if(_0x191717[_0x574c('0x37')]>0x0){_['forEach'](_0x191717,function(_0x441f18){if(_[_0x574c('0x38')]([_0x574c('0x39'),'picklist'],_0x441f18[_0x574c('0x3a')])&&_0x441f18[_0x574c('0x3b')]&&!_0x441f18[_0x574c('0x3c')]){_0x58916c[_0x441f18[_0x574c('0x3b')][_0x574c('0x3d')]()]=_0x441f18[_0x574c('0x3e')][_0x574c('0x3f')]();}else if(_[_0x574c('0x38')]([_0x574c('0x39'),_0x574c('0x40')],_0x441f18[_0x574c('0x3a')])&&_0x441f18['idField']&&_0x441f18[_0x574c('0x3c')]){_0x58916c['custom_fields'][_0x574c('0x41')]({'id':_0x441f18['idField'],'value':_0x441f18[_0x574c('0x3e')][_0x574c('0x3f')]()});}else if(_0x441f18[_0x574c('0x3a')]===_0x574c('0x42')&&_0x441f18[_0x574c('0x43')]&&_0x441f18[_0x574c('0x44')]&&_0x441f18[_0x574c('0x3c')]){_0x2f07a7[_0x441f18[_0x574c('0x43')]]&&_0x58916c['custom_fields']['push']({'id':_0x441f18[_0x574c('0x44')],'value':_0x2f07a7[_0x441f18[_0x574c('0x43')]]['toString']()});}else if(_0x441f18['type']===_0x574c('0x45')&&_0x441f18[_0x574c('0x46')]&&_0x441f18[_0x574c('0x46')][_0x574c('0x47')]&&_0x441f18[_0x574c('0x44')]&&_0x441f18[_0x574c('0x3c')]){_0x2f07a7[_0x441f18[_0x574c('0x46')][_0x574c('0x47')]['toLowerCase']()]&&_0x58916c[_0x574c('0x48')][_0x574c('0x41')]({'id':_0x441f18[_0x574c('0x44')],'value':_0x2f07a7[_0x441f18['Variable'][_0x574c('0x47')][_0x574c('0x3d')]()][_0x574c('0x3f')]()});}});}return _0x58916c;}exports[_0x574c('0x49')]=function(_0x390a4e,_0x464614,_0x3b486f,_0x6a8634,_0x3510cf,_0x2362b1){var _0x19f5b8,_0x425ff7;_0x2362b1[_0x574c('0x22')]=intUtil[_0x574c('0x4a')](_0x2362b1[_0x574c('0x22')]);_0x2362b1['serverUrl']=intUtil[_0x574c('0x4a')](_0x2362b1[_0x574c('0x4b')]);if(_0x3510cf&&_0x3510cf[_0x574c('0x4c')]){logger['info']('[QUEUE]',_0x574c('0x4d'));_0x464614[_0x574c('0x4e')]=util[_0x574c('0x1a')](_0x574c('0x4f'),_0x2362b1[_0x574c('0x4b')],_0x464614['uniqueid'],md5(_0x464614['uniqueid']));}else{_0x464614[_0x574c('0x4e')]='';}headers[_0x574c('0x50')]=getAuth(_0x2362b1);return getUser(_0x2362b1,_0x6a8634[_0x574c('0x51')])[_0x574c('0x16')](function(_0x4dcc8e){_0x19f5b8=_0x4dcc8e;logger['info'](_0x574c('0x52'),_0x19f5b8['id']);return getEndUser(_0x2362b1,_0x464614['calleridname'],_0x464614[_0x574c('0x53')]);})[_0x574c('0x16')](function(_0x34d1da){_0x425ff7=_0x34d1da;logger[_0x574c('0xe')](_0x574c('0x54'),_0x425ff7['id']);return getTicket(_0x2362b1,_0x19f5b8,_0x425ff7,_0x3b486f,_0x464614);})[_0x574c('0x16')](function(_0x38e53a){if(_0x38e53a){logger[_0x574c('0xe')](_0x574c('0x55'),_0x38e53a['id']);switch(_0x2362b1['type']){case _0x574c('0x56'):logger['info'](_0x574c('0x57'),_0x574c('0x58'));return request({'uri':util[_0x574c('0x1a')](_0x574c('0x59'),_0x2362b1[_0x574c('0x22')],_0x19f5b8['id'],_0x38e53a['id']),'method':_0x574c('0x11')});case _0x574c('0x5a'):logger[_0x574c('0xe')](_0x574c('0x57'),'Displaying\x20ticket\x20to\x20agent\x20in\x20a\x20new\x20tab...');emit(util[_0x574c('0x1a')](_0x574c('0x5b'),_0x6a8634[_0x574c('0x47')]),_0x574c('0x5c'),{'uri':util['format'](_0x574c('0x5d'),_0x2362b1[_0x574c('0x22')][_0x574c('0x5e')](_0x574c('0x5f'),''),_0x38e53a['id'])});break;default:logger['error'](_0x574c('0x57'),_0x574c('0x60'));}}})['catch'](function(_0x1a927b){logger['error']('[QUEUE]\x20Error\x20running\x20Zendesk\x20integration',util[_0x574c('0x61')](_0x1a927b,{'showHidden':!![],'depth':null}));});};exports[_0x574c('0x62')]=function(_0x39119d,_0x350770,_0x1721a9,_0xbff52d,_0x46b52a,_0x48ea61,_0x4720d0){var _0x501034,_0x1c466f;_0x48ea61['remoteUri']=intUtil[_0x574c('0x4a')](_0x48ea61[_0x574c('0x22')]);_0x48ea61[_0x574c('0x4b')]=intUtil[_0x574c('0x4a')](_0x48ea61[_0x574c('0x4b')]);if(_0x4720d0&&_0x4720d0[_0x574c('0x63')]&&_0x4720d0[_0x574c('0x63')]!==_0x574c('0x64')){logger[_0x574c('0xe')](_0x574c('0x65'),_0x574c('0x4d'));_0x350770[_0x574c('0x4e')]=util[_0x574c('0x1a')](_0x574c('0x4f'),_0x48ea61[_0x574c('0x4b')],_0x350770[_0x574c('0x66')],md5(_0x350770['uniqueid']));}headers['Authorization']=getAuth(_0x48ea61);return getUser(_0x48ea61,_0xbff52d['email'])['then'](function(_0x89dbf8){_0x501034=_0x89dbf8;logger[_0x574c('0xe')](_0x574c('0x52'),_0x501034['id']);return getEndUser(_0x48ea61,_0x350770[_0x574c('0x67')],_0x350770['destcalleridnum']);})[_0x574c('0x16')](function(_0xb45330){_0x1c466f=_0xb45330;logger[_0x574c('0xe')](_0x574c('0x54'),_0x1c466f['id']);return getTicket(_0x48ea61,_0x501034,_0x1c466f,_0x1721a9,_0x350770);})['then'](function(_0x1ca779){if(_0x1ca779){logger[_0x574c('0xe')](_0x574c('0x55'),_0x1ca779['id']);switch(_0x48ea61[_0x574c('0x3a')]){case'integrationTab':logger[_0x574c('0xe')](_0x574c('0x65'),_0x574c('0x58'));return request({'uri':util[_0x574c('0x1a')]('%s/channels/voice/agents/%d/tickets/%d/display.json',_0x48ea61[_0x574c('0x22')],_0x501034['id'],_0x1ca779['id']),'method':'POST'});case _0x574c('0x5a'):logger[_0x574c('0xe')](_0x574c('0x65'),_0x574c('0x68'));emit(util[_0x574c('0x1a')](_0x574c('0x5b'),_0xbff52d[_0x574c('0x47')]),_0x574c('0x5c'),{'uri':util[_0x574c('0x1a')](_0x574c('0x5d'),_0x48ea61[_0x574c('0x22')][_0x574c('0x5e')](_0x574c('0x5f'),''),_0x1ca779['id'])});break;default:logger[_0x574c('0x69')]('[OUTBOUND]',_0x574c('0x60'));}}})[_0x574c('0x6a')](function(_0x165476){logger[_0x574c('0x69')]('[OUTBOUND]\x20Error\x20running\x20Zendesk\x20integration',util[_0x574c('0x61')](_0x165476,{'showHidden':!![],'depth':null}));});};exports['unmanaged']=function(_0x46cf4c,_0x4b4b9a,_0x4b1f94,_0x202312,_0x24ddcf,_0x433048){var _0x4ae3e5,_0x476043;_0x433048['remoteUri']=intUtil[_0x574c('0x4a')](_0x433048[_0x574c('0x22')]);_0x433048[_0x574c('0x4b')]=intUtil[_0x574c('0x4a')](_0x433048[_0x574c('0x4b')]);if(_0x24ddcf&&_0x24ddcf[_0x574c('0x4c')]){logger[_0x574c('0xe')]('['+_0x4b4b9a['lastevent'][_0x574c('0x6b')]()+']',_0x574c('0x4d'));_0x4b4b9a[_0x574c('0x4e')]=util[_0x574c('0x1a')](_0x574c('0x4f'),_0x433048[_0x574c('0x4b')],_0x4b4b9a['uniqueid'],md5(_0x4b4b9a[_0x574c('0x66')]));}else{_0x4b4b9a['recordingURL']='';}headers['Authorization']=getAuth(_0x433048);return getUser(_0x433048)[_0x574c('0x16')](function(_0x3e995c){_0x4ae3e5=_0x3e995c;logger[_0x574c('0xe')](_0x574c('0x52'),_0x4ae3e5['id']);return getEndUser(_0x433048,_0x4b4b9a[_0x574c('0x6c')],_0x4b4b9a[_0x574c('0x53')]);})[_0x574c('0x16')](function(_0x45a1b0){_0x476043=_0x45a1b0;logger[_0x574c('0xe')](_0x574c('0x54'),_0x476043['id']);return getTicket(_0x433048,_0x4ae3e5,_0x476043,_0x4b1f94,_0x4b4b9a);})[_0x574c('0x16')](function(_0x11cb23){if(_0x11cb23){logger[_0x574c('0xe')]('The\x20Ticket\x20ID\x20is:',_0x11cb23['id']);}})[_0x574c('0x6a')](function(_0x512ad0){logger[_0x574c('0x69')]('['+_0x4b4b9a['lastevent'][_0x574c('0x6b')]()+']'+_0x574c('0x6d'),util[_0x574c('0x61')](_0x512ad0,{'showHidden':!![],'depth':null}));});};
\ No newline at end of file
+var _0xd07d=['localhost','socket.io-emitter','emit','application/json','info','format','remoteUri','merge','Tags','name','getString','Descriptions','Fields','ticket','%s/search.json','type:user\x20role:agent\x20email:%s','then','count','Agent\x20found!','find','agent','Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!','%s/users/me.json','Admin\x20account\x20selected.','user','Searching\x20enduser\x20with\x20phone','type:user\x20role:end-user\x20phone:%s','length','results','end-user','first','Enduser\x20found!','%s/users.json','POST','Caller\x20-\x20%s','authType','%s:%s','password','token','%s/token:%s','username','Basic\x20%s','toString','base64','debug','[HTTP]','stringify','map','includes','string','picklist','type','customField','toLowerCase','idField','push','content','variable','custom_fields','variableName','customVariable','Variable','stripTrailingSlash','serverUrl','monitor_format','[QUEUE]','Recording\x20is\x20enabled!','recordingURL','uniqueid','Authorization','The\x20User\x20ID\x20is:','calleridname','calleridnum','The\x20Ticket\x20ID\x20is:','integrationTab','newTab','Displaying\x20ticket\x20to\x20agent\x20in\x20a\x20new\x20tab...','trigger:browser:url','%s/agent/tickets/%s','/api/v2','error','[QUEUE]\x20Error\x20running\x20Zendesk\x20integration','inspect','outbound','recordingFormat','none','[OUTBOUND]','email','destcalleridnum','Displaying\x20ticket\x20to\x20agent...','%s/channels/voice/agents/%d/tickets/%d/display.json','user:%s','replace','catch','[OUTBOUND]\x20Error\x20running\x20Zendesk\x20integration','unmanaged','toUpperCase','lastevent','\x20Error\x20running\x20Zendesk\x20integration','lodash','request-promise','md5','util','ioredis','../../../../config/environment','../../../../config/logger','zendesk','redis','defaults'];(function(_0x13a913,_0x15765f){var _0x4dc19f=function(_0x413db3){while(--_0x413db3){_0x13a913['push'](_0x13a913['shift']());}};_0x4dc19f(++_0x15765f);}(_0xd07d,0xd0));var _0xdd07=function(_0x3b3f4f,_0x403216){_0x3b3f4f=_0x3b3f4f-0x0;var _0x174dbe=_0xd07d[_0x3b3f4f];return _0x174dbe;};'use strict';var _=require(_0xdd07('0x0'));var rp=require(_0xdd07('0x1'));var md5=require(_0xdd07('0x2'));var util=require(_0xdd07('0x3'));var Redis=require(_0xdd07('0x4'));var intUtil=require('./util');var config=require(_0xdd07('0x5'));var logger=require(_0xdd07('0x6'))(_0xdd07('0x7'));config[_0xdd07('0x8')]=_[_0xdd07('0x9')](config['redis'],{'host':_0xdd07('0xa'),'port':0x18eb});var io=require(_0xdd07('0xb'))(new Redis(config[_0xdd07('0x8')]));function emit(_0x4ed6b0,_0x24a03b,_0x161b4c){io['to'](_0x4ed6b0)[_0xdd07('0xc')](_0x24a03b,_0x161b4c);}var headers={'Content-Type':_0xdd07('0xd'),'Accept':_0xdd07('0xd')};function getTicket(_0x49fe0f,_0x482fb7,_0x2d2500,_0x13b6f5,_0x294636){logger[_0xdd07('0xe')]('Creating\x20new\x20ticket...');return request({'uri':util[_0xdd07('0xf')]('%s/tickets.json',_0x49fe0f[_0xdd07('0x10')]),'method':'POST','body':{'ticket':_[_0xdd07('0x11')]({'requester_id':_0x2d2500['id'],'submitter_id':_0x482fb7?_0x482fb7['id']:undefined,'assignee_id':_0x482fb7?_0x482fb7['id']:undefined,'tags':getTags(_0x13b6f5[_0xdd07('0x12')],_0xdd07('0x13')),'subject':intUtil[_0xdd07('0x14')](_0x13b6f5['Subjects'],_0x294636,'\x20'),'description':intUtil[_0xdd07('0x14')](_0x13b6f5[_0xdd07('0x15')],_0x294636,'\x0a'),'comment':{'public':![],'body':intUtil[_0xdd07('0x14')](_0x13b6f5[_0xdd07('0x15')],_0x294636,'\x0a')}},getCustomFields(_0x13b6f5[_0xdd07('0x16')],_0x294636))}})['then'](function(_0x4cf721){logger[_0xdd07('0xe')]('Ticket\x20created!');return _0x4cf721[_0xdd07('0x17')];});}function getUser(_0x443f64,_0x1b9c1d){if(intUtil['validateEmail'](_0x1b9c1d)){logger[_0xdd07('0xe')]('Getting\x20agent\x20with\x20email',_0x1b9c1d);return request({'uri':util[_0xdd07('0xf')](_0xdd07('0x18'),_0x443f64[_0xdd07('0x10')]),'qs':{'query':util[_0xdd07('0xf')](_0xdd07('0x19'),_0x1b9c1d)}})[_0xdd07('0x1a')](function(_0x45469b){if(_0x45469b[_0xdd07('0x1b')]){logger[_0xdd07('0xe')](_0xdd07('0x1c'));return _[_0xdd07('0x1d')](_0x45469b['results'],{'email':_0x1b9c1d,'role':_0xdd07('0x1e')});}else{logger[_0xdd07('0xe')](_0xdd07('0x1f'));return request({'uri':util['format'](_0xdd07('0x20'),_0x443f64[_0xdd07('0x10')])})[_0xdd07('0x1a')](function(_0x53a281){logger[_0xdd07('0xe')](_0xdd07('0x21'));return _0x53a281[_0xdd07('0x22')];});}});}else{logger[_0xdd07('0xe')](_0xdd07('0x1f'));return request({'uri':util[_0xdd07('0xf')](_0xdd07('0x20'),_0x443f64[_0xdd07('0x10')])})[_0xdd07('0x1a')](function(_0x3d0e06){logger[_0xdd07('0xe')](_0xdd07('0x21'));return _0x3d0e06[_0xdd07('0x22')];});}}function getEndUser(_0x2811d0,_0x44a868,_0x431cb4){logger[_0xdd07('0xe')](_0xdd07('0x23'),_0x431cb4);return request({'uri':util[_0xdd07('0xf')](_0xdd07('0x18'),_0x2811d0[_0xdd07('0x10')]),'qs':{'query':util[_0xdd07('0xf')](_0xdd07('0x24'),_0x431cb4)}})[_0xdd07('0x1a')](function(_0x585428){var _0x3d135d;if(_0x585428['results'][_0xdd07('0x25')]){_0x585428[_0xdd07('0x26')]=_['filter'](_0x585428[_0xdd07('0x26')],{'suspended':![],'role':_0xdd07('0x27')});if(_0x585428[_0xdd07('0x26')][_0xdd07('0x25')]){_0x3d135d=_[_0xdd07('0x28')](_0x585428[_0xdd07('0x26')]);}}if(_0x3d135d){logger[_0xdd07('0xe')](_0xdd07('0x29'));return _0x3d135d;}else{logger[_0xdd07('0xe')]('Enduser\x20not\x20found,\x20creating\x20a\x20new\x20enduser!');return request({'uri':util[_0xdd07('0xf')](_0xdd07('0x2a'),_0x2811d0[_0xdd07('0x10')]),'method':_0xdd07('0x2b'),'body':{'user':{'role':_0xdd07('0x27'),'name':util[_0xdd07('0xf')](_0xdd07('0x2c'),_0x44a868||_0x431cb4),'phone':_0x431cb4}}})[_0xdd07('0x1a')](function(_0x5bb0a7){logger['info']('Enduser\x20created.');return _0x5bb0a7[_0xdd07('0x22')];});}});}function getAuth(_0x1382a6){var _0x1f448f;if(_0x1382a6[_0xdd07('0x2d')]==='password'){_0x1f448f=util[_0xdd07('0xf')](_0xdd07('0x2e'),_0x1382a6['username'],_0x1382a6[_0xdd07('0x2f')]);}else if(_0x1382a6['authType']===_0xdd07('0x30')){_0x1f448f=util['format'](_0xdd07('0x31'),_0x1382a6[_0xdd07('0x32')],_0x1382a6[_0xdd07('0x30')]);}return util['format'](_0xdd07('0x33'),new Buffer(_0x1f448f)[_0xdd07('0x34')](_0xdd07('0x35')));}function request(_0x33814f){logger[_0xdd07('0x36')](_0xdd07('0x37'),JSON[_0xdd07('0x38')](_0x33814f));return rp(_[_0xdd07('0x9')](_0x33814f,{'method':'GET','headers':headers,'json':!![]}));}function getTags(_0x314ec2,_0x40f966){var _0xe085be=[];if(_0x314ec2&&_0x314ec2[_0xdd07('0x25')]>0x0){_0xe085be=_[_0xdd07('0x39')](_0x314ec2,_0x40f966);}return _0xe085be;}function getCustomFields(_0x99f78c,_0x11acd4){var _0x125269=[];var _0xdc226e={'custom_fields':[]};if(_0x99f78c[_0xdd07('0x25')]>0x0){_['forEach'](_0x99f78c,function(_0x4d5f21){if(_[_0xdd07('0x3a')]([_0xdd07('0x3b'),_0xdd07('0x3c')],_0x4d5f21[_0xdd07('0x3d')])&&_0x4d5f21['nameField']&&!_0x4d5f21[_0xdd07('0x3e')]){_0xdc226e[_0x4d5f21['nameField'][_0xdd07('0x3f')]()]=_0x4d5f21['content'][_0xdd07('0x34')]();}else if(_[_0xdd07('0x3a')](['string',_0xdd07('0x3c')],_0x4d5f21[_0xdd07('0x3d')])&&_0x4d5f21[_0xdd07('0x40')]&&_0x4d5f21[_0xdd07('0x3e')]){_0xdc226e['custom_fields'][_0xdd07('0x41')]({'id':_0x4d5f21[_0xdd07('0x40')],'value':_0x4d5f21[_0xdd07('0x42')][_0xdd07('0x34')]()});}else if(_0x4d5f21['type']===_0xdd07('0x43')&&_0x4d5f21['variableName']&&_0x4d5f21[_0xdd07('0x40')]&&_0x4d5f21[_0xdd07('0x3e')]){_0x11acd4[_0x4d5f21['variableName']]&&_0xdc226e[_0xdd07('0x44')][_0xdd07('0x41')]({'id':_0x4d5f21['idField'],'value':_0x11acd4[_0x4d5f21[_0xdd07('0x45')]][_0xdd07('0x34')]()});}else if(_0x4d5f21[_0xdd07('0x3d')]===_0xdd07('0x46')&&_0x4d5f21['Variable']&&_0x4d5f21[_0xdd07('0x47')]['name']&&_0x4d5f21[_0xdd07('0x40')]&&_0x4d5f21['customField']){_0x11acd4[_0x4d5f21[_0xdd07('0x47')][_0xdd07('0x13')][_0xdd07('0x3f')]()]&&_0xdc226e[_0xdd07('0x44')]['push']({'id':_0x4d5f21[_0xdd07('0x40')],'value':_0x11acd4[_0x4d5f21['Variable']['name']['toLowerCase']()][_0xdd07('0x34')]()});}});}return _0xdc226e;}exports['queue']=function(_0x46774c,_0x44bffd,_0x4aabb3,_0x24937e,_0x1347a2,_0x1ded4e){var _0x49839b,_0x5b24ac;_0x1ded4e[_0xdd07('0x10')]=intUtil[_0xdd07('0x48')](_0x1ded4e['remoteUri']);_0x1ded4e[_0xdd07('0x49')]=intUtil['stripTrailingSlash'](_0x1ded4e[_0xdd07('0x49')]);if(_0x1347a2&&_0x1347a2[_0xdd07('0x4a')]){logger[_0xdd07('0xe')](_0xdd07('0x4b'),_0xdd07('0x4c'));_0x44bffd[_0xdd07('0x4d')]=util['format']('%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s',_0x1ded4e['serverUrl'],_0x44bffd[_0xdd07('0x4e')],md5(_0x44bffd[_0xdd07('0x4e')]));}else{_0x44bffd[_0xdd07('0x4d')]='';}headers[_0xdd07('0x4f')]=getAuth(_0x1ded4e);return getUser(_0x1ded4e,_0x24937e['email'])[_0xdd07('0x1a')](function(_0x4ff18e){_0x49839b=_0x4ff18e;logger[_0xdd07('0xe')](_0xdd07('0x50'),_0x49839b['id']);return getEndUser(_0x1ded4e,_0x44bffd[_0xdd07('0x51')],_0x44bffd[_0xdd07('0x52')]);})[_0xdd07('0x1a')](function(_0x183be1){_0x5b24ac=_0x183be1;logger['info']('The\x20Enduser\x20ID\x20is:',_0x5b24ac['id']);return getTicket(_0x1ded4e,_0x49839b,_0x5b24ac,_0x4aabb3,_0x44bffd);})[_0xdd07('0x1a')](function(_0x48c625){if(_0x48c625){logger[_0xdd07('0xe')](_0xdd07('0x53'),_0x48c625['id']);switch(_0x1ded4e[_0xdd07('0x3d')]){case _0xdd07('0x54'):logger['info'](_0xdd07('0x4b'),'Displaying\x20ticket\x20to\x20agent...');return request({'uri':util[_0xdd07('0xf')]('%s/channels/voice/agents/%d/tickets/%d/display.json',_0x1ded4e[_0xdd07('0x10')],_0x49839b['id'],_0x48c625['id']),'method':_0xdd07('0x2b')});case _0xdd07('0x55'):logger[_0xdd07('0xe')]('[QUEUE]',_0xdd07('0x56'));emit(util['format']('user:%s',_0x24937e[_0xdd07('0x13')]),_0xdd07('0x57'),{'uri':util['format'](_0xdd07('0x58'),_0x1ded4e[_0xdd07('0x10')]['replace'](_0xdd07('0x59'),''),_0x48c625['id'])});break;default:logger[_0xdd07('0x5a')]('[QUEUE]','Zendesk\x20account\x20type\x20not\x20recognized');}}})['catch'](function(_0x240076){logger[_0xdd07('0x5a')](_0xdd07('0x5b'),util[_0xdd07('0x5c')](_0x240076,{'showHidden':!![],'depth':null}));});};exports[_0xdd07('0x5d')]=function(_0x209fcc,_0x110f19,_0x995a20,_0x262f3f,_0x1bf13e,_0x38b1ff,_0x356939){var _0x44c22a,_0x593761;_0x38b1ff['remoteUri']=intUtil['stripTrailingSlash'](_0x38b1ff[_0xdd07('0x10')]);_0x38b1ff[_0xdd07('0x49')]=intUtil[_0xdd07('0x48')](_0x38b1ff[_0xdd07('0x49')]);if(_0x356939&&_0x356939[_0xdd07('0x5e')]&&_0x356939[_0xdd07('0x5e')]!==_0xdd07('0x5f')){logger[_0xdd07('0xe')](_0xdd07('0x60'),_0xdd07('0x4c'));_0x110f19[_0xdd07('0x4d')]=util[_0xdd07('0xf')]('%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s',_0x38b1ff[_0xdd07('0x49')],_0x110f19[_0xdd07('0x4e')],md5(_0x110f19['uniqueid']));}headers[_0xdd07('0x4f')]=getAuth(_0x38b1ff);return getUser(_0x38b1ff,_0x262f3f[_0xdd07('0x61')])['then'](function(_0x25d802){_0x44c22a=_0x25d802;logger[_0xdd07('0xe')](_0xdd07('0x50'),_0x44c22a['id']);return getEndUser(_0x38b1ff,_0x110f19['destcalleridname'],_0x110f19[_0xdd07('0x62')]);})['then'](function(_0x59da0c){_0x593761=_0x59da0c;logger[_0xdd07('0xe')]('The\x20Enduser\x20ID\x20is:',_0x593761['id']);return getTicket(_0x38b1ff,_0x44c22a,_0x593761,_0x995a20,_0x110f19);})[_0xdd07('0x1a')](function(_0x1c8d09){if(_0x1c8d09){logger['info'](_0xdd07('0x53'),_0x1c8d09['id']);switch(_0x38b1ff[_0xdd07('0x3d')]){case _0xdd07('0x54'):logger[_0xdd07('0xe')](_0xdd07('0x60'),_0xdd07('0x63'));return request({'uri':util[_0xdd07('0xf')](_0xdd07('0x64'),_0x38b1ff[_0xdd07('0x10')],_0x44c22a['id'],_0x1c8d09['id']),'method':_0xdd07('0x2b')});case'newTab':logger[_0xdd07('0xe')](_0xdd07('0x60'),_0xdd07('0x56'));emit(util['format'](_0xdd07('0x65'),_0x262f3f['name']),_0xdd07('0x57'),{'uri':util['format'](_0xdd07('0x58'),_0x38b1ff['remoteUri'][_0xdd07('0x66')](_0xdd07('0x59'),''),_0x1c8d09['id'])});break;default:logger[_0xdd07('0x5a')](_0xdd07('0x60'),'Zendesk\x20account\x20type\x20not\x20recognized');}}})[_0xdd07('0x67')](function(_0x598bfe){logger['error'](_0xdd07('0x68'),util['inspect'](_0x598bfe,{'showHidden':!![],'depth':null}));});};exports[_0xdd07('0x69')]=function(_0x599195,_0x2f12f2,_0x7ba066,_0x3273cc,_0xe679f8,_0x3ede93){var _0x4f7a33,_0x372d12;_0x3ede93[_0xdd07('0x10')]=intUtil[_0xdd07('0x48')](_0x3ede93['remoteUri']);_0x3ede93[_0xdd07('0x49')]=intUtil[_0xdd07('0x48')](_0x3ede93[_0xdd07('0x49')]);if(_0xe679f8&&_0xe679f8[_0xdd07('0x4a')]){logger['info']('['+_0x2f12f2['lastevent'][_0xdd07('0x6a')]()+']',_0xdd07('0x4c'));_0x2f12f2[_0xdd07('0x4d')]=util[_0xdd07('0xf')]('%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s',_0x3ede93[_0xdd07('0x49')],_0x2f12f2[_0xdd07('0x4e')],md5(_0x2f12f2['uniqueid']));}else{_0x2f12f2['recordingURL']='';}headers[_0xdd07('0x4f')]=getAuth(_0x3ede93);return getUser(_0x3ede93)[_0xdd07('0x1a')](function(_0x38f469){_0x4f7a33=_0x38f469;logger[_0xdd07('0xe')](_0xdd07('0x50'),_0x4f7a33['id']);return getEndUser(_0x3ede93,_0x2f12f2[_0xdd07('0x51')],_0x2f12f2[_0xdd07('0x52')]);})[_0xdd07('0x1a')](function(_0x3345b4){_0x372d12=_0x3345b4;logger['info']('The\x20Enduser\x20ID\x20is:',_0x372d12['id']);return getTicket(_0x3ede93,_0x4f7a33,_0x372d12,_0x7ba066,_0x2f12f2);})[_0xdd07('0x1a')](function(_0x47d6a4){if(_0x47d6a4){logger[_0xdd07('0xe')](_0xdd07('0x53'),_0x47d6a4['id']);}})[_0xdd07('0x67')](function(_0x71e949){logger[_0xdd07('0x5a')]('['+_0x2f12f2[_0xdd07('0x6b')]['toUpperCase']()+']'+_0xdd07('0x6c'),util[_0xdd07('0x5c')](_0x71e949,{'showHidden':!![],'depth':null}));});};
\ No newline at end of file