Built motion from commit 97153652.|2.6.26
[motion2.git] / server / services / ami / trigger / integration / zendesk.js
index de984e7..7c50734 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xddc5=['push','content','variable','variableName','customVariable','Variable','name','queue','stripTrailingSlash','serverUrl','monitor_format','[QUEUE]','recordingURL','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','uniqueid','Authorization','The\x20User\x20ID\x20is:','calleridname','calleridnum','The\x20Enduser\x20ID\x20is:','The\x20Ticket\x20ID\x20is:','integrationTab','Displaying\x20ticket\x20to\x20agent...','%s/channels/voice/agents/%d/tickets/%d/display.json','newTab','Displaying\x20ticket\x20to\x20agent\x20in\x20a\x20new\x20tab...','user:%s','trigger:browser:url','%s/agent/tickets/%s','replace','error','Zendesk\x20account\x20type\x20not\x20recognized','catch','[QUEUE]\x20Error\x20running\x20Zendesk\x20integration','outbound','recordingFormat','none','[OUTBOUND]','email','destcalleridnum','/api/v2','inspect','lastevent','toUpperCase','Recording\x20is\x20enabled!','lodash','md5','util','ioredis','../../../../config/environment','zendesk','redis','defaults','emit','application/json','info','Creating\x20new\x20ticket...','format','%s/tickets.json','POST','merge','Tags','getString','Subjects','Descriptions','then','Ticket\x20created!','ticket','validateEmail','Getting\x20agent\x20with\x20email','%s/search.json','remoteUri','type:user\x20role:agent\x20email:%s','count','find','agent','Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!','Admin\x20account\x20selected.','user','%s/users/me.json','Searching\x20enduser\x20with\x20phone','type:user\x20role:end-user\x20phone:%s','results','length','end-user','first','Enduser\x20found!','Enduser\x20not\x20found,\x20creating\x20a\x20new\x20enduser!','Enduser\x20created.','authType','password','%s:%s','%s/token:%s','username','token','toString','base64','debug','[HTTP]','GET','forEach','includes','string','picklist','type','customField','toLowerCase','idField','custom_fields'];(function(_0x3f83f6,_0x596b2f){var _0x3958d4=function(_0x591ca9){while(--_0x591ca9){_0x3f83f6['push'](_0x3f83f6['shift']());}};_0x3958d4(++_0x596b2f);}(_0xddc5,0x174));var _0x5ddc=function(_0xcd1a24,_0x48f712){_0xcd1a24=_0xcd1a24-0x0;var _0x48ee21=_0xddc5[_0xcd1a24];return _0x48ee21;};'use strict';var _=require(_0x5ddc('0x0'));var rp=require('request-promise');var md5=require(_0x5ddc('0x1'));var util=require(_0x5ddc('0x2'));var Redis=require(_0x5ddc('0x3'));var intUtil=require('./util');var config=require(_0x5ddc('0x4'));var logger=require('../../../../config/logger')(_0x5ddc('0x5'));config[_0x5ddc('0x6')]=_[_0x5ddc('0x7')](config[_0x5ddc('0x6')],{'host':'localhost','port':0x18eb});var io=require('socket.io-emitter')(new Redis(config[_0x5ddc('0x6')]));function emit(_0x1a7b72,_0x3a8f38,_0x18a345){io['to'](_0x1a7b72)[_0x5ddc('0x8')](_0x3a8f38,_0x18a345);}var headers={'Content-Type':_0x5ddc('0x9'),'Accept':_0x5ddc('0x9')};function getTicket(_0x249c8b,_0x53f8db,_0xf86c1c,_0x4b1278,_0x45a09e){logger[_0x5ddc('0xa')](_0x5ddc('0xb'));return request({'uri':util[_0x5ddc('0xc')](_0x5ddc('0xd'),_0x249c8b['remoteUri']),'method':_0x5ddc('0xe'),'body':{'ticket':_[_0x5ddc('0xf')]({'requester_id':_0xf86c1c['id'],'submitter_id':_0x53f8db?_0x53f8db['id']:undefined,'assignee_id':_0x53f8db?_0x53f8db['id']:undefined,'tags':getTags(_0x4b1278[_0x5ddc('0x10')],'name'),'subject':intUtil[_0x5ddc('0x11')](_0x4b1278[_0x5ddc('0x12')],_0x45a09e,'\x20'),'description':intUtil[_0x5ddc('0x11')](_0x4b1278[_0x5ddc('0x13')],_0x45a09e,'\x0a'),'comment':{'public':![],'body':intUtil[_0x5ddc('0x11')](_0x4b1278['Descriptions'],_0x45a09e,'\x0a')}},getCustomFields(_0x4b1278['Fields'],_0x45a09e))}})[_0x5ddc('0x14')](function(_0x1bd36d){logger[_0x5ddc('0xa')](_0x5ddc('0x15'));return _0x1bd36d[_0x5ddc('0x16')];});}function getUser(_0x2e81f3,_0x1334e3){if(intUtil[_0x5ddc('0x17')](_0x1334e3)){logger[_0x5ddc('0xa')](_0x5ddc('0x18'),_0x1334e3);return request({'uri':util[_0x5ddc('0xc')](_0x5ddc('0x19'),_0x2e81f3[_0x5ddc('0x1a')]),'qs':{'query':util[_0x5ddc('0xc')](_0x5ddc('0x1b'),_0x1334e3)}})[_0x5ddc('0x14')](function(_0x45103b){if(_0x45103b[_0x5ddc('0x1c')]){logger[_0x5ddc('0xa')]('Agent\x20found!');return _[_0x5ddc('0x1d')](_0x45103b['results'],{'email':_0x1334e3,'role':_0x5ddc('0x1e')});}else{logger['info'](_0x5ddc('0x1f'));return request({'uri':util[_0x5ddc('0xc')]('%s/users/me.json',_0x2e81f3['remoteUri'])})[_0x5ddc('0x14')](function(_0xeed68){logger[_0x5ddc('0xa')](_0x5ddc('0x20'));return _0xeed68[_0x5ddc('0x21')];});}});}else{logger[_0x5ddc('0xa')](_0x5ddc('0x1f'));return request({'uri':util[_0x5ddc('0xc')](_0x5ddc('0x22'),_0x2e81f3[_0x5ddc('0x1a')])})[_0x5ddc('0x14')](function(_0x32ecff){logger['info'](_0x5ddc('0x20'));return _0x32ecff[_0x5ddc('0x21')];});}}function getEndUser(_0x434d39,_0x12ea18,_0x131187){logger[_0x5ddc('0xa')](_0x5ddc('0x23'),_0x131187);return request({'uri':util[_0x5ddc('0xc')]('%s/search.json',_0x434d39[_0x5ddc('0x1a')]),'qs':{'query':util['format'](_0x5ddc('0x24'),_0x131187)}})[_0x5ddc('0x14')](function(_0x599db6){var _0x4b34d2;if(_0x599db6[_0x5ddc('0x25')][_0x5ddc('0x26')]){_0x599db6['results']=_['filter'](_0x599db6[_0x5ddc('0x25')],{'suspended':![],'role':_0x5ddc('0x27')});if(_0x599db6[_0x5ddc('0x25')][_0x5ddc('0x26')]){_0x4b34d2=_[_0x5ddc('0x28')](_0x599db6[_0x5ddc('0x25')]);}}if(_0x4b34d2){logger[_0x5ddc('0xa')](_0x5ddc('0x29'));return _0x4b34d2;}else{logger['info'](_0x5ddc('0x2a'));return request({'uri':util[_0x5ddc('0xc')]('%s/users.json',_0x434d39['remoteUri']),'method':_0x5ddc('0xe'),'body':{'user':{'role':'end-user','name':util[_0x5ddc('0xc')]('Caller\x20-\x20%s',_0x12ea18||_0x131187),'phone':_0x131187}}})[_0x5ddc('0x14')](function(_0x566acf){logger[_0x5ddc('0xa')](_0x5ddc('0x2b'));return _0x566acf[_0x5ddc('0x21')];});}});}function getAuth(_0x71561b){var _0x1c6c4a;if(_0x71561b[_0x5ddc('0x2c')]===_0x5ddc('0x2d')){_0x1c6c4a=util['format'](_0x5ddc('0x2e'),_0x71561b['username'],_0x71561b['password']);}else if(_0x71561b['authType']==='token'){_0x1c6c4a=util[_0x5ddc('0xc')](_0x5ddc('0x2f'),_0x71561b[_0x5ddc('0x30')],_0x71561b[_0x5ddc('0x31')]);}return util['format']('Basic\x20%s',new Buffer(_0x1c6c4a)[_0x5ddc('0x32')](_0x5ddc('0x33')));}function request(_0x597f45){logger[_0x5ddc('0x34')](_0x5ddc('0x35'),JSON['stringify'](_0x597f45));return rp(_['defaults'](_0x597f45,{'method':_0x5ddc('0x36'),'headers':headers,'json':!![]}));}function getTags(_0x3d8ae3,_0x5888f2){var _0x3132bb=[];if(_0x3d8ae3&&_0x3d8ae3['length']>0x0){_0x3132bb=_['map'](_0x3d8ae3,_0x5888f2);}return _0x3132bb;}function getCustomFields(_0x254bda,_0x43751d){var _0x4e3829=[];var _0x189c3d={'custom_fields':[]};if(_0x254bda['length']>0x0){_[_0x5ddc('0x37')](_0x254bda,function(_0x1f0dbd){if(_[_0x5ddc('0x38')]([_0x5ddc('0x39'),_0x5ddc('0x3a')],_0x1f0dbd[_0x5ddc('0x3b')])&&_0x1f0dbd['nameField']&&!_0x1f0dbd[_0x5ddc('0x3c')]){_0x189c3d[_0x1f0dbd['nameField'][_0x5ddc('0x3d')]()]=_0x1f0dbd['content'][_0x5ddc('0x32')]();}else if(_['includes']([_0x5ddc('0x39'),'picklist'],_0x1f0dbd['type'])&&_0x1f0dbd[_0x5ddc('0x3e')]&&_0x1f0dbd[_0x5ddc('0x3c')]){_0x189c3d[_0x5ddc('0x3f')][_0x5ddc('0x40')]({'id':_0x1f0dbd[_0x5ddc('0x3e')],'value':_0x1f0dbd[_0x5ddc('0x41')][_0x5ddc('0x32')]()});}else if(_0x1f0dbd[_0x5ddc('0x3b')]===_0x5ddc('0x42')&&_0x1f0dbd[_0x5ddc('0x43')]&&_0x1f0dbd['idField']&&_0x1f0dbd[_0x5ddc('0x3c')]){_0x43751d[_0x1f0dbd[_0x5ddc('0x43')]]&&_0x189c3d[_0x5ddc('0x3f')]['push']({'id':_0x1f0dbd[_0x5ddc('0x3e')],'value':_0x43751d[_0x1f0dbd['variableName']]['toString']()});}else if(_0x1f0dbd['type']===_0x5ddc('0x44')&&_0x1f0dbd[_0x5ddc('0x45')]&&_0x1f0dbd[_0x5ddc('0x45')][_0x5ddc('0x46')]&&_0x1f0dbd[_0x5ddc('0x3e')]&&_0x1f0dbd[_0x5ddc('0x3c')]){_0x43751d[_0x1f0dbd[_0x5ddc('0x45')][_0x5ddc('0x46')][_0x5ddc('0x3d')]()]&&_0x189c3d[_0x5ddc('0x3f')][_0x5ddc('0x40')]({'id':_0x1f0dbd[_0x5ddc('0x3e')],'value':_0x43751d[_0x1f0dbd[_0x5ddc('0x45')]['name'][_0x5ddc('0x3d')]()][_0x5ddc('0x32')]()});}});}return _0x189c3d;}exports[_0x5ddc('0x47')]=function(_0x2327e4,_0x3c0b00,_0x4658e0,_0x2b037a,_0xc7727c,_0x4e8ea6){var _0x2486ad,_0x44376b;_0x4e8ea6[_0x5ddc('0x1a')]=intUtil[_0x5ddc('0x48')](_0x4e8ea6[_0x5ddc('0x1a')]);_0x4e8ea6[_0x5ddc('0x49')]=intUtil[_0x5ddc('0x48')](_0x4e8ea6[_0x5ddc('0x49')]);if(_0xc7727c&&_0xc7727c[_0x5ddc('0x4a')]){logger[_0x5ddc('0xa')](_0x5ddc('0x4b'),'Recording\x20is\x20enabled!');_0x3c0b00[_0x5ddc('0x4c')]=util[_0x5ddc('0xc')](_0x5ddc('0x4d'),_0x4e8ea6[_0x5ddc('0x49')],_0x3c0b00[_0x5ddc('0x4e')],md5(_0x3c0b00[_0x5ddc('0x4e')]));}else{_0x3c0b00[_0x5ddc('0x4c')]='';}headers[_0x5ddc('0x4f')]=getAuth(_0x4e8ea6);return getUser(_0x4e8ea6,_0x2b037a['email'])[_0x5ddc('0x14')](function(_0x4a3f0f){_0x2486ad=_0x4a3f0f;logger[_0x5ddc('0xa')](_0x5ddc('0x50'),_0x2486ad['id']);return getEndUser(_0x4e8ea6,_0x3c0b00[_0x5ddc('0x51')],_0x3c0b00[_0x5ddc('0x52')]);})[_0x5ddc('0x14')](function(_0x38d98f){_0x44376b=_0x38d98f;logger[_0x5ddc('0xa')](_0x5ddc('0x53'),_0x44376b['id']);return getTicket(_0x4e8ea6,_0x2486ad,_0x44376b,_0x4658e0,_0x3c0b00);})['then'](function(_0x30730b){if(_0x30730b){logger[_0x5ddc('0xa')](_0x5ddc('0x54'),_0x30730b['id']);switch(_0x4e8ea6[_0x5ddc('0x3b')]){case _0x5ddc('0x55'):logger[_0x5ddc('0xa')]('[QUEUE]',_0x5ddc('0x56'));return request({'uri':util['format'](_0x5ddc('0x57'),_0x4e8ea6[_0x5ddc('0x1a')],_0x2486ad['id'],_0x30730b['id']),'method':_0x5ddc('0xe')});case _0x5ddc('0x58'):logger['info'](_0x5ddc('0x4b'),_0x5ddc('0x59'));emit(util[_0x5ddc('0xc')](_0x5ddc('0x5a'),_0x2b037a['name']),_0x5ddc('0x5b'),{'uri':util[_0x5ddc('0xc')](_0x5ddc('0x5c'),_0x4e8ea6[_0x5ddc('0x1a')][_0x5ddc('0x5d')]('/api/v2',''),_0x30730b['id'])});break;default:logger[_0x5ddc('0x5e')](_0x5ddc('0x4b'),_0x5ddc('0x5f'));}}})[_0x5ddc('0x60')](function(_0x522470){logger[_0x5ddc('0x5e')](_0x5ddc('0x61'),util['inspect'](_0x522470,{'showHidden':!![],'depth':null}));});};exports[_0x5ddc('0x62')]=function(_0x2775f0,_0x50ad3b,_0x464ee6,_0x54fe91,_0x2de4a9,_0x52e040,_0x20910b){var _0x1bd007,_0x20a4bf;_0x52e040[_0x5ddc('0x1a')]=intUtil[_0x5ddc('0x48')](_0x52e040['remoteUri']);_0x52e040['serverUrl']=intUtil[_0x5ddc('0x48')](_0x52e040[_0x5ddc('0x49')]);if(_0x20910b&&_0x20910b['recordingFormat']&&_0x20910b[_0x5ddc('0x63')]!==_0x5ddc('0x64')){logger[_0x5ddc('0xa')](_0x5ddc('0x65'),'Recording\x20is\x20enabled!');_0x50ad3b[_0x5ddc('0x4c')]=util[_0x5ddc('0xc')](_0x5ddc('0x4d'),_0x52e040[_0x5ddc('0x49')],_0x50ad3b[_0x5ddc('0x4e')],md5(_0x50ad3b[_0x5ddc('0x4e')]));}headers[_0x5ddc('0x4f')]=getAuth(_0x52e040);return getUser(_0x52e040,_0x54fe91[_0x5ddc('0x66')])[_0x5ddc('0x14')](function(_0x1a077a){_0x1bd007=_0x1a077a;logger[_0x5ddc('0xa')](_0x5ddc('0x50'),_0x1bd007['id']);return getEndUser(_0x52e040,_0x50ad3b['destcalleridname'],_0x50ad3b[_0x5ddc('0x67')]);})[_0x5ddc('0x14')](function(_0x1d7b7a){_0x20a4bf=_0x1d7b7a;logger[_0x5ddc('0xa')](_0x5ddc('0x53'),_0x20a4bf['id']);return getTicket(_0x52e040,_0x1bd007,_0x20a4bf,_0x464ee6,_0x50ad3b);})['then'](function(_0x25cf21){if(_0x25cf21){logger[_0x5ddc('0xa')](_0x5ddc('0x54'),_0x25cf21['id']);switch(_0x52e040[_0x5ddc('0x3b')]){case _0x5ddc('0x55'):logger['info'](_0x5ddc('0x65'),_0x5ddc('0x56'));return request({'uri':util['format'](_0x5ddc('0x57'),_0x52e040[_0x5ddc('0x1a')],_0x1bd007['id'],_0x25cf21['id']),'method':_0x5ddc('0xe')});case _0x5ddc('0x58'):logger[_0x5ddc('0xa')](_0x5ddc('0x65'),_0x5ddc('0x59'));emit(util[_0x5ddc('0xc')](_0x5ddc('0x5a'),_0x54fe91[_0x5ddc('0x46')]),_0x5ddc('0x5b'),{'uri':util['format']('%s/agent/tickets/%s',_0x52e040[_0x5ddc('0x1a')][_0x5ddc('0x5d')](_0x5ddc('0x68'),''),_0x25cf21['id'])});break;default:logger[_0x5ddc('0x5e')](_0x5ddc('0x65'),_0x5ddc('0x5f'));}}})[_0x5ddc('0x60')](function(_0x5ade27){logger[_0x5ddc('0x5e')]('[OUTBOUND]\x20Error\x20running\x20Zendesk\x20integration',util[_0x5ddc('0x69')](_0x5ade27,{'showHidden':!![],'depth':null}));});};exports['unmanaged']=function(_0xa2f346,_0x1fbfe5,_0x19fe3a,_0x35ef25,_0xcedaf1,_0x28916f){var _0x4abe65,_0x433ef2;_0x28916f[_0x5ddc('0x1a')]=intUtil[_0x5ddc('0x48')](_0x28916f['remoteUri']);_0x28916f[_0x5ddc('0x49')]=intUtil[_0x5ddc('0x48')](_0x28916f[_0x5ddc('0x49')]);if(_0xcedaf1&&_0xcedaf1[_0x5ddc('0x4a')]){logger['info']('['+_0x1fbfe5[_0x5ddc('0x6a')][_0x5ddc('0x6b')]()+']',_0x5ddc('0x6c'));_0x1fbfe5[_0x5ddc('0x4c')]=util[_0x5ddc('0xc')](_0x5ddc('0x4d'),_0x28916f['serverUrl'],_0x1fbfe5[_0x5ddc('0x4e')],md5(_0x1fbfe5[_0x5ddc('0x4e')]));}else{_0x1fbfe5[_0x5ddc('0x4c')]='';}headers[_0x5ddc('0x4f')]=getAuth(_0x28916f);return getUser(_0x28916f)[_0x5ddc('0x14')](function(_0x424223){_0x4abe65=_0x424223;logger['info'](_0x5ddc('0x50'),_0x4abe65['id']);return getEndUser(_0x28916f,_0x1fbfe5['calleridname'],_0x1fbfe5['calleridnum']);})['then'](function(_0x1bffaf){_0x433ef2=_0x1bffaf;logger[_0x5ddc('0xa')](_0x5ddc('0x53'),_0x433ef2['id']);return getTicket(_0x28916f,_0x4abe65,_0x433ef2,_0x19fe3a,_0x1fbfe5);})[_0x5ddc('0x14')](function(_0x24182e){if(_0x24182e){logger[_0x5ddc('0xa')](_0x5ddc('0x54'),_0x24182e['id']);}})['catch'](function(_0x4b2dfd){logger['error']('['+_0x1fbfe5['lastevent'][_0x5ddc('0x6b')]()+']'+'\x20Error\x20running\x20Zendesk\x20integration',util['inspect'](_0x4b2dfd,{'showHidden':!![],'depth':null}));});};
\ No newline at end of file
+var _0xde42=['defaults','localhost','socket.io-emitter','emit','application/json','info','Creating\x20new\x20ticket...','format','%s/tickets.json','merge','Tags','name','Subjects','Descriptions','getString','Fields','then','Ticket\x20created!','ticket','validateEmail','Getting\x20agent\x20with\x20email','%s/search.json','remoteUri','count','Agent\x20found!','agent','Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!','%s/users/me.json','Admin\x20account\x20selected.','Searching\x20enduser\x20with\x20phone','type:user\x20role:end-user\x20phone:%s','results','length','filter','first','Enduser\x20found!','%s/users.json','POST','end-user','Caller\x20-\x20%s','user','authType','password','%s:%s','username','%s/token:%s','toString','base64','debug','[HTTP]','stringify','GET','map','includes','string','type','nameField','customField','content','idField','custom_fields','push','variable','variableName','customVariable','Variable','toLowerCase','stripTrailingSlash','serverUrl','[QUEUE]','Recording\x20is\x20enabled!','recordingURL','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','uniqueid','Authorization','email','The\x20User\x20ID\x20is:','calleridname','calleridnum','The\x20Enduser\x20ID\x20is:','integrationTab','Displaying\x20ticket\x20to\x20agent...','%s/channels/voice/agents/%d/tickets/%d/display.json','newTab','Displaying\x20ticket\x20to\x20agent\x20in\x20a\x20new\x20tab...','user:%s','trigger:browser:url','%s/agent/tickets/%s','replace','/api/v2','error','Zendesk\x20account\x20type\x20not\x20recognized','catch','[QUEUE]\x20Error\x20running\x20Zendesk\x20integration','inspect','outbound','recordingFormat','destcalleridname','destcalleridnum','The\x20Ticket\x20ID\x20is:','[OUTBOUND]','[OUTBOUND]\x20Error\x20running\x20Zendesk\x20integration','unmanaged','monitor_format','lastevent','toUpperCase','\x20Error\x20running\x20Zendesk\x20integration','util','ioredis','../../../../config/environment','../../../../config/logger','zendesk','redis'];(function(_0x11b7bd,_0x3923ba){var _0x29a90b=function(_0x3a74a3){while(--_0x3a74a3){_0x11b7bd['push'](_0x11b7bd['shift']());}};_0x29a90b(++_0x3923ba);}(_0xde42,0x1be));var _0x2de4=function(_0x5b3a35,_0x312e9b){_0x5b3a35=_0x5b3a35-0x0;var _0x4383df=_0xde42[_0x5b3a35];return _0x4383df;};'use strict';var _=require('lodash');var rp=require('request-promise');var md5=require('md5');var util=require(_0x2de4('0x0'));var Redis=require(_0x2de4('0x1'));var intUtil=require('./util');var config=require(_0x2de4('0x2'));var logger=require(_0x2de4('0x3'))(_0x2de4('0x4'));config[_0x2de4('0x5')]=_[_0x2de4('0x6')](config[_0x2de4('0x5')],{'host':_0x2de4('0x7'),'port':0x18eb});var io=require(_0x2de4('0x8'))(new Redis(config[_0x2de4('0x5')]));function emit(_0x5ecc3d,_0x543284,_0x1b9e4d){io['to'](_0x5ecc3d)[_0x2de4('0x9')](_0x543284,_0x1b9e4d);}var headers={'Content-Type':_0x2de4('0xa'),'Accept':'application/json'};function getTicket(_0x2dbd7b,_0x23cb1b,_0x58b345,_0x249dc5,_0x262885){logger[_0x2de4('0xb')](_0x2de4('0xc'));return request({'uri':util[_0x2de4('0xd')](_0x2de4('0xe'),_0x2dbd7b['remoteUri']),'method':'POST','body':{'ticket':_[_0x2de4('0xf')]({'requester_id':_0x58b345['id'],'submitter_id':_0x23cb1b?_0x23cb1b['id']:undefined,'assignee_id':_0x23cb1b?_0x23cb1b['id']:undefined,'tags':getTags(_0x249dc5[_0x2de4('0x10')],_0x2de4('0x11')),'subject':intUtil['getString'](_0x249dc5[_0x2de4('0x12')],_0x262885,'\x20'),'description':intUtil['getString'](_0x249dc5[_0x2de4('0x13')],_0x262885,'\x0a'),'comment':{'public':![],'body':intUtil[_0x2de4('0x14')](_0x249dc5['Descriptions'],_0x262885,'\x0a')}},getCustomFields(_0x249dc5[_0x2de4('0x15')],_0x262885))}})[_0x2de4('0x16')](function(_0x50d4b0){logger[_0x2de4('0xb')](_0x2de4('0x17'));return _0x50d4b0[_0x2de4('0x18')];});}function getUser(_0x4db54e,_0x5cba65){if(intUtil[_0x2de4('0x19')](_0x5cba65)){logger[_0x2de4('0xb')](_0x2de4('0x1a'),_0x5cba65);return request({'uri':util[_0x2de4('0xd')](_0x2de4('0x1b'),_0x4db54e[_0x2de4('0x1c')]),'qs':{'query':util[_0x2de4('0xd')]('type:user\x20role:agent\x20email:%s',_0x5cba65)}})[_0x2de4('0x16')](function(_0x1591cb){if(_0x1591cb[_0x2de4('0x1d')]){logger['info'](_0x2de4('0x1e'));return _['find'](_0x1591cb['results'],{'email':_0x5cba65,'role':_0x2de4('0x1f')});}else{logger[_0x2de4('0xb')](_0x2de4('0x20'));return request({'uri':util[_0x2de4('0xd')](_0x2de4('0x21'),_0x4db54e['remoteUri'])})[_0x2de4('0x16')](function(_0x384103){logger['info'](_0x2de4('0x22'));return _0x384103['user'];});}});}else{logger['info'](_0x2de4('0x20'));return request({'uri':util[_0x2de4('0xd')](_0x2de4('0x21'),_0x4db54e[_0x2de4('0x1c')])})['then'](function(_0x1ef31f){logger[_0x2de4('0xb')](_0x2de4('0x22'));return _0x1ef31f['user'];});}}function getEndUser(_0x11fa30,_0x26563b,_0x11de62){logger['info'](_0x2de4('0x23'),_0x11de62);return request({'uri':util[_0x2de4('0xd')]('%s/search.json',_0x11fa30['remoteUri']),'qs':{'query':util[_0x2de4('0xd')](_0x2de4('0x24'),_0x11de62)}})['then'](function(_0x1ba2d9){var _0x4e4540;if(_0x1ba2d9[_0x2de4('0x25')][_0x2de4('0x26')]){_0x1ba2d9[_0x2de4('0x25')]=_[_0x2de4('0x27')](_0x1ba2d9[_0x2de4('0x25')],{'suspended':![],'role':'end-user'});if(_0x1ba2d9[_0x2de4('0x25')][_0x2de4('0x26')]){_0x4e4540=_[_0x2de4('0x28')](_0x1ba2d9['results']);}}if(_0x4e4540){logger[_0x2de4('0xb')](_0x2de4('0x29'));return _0x4e4540;}else{logger[_0x2de4('0xb')]('Enduser\x20not\x20found,\x20creating\x20a\x20new\x20enduser!');return request({'uri':util['format'](_0x2de4('0x2a'),_0x11fa30[_0x2de4('0x1c')]),'method':_0x2de4('0x2b'),'body':{'user':{'role':_0x2de4('0x2c'),'name':util[_0x2de4('0xd')](_0x2de4('0x2d'),_0x26563b||_0x11de62),'phone':_0x11de62}}})['then'](function(_0x31b3bc){logger[_0x2de4('0xb')]('Enduser\x20created.');return _0x31b3bc[_0x2de4('0x2e')];});}});}function getAuth(_0x480a96){var _0x590e59;if(_0x480a96[_0x2de4('0x2f')]===_0x2de4('0x30')){_0x590e59=util['format'](_0x2de4('0x31'),_0x480a96[_0x2de4('0x32')],_0x480a96[_0x2de4('0x30')]);}else if(_0x480a96[_0x2de4('0x2f')]==='token'){_0x590e59=util[_0x2de4('0xd')](_0x2de4('0x33'),_0x480a96[_0x2de4('0x32')],_0x480a96['token']);}return util[_0x2de4('0xd')]('Basic\x20%s',new Buffer(_0x590e59)[_0x2de4('0x34')](_0x2de4('0x35')));}function request(_0x10d3a1){logger[_0x2de4('0x36')](_0x2de4('0x37'),JSON[_0x2de4('0x38')](_0x10d3a1));return rp(_[_0x2de4('0x6')](_0x10d3a1,{'method':_0x2de4('0x39'),'headers':headers,'json':!![]}));}function getTags(_0x389f12,_0x2e35ea){var _0x37dbcd=[];if(_0x389f12&&_0x389f12['length']>0x0){_0x37dbcd=_[_0x2de4('0x3a')](_0x389f12,_0x2e35ea);}return _0x37dbcd;}function getCustomFields(_0x519260,_0x330a2a){var _0x5d8b58=[];var _0x24eecc={'custom_fields':[]};if(_0x519260[_0x2de4('0x26')]>0x0){_['forEach'](_0x519260,function(_0x343760){if(_[_0x2de4('0x3b')]([_0x2de4('0x3c'),'picklist'],_0x343760[_0x2de4('0x3d')])&&_0x343760[_0x2de4('0x3e')]&&!_0x343760[_0x2de4('0x3f')]){_0x24eecc[_0x343760[_0x2de4('0x3e')]['toLowerCase']()]=_0x343760[_0x2de4('0x40')][_0x2de4('0x34')]();}else if(_[_0x2de4('0x3b')]([_0x2de4('0x3c'),'picklist'],_0x343760[_0x2de4('0x3d')])&&_0x343760[_0x2de4('0x41')]&&_0x343760['customField']){_0x24eecc[_0x2de4('0x42')][_0x2de4('0x43')]({'id':_0x343760[_0x2de4('0x41')],'value':_0x343760[_0x2de4('0x40')][_0x2de4('0x34')]()});}else if(_0x343760[_0x2de4('0x3d')]===_0x2de4('0x44')&&_0x343760['variableName']&&_0x343760[_0x2de4('0x41')]&&_0x343760[_0x2de4('0x3f')]){_0x330a2a[_0x343760[_0x2de4('0x45')]]&&_0x24eecc[_0x2de4('0x42')][_0x2de4('0x43')]({'id':_0x343760['idField'],'value':_0x330a2a[_0x343760[_0x2de4('0x45')]]['toString']()});}else if(_0x343760[_0x2de4('0x3d')]===_0x2de4('0x46')&&_0x343760[_0x2de4('0x47')]&&_0x343760[_0x2de4('0x47')][_0x2de4('0x11')]&&_0x343760[_0x2de4('0x41')]&&_0x343760['customField']){_0x330a2a[_0x343760[_0x2de4('0x47')][_0x2de4('0x11')][_0x2de4('0x48')]()]&&_0x24eecc[_0x2de4('0x42')][_0x2de4('0x43')]({'id':_0x343760[_0x2de4('0x41')],'value':_0x330a2a[_0x343760[_0x2de4('0x47')][_0x2de4('0x11')][_0x2de4('0x48')]()]['toString']()});}});}return _0x24eecc;}exports['queue']=function(_0x2748bf,_0x18a703,_0x1b70a7,_0xccf890,_0x52b9ca,_0x2cb17c){var _0x2ca23e,_0x111366;_0x2cb17c[_0x2de4('0x1c')]=intUtil[_0x2de4('0x49')](_0x2cb17c[_0x2de4('0x1c')]);_0x2cb17c[_0x2de4('0x4a')]=intUtil[_0x2de4('0x49')](_0x2cb17c[_0x2de4('0x4a')]);if(_0x52b9ca&&_0x52b9ca['monitor_format']){logger[_0x2de4('0xb')](_0x2de4('0x4b'),_0x2de4('0x4c'));_0x18a703[_0x2de4('0x4d')]=util['format'](_0x2de4('0x4e'),_0x2cb17c[_0x2de4('0x4a')],_0x18a703[_0x2de4('0x4f')],md5(_0x18a703[_0x2de4('0x4f')]));}else{_0x18a703[_0x2de4('0x4d')]='';}headers[_0x2de4('0x50')]=getAuth(_0x2cb17c);return getUser(_0x2cb17c,_0xccf890[_0x2de4('0x51')])[_0x2de4('0x16')](function(_0x274a7a){_0x2ca23e=_0x274a7a;logger[_0x2de4('0xb')](_0x2de4('0x52'),_0x2ca23e['id']);return getEndUser(_0x2cb17c,_0x18a703[_0x2de4('0x53')],_0x18a703[_0x2de4('0x54')]);})[_0x2de4('0x16')](function(_0x46f925){_0x111366=_0x46f925;logger[_0x2de4('0xb')](_0x2de4('0x55'),_0x111366['id']);return getTicket(_0x2cb17c,_0x2ca23e,_0x111366,_0x1b70a7,_0x18a703);})[_0x2de4('0x16')](function(_0x42d2f1){if(_0x42d2f1){logger[_0x2de4('0xb')]('The\x20Ticket\x20ID\x20is:',_0x42d2f1['id']);switch(_0x2cb17c[_0x2de4('0x3d')]){case _0x2de4('0x56'):logger['info']('[QUEUE]',_0x2de4('0x57'));return request({'uri':util[_0x2de4('0xd')](_0x2de4('0x58'),_0x2cb17c['remoteUri'],_0x2ca23e['id'],_0x42d2f1['id']),'method':_0x2de4('0x2b')});case _0x2de4('0x59'):logger['info']('[QUEUE]',_0x2de4('0x5a'));emit(util[_0x2de4('0xd')](_0x2de4('0x5b'),_0xccf890[_0x2de4('0x11')]),_0x2de4('0x5c'),{'uri':util[_0x2de4('0xd')](_0x2de4('0x5d'),_0x2cb17c['remoteUri'][_0x2de4('0x5e')](_0x2de4('0x5f'),''),_0x42d2f1['id'])});break;default:logger[_0x2de4('0x60')](_0x2de4('0x4b'),_0x2de4('0x61'));}}})[_0x2de4('0x62')](function(_0x26bbd3){logger[_0x2de4('0x60')](_0x2de4('0x63'),util[_0x2de4('0x64')](_0x26bbd3,{'showHidden':!![],'depth':null}));});};exports[_0x2de4('0x65')]=function(_0x242907,_0x386020,_0x49ca56,_0x258c65,_0x3fea42,_0x101c5e,_0x477db8){var _0x51c5d5,_0x16520a;_0x101c5e['remoteUri']=intUtil['stripTrailingSlash'](_0x101c5e[_0x2de4('0x1c')]);_0x101c5e[_0x2de4('0x4a')]=intUtil[_0x2de4('0x49')](_0x101c5e[_0x2de4('0x4a')]);if(_0x477db8&&_0x477db8[_0x2de4('0x66')]&&_0x477db8[_0x2de4('0x66')]!=='none'){logger[_0x2de4('0xb')]('[OUTBOUND]','Recording\x20is\x20enabled!');_0x386020['recordingURL']=util[_0x2de4('0xd')]('%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s',_0x101c5e[_0x2de4('0x4a')],_0x386020[_0x2de4('0x4f')],md5(_0x386020[_0x2de4('0x4f')]));}headers['Authorization']=getAuth(_0x101c5e);return getUser(_0x101c5e,_0x258c65[_0x2de4('0x51')])['then'](function(_0x214581){_0x51c5d5=_0x214581;logger[_0x2de4('0xb')]('The\x20User\x20ID\x20is:',_0x51c5d5['id']);return getEndUser(_0x101c5e,_0x386020[_0x2de4('0x67')],_0x386020[_0x2de4('0x68')]);})['then'](function(_0x5ec6ba){_0x16520a=_0x5ec6ba;logger[_0x2de4('0xb')](_0x2de4('0x55'),_0x16520a['id']);return getTicket(_0x101c5e,_0x51c5d5,_0x16520a,_0x49ca56,_0x386020);})['then'](function(_0xd944dc){if(_0xd944dc){logger[_0x2de4('0xb')](_0x2de4('0x69'),_0xd944dc['id']);switch(_0x101c5e[_0x2de4('0x3d')]){case _0x2de4('0x56'):logger[_0x2de4('0xb')](_0x2de4('0x6a'),_0x2de4('0x57'));return request({'uri':util[_0x2de4('0xd')]('%s/channels/voice/agents/%d/tickets/%d/display.json',_0x101c5e[_0x2de4('0x1c')],_0x51c5d5['id'],_0xd944dc['id']),'method':_0x2de4('0x2b')});case _0x2de4('0x59'):logger['info'](_0x2de4('0x6a'),_0x2de4('0x5a'));emit(util['format'](_0x2de4('0x5b'),_0x258c65[_0x2de4('0x11')]),_0x2de4('0x5c'),{'uri':util['format']('%s/agent/tickets/%s',_0x101c5e[_0x2de4('0x1c')][_0x2de4('0x5e')]('/api/v2',''),_0xd944dc['id'])});break;default:logger[_0x2de4('0x60')](_0x2de4('0x6a'),_0x2de4('0x61'));}}})[_0x2de4('0x62')](function(_0x156748){logger[_0x2de4('0x60')](_0x2de4('0x6b'),util['inspect'](_0x156748,{'showHidden':!![],'depth':null}));});};exports[_0x2de4('0x6c')]=function(_0x13ef3b,_0x50dc27,_0x2ced87,_0x46c3cb,_0x4cb4ea,_0x1958c1){var _0x13db91,_0x33cb88;_0x1958c1['remoteUri']=intUtil['stripTrailingSlash'](_0x1958c1[_0x2de4('0x1c')]);_0x1958c1[_0x2de4('0x4a')]=intUtil[_0x2de4('0x49')](_0x1958c1[_0x2de4('0x4a')]);if(_0x4cb4ea&&_0x4cb4ea[_0x2de4('0x6d')]){logger['info']('['+_0x50dc27[_0x2de4('0x6e')][_0x2de4('0x6f')]()+']',_0x2de4('0x4c'));_0x50dc27['recordingURL']=util[_0x2de4('0xd')](_0x2de4('0x4e'),_0x1958c1['serverUrl'],_0x50dc27[_0x2de4('0x4f')],md5(_0x50dc27[_0x2de4('0x4f')]));}else{_0x50dc27[_0x2de4('0x4d')]='';}headers['Authorization']=getAuth(_0x1958c1);return getUser(_0x1958c1)[_0x2de4('0x16')](function(_0x1cae5b){_0x13db91=_0x1cae5b;logger[_0x2de4('0xb')](_0x2de4('0x52'),_0x13db91['id']);return getEndUser(_0x1958c1,_0x50dc27[_0x2de4('0x53')],_0x50dc27[_0x2de4('0x54')]);})['then'](function(_0x518793){_0x33cb88=_0x518793;logger[_0x2de4('0xb')](_0x2de4('0x55'),_0x33cb88['id']);return getTicket(_0x1958c1,_0x13db91,_0x33cb88,_0x2ced87,_0x50dc27);})['then'](function(_0x5d23b7){if(_0x5d23b7){logger[_0x2de4('0xb')](_0x2de4('0x69'),_0x5d23b7['id']);}})[_0x2de4('0x62')](function(_0x2c7188){logger[_0x2de4('0x60')]('['+_0x50dc27[_0x2de4('0x6e')][_0x2de4('0x6f')]()+']'+_0x2de4('0x70'),util['inspect'](_0x2c7188,{'showHidden':!![],'depth':null}));});};
\ No newline at end of file