Built motion from commit b0a9a629.|2.6.33
[motion2.git] / server / services / ami / trigger / integration / dynamics365.js
index 32175fb..805ff1d 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x1bf7=['outbound','destcalleridnum','calleridnum','contacts','headers','odata-entityid','lastIndexOf','contacts?$select=telephone1','telephone1','enduserId',']\x20Enduser\x20Created!','forEach','type','string','nameField','idField','substring','indexOf','content','ticketType','incident','incidents','getString','Subjects','Descriptions','/contacts(','/systemusers(','Fields','phonecalls','assign','queue','callDirection','ticketId','format','%s/main.aspx?pagetype=entityrecord&etn=%s&id=%s','emit','remoteUri','serverUrl','stripTrailingSlash','tenantId','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','uniqueid','monitor_format','[QUEUE]','Recording\x20is\x20enabled!','recordingURL','recordingFormat','[OUTBOUND]',']\x20The\x20User\x20ID\x20is:',']\x20The\x20User\x20email\x20is:','userEmail',']\x20The\x20Enduser\x20ID\x20is:',']\x20The\x20Enduser\x20phone\x20is:',']\x20The\x20%s\x20ID\x20is:\x20%s',']\x20Call\x20direction:\x20%s','unmanaged','Displaying\x20call\x20in\x20a\x20new\x20tab...','name',']\x20Error\x20running\x20Dynamics365\x20integration','inspect','./util','ioredis','../../../../config/logger','dynamics365','../../../../config/environment','redis','defaults','localhost','socket.io-emitter','POST','username','clientSecret','then','access_token','catch','error','toUpperCase',']\x20Wrong\x20credentials!','message','GET','systemusers?$select=internalemailaddress,isdisabled,systemuserid','Bearer\x20','4.0','isNil','validateEmail','email','length','isdisabled',']\x20Agent\x20found\x20','systemuserid','info',']\x20Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!','internalemailaddress','userId'];(function(_0x29dbbd,_0x410267){var _0x1ea22f=function(_0x34fa26){while(--_0x34fa26){_0x29dbbd['push'](_0x29dbbd['shift']());}};_0x1ea22f(++_0x410267);}(_0x1bf7,0x1b4));var _0x71bf=function(_0x3d0e12,_0x41e165){_0x3d0e12=_0x3d0e12-0x0;var _0x22da51=_0x1bf7[_0x3d0e12];return _0x22da51;};'use strict';var _=require('lodash');var BPromise=require('bluebird');var rp=require('request-promise');var util=require('util');var intUtil=require(_0x71bf('0x0'));var md5=require('md5');var Redis=require(_0x71bf('0x1'));var logger=require(_0x71bf('0x2'))(_0x71bf('0x3'));var config=require(_0x71bf('0x4'));config[_0x71bf('0x5')]=_[_0x71bf('0x6')](config[_0x71bf('0x5')],{'host':_0x71bf('0x7'),'port':0x18eb});var io=require(_0x71bf('0x8'))(new Redis(config[_0x71bf('0x5')]));function getAuthToken(_0x5524e6,_0x58579b,_0x158f03){var _0x1bbbb3={'method':_0x71bf('0x9'),'uri':_0x58579b,'form':{'client_id':_0x5524e6['clientId'],'resource':_0x5524e6['remoteUri'],'username':_0x5524e6[_0x71bf('0xa')],'password':_0x5524e6['password'],'grant_type':'password','client_secret':_0x5524e6[_0x71bf('0xb')]},'json':!![]};return rp(_0x1bbbb3)[_0x71bf('0xc')](function(_0xa60440){return _0xa60440[_0x71bf('0xd')];})[_0x71bf('0xe')](function(_0x2e724b){logger[_0x71bf('0xf')]('['+[_0x158f03[_0x71bf('0x10')]()]+_0x71bf('0x11'));return _0x2e724b[_0x71bf('0x12')];});}function getUser(_0x4fb124,_0xdf8a03,_0x462c27,_0x22874c,_0x100f06,_0x5cf6e0){return new BPromise(function(_0x32cc47,_0x46179d){return getAuthToken(_0xdf8a03,_0x22874c,_0x5cf6e0)[_0x71bf('0xc')](function(_0x14f48a){var _0x4a7eb0={'method':_0x71bf('0x13'),'uri':_0x100f06+_0x71bf('0x14'),'headers':{'Authorization':_0x71bf('0x15')+_0x14f48a,'OData-Version':_0x71bf('0x16')},'json':!![]};return rp(_0x4a7eb0);})[_0x71bf('0xc')](function(_0x37e07e){var _0x21301c=_0x37e07e['value'];var _0xa4dfee=![];var _0x15841a=null;if(!_[_0x71bf('0x17')](_0x462c27)){if(intUtil[_0x71bf('0x18')](_0x462c27[_0x71bf('0x19')])){_0x4fb124['userEmail']=_0x462c27['email'];for(_0x15841a=0x0;_0x15841a<_0x21301c[_0x71bf('0x1a')];_0x15841a++){if(_0x21301c[_0x15841a]['internalemailaddress']===_0x462c27[_0x71bf('0x19')]&&!_0x21301c[_0x15841a][_0x71bf('0x1b')]){_0xa4dfee=!![];logger['info']('['+[_0x5cf6e0['toUpperCase']()]+_0x71bf('0x1c')+_0x21301c[_0x15841a]['systemuserid']+'!');_0x4fb124['userId']=_0x21301c[_0x15841a][_0x71bf('0x1d')];}}}}if(!_0xa4dfee){logger[_0x71bf('0x1e')]('['+[_0x5cf6e0[_0x71bf('0x10')]()]+_0x71bf('0x1f'));_0x4fb124['userEmail']=_0xdf8a03[_0x71bf('0xa')];for(_0x15841a=0x0;_0x15841a<_0x21301c[_0x71bf('0x1a')];_0x15841a++){if(_0x21301c[_0x15841a][_0x71bf('0x20')]===_0xdf8a03[_0x71bf('0xa')]){_0x4fb124[_0x71bf('0x21')]=_0x21301c[_0x15841a]['systemuserid'];}}}_0x32cc47(_0x4fb124);})['catch'](function(_0x5919a1){_0x46179d(_0x5919a1[_0x71bf('0x12')]);});});}function createEndUser(_0x38abb2,_0x5b3d29,_0xbf1ba4,_0x99f272,_0x501b67,_0x30d4b5){return new BPromise(function(_0x58cae5,_0x599d39){return getAuthToken(_0x5b3d29,_0xbf1ba4,_0x30d4b5)[_0x71bf('0xc')](function(_0x2a4823){var _0x18f41d=_0x30d4b5['toLowerCase']()===_0x71bf('0x22')?_0x501b67[_0x71bf('0x23')]:_0x501b67[_0x71bf('0x24')];var _0x45213a={'method':_0x71bf('0x9'),'uri':_0x99f272+_0x71bf('0x25'),'body':{'telephone1':_0x18f41d,'fullname':_0x18f41d,'firstname':_0x18f41d,'lastname':'_','mobilephone':null,'address1_telephone1':null,'ownerid@odata.bind':'/systemusers('+_0x38abb2['userId']+')'},'headers':{'Authorization':_0x71bf('0x15')+_0x2a4823,'OData-Version':'4.0'},'json':!![],'resolveWithFullResponse':!![]};return rp(_0x45213a);})[_0x71bf('0xc')](function(_0x12c0c8){var _0x4546e2=_0x12c0c8[_0x71bf('0x26')][_0x71bf('0x27')];var _0x37c8ea=_0x4546e2['substring'](_0x4546e2[_0x71bf('0x28')]('(')+0x1,_0x4546e2[_0x71bf('0x28')](')'));_0x38abb2['enduserId']=_0x37c8ea;_0x58cae5(_0x38abb2);})[_0x71bf('0xe')](function(_0x4779de){_0x599d39(_0x4779de[_0x71bf('0x12')]);});});}function getEndUser(_0x4f18d8,_0x315ae1,_0x3a5a4d,_0x41fee7,_0x10f06f,_0x286fc8){return new BPromise(function(_0x134f36,_0x20fcb4){return getAuthToken(_0x315ae1,_0x3a5a4d,_0x286fc8)[_0x71bf('0xc')](function(_0x13ffa2){var _0x380331={'method':_0x71bf('0x13'),'uri':_0x41fee7+_0x71bf('0x29'),'headers':{'Authorization':'Bearer\x20'+_0x13ffa2,'If-None-Match':null,'OData-Version':'4.0'},'json':!![]};return rp(_0x380331);})[_0x71bf('0xc')](function(_0x585615){var _0x5d32df=null;if(_0x585615){var _0x42c7a5=_0x585615['value'];var _0x4f6133=![];for(_0x5d32df=0x0;_0x5d32df<_0x42c7a5[_0x71bf('0x1a')];_0x5d32df++){var _0x36555c=_0x286fc8['toLowerCase']()===_0x71bf('0x22')?_0x10f06f['destcalleridnum']:_0x10f06f['calleridnum'];if(_0x42c7a5[_0x5d32df][_0x71bf('0x2a')]===_0x36555c){_0x4f6133=!![];_0x4f18d8[_0x71bf('0x2b')]=_0x42c7a5[_0x5d32df]['contactid'];}}if(_0x4f6133){_0x134f36(_0x4f18d8);}else{return createEndUser(_0x4f18d8,_0x315ae1,_0x3a5a4d,_0x41fee7,_0x10f06f,_0x286fc8)[_0x71bf('0xc')](function(_0x4e5788){logger[_0x71bf('0x1e')]('['+[_0x286fc8['toUpperCase']()]+']\x20Enduser\x20created!',_0x4e5788[_0x71bf('0x2b')]);_0x134f36(_0x4e5788);});}}else{return createEndUser(_0x4f18d8,_0x315ae1,_0x3a5a4d,_0x41fee7,_0x10f06f,_0x286fc8)[_0x71bf('0xc')](function(_0x54d3bf){logger[_0x71bf('0x1e')]('['+[_0x286fc8[_0x71bf('0x10')]()]+_0x71bf('0x2c'),_0x54d3bf[_0x71bf('0x2b')]);_0x134f36(_0x54d3bf);});}});});}function getCustomFields(_0x4f00d3,_0x339540,_0x2dfaae){var _0x4dbf78={};if(_0x4f00d3[_0x71bf('0x1a')]>0x0){_[_0x71bf('0x2d')](_0x4f00d3,function(_0x5dab67){if(_0x5dab67[_0x71bf('0x2e')]===_0x71bf('0x2f')&&_0x5dab67[_0x71bf('0x30')]&&!_0x5dab67['customField']){var _0xf58c43=_0x5dab67[_0x71bf('0x31')]['toLowerCase']();var _0x2b0eea=_0xf58c43[_0x71bf('0x32')](0x0,_0xf58c43[_0x71bf('0x33')]('_'));var _0x80df3a=_0xf58c43[_0x71bf('0x32')](_0xf58c43['indexOf']('_')+0x1);if(_0x2b0eea===_0x2dfaae){_0x4dbf78[_0x80df3a]=_0x5dab67[_0x71bf('0x34')];}}});}return _0x4dbf78;}function getTicket(_0x3ca51b,_0x3d8731,_0x2c4776,_0x1235c2,_0x26579c,_0x46f5a3,_0x47c8d9){return new BPromise(function(_0x1af5c5,_0x27dbfe){var _0x1355e9;return getAuthToken(_0x3d8731,_0x2c4776,_0x47c8d9)['then'](function(_0x458020){if(_0x46f5a3[_0x71bf('0x35')]===_0x71bf('0x36')){_0x1355e9={'method':_0x71bf('0x9'),'uri':_0x1235c2+_0x71bf('0x37'),'body':Object['assign']({},{'title':intUtil[_0x71bf('0x38')](_0x46f5a3[_0x71bf('0x39')],_0x26579c,'\x20'),'description':intUtil[_0x71bf('0x38')](_0x46f5a3[_0x71bf('0x3a')],_0x26579c,'\x0a'),'customerid_contact@odata.bind':_0x71bf('0x3b')+_0x3ca51b[_0x71bf('0x2b')]+')','ownerid@odata.bind':_0x71bf('0x3c')+_0x3ca51b['userId']+')','caseorigincode':'1'},getCustomFields(_0x46f5a3[_0x71bf('0x3d')],_0x26579c,_0x46f5a3[_0x71bf('0x35')])),'headers':{'Authorization':_0x71bf('0x15')+_0x458020,'OData-Version':_0x71bf('0x16')},'json':!![],'resolveWithFullResponse':!![]};}if(_0x46f5a3[_0x71bf('0x35')]==='phonecall'){_0x1355e9={'method':_0x71bf('0x9'),'uri':_0x1235c2+_0x71bf('0x3e'),'body':Object[_0x71bf('0x3f')]({},{'subject':intUtil[_0x71bf('0x38')](_0x46f5a3['Subjects'],_0x26579c,'\x20'),'phonenumber':String(_0x26579c['calleridnum']),'description':intUtil[_0x71bf('0x38')](_0x46f5a3[_0x71bf('0x3a')],_0x26579c,'\x0a'),'regardingobjectid_contact@odata.bind':_0x71bf('0x3b')+_0x3ca51b[_0x71bf('0x2b')]+')','ownerid@odata.bind':_0x71bf('0x3c')+_0x3ca51b[_0x71bf('0x21')]+')','directioncode':_0x3ca51b['callDirection']===_0x71bf('0x40')?![]:!![],'phonecall_activity_parties':[{'partyid_systemuser@odata.bind':_0x71bf('0x3c')+_0x3ca51b[_0x71bf('0x21')]+')','participationtypemask':_0x3ca51b[_0x71bf('0x41')]===_0x71bf('0x40')?0x2:0x1},{'partyid_contact@odata.bind':_0x71bf('0x3b')+_0x3ca51b[_0x71bf('0x2b')]+')','participationtypemask':_0x3ca51b[_0x71bf('0x41')]===_0x71bf('0x40')?0x1:0x2}]},getCustomFields(_0x46f5a3[_0x71bf('0x3d')],_0x26579c,_0x46f5a3[_0x71bf('0x35')])),'headers':{'Authorization':'Bearer\x20'+_0x458020,'OData-Version':_0x71bf('0x16')},'json':!![],'resolveWithFullResponse':!![]};}return rp(_0x1355e9);})[_0x71bf('0xc')](function(_0x470dc0){var _0x2ba32a=_0x470dc0[_0x71bf('0x26')][_0x71bf('0x27')];var _0x1aca9e=_0x2ba32a[_0x71bf('0x32')](_0x2ba32a['lastIndexOf']('(')+0x1,_0x2ba32a[_0x71bf('0x28')](')'));_0x3ca51b[_0x71bf('0x42')]=_0x1aca9e;_0x1af5c5(_0x3ca51b);})[_0x71bf('0xe')](function(_0x35da98){_0x27dbfe(_0x35da98[_0x71bf('0x12')]);});});}function emit(_0x564d49,_0x5c3617,_0xdac919,_0xb39077){var _0x569cd7={'uri':util[_0x71bf('0x43')](_0x71bf('0x44'),_0x564d49,_0xdac919,_0xb39077)};io['to'](util[_0x71bf('0x43')]('user:%s',_0x5c3617))[_0x71bf('0x45')]('trigger:browser:url',_0x569cd7);}exports['cs']=function(_0x20fc86,_0x49b648,_0x3a9c1e,_0x37acf0,_0x393eb3,_0x2f4d66,_0x5f397b,_0x4efb5f){var _0x2eed4f={};_0x2f4d66[_0x71bf('0x46')]=intUtil['stripTrailingSlash'](_0x2f4d66[_0x71bf('0x46')]);_0x2f4d66[_0x71bf('0x47')]=intUtil[_0x71bf('0x48')](_0x2f4d66['serverUrl']);_0x2eed4f[_0x71bf('0x41')]=_0x4efb5f===_0x71bf('0x40')||_0x4efb5f==='unmanaged'?_0x71bf('0x40'):_0x71bf('0x22');var _0x51c856=util[_0x71bf('0x43')]('%s/api/data/v9.0/',_0x2f4d66[_0x71bf('0x46')]);var _0x520c6f=util[_0x71bf('0x43')]('https://login.microsoftonline.com/%s/oauth2/token',_0x2f4d66[_0x71bf('0x49')]);var _0x542f50=util[_0x71bf('0x43')](_0x71bf('0x4a'),_0x2f4d66[_0x71bf('0x47')],_0x49b648['uniqueid'],md5(_0x49b648[_0x71bf('0x4b')]));if(_0x393eb3&&_0x393eb3[_0x71bf('0x4c')]){logger['info'](_0x71bf('0x4d'),_0x71bf('0x4e'));_0x49b648[_0x71bf('0x4f')]=_0x542f50;}else if(_0x5f397b&&_0x5f397b['recordingFormat']&&_0x5f397b[_0x71bf('0x50')]!=='none'){logger[_0x71bf('0x1e')](_0x71bf('0x51'),'Recording\x20is\x20enabled!');_0x49b648[_0x71bf('0x4f')]=_0x542f50;}else{_0x49b648[_0x71bf('0x4f')]='';}return getUser(_0x2eed4f,_0x2f4d66,_0x37acf0,_0x520c6f,_0x51c856,_0x4efb5f)[_0x71bf('0xc')](function(_0x3eff68){logger['info']('['+_0x4efb5f[_0x71bf('0x10')]()+_0x71bf('0x52'),_0x3eff68[_0x71bf('0x21')]);logger[_0x71bf('0x1e')]('['+_0x4efb5f[_0x71bf('0x10')]()+_0x71bf('0x53'),_0x3eff68[_0x71bf('0x54')]);return getEndUser(_0x3eff68,_0x2f4d66,_0x520c6f,_0x51c856,_0x49b648,_0x4efb5f);})[_0x71bf('0xc')](function(_0x26e860){logger['info']('['+_0x4efb5f['toUpperCase']()+_0x71bf('0x55'),_0x26e860[_0x71bf('0x2b')]);logger[_0x71bf('0x1e')]('['+_0x4efb5f[_0x71bf('0x10')]()+_0x71bf('0x56'),_0x49b648[_0x71bf('0x24')]);return getTicket(_0x26e860,_0x2f4d66,_0x520c6f,_0x51c856,_0x49b648,_0x3a9c1e,_0x4efb5f);})[_0x71bf('0xc')](function(_0x1e24e7){logger[_0x71bf('0x1e')](util[_0x71bf('0x43')]('['+_0x4efb5f[_0x71bf('0x10')]()+_0x71bf('0x57'),_0x3a9c1e[_0x71bf('0x35')],_0x1e24e7[_0x71bf('0x42')]));logger[_0x71bf('0x1e')](util['format']('['+_0x4efb5f['toUpperCase']()+_0x71bf('0x58'),_0x4efb5f));if(_0x4efb5f!==_0x71bf('0x59')){logger[_0x71bf('0x1e')]('['+_0x4efb5f['toUpperCase']()+']',_0x71bf('0x5a'));emit(_0x2f4d66[_0x71bf('0x46')],_0x37acf0[_0x71bf('0x5b')],_0x3a9c1e['ticketType'],_0x1e24e7['ticketId']);}})['catch'](function(_0x380cd1){logger[_0x71bf('0xf')]('['+_0x4efb5f[_0x71bf('0x10')]()+_0x71bf('0x5c'),util[_0x71bf('0x5d')](_0x380cd1,{'showHidden':!![],'depth':null}));});};
\ No newline at end of file
+var _0xe93d=['lastIndexOf','enduserId','telephone1','contacts?$select=','&$filter=','\x20eq\x20\x27','contactid','nothing',']\x20Enduser\x20NOT\x20Created\x20-\x20ModuleCreate\x20=\x20Nothing',']\x20Enduser\x20created!','forEach','includes','string','type','nameField','customField','idField','indexOf','ticketType','incident','incidents','assign','getString','/contacts(','Fields','phonecall','callDirection','queue','phonecalls','Subjects','Descriptions','ticketId','format','user:%s','emit','trigger:browser:url','stripTrailingSlash','serverUrl','unmanaged','%s/api/data/v9.0/','uniqueid','monitor_format','recordingURL','recordingFormat','none','[OUTBOUND]','Recording\x20is\x20enabled!',']\x20The\x20User\x20email\x20is:','additionalSearchContact',']\x20The\x20Enduser\x20ID\x20is:',']\x20The\x20Enduser\x20phone\x20is:',']\x20The\x20%s\x20ID\x20is:\x20%s',']\x20Call\x20direction:\x20%s','openNewTab','Displaying\x20call\x20in\x20a\x20new\x20tab...','name','lodash','request-promise','util','md5','../../../../config/logger','dynamics365','../../../../config/environment','redis','socket.io-emitter','modernAuthentication','remoteUri','CloudProvider','data7','tenantId','data2','data5','clientId','username','password','clientSecret','then','access_token','catch','error',']\x20Wrong\x20credentials!','message','GET','systemusers?$select=internalemailaddress,isdisabled,systemuserid','Bearer\x20','4.0','value','isNil','validateEmail','email','length','internalemailaddress','isdisabled','info','toUpperCase',']\x20Agent\x20found\x20','systemuserid',']\x20Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!','userEmail','userId','toLowerCase','outbound','destcalleridnum','calleridnum','POST','contacts','/systemusers(','body','substring'];(function(_0x3d4c3f,_0x258527){var _0x54ab5f=function(_0x5e330c){while(--_0x5e330c){_0x3d4c3f['push'](_0x3d4c3f['shift']());}};_0x54ab5f(++_0x258527);}(_0xe93d,0xa5));var _0xde93=function(_0x1977b6,_0x4ff10d){_0x1977b6=_0x1977b6-0x0;var _0x5f5466=_0xe93d[_0x1977b6];return _0x5f5466;};'use strict';var _=require(_0xde93('0x0'));var rp=require(_0xde93('0x1'));var util=require(_0xde93('0x2'));var intUtil=require('./util');var md5=require(_0xde93('0x3'));var Redis=require('ioredis');var logger=require(_0xde93('0x4'))(_0xde93('0x5'));var config=require(_0xde93('0x6'));config['redis']=_['defaults'](config[_0xde93('0x7')],{'host':'localhost','port':0x18eb});var io=require(_0xde93('0x8'))(new Redis(config[_0xde93('0x7')]));function getAuthToken(_0x29b0b1,_0x2ab050,_0x4d99c9){if(_0x29b0b1[_0xde93('0x9')]){_0x29b0b1[_0xde93('0xa')]=_0x29b0b1[_0xde93('0xb')][_0xde93('0xc')];_0x29b0b1[_0xde93('0xd')]=_0x29b0b1['CloudProvider'][_0xde93('0xe')];return Promise['resolve'](_0x29b0b1['CloudProvider'][_0xde93('0xf')]);}var _0xaa63ed={'method':'POST','uri':_0x2ab050,'form':{'client_id':_0x29b0b1[_0xde93('0x10')],'resource':_0x29b0b1['remoteUri'],'username':_0x29b0b1[_0xde93('0x11')],'password':_0x29b0b1[_0xde93('0x12')],'grant_type':'password','client_secret':_0x29b0b1[_0xde93('0x13')]},'json':!![]};return rp(_0xaa63ed)[_0xde93('0x14')](function(_0x13689b){return _0x13689b[_0xde93('0x15')];})[_0xde93('0x16')](function(_0x1e8558){logger[_0xde93('0x17')]('['+[_0x4d99c9['toUpperCase']()]+_0xde93('0x18'));return _0x1e8558[_0xde93('0x19')];});}function getUser(_0xe46c57,_0x3361e3,_0x383642,_0x48cb9d,_0x1838ff,_0x589250){return new Promise(function(_0x4b8824,_0x21d1e0){return getAuthToken(_0x3361e3,_0x48cb9d,_0x589250)['then'](function(_0x1b24f4){var _0x54cf58={'method':_0xde93('0x1a'),'uri':_0x1838ff+_0xde93('0x1b'),'headers':{'Authorization':_0xde93('0x1c')+_0x1b24f4,'OData-Version':_0xde93('0x1d')},'json':!![]};return rp(_0x54cf58);})['then'](function(_0x1c5554){var _0x2f4e4f=_0x1c5554[_0xde93('0x1e')];var _0x4eb978=![];var _0x2e5609=null;if(!_[_0xde93('0x1f')](_0x383642)){if(intUtil[_0xde93('0x20')](_0x383642[_0xde93('0x21')])){_0xe46c57['userEmail']=_0x383642[_0xde93('0x21')];for(_0x2e5609=0x0;_0x2e5609<_0x2f4e4f[_0xde93('0x22')];_0x2e5609++){if(_0x2f4e4f[_0x2e5609][_0xde93('0x23')]===_0x383642['email']&&!_0x2f4e4f[_0x2e5609][_0xde93('0x24')]){_0x4eb978=!![];logger[_0xde93('0x25')]('['+[_0x589250[_0xde93('0x26')]()]+_0xde93('0x27')+_0x2f4e4f[_0x2e5609][_0xde93('0x28')]+'!');_0xe46c57['userId']=_0x2f4e4f[_0x2e5609][_0xde93('0x28')];}}}}if(!_0x4eb978){logger[_0xde93('0x25')]('['+[_0x589250[_0xde93('0x26')]()]+_0xde93('0x29'));_0xe46c57[_0xde93('0x2a')]=_0x3361e3[_0xde93('0x11')];for(_0x2e5609=0x0;_0x2e5609<_0x2f4e4f[_0xde93('0x22')];_0x2e5609++){if(_0x2f4e4f[_0x2e5609][_0xde93('0x23')]===_0x3361e3[_0xde93('0x11')]){_0xe46c57[_0xde93('0x2b')]=_0x2f4e4f[_0x2e5609][_0xde93('0x28')];}}}_0x4b8824(_0xe46c57);})[_0xde93('0x16')](function(_0x2911d3){_0x21d1e0(_0x2911d3[_0xde93('0x19')]);});});}function createEndUser(_0x4334c8,_0xade3bb,_0x5d27e9,_0x1a6e98,_0x13b45d,_0x4e0e9a,_0xbf54e4){return new Promise(function(_0x57697e,_0x3aa3cc){return getAuthToken(_0xade3bb,_0x5d27e9,_0x4e0e9a)['then'](function(_0x4003cf){var _0x2e0f6a=_0x4e0e9a[_0xde93('0x2c')]()===_0xde93('0x2d')?_0x13b45d[_0xde93('0x2e')]:_0x13b45d[_0xde93('0x2f')];var _0x4a4ef1={'method':_0xde93('0x30'),'uri':_0x1a6e98+_0xde93('0x31'),'body':{'fullname':_0x2e0f6a,'firstname':_0x2e0f6a,'lastname':'_','mobilephone':null,'address1_telephone1':null,'ownerid@odata.bind':_0xde93('0x32')+_0x4334c8[_0xde93('0x2b')]+')'},'headers':{'Authorization':_0xde93('0x1c')+_0x4003cf,'OData-Version':_0xde93('0x1d')},'json':!![],'resolveWithFullResponse':!![]};_0x4a4ef1[_0xde93('0x33')][_0xbf54e4]=_0x2e0f6a;return rp(_0x4a4ef1);})[_0xde93('0x14')](function(_0x1647a4){var _0x895132=_0x1647a4['headers']['odata-entityid'];var _0x56ca2b=_0x895132[_0xde93('0x34')](_0x895132[_0xde93('0x35')]('(')+0x1,_0x895132[_0xde93('0x35')](')'));_0x4334c8[_0xde93('0x36')]=_0x56ca2b;_0x57697e(_0x4334c8);})['catch'](function(_0x492f82){_0x3aa3cc(_0x492f82[_0xde93('0x19')]);});});}function getEndUser(_0x43e97d,_0x27b8ea,_0x40a07d,_0x25ab06,_0x305f9a,_0x3ae719,_0x33753b,_0x13c9b4){var _0x10b344=_0x3ae719[_0xde93('0x2c')]()===_0xde93('0x2d')?_0x305f9a[_0xde93('0x2e')]:_0x305f9a[_0xde93('0x2f')];return getAuthToken(_0x27b8ea,_0x40a07d,_0x3ae719)['then'](function(_0x20d216){_0x13c9b4=_0x13c9b4?_0x13c9b4:_0xde93('0x37');var _0xf55152={'method':_0xde93('0x1a'),'uri':_0x25ab06+_0xde93('0x38')+_0x13c9b4+_0xde93('0x39')+_0x13c9b4+_0xde93('0x3a')+_0x10b344['replace']('+','%2b')+'\x27','headers':{'Authorization':_0xde93('0x1c')+_0x20d216,'If-None-Match':null,'OData-Version':_0xde93('0x1d')},'json':!![]};return rp(_0xf55152);})[_0xde93('0x14')](function(_0x1e7ce0){var _0x952ff8=![];if(!_0x1e7ce0)return _0x952ff8;var _0x42e348=_0x1e7ce0[_0xde93('0x1e')];for(var _0x3f4a3e=0x0;_0x3f4a3e<_0x42e348[_0xde93('0x22')];_0x3f4a3e++){if(_0x42e348[_0x3f4a3e][_0x13c9b4]===_0x10b344){_0x952ff8=!![];_0x43e97d[_0xde93('0x36')]=_0x42e348[_0x3f4a3e][_0xde93('0x3b')];}}return _0x952ff8;})[_0xde93('0x14')](function(_0x515050){if(_0x515050)return _0x43e97d;if(_0x33753b===_0xde93('0x3c')){logger[_0xde93('0x25')]('['+[_0x3ae719[_0xde93('0x26')]()]+_0xde93('0x3d'));return _0x43e97d;}return createEndUser(_0x43e97d,_0x27b8ea,_0x40a07d,_0x25ab06,_0x305f9a,_0x3ae719,_0x13c9b4)['then'](function(_0x2c9fc6){logger[_0xde93('0x25')]('['+[_0x3ae719[_0xde93('0x26')]()]+_0xde93('0x3e'),_0x2c9fc6[_0xde93('0x36')]);return _0x2c9fc6;});});}function getCustomFields(_0x4bc99c,_0x245ba7,_0x19de0a){var _0x33f67d={};if(_0x4bc99c[_0xde93('0x22')]>0x0){_[_0xde93('0x3f')](_0x4bc99c,function(_0x311d4a){if(_[_0xde93('0x40')]([_0xde93('0x41'),'picklist'],_0x311d4a[_0xde93('0x42')])&&_0x311d4a[_0xde93('0x43')]&&!_0x311d4a[_0xde93('0x44')]){var _0x435299=_0x311d4a[_0xde93('0x45')][_0xde93('0x2c')]();var _0xe78577=_0x435299[_0xde93('0x34')](0x0,_0x435299[_0xde93('0x46')]('_'));var _0xaca024=_0x435299['substring'](_0x435299[_0xde93('0x46')]('_')+0x1);if(_0xe78577===_0x19de0a){_0x33f67d[_0xaca024]=_0x311d4a['content'];}}});}return _0x33f67d;}function getTicket(_0x1caca0,_0x43a073,_0x1afd11,_0x441907,_0x1d24b4,_0x1002ba,_0x391f41){return new Promise(function(_0x3ba072,_0x5bf1cf){var _0x52108c;return getAuthToken(_0x43a073,_0x1afd11,_0x391f41)[_0xde93('0x14')](function(_0x4cb63d){if(_0x1002ba[_0xde93('0x47')]===_0xde93('0x48')){_0x52108c={'method':'POST','uri':_0x441907+_0xde93('0x49'),'body':Object[_0xde93('0x4a')]({},{'title':intUtil[_0xde93('0x4b')](_0x1002ba['Subjects'],_0x1d24b4,'\x20'),'description':intUtil[_0xde93('0x4b')](_0x1002ba['Descriptions'],_0x1d24b4,'\x0a'),'customerid_contact@odata.bind':_0x1caca0[_0xde93('0x36')]?_0xde93('0x4c')+_0x1caca0[_0xde93('0x36')]+')':undefined,'ownerid@odata.bind':_0xde93('0x32')+_0x1caca0[_0xde93('0x2b')]+')','caseorigincode':'1'},getCustomFields(_0x1002ba[_0xde93('0x4d')],_0x1d24b4,_0x1002ba[_0xde93('0x47')])),'headers':{'Authorization':'Bearer\x20'+_0x4cb63d,'OData-Version':_0xde93('0x1d')},'json':!![],'resolveWithFullResponse':!![]};}if(_0x1002ba[_0xde93('0x47')]===_0xde93('0x4e')){var _0x34f7e4=_0x1caca0[_0xde93('0x36')]?[{'partyid_systemuser@odata.bind':_0xde93('0x32')+_0x1caca0[_0xde93('0x2b')]+')','participationtypemask':_0x1caca0[_0xde93('0x4f')]===_0xde93('0x50')?0x2:0x1},{'partyid_contact@odata.bind':_0xde93('0x4c')+_0x1caca0[_0xde93('0x36')]+')','participationtypemask':_0x1caca0['callDirection']===_0xde93('0x50')?0x1:0x2}]:[{'partyid_systemuser@odata.bind':'/systemusers('+_0x1caca0[_0xde93('0x2b')]+')','participationtypemask':_0x1caca0[_0xde93('0x4f')]===_0xde93('0x50')?0x2:0x1}];_0x52108c={'method':_0xde93('0x30'),'uri':_0x441907+_0xde93('0x51'),'body':Object[_0xde93('0x4a')]({},{'subject':intUtil[_0xde93('0x4b')](_0x1002ba[_0xde93('0x52')],_0x1d24b4,'\x20'),'phonenumber':String(_0x1d24b4[_0xde93('0x2f')]),'description':intUtil[_0xde93('0x4b')](_0x1002ba[_0xde93('0x53')],_0x1d24b4,'\x0a'),'regardingobjectid_contact@odata.bind':_0x1caca0['enduserId']?_0xde93('0x4c')+_0x1caca0[_0xde93('0x36')]+')':undefined,'ownerid@odata.bind':_0xde93('0x32')+_0x1caca0[_0xde93('0x2b')]+')','directioncode':_0x1caca0[_0xde93('0x4f')]===_0xde93('0x50')?![]:!![],'phonecall_activity_parties':_0x34f7e4},getCustomFields(_0x1002ba[_0xde93('0x4d')],_0x1d24b4,_0x1002ba['ticketType'])),'headers':{'Authorization':'Bearer\x20'+_0x4cb63d,'OData-Version':_0xde93('0x1d')},'json':!![],'resolveWithFullResponse':!![]};}return rp(_0x52108c);})['then'](function(_0x591e80){var _0x3de8fa=_0x591e80['headers']['odata-entityid'];var _0x5457c5=_0x3de8fa[_0xde93('0x34')](_0x3de8fa['lastIndexOf']('(')+0x1,_0x3de8fa['lastIndexOf'](')'));_0x1caca0[_0xde93('0x54')]=_0x5457c5;_0x3ba072(_0x1caca0);})[_0xde93('0x16')](function(_0x42fb11){_0x5bf1cf(_0x42fb11[_0xde93('0x19')]);});});}function emit(_0x1749c3,_0xafe891,_0x5a07c4,_0x7c5084){var _0x49a613={'uri':util[_0xde93('0x55')]('%s/main.aspx?pagetype=entityrecord&etn=%s&id=%s',_0x1749c3,_0x5a07c4,_0x7c5084)};io['to'](util[_0xde93('0x55')](_0xde93('0x56'),_0xafe891))[_0xde93('0x57')](_0xde93('0x58'),_0x49a613);}exports['cs']=function(_0x46a2e8,_0x37807f,_0x284caa,_0x2762d4,_0x4f4459,_0x34fba5,_0x585002,_0x3f3706){var _0x18c497={};_0x34fba5['remoteUri']=_0x34fba5[_0xde93('0x9')]?intUtil[_0xde93('0x59')](_0x34fba5[_0xde93('0xb')]['data7']):intUtil[_0xde93('0x59')](_0x34fba5['remoteUri']);_0x34fba5['serverUrl']=intUtil[_0xde93('0x59')](_0x34fba5[_0xde93('0x5a')]);_0x18c497[_0xde93('0x4f')]=_0x3f3706===_0xde93('0x50')||_0x3f3706===_0xde93('0x5b')?_0xde93('0x50'):'outbound';var _0xd0e43c=_0x34fba5[_0xde93('0x9')]?util[_0xde93('0x55')](_0xde93('0x5c'),_0x34fba5[_0xde93('0xb')][_0xde93('0xc')]):util[_0xde93('0x55')](_0xde93('0x5c'),_0x34fba5['remoteUri']);var _0x5dc5d4=util[_0xde93('0x55')]('https://login.microsoftonline.com/%s/oauth2/token',_0x34fba5[_0xde93('0xd')]);var _0x1f665d=util[_0xde93('0x55')]('%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s',_0x34fba5[_0xde93('0x5a')],_0x37807f[_0xde93('0x5d')],md5(_0x37807f[_0xde93('0x5d')]));if(_0x4f4459&&_0x4f4459[_0xde93('0x5e')]){logger[_0xde93('0x25')]('[QUEUE]','Recording\x20is\x20enabled!');_0x37807f[_0xde93('0x5f')]=_0x1f665d;}else if(_0x585002&&_0x585002[_0xde93('0x60')]&&_0x585002[_0xde93('0x60')]!==_0xde93('0x61')){logger[_0xde93('0x25')](_0xde93('0x62'),_0xde93('0x63'));_0x37807f[_0xde93('0x5f')]=_0x1f665d;}else{_0x37807f[_0xde93('0x5f')]='';}return getUser(_0x18c497,_0x34fba5,_0x2762d4,_0x5dc5d4,_0xd0e43c,_0x3f3706)[_0xde93('0x14')](function(_0x36fdd0){logger[_0xde93('0x25')]('['+_0x3f3706[_0xde93('0x26')]()+']\x20The\x20User\x20ID\x20is:',_0x36fdd0[_0xde93('0x2b')]);logger[_0xde93('0x25')]('['+_0x3f3706[_0xde93('0x26')]()+_0xde93('0x64'),_0x36fdd0['userEmail']);return getEndUser(_0x36fdd0,_0x34fba5,_0x5dc5d4,_0xd0e43c,_0x37807f,_0x3f3706,_0x284caa['moduleCreate'],_0x284caa[_0xde93('0x65')]);})['then'](function(_0x327ab6){logger['info']('['+_0x3f3706[_0xde93('0x26')]()+_0xde93('0x66'),_0x327ab6['enduserId']);logger[_0xde93('0x25')]('['+_0x3f3706[_0xde93('0x26')]()+_0xde93('0x67'),_0x37807f[_0xde93('0x2f')]);return getTicket(_0x327ab6,_0x34fba5,_0x5dc5d4,_0xd0e43c,_0x37807f,_0x284caa,_0x3f3706);})[_0xde93('0x14')](function(_0x20e287){logger[_0xde93('0x25')](util[_0xde93('0x55')]('['+_0x3f3706[_0xde93('0x26')]()+_0xde93('0x68'),_0x284caa['ticketType'],_0x20e287[_0xde93('0x54')]));logger[_0xde93('0x25')](util[_0xde93('0x55')]('['+_0x3f3706[_0xde93('0x26')]()+_0xde93('0x69'),_0x3f3706));if(_0x3f3706!==_0xde93('0x5b')&&_0x284caa[_0xde93('0x6a')]){logger['info']('['+_0x3f3706['toUpperCase']()+']',_0xde93('0x6b'));emit(_0x34fba5[_0xde93('0xa')],_0x2762d4[_0xde93('0x6c')],_0x284caa[_0xde93('0x47')],_0x20e287[_0xde93('0x54')]);}})[_0xde93('0x16')](function(_0x5476b6){logger[_0xde93('0x17')]('['+_0x3f3706[_0xde93('0x26')]()+']\x20Error\x20running\x20Dynamics365\x20integration',_0x5476b6[_0xde93('0x19')]);console[_0xde93('0x17')]('Error\x20running\x20Dynamics365\x20integration',_0x5476b6);});};
\ No newline at end of file