Built motion from commit 25580385.|2.6.2
[motion2.git] / server / services / ami / trigger / integration / desk.js
index 5b5d2b0..c33bce9 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xd406=['The\x20Enduser\x20ID\x20is:','Ticket\x20created!','The\x20Ticket\x20ID\x20is:','Displaying\x20ticket\x20to\x20agent...','user:%s','newTab','https://xcally.desk.com/web/agent/case/%d','error','stringify','outbound','recordingFormat','none','[OUTBOUND]','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','The\x20User\x20ID\x20is:','destcalleridname','integrationTab','trigger:desk:display','Displaying\x20ticket\x20to\x20agent\x20in\x20a\x20new\x20tab...','trigger:browser:url','%s/agent/tickets/%s','catch','unmanaged','toUpperCase','uniqueid','lastevent','lodash','request-promise','md5','util','ioredis','./util','../../../../config/logger','desk','redis','defaults','localhost','socket.io-emitter','application/json','validateEmail','info','format','%s/users','total_entries','find','_embedded','Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!','remoteUri','Invalid\x20email\x20format,\x20using\x20the\x20admin\x20account!','debug','[HTTP]','authType','basic','%s:%s','username','password','token','Basic\x20%s','toString','base64','Searching\x20enduser\x20with\x20phone','%s/customers/search','then','Enduser\x20found!','entries','%s/customers','POST','work','length','map','forEach','includes','picklist','type','nameField','customField','toLowerCase','content','string','idField','variable','variableName','custom_fields','customVariable','Variable','name','merge','getString','Subjects','phone','xCALLY','Motion','CTI','concat','Tags','Descriptions','/api/v2/users/%d','user','%s/customers/%d/cases','stripTrailingSlash','serverUrl','monitor_format','[QUEUE]','Recording\x20is\x20enabled!','recordingURL','Authorization','calleridname','calleridnum'];(function(_0x5ed346,_0x49952d){var _0x11513e=function(_0x559eea){while(--_0x559eea){_0x5ed346['push'](_0x5ed346['shift']());}};_0x11513e(++_0x49952d);}(_0xd406,0x15e));var _0x6d40=function(_0x813f61,_0x30c3bd){_0x813f61=_0x813f61-0x0;var _0x459ea4=_0xd406[_0x813f61];return _0x459ea4;};'use strict';var _=require(_0x6d40('0x0'));var rp=require(_0x6d40('0x1'));var md5=require(_0x6d40('0x2'));var util=require(_0x6d40('0x3'));var Redis=require(_0x6d40('0x4'));var intUtil=require(_0x6d40('0x5'));var config=require('../../../../config/environment');var logger=require(_0x6d40('0x6'))(_0x6d40('0x7'));config[_0x6d40('0x8')]=_[_0x6d40('0x9')](config[_0x6d40('0x8')],{'host':_0x6d40('0xa'),'port':0x18eb});var io=require(_0x6d40('0xb'))(new Redis(config[_0x6d40('0x8')]));function emit(_0x369dd1,_0x18232e,_0x4683c3){io['to'](_0x369dd1)['emit'](_0x18232e,_0x4683c3);}var headers={'Content-Type':'application/json','Accept':_0x6d40('0xc')};function getUser(_0x5b329c,_0x1d505d){if(intUtil[_0x6d40('0xd')](_0x1d505d)===!![]){logger[_0x6d40('0xe')]('Getting\x20agent\x20with\x20email',_0x1d505d);return request({'uri':util[_0x6d40('0xf')](_0x6d40('0x10'),_0x5b329c['remoteUri'])})['then'](function(_0x2ba0f6){if(_0x2ba0f6[_0x6d40('0x11')]){return _[_0x6d40('0x12')](_0x2ba0f6[_0x6d40('0x13')]['entries'],{'email':_0x1d505d});}})['then'](function(_0x28f089){if(_0x28f089){logger[_0x6d40('0xe')]('Agent\x20found!');return _0x28f089;}else{logger[_0x6d40('0xe')](_0x6d40('0x14'));return request({'uri':util[_0x6d40('0xf')]('%s/users/me',_0x5b329c[_0x6d40('0x15')])});}});}else{logger[_0x6d40('0xe')](_0x6d40('0x16'));return request({'uri':util['format']('%s/users/me',_0x5b329c[_0x6d40('0x15')])});}}function request(_0x554902){logger[_0x6d40('0x17')](_0x6d40('0x18'),JSON['stringify'](_0x554902));return rp(_[_0x6d40('0x9')](_0x554902,{'method':'GET','headers':headers,'json':!![]}));}function getAuth(_0x28db12){var _0x39c9cb;if(_0x28db12[_0x6d40('0x19')]===_0x6d40('0x1a')){_0x39c9cb=util[_0x6d40('0xf')](_0x6d40('0x1b'),_0x28db12[_0x6d40('0x1c')],_0x28db12[_0x6d40('0x1d')]);}else if(_0x28db12[_0x6d40('0x19')]===_0x6d40('0x1e')){_0x39c9cb=util['format']('%s/token:%s',_0x28db12['username'],_0x28db12[_0x6d40('0x1e')]);}return util[_0x6d40('0xf')](_0x6d40('0x1f'),new Buffer(_0x39c9cb)[_0x6d40('0x20')](_0x6d40('0x21')));}function getEndUser(_0x44f8f7,_0x4d1810,_0x360ce7){logger[_0x6d40('0xe')](_0x6d40('0x22'),_0x360ce7);return request({'uri':util['format'](_0x6d40('0x23'),_0x44f8f7[_0x6d40('0x15')]),'qs':{'phone':_0x360ce7}})[_0x6d40('0x24')](function(_0x18746e){if(_0x18746e[_0x6d40('0x11')]){logger[_0x6d40('0xe')](_0x6d40('0x25'));return _0x18746e[_0x6d40('0x13')][_0x6d40('0x26')][0x0];}else{logger['info']('Enduser\x20not\x20found,\x20creating\x20a\x20new\x20enduser!');return request({'uri':util['format'](_0x6d40('0x27'),_0x44f8f7['remoteUri']),'method':_0x6d40('0x28'),'body':{'first_name':_0x4d1810,'title':_0x4d1810,'phone_numbers':[{'type':_0x6d40('0x29'),'value':_0x360ce7}]}});}});}function getTags(_0x41a454,_0x49a822){var _0x41cc28=[];if(_0x41a454&&_0x41a454[_0x6d40('0x2a')]>0x0){_0x41cc28=_[_0x6d40('0x2b')](_0x41a454,_0x49a822);}return _0x41cc28;}function getCustomFields(_0x5b968e,_0x3d7a7d){var _0xab7314=[];var _0x6e28a1={'custom_fields':{}};if(_0x5b968e[_0x6d40('0x2a')]>0x0){_[_0x6d40('0x2c')](_0x5b968e,function(_0x5617ab){if(_[_0x6d40('0x2d')](['string',_0x6d40('0x2e')],_0x5617ab[_0x6d40('0x2f')])&&_0x5617ab[_0x6d40('0x30')]&&!_0x5617ab[_0x6d40('0x31')]){_0x6e28a1[_0x5617ab['nameField'][_0x6d40('0x32')]()]=_0x5617ab[_0x6d40('0x33')]['toString']();}else if(_['includes']([_0x6d40('0x34'),_0x6d40('0x2e')],_0x5617ab[_0x6d40('0x2f')])&&_0x5617ab[_0x6d40('0x35')]&&_0x5617ab['customField']){_0x6e28a1['custom_fields'][_0x5617ab[_0x6d40('0x35')]]=_0x5617ab[_0x6d40('0x33')][_0x6d40('0x20')]();}else if(_0x5617ab[_0x6d40('0x2f')]===_0x6d40('0x36')&&_0x5617ab[_0x6d40('0x37')]&&_0x5617ab[_0x6d40('0x35')]&&_0x5617ab[_0x6d40('0x31')]){_0x3d7a7d[_0x5617ab[_0x6d40('0x37')]]&&(_0x6e28a1[_0x6d40('0x38')][_0x5617ab[_0x6d40('0x35')]]=_0x3d7a7d[_0x5617ab['variableName']][_0x6d40('0x20')]());}else if(_0x5617ab['type']===_0x6d40('0x39')&&_0x5617ab[_0x6d40('0x3a')]&&_0x5617ab[_0x6d40('0x3a')][_0x6d40('0x3b')]&&_0x5617ab[_0x6d40('0x35')]&&_0x5617ab[_0x6d40('0x31')]){_0x3d7a7d[_0x5617ab[_0x6d40('0x3a')][_0x6d40('0x3b')]['toLowerCase']()]&&(_0x6e28a1[_0x6d40('0x38')][_0x5617ab[_0x6d40('0x35')]]=_0x3d7a7d[_0x5617ab[_0x6d40('0x3a')]['name'][_0x6d40('0x32')]()][_0x6d40('0x20')]());}});}if(_0x6e28a1['priority']){_0x6e28a1['priority']=Number(_0x6e28a1['priority']);}return _0x6e28a1;}function getTicket(_0x4ff085,_0x5dc235,_0x2e6efe,_0x391f5e,_0x396db8){logger[_0x6d40('0xe')]('Creating\x20new\x20ticket...');var _0x40bbc7=_[_0x6d40('0x3c')]({'subject':intUtil[_0x6d40('0x3d')](_0x391f5e[_0x6d40('0x3e')],_0x396db8,'\x20'),'type':_0x6d40('0x3f'),'status':'new','labels':[_0x6d40('0x40'),_0x6d40('0x41'),_0x6d40('0x42')][_0x6d40('0x43')](getTags(_0x391f5e[_0x6d40('0x44')],_0x6d40('0x3b'))),'description':intUtil['getString'](_0x391f5e[_0x6d40('0x45')],_0x396db8,'\x0a'),'_links':{'assigned_user':{'href':util[_0x6d40('0xf')](_0x6d40('0x46'),_0x5dc235['id']),'class':_0x6d40('0x47')}},'message':{'direction':'in','body':intUtil[_0x6d40('0x3d')](_0x391f5e[_0x6d40('0x45')],_0x396db8,'\x0a')}},getCustomFields(_0x391f5e['Fields'],_0x396db8));return request({'uri':util[_0x6d40('0xf')](_0x6d40('0x48'),_0x4ff085[_0x6d40('0x15')],_0x2e6efe['id']),'method':_0x6d40('0x28'),'body':_0x40bbc7});}exports['queue']=function(_0x51ef46,_0x1ad492,_0x3387c1,_0x4f73a5,_0x4b068c,_0x26c172){var _0x178046,_0x1f1841;_0x26c172['remoteUri']=intUtil[_0x6d40('0x49')](_0x26c172[_0x6d40('0x15')]);_0x26c172[_0x6d40('0x4a')]=intUtil[_0x6d40('0x49')](_0x26c172[_0x6d40('0x4a')]);if(_0x4b068c&&_0x4b068c[_0x6d40('0x4b')]){logger['info'](_0x6d40('0x4c'),_0x6d40('0x4d'));_0x1ad492[_0x6d40('0x4e')]=util[_0x6d40('0xf')]('%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s',_0x26c172['serverUrl'],_0x1ad492['uniqueid'],md5(_0x1ad492['uniqueid']));}else{_0x1ad492['recordingURL']='';}headers[_0x6d40('0x4f')]=getAuth(_0x26c172);return getUser(_0x26c172,_0x4f73a5['email'])[_0x6d40('0x24')](function(_0x4288d2){_0x178046=_0x4288d2;logger['info']('The\x20User\x20ID\x20is:',_0x178046['id']);return getEndUser(_0x26c172,_0x1ad492[_0x6d40('0x50')],_0x1ad492[_0x6d40('0x51')]);})[_0x6d40('0x24')](function(_0x30181b){_0x1f1841=_0x30181b;logger[_0x6d40('0xe')](_0x6d40('0x52'),_0x1f1841['id']);return getTicket(_0x26c172,_0x178046,_0x1f1841,_0x3387c1,_0x1ad492);})[_0x6d40('0x24')](function(_0x1b6c49){if(_0x1b6c49){logger[_0x6d40('0xe')](_0x6d40('0x53'));logger[_0x6d40('0xe')](_0x6d40('0x54'),_0x1b6c49['id']);switch(_0x26c172[_0x6d40('0x2f')]){case'integrationTab':logger[_0x6d40('0xe')](_0x6d40('0x4c'),_0x6d40('0x55'));emit(util['format'](_0x6d40('0x56'),_0x4f73a5[_0x6d40('0x3b')]),'trigger:desk:display',{'recordId':_0x1b6c49['id']});break;case _0x6d40('0x57'):logger[_0x6d40('0xe')]('[QUEUE]','Displaying\x20ticket\x20to\x20agent\x20in\x20a\x20new\x20tab...');emit(util['format'](_0x6d40('0x56'),_0x4f73a5[_0x6d40('0x3b')]),'trigger:browser:url',{'uri':util[_0x6d40('0xf')](_0x6d40('0x58'),_0x1b6c49['id'])});break;default:logger['error'](_0x6d40('0x4c'),'Desk\x20account\x20type\x20not\x20recognized');}}})['catch'](function(_0xc2bef8){console[_0x6d40('0x59')](_0xc2bef8);logger['error'](_0x6d40('0x4c'),JSON[_0x6d40('0x5a')](_0xc2bef8));});};exports[_0x6d40('0x5b')]=function(_0x45f525,_0x8a5f01,_0x5353a5,_0x2dc1ea,_0x1c17a7,_0x2df7fd,_0x3333f1){var _0x41d46d,_0x5d8b06;_0x2df7fd['remoteUri']=intUtil['stripTrailingSlash'](_0x2df7fd[_0x6d40('0x15')]);_0x2df7fd['serverUrl']=intUtil[_0x6d40('0x49')](_0x2df7fd['serverUrl']);if(_0x3333f1&&_0x3333f1[_0x6d40('0x5c')]&&_0x3333f1[_0x6d40('0x5c')]!==_0x6d40('0x5d')){logger[_0x6d40('0xe')](_0x6d40('0x5e'),'Recording\x20is\x20enabled!');_0x8a5f01['recordingURL']=util['format'](_0x6d40('0x5f'),_0x2df7fd[_0x6d40('0x4a')],_0x8a5f01['uniqueid'],md5(_0x8a5f01['uniqueid']));}headers[_0x6d40('0x4f')]=getAuth(_0x2df7fd);return getUser(_0x2df7fd,_0x2dc1ea['email'])['then'](function(_0x3a853c){_0x41d46d=_0x3a853c;logger[_0x6d40('0xe')](_0x6d40('0x60'),_0x41d46d['id']);return getEndUser(_0x2df7fd,_0x8a5f01[_0x6d40('0x61')],_0x8a5f01['destcalleridnum']);})[_0x6d40('0x24')](function(_0x21104f){_0x5d8b06=_0x21104f;logger[_0x6d40('0xe')]('The\x20Enduser\x20ID\x20is:',_0x5d8b06['id']);return getTicket(_0x2df7fd,_0x41d46d,_0x5d8b06,_0x5353a5,_0x8a5f01);})['then'](function(_0x2146f9){if(_0x2146f9){logger[_0x6d40('0xe')](_0x6d40('0x53'));logger['info'](_0x6d40('0x54'),_0x2146f9['id']);switch(_0x2df7fd[_0x6d40('0x2f')]){case _0x6d40('0x62'):logger[_0x6d40('0xe')](_0x6d40('0x4c'),_0x6d40('0x55'));emit(util['format'](_0x6d40('0x56'),_0x2dc1ea[_0x6d40('0x3b')]),_0x6d40('0x63'),{'recordId':_0x2146f9['id']});break;case'newTab':logger[_0x6d40('0xe')]('[QUEUE]',_0x6d40('0x64'));emit(util['format'](_0x6d40('0x56'),_0x2dc1ea['name']),_0x6d40('0x65'),{'uri':util[_0x6d40('0xf')](_0x6d40('0x66'),_0x2df7fd[_0x6d40('0x15')],_0x2146f9['id'])});break;default:logger['error'](_0x6d40('0x5e'),'Desk\x20account\x20type\x20not\x20recognized');}}})[_0x6d40('0x67')](function(_0x3d0568){logger[_0x6d40('0x59')]('[OUTBOUND]',JSON[_0x6d40('0x5a')](_0x3d0568));});};exports[_0x6d40('0x68')]=function(_0x70994b,_0x313804,_0x5a2aea,_0x470131,_0x597c8e,_0x519443){var _0x202618,_0x17db3c;_0x519443['remoteUri']=intUtil[_0x6d40('0x49')](_0x519443[_0x6d40('0x15')]);_0x519443['serverUrl']=intUtil[_0x6d40('0x49')](_0x519443['serverUrl']);if(_0x597c8e&&_0x597c8e[_0x6d40('0x4b')]){logger[_0x6d40('0xe')]('['+_0x313804['lastevent'][_0x6d40('0x69')]()+']','Recording\x20is\x20enabled!');_0x313804[_0x6d40('0x4e')]=util[_0x6d40('0xf')](_0x6d40('0x5f'),_0x519443['serverUrl'],_0x313804[_0x6d40('0x6a')],md5(_0x313804[_0x6d40('0x6a')]));}else{_0x313804[_0x6d40('0x4e')]='';}headers[_0x6d40('0x4f')]=getAuth(_0x519443);return getUser(_0x519443)[_0x6d40('0x24')](function(_0x719100){_0x202618=_0x719100;logger[_0x6d40('0xe')](_0x6d40('0x60'),_0x202618['id']);return getEndUser(_0x519443,_0x313804[_0x6d40('0x50')],_0x313804[_0x6d40('0x51')]);})['then'](function(_0x5c5f8b){_0x17db3c=_0x5c5f8b;logger[_0x6d40('0xe')](_0x6d40('0x52'),_0x17db3c['id']);return getTicket(_0x519443,_0x202618,_0x17db3c,_0x5a2aea,_0x313804);})[_0x6d40('0x24')](function(_0x4480ab){if(_0x4480ab){logger[_0x6d40('0xe')]('Ticket\x20created!');logger[_0x6d40('0xe')](_0x6d40('0x54'),_0x4480ab['id']);}})['catch'](function(_0x40605f){logger[_0x6d40('0x59')]('['+_0x313804[_0x6d40('0x6b')][_0x6d40('0x69')]()+']',JSON[_0x6d40('0x5a')](_0x40605f));});};
\ No newline at end of file
+var _0x814b=['calleridname','toUpperCase','lodash','request-promise','md5','util','ioredis','./util','../../../../config/logger','desk','redis','defaults','localhost','emit','application/json','validateEmail','info','Getting\x20agent\x20with\x20email','format','%s/users','then','total_entries','find','_embedded','entries','Agent\x20found!','Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!','%s/users/me','remoteUri','Invalid\x20email\x20format,\x20using\x20the\x20admin\x20account!','debug','[HTTP]','%s:%s','authType','token','username','Basic\x20%s','toString','base64','Searching\x20enduser\x20with\x20phone','%s/customers/search','Enduser\x20found!','Enduser\x20not\x20found,\x20creating\x20a\x20new\x20enduser!','%s/customers','POST','work','map','length','string','nameField','toLowerCase','content','picklist','idField','customField','custom_fields','type','variableName','customVariable','Variable','name','priority','merge','getString','Subjects','xCALLY','CTI','concat','Tags','Descriptions','/api/v2/users/%d','user','queue','stripTrailingSlash','serverUrl','monitor_format','[QUEUE]','Recording\x20is\x20enabled!','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','uniqueid','recordingURL','Authorization','email','The\x20User\x20ID\x20is:','calleridnum','Ticket\x20created!','The\x20Ticket\x20ID\x20is:','integrationTab','user:%s','trigger:desk:display','newTab','Displaying\x20ticket\x20to\x20agent\x20in\x20a\x20new\x20tab...','trigger:browser:url','https://xcally.desk.com/web/agent/case/%d','catch','error','stringify','recordingFormat','none','[OUTBOUND]','destcalleridnum','Displaying\x20ticket\x20to\x20agent...','unmanaged','lastevent'];(function(_0x29c51d,_0xa4d8ff){var _0x4555c4=function(_0x196cc9){while(--_0x196cc9){_0x29c51d['push'](_0x29c51d['shift']());}};_0x4555c4(++_0xa4d8ff);}(_0x814b,0x1a2));var _0xb814=function(_0x1314d4,_0xb0b16d){_0x1314d4=_0x1314d4-0x0;var _0x584ba5=_0x814b[_0x1314d4];return _0x584ba5;};'use strict';var _=require(_0xb814('0x0'));var rp=require(_0xb814('0x1'));var md5=require(_0xb814('0x2'));var util=require(_0xb814('0x3'));var Redis=require(_0xb814('0x4'));var intUtil=require(_0xb814('0x5'));var config=require('../../../../config/environment');var logger=require(_0xb814('0x6'))(_0xb814('0x7'));config[_0xb814('0x8')]=_[_0xb814('0x9')](config[_0xb814('0x8')],{'host':_0xb814('0xa'),'port':0x18eb});var io=require('socket.io-emitter')(new Redis(config[_0xb814('0x8')]));function emit(_0x2e6272,_0x5c8539,_0x271af9){io['to'](_0x2e6272)[_0xb814('0xb')](_0x5c8539,_0x271af9);}var headers={'Content-Type':_0xb814('0xc'),'Accept':_0xb814('0xc')};function getUser(_0x1fea33,_0x21d4a5){if(intUtil[_0xb814('0xd')](_0x21d4a5)===!![]){logger[_0xb814('0xe')](_0xb814('0xf'),_0x21d4a5);return request({'uri':util[_0xb814('0x10')](_0xb814('0x11'),_0x1fea33['remoteUri'])})[_0xb814('0x12')](function(_0x56278f){if(_0x56278f[_0xb814('0x13')]){return _[_0xb814('0x14')](_0x56278f[_0xb814('0x15')][_0xb814('0x16')],{'email':_0x21d4a5});}})[_0xb814('0x12')](function(_0x3bde14){if(_0x3bde14){logger[_0xb814('0xe')](_0xb814('0x17'));return _0x3bde14;}else{logger[_0xb814('0xe')](_0xb814('0x18'));return request({'uri':util[_0xb814('0x10')](_0xb814('0x19'),_0x1fea33[_0xb814('0x1a')])});}});}else{logger[_0xb814('0xe')](_0xb814('0x1b'));return request({'uri':util[_0xb814('0x10')](_0xb814('0x19'),_0x1fea33[_0xb814('0x1a')])});}}function request(_0x125ce2){logger[_0xb814('0x1c')](_0xb814('0x1d'),JSON['stringify'](_0x125ce2));return rp(_[_0xb814('0x9')](_0x125ce2,{'method':'GET','headers':headers,'json':!![]}));}function getAuth(_0x270598){var _0xfac75b;if(_0x270598['authType']==='basic'){_0xfac75b=util['format'](_0xb814('0x1e'),_0x270598['username'],_0x270598['password']);}else if(_0x270598[_0xb814('0x1f')]===_0xb814('0x20')){_0xfac75b=util[_0xb814('0x10')]('%s/token:%s',_0x270598[_0xb814('0x21')],_0x270598['token']);}return util[_0xb814('0x10')](_0xb814('0x22'),new Buffer(_0xfac75b)[_0xb814('0x23')](_0xb814('0x24')));}function getEndUser(_0x27352e,_0x2bd039,_0x1f5d40){logger['info'](_0xb814('0x25'),_0x1f5d40);return request({'uri':util['format'](_0xb814('0x26'),_0x27352e[_0xb814('0x1a')]),'qs':{'phone':_0x1f5d40}})[_0xb814('0x12')](function(_0x208927){if(_0x208927[_0xb814('0x13')]){logger[_0xb814('0xe')](_0xb814('0x27'));return _0x208927['_embedded'][_0xb814('0x16')][0x0];}else{logger[_0xb814('0xe')](_0xb814('0x28'));return request({'uri':util[_0xb814('0x10')](_0xb814('0x29'),_0x27352e[_0xb814('0x1a')]),'method':_0xb814('0x2a'),'body':{'first_name':_0x2bd039,'title':_0x2bd039,'phone_numbers':[{'type':_0xb814('0x2b'),'value':_0x1f5d40}]}});}});}function getTags(_0x5a6291,_0x271aa8){var _0x328a08=[];if(_0x5a6291&&_0x5a6291['length']>0x0){_0x328a08=_[_0xb814('0x2c')](_0x5a6291,_0x271aa8);}return _0x328a08;}function getCustomFields(_0x37d24d,_0x530744){var _0x499f22=[];var _0x20577b={'custom_fields':{}};if(_0x37d24d[_0xb814('0x2d')]>0x0){_['forEach'](_0x37d24d,function(_0x338a28){if(_['includes']([_0xb814('0x2e'),'picklist'],_0x338a28['type'])&&_0x338a28[_0xb814('0x2f')]&&!_0x338a28['customField']){_0x20577b[_0x338a28[_0xb814('0x2f')][_0xb814('0x30')]()]=_0x338a28[_0xb814('0x31')]['toString']();}else if(_['includes']([_0xb814('0x2e'),_0xb814('0x32')],_0x338a28['type'])&&_0x338a28[_0xb814('0x33')]&&_0x338a28[_0xb814('0x34')]){_0x20577b[_0xb814('0x35')][_0x338a28[_0xb814('0x33')]]=_0x338a28[_0xb814('0x31')][_0xb814('0x23')]();}else if(_0x338a28[_0xb814('0x36')]==='variable'&&_0x338a28[_0xb814('0x37')]&&_0x338a28[_0xb814('0x33')]&&_0x338a28[_0xb814('0x34')]){_0x530744[_0x338a28[_0xb814('0x37')]]&&(_0x20577b[_0xb814('0x35')][_0x338a28['idField']]=_0x530744[_0x338a28[_0xb814('0x37')]]['toString']());}else if(_0x338a28[_0xb814('0x36')]===_0xb814('0x38')&&_0x338a28[_0xb814('0x39')]&&_0x338a28['Variable'][_0xb814('0x3a')]&&_0x338a28[_0xb814('0x33')]&&_0x338a28['customField']){_0x530744[_0x338a28[_0xb814('0x39')][_0xb814('0x3a')][_0xb814('0x30')]()]&&(_0x20577b[_0xb814('0x35')][_0x338a28[_0xb814('0x33')]]=_0x530744[_0x338a28[_0xb814('0x39')]['name'][_0xb814('0x30')]()]['toString']());}});}if(_0x20577b[_0xb814('0x3b')]){_0x20577b['priority']=Number(_0x20577b[_0xb814('0x3b')]);}return _0x20577b;}function getTicket(_0x4b9233,_0x2f8a2e,_0x26675a,_0x54a7fb,_0x4d308a){logger['info']('Creating\x20new\x20ticket...');var _0x17549e=_[_0xb814('0x3c')]({'subject':intUtil[_0xb814('0x3d')](_0x54a7fb[_0xb814('0x3e')],_0x4d308a,'\x20'),'type':'phone','status':'new','labels':[_0xb814('0x3f'),'Motion',_0xb814('0x40')][_0xb814('0x41')](getTags(_0x54a7fb[_0xb814('0x42')],_0xb814('0x3a'))),'description':intUtil[_0xb814('0x3d')](_0x54a7fb[_0xb814('0x43')],_0x4d308a,'\x0a'),'_links':{'assigned_user':{'href':util[_0xb814('0x10')](_0xb814('0x44'),_0x2f8a2e['id']),'class':_0xb814('0x45')}},'message':{'direction':'in','body':intUtil['getString'](_0x54a7fb['Descriptions'],_0x4d308a,'\x0a')}},getCustomFields(_0x54a7fb['Fields'],_0x4d308a));return request({'uri':util[_0xb814('0x10')]('%s/customers/%d/cases',_0x4b9233[_0xb814('0x1a')],_0x26675a['id']),'method':'POST','body':_0x17549e});}exports[_0xb814('0x46')]=function(_0x44ff56,_0x9ef639,_0x2e97cc,_0x4fae23,_0x30fc57,_0x15f01a){var _0x2b23c7,_0x22cf27;_0x15f01a[_0xb814('0x1a')]=intUtil[_0xb814('0x47')](_0x15f01a['remoteUri']);_0x15f01a[_0xb814('0x48')]=intUtil[_0xb814('0x47')](_0x15f01a[_0xb814('0x48')]);if(_0x30fc57&&_0x30fc57[_0xb814('0x49')]){logger[_0xb814('0xe')](_0xb814('0x4a'),_0xb814('0x4b'));_0x9ef639['recordingURL']=util['format'](_0xb814('0x4c'),_0x15f01a[_0xb814('0x48')],_0x9ef639[_0xb814('0x4d')],md5(_0x9ef639[_0xb814('0x4d')]));}else{_0x9ef639[_0xb814('0x4e')]='';}headers[_0xb814('0x4f')]=getAuth(_0x15f01a);return getUser(_0x15f01a,_0x4fae23[_0xb814('0x50')])[_0xb814('0x12')](function(_0x2eb9b6){_0x2b23c7=_0x2eb9b6;logger[_0xb814('0xe')](_0xb814('0x51'),_0x2b23c7['id']);return getEndUser(_0x15f01a,_0x9ef639['calleridname'],_0x9ef639[_0xb814('0x52')]);})[_0xb814('0x12')](function(_0x4a76bb){_0x22cf27=_0x4a76bb;logger[_0xb814('0xe')]('The\x20Enduser\x20ID\x20is:',_0x22cf27['id']);return getTicket(_0x15f01a,_0x2b23c7,_0x22cf27,_0x2e97cc,_0x9ef639);})[_0xb814('0x12')](function(_0x37866f){if(_0x37866f){logger[_0xb814('0xe')](_0xb814('0x53'));logger[_0xb814('0xe')](_0xb814('0x54'),_0x37866f['id']);switch(_0x15f01a[_0xb814('0x36')]){case _0xb814('0x55'):logger[_0xb814('0xe')](_0xb814('0x4a'),'Displaying\x20ticket\x20to\x20agent...');emit(util['format'](_0xb814('0x56'),_0x4fae23[_0xb814('0x3a')]),_0xb814('0x57'),{'recordId':_0x37866f['id']});break;case _0xb814('0x58'):logger[_0xb814('0xe')](_0xb814('0x4a'),_0xb814('0x59'));emit(util['format'](_0xb814('0x56'),_0x4fae23[_0xb814('0x3a')]),_0xb814('0x5a'),{'uri':util['format'](_0xb814('0x5b'),_0x37866f['id'])});break;default:logger['error'](_0xb814('0x4a'),'Desk\x20account\x20type\x20not\x20recognized');}}})[_0xb814('0x5c')](function(_0x3cf8f8){console['error'](_0x3cf8f8);logger[_0xb814('0x5d')](_0xb814('0x4a'),JSON[_0xb814('0x5e')](_0x3cf8f8));});};exports['outbound']=function(_0x3da050,_0x5f0e58,_0x13bdcf,_0x158893,_0x4aed78,_0x39952d,_0x4a3f84){var _0x539be7,_0x3b9709;_0x39952d[_0xb814('0x1a')]=intUtil[_0xb814('0x47')](_0x39952d['remoteUri']);_0x39952d[_0xb814('0x48')]=intUtil['stripTrailingSlash'](_0x39952d[_0xb814('0x48')]);if(_0x4a3f84&&_0x4a3f84[_0xb814('0x5f')]&&_0x4a3f84['recordingFormat']!==_0xb814('0x60')){logger['info'](_0xb814('0x61'),_0xb814('0x4b'));_0x5f0e58[_0xb814('0x4e')]=util[_0xb814('0x10')](_0xb814('0x4c'),_0x39952d[_0xb814('0x48')],_0x5f0e58[_0xb814('0x4d')],md5(_0x5f0e58[_0xb814('0x4d')]));}headers['Authorization']=getAuth(_0x39952d);return getUser(_0x39952d,_0x158893[_0xb814('0x50')])[_0xb814('0x12')](function(_0x5d71d5){_0x539be7=_0x5d71d5;logger[_0xb814('0xe')](_0xb814('0x51'),_0x539be7['id']);return getEndUser(_0x39952d,_0x5f0e58['destcalleridname'],_0x5f0e58[_0xb814('0x62')]);})['then'](function(_0x48362c){_0x3b9709=_0x48362c;logger[_0xb814('0xe')]('The\x20Enduser\x20ID\x20is:',_0x3b9709['id']);return getTicket(_0x39952d,_0x539be7,_0x3b9709,_0x13bdcf,_0x5f0e58);})[_0xb814('0x12')](function(_0xd1cd8b){if(_0xd1cd8b){logger[_0xb814('0xe')]('Ticket\x20created!');logger[_0xb814('0xe')]('The\x20Ticket\x20ID\x20is:',_0xd1cd8b['id']);switch(_0x39952d[_0xb814('0x36')]){case _0xb814('0x55'):logger[_0xb814('0xe')](_0xb814('0x4a'),_0xb814('0x63'));emit(util[_0xb814('0x10')](_0xb814('0x56'),_0x158893[_0xb814('0x3a')]),_0xb814('0x57'),{'recordId':_0xd1cd8b['id']});break;case'newTab':logger[_0xb814('0xe')](_0xb814('0x4a'),_0xb814('0x59'));emit(util[_0xb814('0x10')](_0xb814('0x56'),_0x158893[_0xb814('0x3a')]),'trigger:browser:url',{'uri':util[_0xb814('0x10')]('%s/agent/tickets/%s',_0x39952d[_0xb814('0x1a')],_0xd1cd8b['id'])});break;default:logger[_0xb814('0x5d')](_0xb814('0x61'),'Desk\x20account\x20type\x20not\x20recognized');}}})[_0xb814('0x5c')](function(_0x579351){logger[_0xb814('0x5d')]('[OUTBOUND]',JSON[_0xb814('0x5e')](_0x579351));});};exports[_0xb814('0x64')]=function(_0xa03cd2,_0x1b024f,_0x3377d4,_0x167d82,_0x143518,_0x4d44e3){var _0x44088d,_0x51ca51;_0x4d44e3[_0xb814('0x1a')]=intUtil[_0xb814('0x47')](_0x4d44e3[_0xb814('0x1a')]);_0x4d44e3[_0xb814('0x48')]=intUtil[_0xb814('0x47')](_0x4d44e3[_0xb814('0x48')]);if(_0x143518&&_0x143518['monitor_format']){logger[_0xb814('0xe')]('['+_0x1b024f[_0xb814('0x65')]['toUpperCase']()+']',_0xb814('0x4b'));_0x1b024f[_0xb814('0x4e')]=util[_0xb814('0x10')](_0xb814('0x4c'),_0x4d44e3[_0xb814('0x48')],_0x1b024f['uniqueid'],md5(_0x1b024f[_0xb814('0x4d')]));}else{_0x1b024f['recordingURL']='';}headers[_0xb814('0x4f')]=getAuth(_0x4d44e3);return getUser(_0x4d44e3)[_0xb814('0x12')](function(_0x2645f6){_0x44088d=_0x2645f6;logger[_0xb814('0xe')](_0xb814('0x51'),_0x44088d['id']);return getEndUser(_0x4d44e3,_0x1b024f[_0xb814('0x66')],_0x1b024f['calleridnum']);})['then'](function(_0x5d064b){_0x51ca51=_0x5d064b;logger[_0xb814('0xe')]('The\x20Enduser\x20ID\x20is:',_0x51ca51['id']);return getTicket(_0x4d44e3,_0x44088d,_0x51ca51,_0x3377d4,_0x1b024f);})[_0xb814('0x12')](function(_0x1d3954){if(_0x1d3954){logger[_0xb814('0xe')]('Ticket\x20created!');logger[_0xb814('0xe')](_0xb814('0x54'),_0x1d3954['id']);}})[_0xb814('0x5c')](function(_0x5aabbe){logger[_0xb814('0x5d')]('['+_0x1b024f[_0xb814('0x65')][_0xb814('0x67')]()+']',JSON[_0xb814('0x5e')](_0x5aabbe));});};
\ No newline at end of file