Built motion from commit 85328c08.|2.5.50
[motion2.git] / server / services / ami / trigger / integration / desk.js
index 1673886..99b2aff 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x9ba1=['Displaying\x20ticket\x20to\x20agent\x20in\x20a\x20new\x20tab...','trigger:browser:url','https://xcally.desk.com/web/agent/case/%d','error','Desk\x20account\x20type\x20not\x20recognized','stringify','outbound','recordingFormat','none','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','destcalleridname','integrationTab','[OUTBOUND]','unmanaged','lastevent','toUpperCase','calleridname','catch','lodash','request-promise','md5','util','./util','../../../../config/environment','desk','redis','localhost','socket.io-emitter','emit','application/json','validateEmail','Getting\x20agent\x20with\x20email','remoteUri','then','find','entries','info','Agent\x20found!','format','Invalid\x20email\x20format,\x20using\x20the\x20admin\x20account!','%s/users/me','debug','[HTTP]','GET','basic','%s:%s','password','authType','%s/token:%s','username','token','Basic\x20%s','toString','base64','Searching\x20enduser\x20with\x20phone','%s/customers/search','total_entries','_embedded','%s/customers','POST','work','map','length','forEach','includes','string','picklist','type','nameField','toLowerCase','content','idField','custom_fields','variable','customField','variableName','customVariable','Variable','name','priority','Creating\x20new\x20ticket...','merge','getString','Subjects','phone','Motion','concat','Tags','Descriptions','/api/v2/users/%d','user','Fields','stripTrailingSlash','serverUrl','monitor_format','[QUEUE]','Recording\x20is\x20enabled!','recordingURL','uniqueid','Authorization','email','The\x20User\x20ID\x20is:','calleridnum','The\x20Enduser\x20ID\x20is:','Ticket\x20created!','The\x20Ticket\x20ID\x20is:','Displaying\x20ticket\x20to\x20agent...','user:%s','trigger:desk:display'];(function(_0x565381,_0x33b524){var _0x492ea5=function(_0x3f97a6){while(--_0x3f97a6){_0x565381['push'](_0x565381['shift']());}};_0x492ea5(++_0x33b524);}(_0x9ba1,0x1c6));var _0x19ba=function(_0x3428fa,_0x46919d){_0x3428fa=_0x3428fa-0x0;var _0x32acfa=_0x9ba1[_0x3428fa];return _0x32acfa;};'use strict';var _=require(_0x19ba('0x0'));var rp=require(_0x19ba('0x1'));var md5=require(_0x19ba('0x2'));var util=require(_0x19ba('0x3'));var Redis=require('ioredis');var intUtil=require(_0x19ba('0x4'));var config=require(_0x19ba('0x5'));var logger=require('../../../../config/logger')(_0x19ba('0x6'));config[_0x19ba('0x7')]=_['defaults'](config[_0x19ba('0x7')],{'host':_0x19ba('0x8'),'port':0x18eb});var io=require(_0x19ba('0x9'))(new Redis(config['redis']));function emit(_0x18c8c5,_0x20e405,_0x43ca5c){io['to'](_0x18c8c5)[_0x19ba('0xa')](_0x20e405,_0x43ca5c);}var headers={'Content-Type':_0x19ba('0xb'),'Accept':'application/json'};function getUser(_0x26a1ca,_0x11e074){if(intUtil[_0x19ba('0xc')](_0x11e074)===!![]){logger['info'](_0x19ba('0xd'),_0x11e074);return request({'uri':util['format']('%s/users',_0x26a1ca[_0x19ba('0xe')])})[_0x19ba('0xf')](function(_0x2fdc03){if(_0x2fdc03['total_entries']){return _[_0x19ba('0x10')](_0x2fdc03['_embedded'][_0x19ba('0x11')],{'email':_0x11e074});}})[_0x19ba('0xf')](function(_0x4c9d32){if(_0x4c9d32){logger[_0x19ba('0x12')](_0x19ba('0x13'));return _0x4c9d32;}else{logger[_0x19ba('0x12')]('Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!');return request({'uri':util[_0x19ba('0x14')]('%s/users/me',_0x26a1ca[_0x19ba('0xe')])});}});}else{logger[_0x19ba('0x12')](_0x19ba('0x15'));return request({'uri':util['format'](_0x19ba('0x16'),_0x26a1ca['remoteUri'])});}}function request(_0x32493b){logger[_0x19ba('0x17')](_0x19ba('0x18'),JSON['stringify'](_0x32493b));return rp(_['defaults'](_0x32493b,{'method':_0x19ba('0x19'),'headers':headers,'json':!![]}));}function getAuth(_0x332612){var _0x1b9f7c;if(_0x332612['authType']===_0x19ba('0x1a')){_0x1b9f7c=util['format'](_0x19ba('0x1b'),_0x332612['username'],_0x332612[_0x19ba('0x1c')]);}else if(_0x332612[_0x19ba('0x1d')]==='token'){_0x1b9f7c=util['format'](_0x19ba('0x1e'),_0x332612[_0x19ba('0x1f')],_0x332612[_0x19ba('0x20')]);}return util['format'](_0x19ba('0x21'),new Buffer(_0x1b9f7c)[_0x19ba('0x22')](_0x19ba('0x23')));}function getEndUser(_0x49bbca,_0x381f0e,_0x577024){logger[_0x19ba('0x12')](_0x19ba('0x24'),_0x577024);return request({'uri':util[_0x19ba('0x14')](_0x19ba('0x25'),_0x49bbca[_0x19ba('0xe')]),'qs':{'phone':_0x577024}})[_0x19ba('0xf')](function(_0x321139){if(_0x321139[_0x19ba('0x26')]){logger[_0x19ba('0x12')]('Enduser\x20found!');return _0x321139[_0x19ba('0x27')]['entries'][0x0];}else{logger[_0x19ba('0x12')]('Enduser\x20not\x20found,\x20creating\x20a\x20new\x20enduser!');return request({'uri':util[_0x19ba('0x14')](_0x19ba('0x28'),_0x49bbca[_0x19ba('0xe')]),'method':_0x19ba('0x29'),'body':{'first_name':_0x381f0e,'title':_0x381f0e,'phone_numbers':[{'type':_0x19ba('0x2a'),'value':_0x577024}]}});}});}function getTags(_0x1cdfed,_0x423e47){var _0x2394bb=[];if(_0x1cdfed&&_0x1cdfed['length']>0x0){_0x2394bb=_[_0x19ba('0x2b')](_0x1cdfed,_0x423e47);}return _0x2394bb;}function getCustomFields(_0x12b117,_0x3c922f){var _0x23c6d3=[];var _0x279fc2={'custom_fields':{}};if(_0x12b117[_0x19ba('0x2c')]>0x0){_[_0x19ba('0x2d')](_0x12b117,function(_0x3ac8e1){if(_[_0x19ba('0x2e')]([_0x19ba('0x2f'),_0x19ba('0x30')],_0x3ac8e1[_0x19ba('0x31')])&&_0x3ac8e1['nameField']&&!_0x3ac8e1['customField']){_0x279fc2[_0x3ac8e1[_0x19ba('0x32')][_0x19ba('0x33')]()]=_0x3ac8e1[_0x19ba('0x34')][_0x19ba('0x22')]();}else if(_[_0x19ba('0x2e')](['string',_0x19ba('0x30')],_0x3ac8e1['type'])&&_0x3ac8e1[_0x19ba('0x35')]&&_0x3ac8e1['customField']){_0x279fc2[_0x19ba('0x36')][_0x3ac8e1[_0x19ba('0x35')]]=_0x3ac8e1[_0x19ba('0x34')][_0x19ba('0x22')]();}else if(_0x3ac8e1[_0x19ba('0x31')]===_0x19ba('0x37')&&_0x3ac8e1['variableName']&&_0x3ac8e1[_0x19ba('0x35')]&&_0x3ac8e1[_0x19ba('0x38')]){_0x3c922f[_0x3ac8e1[_0x19ba('0x39')]]&&(_0x279fc2['custom_fields'][_0x3ac8e1[_0x19ba('0x35')]]=_0x3c922f[_0x3ac8e1[_0x19ba('0x39')]][_0x19ba('0x22')]());}else if(_0x3ac8e1['type']===_0x19ba('0x3a')&&_0x3ac8e1[_0x19ba('0x3b')]&&_0x3ac8e1['Variable']['name']&&_0x3ac8e1[_0x19ba('0x35')]&&_0x3ac8e1[_0x19ba('0x38')]){_0x3c922f[_0x3ac8e1[_0x19ba('0x3b')][_0x19ba('0x3c')][_0x19ba('0x33')]()]&&(_0x279fc2[_0x19ba('0x36')][_0x3ac8e1[_0x19ba('0x35')]]=_0x3c922f[_0x3ac8e1[_0x19ba('0x3b')]['name']['toLowerCase']()]['toString']());}});}if(_0x279fc2[_0x19ba('0x3d')]){_0x279fc2[_0x19ba('0x3d')]=Number(_0x279fc2[_0x19ba('0x3d')]);}return _0x279fc2;}function getTicket(_0x759229,_0x4d0754,_0x5adc69,_0x40bad2,_0x19d5a6){logger[_0x19ba('0x12')](_0x19ba('0x3e'));var _0x5c75fb=_[_0x19ba('0x3f')]({'subject':intUtil[_0x19ba('0x40')](_0x40bad2[_0x19ba('0x41')],_0x19d5a6,'\x20'),'type':_0x19ba('0x42'),'status':'new','labels':['xCALLY',_0x19ba('0x43'),'CTI'][_0x19ba('0x44')](getTags(_0x40bad2[_0x19ba('0x45')],_0x19ba('0x3c'))),'description':intUtil['getString'](_0x40bad2[_0x19ba('0x46')],_0x19d5a6,'\x0a'),'_links':{'assigned_user':{'href':util[_0x19ba('0x14')](_0x19ba('0x47'),_0x4d0754['id']),'class':_0x19ba('0x48')}},'message':{'direction':'in','body':intUtil['getString'](_0x40bad2['Descriptions'],_0x19d5a6,'\x0a')}},getCustomFields(_0x40bad2[_0x19ba('0x49')],_0x19d5a6));return request({'uri':util['format']('%s/customers/%d/cases',_0x759229[_0x19ba('0xe')],_0x5adc69['id']),'method':'POST','body':_0x5c75fb});}exports['queue']=function(_0x3c6d8c,_0x379987,_0x1179dc,_0x1bab32,_0x208ae2,_0xee24e9){var _0x235534,_0x3b8049;_0xee24e9[_0x19ba('0xe')]=intUtil[_0x19ba('0x4a')](_0xee24e9['remoteUri']);_0xee24e9[_0x19ba('0x4b')]=intUtil[_0x19ba('0x4a')](_0xee24e9[_0x19ba('0x4b')]);if(_0x208ae2&&_0x208ae2[_0x19ba('0x4c')]){logger[_0x19ba('0x12')](_0x19ba('0x4d'),_0x19ba('0x4e'));_0x379987[_0x19ba('0x4f')]=util['format']('%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s',_0xee24e9['serverUrl'],_0x379987[_0x19ba('0x50')],md5(_0x379987[_0x19ba('0x50')]));}else{_0x379987[_0x19ba('0x4f')]='';}headers[_0x19ba('0x51')]=getAuth(_0xee24e9);return getUser(_0xee24e9,_0x1bab32[_0x19ba('0x52')])[_0x19ba('0xf')](function(_0x42df8f){_0x235534=_0x42df8f;logger[_0x19ba('0x12')](_0x19ba('0x53'),_0x235534['id']);return getEndUser(_0xee24e9,_0x379987['calleridname'],_0x379987[_0x19ba('0x54')]);})['then'](function(_0x50d372){_0x3b8049=_0x50d372;logger[_0x19ba('0x12')](_0x19ba('0x55'),_0x3b8049['id']);return getTicket(_0xee24e9,_0x235534,_0x3b8049,_0x1179dc,_0x379987);})[_0x19ba('0xf')](function(_0x14f56c){if(_0x14f56c){logger[_0x19ba('0x12')](_0x19ba('0x56'));logger[_0x19ba('0x12')](_0x19ba('0x57'),_0x14f56c['id']);switch(_0xee24e9[_0x19ba('0x31')]){case'integrationTab':logger[_0x19ba('0x12')](_0x19ba('0x4d'),_0x19ba('0x58'));emit(util[_0x19ba('0x14')](_0x19ba('0x59'),_0x1bab32['name']),_0x19ba('0x5a'),{'recordId':_0x14f56c['id']});break;case'newTab':logger[_0x19ba('0x12')](_0x19ba('0x4d'),_0x19ba('0x5b'));emit(util['format'](_0x19ba('0x59'),_0x1bab32['name']),_0x19ba('0x5c'),{'uri':util[_0x19ba('0x14')](_0x19ba('0x5d'),_0x14f56c['id'])});break;default:logger[_0x19ba('0x5e')]('[QUEUE]',_0x19ba('0x5f'));}}})['catch'](function(_0x42e9ce){console['error'](_0x42e9ce);logger[_0x19ba('0x5e')](_0x19ba('0x4d'),JSON[_0x19ba('0x60')](_0x42e9ce));});};exports[_0x19ba('0x61')]=function(_0x1e1b0e,_0x58bfeb,_0x584410,_0x674afc,_0x4f3985,_0x30b82d,_0x12c9c5){var _0x4cc5d6,_0x5f319f;_0x30b82d[_0x19ba('0xe')]=intUtil[_0x19ba('0x4a')](_0x30b82d[_0x19ba('0xe')]);_0x30b82d[_0x19ba('0x4b')]=intUtil['stripTrailingSlash'](_0x30b82d[_0x19ba('0x4b')]);if(_0x12c9c5&&_0x12c9c5[_0x19ba('0x62')]&&_0x12c9c5[_0x19ba('0x62')]!==_0x19ba('0x63')){logger[_0x19ba('0x12')]('[OUTBOUND]',_0x19ba('0x4e'));_0x58bfeb[_0x19ba('0x4f')]=util[_0x19ba('0x14')](_0x19ba('0x64'),_0x30b82d[_0x19ba('0x4b')],_0x58bfeb[_0x19ba('0x50')],md5(_0x58bfeb['uniqueid']));}headers['Authorization']=getAuth(_0x30b82d);return getUser(_0x30b82d,_0x674afc[_0x19ba('0x52')])[_0x19ba('0xf')](function(_0x2fc162){_0x4cc5d6=_0x2fc162;logger[_0x19ba('0x12')](_0x19ba('0x53'),_0x4cc5d6['id']);return getEndUser(_0x30b82d,_0x58bfeb[_0x19ba('0x65')],_0x58bfeb['destcalleridnum']);})[_0x19ba('0xf')](function(_0x437b73){_0x5f319f=_0x437b73;logger[_0x19ba('0x12')](_0x19ba('0x55'),_0x5f319f['id']);return getTicket(_0x30b82d,_0x4cc5d6,_0x5f319f,_0x584410,_0x58bfeb);})['then'](function(_0x42f677){if(_0x42f677){logger[_0x19ba('0x12')]('Ticket\x20created!');logger[_0x19ba('0x12')](_0x19ba('0x57'),_0x42f677['id']);switch(_0x30b82d['type']){case _0x19ba('0x66'):logger[_0x19ba('0x12')]('[QUEUE]',_0x19ba('0x58'));emit(util[_0x19ba('0x14')](_0x19ba('0x59'),_0x674afc[_0x19ba('0x3c')]),_0x19ba('0x5a'),{'recordId':_0x42f677['id']});break;case'newTab':logger[_0x19ba('0x12')](_0x19ba('0x4d'),'Displaying\x20ticket\x20to\x20agent\x20in\x20a\x20new\x20tab...');emit(util['format'](_0x19ba('0x59'),_0x674afc[_0x19ba('0x3c')]),'trigger:browser:url',{'uri':util[_0x19ba('0x14')]('%s/agent/tickets/%s',_0x30b82d['remoteUri'],_0x42f677['id'])});break;default:logger[_0x19ba('0x5e')]('[OUTBOUND]','Desk\x20account\x20type\x20not\x20recognized');}}})['catch'](function(_0x42e235){logger[_0x19ba('0x5e')](_0x19ba('0x67'),JSON[_0x19ba('0x60')](_0x42e235));});};exports[_0x19ba('0x68')]=function(_0x1c964f,_0x43853b,_0x4caa57,_0x216750,_0x3baaf6,_0x10f157){var _0x5038b9,_0x272201;_0x10f157[_0x19ba('0xe')]=intUtil[_0x19ba('0x4a')](_0x10f157[_0x19ba('0xe')]);_0x10f157[_0x19ba('0x4b')]=intUtil[_0x19ba('0x4a')](_0x10f157[_0x19ba('0x4b')]);if(_0x3baaf6&&_0x3baaf6[_0x19ba('0x4c')]){logger['info']('['+_0x43853b[_0x19ba('0x69')][_0x19ba('0x6a')]()+']',_0x19ba('0x4e'));_0x43853b['recordingURL']=util[_0x19ba('0x14')](_0x19ba('0x64'),_0x10f157[_0x19ba('0x4b')],_0x43853b[_0x19ba('0x50')],md5(_0x43853b[_0x19ba('0x50')]));}else{_0x43853b[_0x19ba('0x4f')]='';}headers['Authorization']=getAuth(_0x10f157);return getUser(_0x10f157)['then'](function(_0x498b95){_0x5038b9=_0x498b95;logger[_0x19ba('0x12')](_0x19ba('0x53'),_0x5038b9['id']);return getEndUser(_0x10f157,_0x43853b[_0x19ba('0x6b')],_0x43853b['calleridnum']);})[_0x19ba('0xf')](function(_0x4fc846){_0x272201=_0x4fc846;logger[_0x19ba('0x12')](_0x19ba('0x55'),_0x272201['id']);return getTicket(_0x10f157,_0x5038b9,_0x272201,_0x4caa57,_0x43853b);})[_0x19ba('0xf')](function(_0x2e329b){if(_0x2e329b){logger[_0x19ba('0x12')]('Ticket\x20created!');logger[_0x19ba('0x12')](_0x19ba('0x57'),_0x2e329b['id']);}})[_0x19ba('0x6c')](function(_0x3ccf5d){logger[_0x19ba('0x5e')]('['+_0x43853b[_0x19ba('0x69')][_0x19ba('0x6a')]()+']',JSON[_0x19ba('0x60')](_0x3ccf5d));});};
\ No newline at end of file
+var _0x3e74=['customField','content','idField','custom_fields','variable','variableName','name','Variable','toLowerCase','priority','Creating\x20new\x20ticket...','getString','phone','new','xCALLY','Motion','CTI','concat','Descriptions','/api/v2/users/%d','user','Fields','%s/customers/%d/cases','stripTrailingSlash','serverUrl','recordingURL','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','uniqueid','Authorization','email','The\x20User\x20ID\x20is:','Ticket\x20created!','The\x20Ticket\x20ID\x20is:','integrationTab','user:%s','newTab','[QUEUE]','Displaying\x20ticket\x20to\x20agent\x20in\x20a\x20new\x20tab...','https://xcally.desk.com/web/agent/case/%d','error','Desk\x20account\x20type\x20not\x20recognized','catch','outbound','recordingFormat','none','[OUTBOUND]','Recording\x20is\x20enabled!','destcalleridnum','The\x20Enduser\x20ID\x20is:','trigger:desk:display','trigger:browser:url','%s/agent/tickets/%s','stringify','unmanaged','monitor_format','lastevent','toUpperCase','calleridnum','lodash','md5','util','ioredis','../../../../config/logger','redis','defaults','localhost','socket.io-emitter','emit','application/json','info','Getting\x20agent\x20with\x20email','%s/users','then','find','_embedded','entries','Agent\x20found!','Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!','remoteUri','Invalid\x20email\x20format,\x20using\x20the\x20admin\x20account!','format','debug','[HTTP]','GET','authType','basic','%s:%s','username','password','token','Basic\x20%s','toString','base64','Searching\x20enduser\x20with\x20phone','total_entries','Enduser\x20found!','Enduser\x20not\x20found,\x20creating\x20a\x20new\x20enduser!','POST','length','forEach','includes','string','picklist','type','nameField'];(function(_0x52661a,_0xaec097){var _0x2cb79b=function(_0x4d466b){while(--_0x4d466b){_0x52661a['push'](_0x52661a['shift']());}};_0x2cb79b(++_0xaec097);}(_0x3e74,0x175));var _0x43e7=function(_0x24eb83,_0x2670a6){_0x24eb83=_0x24eb83-0x0;var _0x1061e4=_0x3e74[_0x24eb83];return _0x1061e4;};'use strict';var _=require(_0x43e7('0x0'));var rp=require('request-promise');var md5=require(_0x43e7('0x1'));var util=require(_0x43e7('0x2'));var Redis=require(_0x43e7('0x3'));var intUtil=require('./util');var config=require('../../../../config/environment');var logger=require(_0x43e7('0x4'))('desk');config[_0x43e7('0x5')]=_[_0x43e7('0x6')](config[_0x43e7('0x5')],{'host':_0x43e7('0x7'),'port':0x18eb});var io=require(_0x43e7('0x8'))(new Redis(config['redis']));function emit(_0x45a0d1,_0x3491d6,_0x2ede2d){io['to'](_0x45a0d1)[_0x43e7('0x9')](_0x3491d6,_0x2ede2d);}var headers={'Content-Type':_0x43e7('0xa'),'Accept':'application/json'};function getUser(_0x212c6c,_0x554d44){if(intUtil['validateEmail'](_0x554d44)===!![]){logger[_0x43e7('0xb')](_0x43e7('0xc'),_0x554d44);return request({'uri':util['format'](_0x43e7('0xd'),_0x212c6c['remoteUri'])})[_0x43e7('0xe')](function(_0x37302c){if(_0x37302c['total_entries']){return _[_0x43e7('0xf')](_0x37302c[_0x43e7('0x10')][_0x43e7('0x11')],{'email':_0x554d44});}})[_0x43e7('0xe')](function(_0x4e008c){if(_0x4e008c){logger['info'](_0x43e7('0x12'));return _0x4e008c;}else{logger[_0x43e7('0xb')](_0x43e7('0x13'));return request({'uri':util['format']('%s/users/me',_0x212c6c[_0x43e7('0x14')])});}});}else{logger[_0x43e7('0xb')](_0x43e7('0x15'));return request({'uri':util[_0x43e7('0x16')]('%s/users/me',_0x212c6c['remoteUri'])});}}function request(_0xdf16c){logger[_0x43e7('0x17')](_0x43e7('0x18'),JSON['stringify'](_0xdf16c));return rp(_['defaults'](_0xdf16c,{'method':_0x43e7('0x19'),'headers':headers,'json':!![]}));}function getAuth(_0x1ca758){var _0x9037d3;if(_0x1ca758[_0x43e7('0x1a')]===_0x43e7('0x1b')){_0x9037d3=util[_0x43e7('0x16')](_0x43e7('0x1c'),_0x1ca758[_0x43e7('0x1d')],_0x1ca758[_0x43e7('0x1e')]);}else if(_0x1ca758[_0x43e7('0x1a')]===_0x43e7('0x1f')){_0x9037d3=util[_0x43e7('0x16')]('%s/token:%s',_0x1ca758[_0x43e7('0x1d')],_0x1ca758[_0x43e7('0x1f')]);}return util['format'](_0x43e7('0x20'),new Buffer(_0x9037d3)[_0x43e7('0x21')](_0x43e7('0x22')));}function getEndUser(_0x28aacc,_0x4077fb,_0x2f4cb4){logger['info'](_0x43e7('0x23'),_0x2f4cb4);return request({'uri':util['format']('%s/customers/search',_0x28aacc[_0x43e7('0x14')]),'qs':{'phone':_0x2f4cb4}})[_0x43e7('0xe')](function(_0x4b2b9f){if(_0x4b2b9f[_0x43e7('0x24')]){logger['info'](_0x43e7('0x25'));return _0x4b2b9f['_embedded'][_0x43e7('0x11')][0x0];}else{logger[_0x43e7('0xb')](_0x43e7('0x26'));return request({'uri':util[_0x43e7('0x16')]('%s/customers',_0x28aacc['remoteUri']),'method':_0x43e7('0x27'),'body':{'first_name':_0x4077fb,'title':_0x4077fb,'phone_numbers':[{'type':'work','value':_0x2f4cb4}]}});}});}function getTags(_0x2dd5f,_0x40dc8f){var _0x3565cf=[];if(_0x2dd5f&&_0x2dd5f[_0x43e7('0x28')]>0x0){_0x3565cf=_['map'](_0x2dd5f,_0x40dc8f);}return _0x3565cf;}function getCustomFields(_0x33a1a5,_0x4690a6){var _0x45b675=[];var _0x50f9f5={'custom_fields':{}};if(_0x33a1a5[_0x43e7('0x28')]>0x0){_[_0x43e7('0x29')](_0x33a1a5,function(_0x2b85a5){if(_[_0x43e7('0x2a')]([_0x43e7('0x2b'),_0x43e7('0x2c')],_0x2b85a5[_0x43e7('0x2d')])&&_0x2b85a5[_0x43e7('0x2e')]&&!_0x2b85a5[_0x43e7('0x2f')]){_0x50f9f5[_0x2b85a5[_0x43e7('0x2e')]['toLowerCase']()]=_0x2b85a5[_0x43e7('0x30')][_0x43e7('0x21')]();}else if(_[_0x43e7('0x2a')]([_0x43e7('0x2b'),_0x43e7('0x2c')],_0x2b85a5['type'])&&_0x2b85a5[_0x43e7('0x31')]&&_0x2b85a5[_0x43e7('0x2f')]){_0x50f9f5[_0x43e7('0x32')][_0x2b85a5[_0x43e7('0x31')]]=_0x2b85a5['content']['toString']();}else if(_0x2b85a5['type']===_0x43e7('0x33')&&_0x2b85a5[_0x43e7('0x34')]&&_0x2b85a5[_0x43e7('0x31')]&&_0x2b85a5[_0x43e7('0x2f')]){_0x4690a6[_0x2b85a5[_0x43e7('0x34')]]&&(_0x50f9f5[_0x43e7('0x32')][_0x2b85a5['idField']]=_0x4690a6[_0x2b85a5['variableName']]['toString']());}else if(_0x2b85a5['type']==='customVariable'&&_0x2b85a5['Variable']&&_0x2b85a5['Variable'][_0x43e7('0x35')]&&_0x2b85a5['idField']&&_0x2b85a5[_0x43e7('0x2f')]){_0x4690a6[_0x2b85a5[_0x43e7('0x36')][_0x43e7('0x35')][_0x43e7('0x37')]()]&&(_0x50f9f5[_0x43e7('0x32')][_0x2b85a5[_0x43e7('0x31')]]=_0x4690a6[_0x2b85a5[_0x43e7('0x36')]['name']['toLowerCase']()]['toString']());}});}if(_0x50f9f5[_0x43e7('0x38')]){_0x50f9f5[_0x43e7('0x38')]=Number(_0x50f9f5[_0x43e7('0x38')]);}return _0x50f9f5;}function getTicket(_0x16cdba,_0x1b1440,_0x1ed538,_0x1d4589,_0x2ffd43){logger['info'](_0x43e7('0x39'));var _0x2b0ffe=_['merge']({'subject':intUtil[_0x43e7('0x3a')](_0x1d4589['Subjects'],_0x2ffd43,'\x20'),'type':_0x43e7('0x3b'),'status':_0x43e7('0x3c'),'labels':[_0x43e7('0x3d'),_0x43e7('0x3e'),_0x43e7('0x3f')][_0x43e7('0x40')](getTags(_0x1d4589['Tags'],'name')),'description':intUtil[_0x43e7('0x3a')](_0x1d4589[_0x43e7('0x41')],_0x2ffd43,'\x0a'),'_links':{'assigned_user':{'href':util[_0x43e7('0x16')](_0x43e7('0x42'),_0x1b1440['id']),'class':_0x43e7('0x43')}},'message':{'direction':'in','body':intUtil['getString'](_0x1d4589[_0x43e7('0x41')],_0x2ffd43,'\x0a')}},getCustomFields(_0x1d4589[_0x43e7('0x44')],_0x2ffd43));return request({'uri':util['format'](_0x43e7('0x45'),_0x16cdba['remoteUri'],_0x1ed538['id']),'method':_0x43e7('0x27'),'body':_0x2b0ffe});}exports['queue']=function(_0x3d81ae,_0x3b4235,_0x3a5807,_0x1c2c6b,_0x49b866,_0x47d6a1){var _0x103393,_0x40c509;_0x47d6a1[_0x43e7('0x14')]=intUtil[_0x43e7('0x46')](_0x47d6a1['remoteUri']);_0x47d6a1['serverUrl']=intUtil['stripTrailingSlash'](_0x47d6a1[_0x43e7('0x47')]);if(_0x49b866&&_0x49b866['monitor_format']){logger[_0x43e7('0xb')]('[QUEUE]','Recording\x20is\x20enabled!');_0x3b4235[_0x43e7('0x48')]=util['format'](_0x43e7('0x49'),_0x47d6a1[_0x43e7('0x47')],_0x3b4235[_0x43e7('0x4a')],md5(_0x3b4235[_0x43e7('0x4a')]));}else{_0x3b4235['recordingURL']='';}headers[_0x43e7('0x4b')]=getAuth(_0x47d6a1);return getUser(_0x47d6a1,_0x1c2c6b[_0x43e7('0x4c')])[_0x43e7('0xe')](function(_0x1fd277){_0x103393=_0x1fd277;logger[_0x43e7('0xb')](_0x43e7('0x4d'),_0x103393['id']);return getEndUser(_0x47d6a1,_0x3b4235['calleridname'],_0x3b4235['calleridnum']);})[_0x43e7('0xe')](function(_0x36a09e){_0x40c509=_0x36a09e;logger[_0x43e7('0xb')]('The\x20Enduser\x20ID\x20is:',_0x40c509['id']);return getTicket(_0x47d6a1,_0x103393,_0x40c509,_0x3a5807,_0x3b4235);})['then'](function(_0x56489b){if(_0x56489b){logger[_0x43e7('0xb')](_0x43e7('0x4e'));logger['info'](_0x43e7('0x4f'),_0x56489b['id']);switch(_0x47d6a1[_0x43e7('0x2d')]){case _0x43e7('0x50'):logger['info']('[QUEUE]','Displaying\x20ticket\x20to\x20agent...');emit(util['format'](_0x43e7('0x51'),_0x1c2c6b[_0x43e7('0x35')]),'trigger:desk:display',{'recordId':_0x56489b['id']});break;case _0x43e7('0x52'):logger[_0x43e7('0xb')](_0x43e7('0x53'),_0x43e7('0x54'));emit(util['format'](_0x43e7('0x51'),_0x1c2c6b['name']),'trigger:browser:url',{'uri':util[_0x43e7('0x16')](_0x43e7('0x55'),_0x56489b['id'])});break;default:logger[_0x43e7('0x56')](_0x43e7('0x53'),_0x43e7('0x57'));}}})[_0x43e7('0x58')](function(_0x1cd87c){console[_0x43e7('0x56')](_0x1cd87c);logger[_0x43e7('0x56')](_0x43e7('0x53'),JSON['stringify'](_0x1cd87c));});};exports[_0x43e7('0x59')]=function(_0x46c910,_0x499c03,_0x39e3ca,_0x4e6f6d,_0x35b799,_0x520857,_0x34e2ec){var _0x1f561f,_0xfe13fa;_0x520857['remoteUri']=intUtil['stripTrailingSlash'](_0x520857[_0x43e7('0x14')]);_0x520857[_0x43e7('0x47')]=intUtil[_0x43e7('0x46')](_0x520857[_0x43e7('0x47')]);if(_0x34e2ec&&_0x34e2ec[_0x43e7('0x5a')]&&_0x34e2ec[_0x43e7('0x5a')]!==_0x43e7('0x5b')){logger[_0x43e7('0xb')](_0x43e7('0x5c'),_0x43e7('0x5d'));_0x499c03[_0x43e7('0x48')]=util['format'](_0x43e7('0x49'),_0x520857[_0x43e7('0x47')],_0x499c03['uniqueid'],md5(_0x499c03[_0x43e7('0x4a')]));}headers[_0x43e7('0x4b')]=getAuth(_0x520857);return getUser(_0x520857,_0x4e6f6d[_0x43e7('0x4c')])['then'](function(_0x5d63c6){_0x1f561f=_0x5d63c6;logger[_0x43e7('0xb')](_0x43e7('0x4d'),_0x1f561f['id']);return getEndUser(_0x520857,_0x499c03['destcalleridname'],_0x499c03[_0x43e7('0x5e')]);})['then'](function(_0x49a6ce){_0xfe13fa=_0x49a6ce;logger[_0x43e7('0xb')](_0x43e7('0x5f'),_0xfe13fa['id']);return getTicket(_0x520857,_0x1f561f,_0xfe13fa,_0x39e3ca,_0x499c03);})[_0x43e7('0xe')](function(_0x40155c){if(_0x40155c){logger[_0x43e7('0xb')]('Ticket\x20created!');logger[_0x43e7('0xb')](_0x43e7('0x4f'),_0x40155c['id']);switch(_0x520857['type']){case _0x43e7('0x50'):logger[_0x43e7('0xb')](_0x43e7('0x53'),'Displaying\x20ticket\x20to\x20agent...');emit(util['format']('user:%s',_0x4e6f6d[_0x43e7('0x35')]),_0x43e7('0x60'),{'recordId':_0x40155c['id']});break;case _0x43e7('0x52'):logger[_0x43e7('0xb')]('[QUEUE]','Displaying\x20ticket\x20to\x20agent\x20in\x20a\x20new\x20tab...');emit(util[_0x43e7('0x16')](_0x43e7('0x51'),_0x4e6f6d[_0x43e7('0x35')]),_0x43e7('0x61'),{'uri':util['format'](_0x43e7('0x62'),_0x520857[_0x43e7('0x14')],_0x40155c['id'])});break;default:logger[_0x43e7('0x56')](_0x43e7('0x5c'),_0x43e7('0x57'));}}})[_0x43e7('0x58')](function(_0x4665db){logger[_0x43e7('0x56')](_0x43e7('0x5c'),JSON[_0x43e7('0x63')](_0x4665db));});};exports[_0x43e7('0x64')]=function(_0x57fdfe,_0x5f3824,_0x2b0711,_0x58a3a8,_0x501616,_0x50edb2){var _0xb3e981,_0xe666b0;_0x50edb2['remoteUri']=intUtil[_0x43e7('0x46')](_0x50edb2[_0x43e7('0x14')]);_0x50edb2[_0x43e7('0x47')]=intUtil['stripTrailingSlash'](_0x50edb2[_0x43e7('0x47')]);if(_0x501616&&_0x501616[_0x43e7('0x65')]){logger[_0x43e7('0xb')]('['+_0x5f3824[_0x43e7('0x66')][_0x43e7('0x67')]()+']',_0x43e7('0x5d'));_0x5f3824[_0x43e7('0x48')]=util['format'](_0x43e7('0x49'),_0x50edb2[_0x43e7('0x47')],_0x5f3824[_0x43e7('0x4a')],md5(_0x5f3824['uniqueid']));}else{_0x5f3824['recordingURL']='';}headers[_0x43e7('0x4b')]=getAuth(_0x50edb2);return getUser(_0x50edb2)['then'](function(_0x5cb26e){_0xb3e981=_0x5cb26e;logger[_0x43e7('0xb')](_0x43e7('0x4d'),_0xb3e981['id']);return getEndUser(_0x50edb2,_0x5f3824['calleridname'],_0x5f3824[_0x43e7('0x68')]);})[_0x43e7('0xe')](function(_0x1e2fed){_0xe666b0=_0x1e2fed;logger[_0x43e7('0xb')](_0x43e7('0x5f'),_0xe666b0['id']);return getTicket(_0x50edb2,_0xb3e981,_0xe666b0,_0x2b0711,_0x5f3824);})[_0x43e7('0xe')](function(_0x398a78){if(_0x398a78){logger['info'](_0x43e7('0x4e'));logger[_0x43e7('0xb')]('The\x20Ticket\x20ID\x20is:',_0x398a78['id']);}})[_0x43e7('0x58')](function(_0x5c2c5f){logger[_0x43e7('0x56')]('['+_0x5f3824[_0x43e7('0x66')][_0x43e7('0x67')]()+']',JSON[_0x43e7('0x63')](_0x5c2c5f));});};
\ No newline at end of file