Built motion from commit b5413ace.|2.6.9
[motion2.git] / server / services / ami / trigger / integration / dynamics365.js
index 04d77a0..beea19f 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x4032=['incidents','getString','Descriptions','/contacts(','Fields','ticketType','phonecall','callDirection','queue','assign','calleridnum','ticketId','format','%s/main.aspx?pagetype=entityrecord&etn=%s&id=%s','user:%s','emit','trigger:browser:url','modernAuthentication','stripTrailingSlash','serverUrl','unmanaged','%s/api/data/v9.0/','https://login.microsoftonline.com/%s/oauth2/token','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','uniqueid','monitor_format','[QUEUE]','Recording\x20is\x20enabled!','recordingURL','recordingFormat','none','[OUTBOUND]','userEmail','moduleCreate','additionalSearchContact',']\x20The\x20Enduser\x20ID\x20is:',']\x20The\x20%s\x20ID\x20is:\x20%s','openNewTab','Displaying\x20call\x20in\x20a\x20new\x20tab...','name',']\x20Error\x20running\x20Dynamics365\x20integration','request-promise','util','./util','md5','../../../../config/logger','dynamics365','../../../../config/environment','redis','defaults','localhost','socket.io-emitter','remoteUri','data7','tenantId','CloudProvider','data2','data5','POST','clientId','username','password','clientSecret','then','access_token','error',']\x20Wrong\x20credentials!','GET','systemusers?$select=internalemailaddress,isdisabled,systemuserid','Bearer\x20','4.0','isNil','email','length','internalemailaddress','isdisabled','toUpperCase','systemuserid','userId','info','catch','message','toLowerCase','outbound','contacts','/systemusers(','body','headers','odata-entityid','lastIndexOf','enduserId','destcalleridnum','telephone1','contacts?$select=','\x20eq\x20\x27','replace','%2b','value','contactid',']\x20Enduser\x20NOT\x20Created\x20-\x20ModuleCreate\x20=\x20Nothing','forEach','includes','string','picklist','type','nameField','customField','idField','substring','indexOf','content','incident'];(function(_0x3bad00,_0x211831){var _0x372769=function(_0x2e68b1){while(--_0x2e68b1){_0x3bad00['push'](_0x3bad00['shift']());}};_0x372769(++_0x211831);}(_0x4032,0x109));var _0x2403=function(_0x39e808,_0x1766cb){_0x39e808=_0x39e808-0x0;var _0xb42ac=_0x4032[_0x39e808];return _0xb42ac;};'use strict';var _=require('lodash');var rp=require(_0x2403('0x0'));var util=require(_0x2403('0x1'));var intUtil=require(_0x2403('0x2'));var md5=require(_0x2403('0x3'));var Redis=require('ioredis');var logger=require(_0x2403('0x4'))(_0x2403('0x5'));var config=require(_0x2403('0x6'));config[_0x2403('0x7')]=_[_0x2403('0x8')](config['redis'],{'host':_0x2403('0x9'),'port':0x18eb});var io=require(_0x2403('0xa'))(new Redis(config[_0x2403('0x7')]));function getAuthToken(_0x317593,_0x10609b,_0x550097){if(_0x317593['modernAuthentication']){_0x317593[_0x2403('0xb')]=_0x317593['CloudProvider'][_0x2403('0xc')];_0x317593[_0x2403('0xd')]=_0x317593[_0x2403('0xe')][_0x2403('0xf')];return Promise['resolve'](_0x317593['CloudProvider'][_0x2403('0x10')]);}var _0x12786b={'method':_0x2403('0x11'),'uri':_0x10609b,'form':{'client_id':_0x317593[_0x2403('0x12')],'resource':_0x317593['remoteUri'],'username':_0x317593[_0x2403('0x13')],'password':_0x317593[_0x2403('0x14')],'grant_type':_0x2403('0x14'),'client_secret':_0x317593[_0x2403('0x15')]},'json':!![]};return rp(_0x12786b)[_0x2403('0x16')](function(_0x4d0596){return _0x4d0596[_0x2403('0x17')];})['catch'](function(_0x55e514){logger[_0x2403('0x18')]('['+[_0x550097['toUpperCase']()]+_0x2403('0x19'));return _0x55e514['message'];});}function getUser(_0x239a9d,_0x41d187,_0xdc2c35,_0x5307a5,_0x34dcbd,_0x4caf34){return new Promise(function(_0x470321,_0x36bbe4){return getAuthToken(_0x41d187,_0x5307a5,_0x4caf34)[_0x2403('0x16')](function(_0x4c354b){var _0x35a014={'method':_0x2403('0x1a'),'uri':_0x34dcbd+_0x2403('0x1b'),'headers':{'Authorization':_0x2403('0x1c')+_0x4c354b,'OData-Version':_0x2403('0x1d')},'json':!![]};return rp(_0x35a014);})[_0x2403('0x16')](function(_0x2fb1fc){var _0x9c0c48=_0x2fb1fc['value'];var _0x54e95b=![];var _0x3a974a=null;if(!_[_0x2403('0x1e')](_0xdc2c35)){if(intUtil['validateEmail'](_0xdc2c35[_0x2403('0x1f')])){_0x239a9d['userEmail']=_0xdc2c35[_0x2403('0x1f')];for(_0x3a974a=0x0;_0x3a974a<_0x9c0c48[_0x2403('0x20')];_0x3a974a++){if(_0x9c0c48[_0x3a974a][_0x2403('0x21')]===_0xdc2c35[_0x2403('0x1f')]&&!_0x9c0c48[_0x3a974a][_0x2403('0x22')]){_0x54e95b=!![];logger['info']('['+[_0x4caf34[_0x2403('0x23')]()]+']\x20Agent\x20found\x20'+_0x9c0c48[_0x3a974a][_0x2403('0x24')]+'!');_0x239a9d[_0x2403('0x25')]=_0x9c0c48[_0x3a974a]['systemuserid'];}}}}if(!_0x54e95b){logger[_0x2403('0x26')]('['+[_0x4caf34[_0x2403('0x23')]()]+']\x20Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!');_0x239a9d['userEmail']=_0x41d187[_0x2403('0x13')];for(_0x3a974a=0x0;_0x3a974a<_0x9c0c48[_0x2403('0x20')];_0x3a974a++){if(_0x9c0c48[_0x3a974a][_0x2403('0x21')]===_0x41d187[_0x2403('0x13')]){_0x239a9d[_0x2403('0x25')]=_0x9c0c48[_0x3a974a][_0x2403('0x24')];}}}_0x470321(_0x239a9d);})[_0x2403('0x27')](function(_0x55245d){_0x36bbe4(_0x55245d[_0x2403('0x28')]);});});}function createEndUser(_0x476fc1,_0x3d5aa8,_0x237573,_0x55885c,_0x328706,_0x1e304b,_0x2697c3){return new Promise(function(_0x38f876,_0x20b563){return getAuthToken(_0x3d5aa8,_0x237573,_0x1e304b)['then'](function(_0x4d8579){var _0x401303=_0x1e304b[_0x2403('0x29')]()===_0x2403('0x2a')?_0x328706['destcalleridnum']:_0x328706['calleridnum'];var _0x30fcbb={'method':_0x2403('0x11'),'uri':_0x55885c+_0x2403('0x2b'),'body':{'fullname':_0x401303,'firstname':_0x401303,'lastname':'_','mobilephone':null,'address1_telephone1':null,'ownerid@odata.bind':_0x2403('0x2c')+_0x476fc1[_0x2403('0x25')]+')'},'headers':{'Authorization':_0x2403('0x1c')+_0x4d8579,'OData-Version':_0x2403('0x1d')},'json':!![],'resolveWithFullResponse':!![]};_0x30fcbb[_0x2403('0x2d')][_0x2697c3]=_0x401303;return rp(_0x30fcbb);})['then'](function(_0x176967){var _0x527fa7=_0x176967[_0x2403('0x2e')][_0x2403('0x2f')];var _0x18225d=_0x527fa7['substring'](_0x527fa7['lastIndexOf']('(')+0x1,_0x527fa7[_0x2403('0x30')](')'));_0x476fc1[_0x2403('0x31')]=_0x18225d;_0x38f876(_0x476fc1);})[_0x2403('0x27')](function(_0x23b61a){_0x20b563(_0x23b61a['message']);});});}function getEndUser(_0x228a6b,_0x2332c3,_0x39c5ad,_0x2d7795,_0x53ca5b,_0x193996,_0x2c7779,_0xb542a0){var _0x51d46a=_0x193996['toLowerCase']()==='outbound'?_0x53ca5b[_0x2403('0x32')]:_0x53ca5b['calleridnum'];return getAuthToken(_0x2332c3,_0x39c5ad,_0x193996)['then'](function(_0x57fbb3){_0xb542a0=_0xb542a0?_0xb542a0:_0x2403('0x33');var _0x4af990={'method':_0x2403('0x1a'),'uri':_0x2d7795+_0x2403('0x34')+_0xb542a0+'&$filter='+_0xb542a0+_0x2403('0x35')+_0x51d46a[_0x2403('0x36')]('+',_0x2403('0x37'))+'\x27','headers':{'Authorization':_0x2403('0x1c')+_0x57fbb3,'If-None-Match':null,'OData-Version':_0x2403('0x1d')},'json':!![]};return rp(_0x4af990);})[_0x2403('0x16')](function(_0x1b61cd){var _0x6114c=![];if(!_0x1b61cd)return _0x6114c;var _0x98580d=_0x1b61cd[_0x2403('0x38')];for(var _0x1854d8=0x0;_0x1854d8<_0x98580d[_0x2403('0x20')];_0x1854d8++){if(_0x98580d[_0x1854d8][_0xb542a0]===_0x51d46a){_0x6114c=!![];_0x228a6b[_0x2403('0x31')]=_0x98580d[_0x1854d8][_0x2403('0x39')];}}return _0x6114c;})[_0x2403('0x16')](function(_0x548a01){if(_0x548a01)return _0x228a6b;if(_0x2c7779==='nothing'){logger[_0x2403('0x26')]('['+[_0x193996[_0x2403('0x23')]()]+_0x2403('0x3a'));return _0x228a6b;}return createEndUser(_0x228a6b,_0x2332c3,_0x39c5ad,_0x2d7795,_0x53ca5b,_0x193996,_0xb542a0)[_0x2403('0x16')](function(_0x104bcd){logger[_0x2403('0x26')]('['+[_0x193996['toUpperCase']()]+']\x20Enduser\x20created!',_0x104bcd[_0x2403('0x31')]);return _0x104bcd;});});}function getCustomFields(_0x3a39e8,_0x42b288,_0x1c10ea){var _0xee4927={};if(_0x3a39e8[_0x2403('0x20')]>0x0){_[_0x2403('0x3b')](_0x3a39e8,function(_0x3f552b){if(_[_0x2403('0x3c')]([_0x2403('0x3d'),_0x2403('0x3e')],_0x3f552b[_0x2403('0x3f')])&&_0x3f552b[_0x2403('0x40')]&&!_0x3f552b[_0x2403('0x41')]){var _0x4786c0=_0x3f552b[_0x2403('0x42')][_0x2403('0x29')]();var _0x491af8=_0x4786c0[_0x2403('0x43')](0x0,_0x4786c0['indexOf']('_'));var _0x1697c0=_0x4786c0[_0x2403('0x43')](_0x4786c0[_0x2403('0x44')]('_')+0x1);if(_0x491af8===_0x1c10ea){_0xee4927[_0x1697c0]=_0x3f552b[_0x2403('0x45')];}}});}return _0xee4927;}function getTicket(_0x36b98c,_0x593f88,_0x435ab5,_0x19ea18,_0x1aec53,_0x1ebc3e,_0xf66e7f){return new Promise(function(_0x231c75,_0x321c5c){var _0x22b360;return getAuthToken(_0x593f88,_0x435ab5,_0xf66e7f)[_0x2403('0x16')](function(_0x1ab5b7){if(_0x1ebc3e['ticketType']===_0x2403('0x46')){_0x22b360={'method':_0x2403('0x11'),'uri':_0x19ea18+_0x2403('0x47'),'body':Object['assign']({},{'title':intUtil['getString'](_0x1ebc3e['Subjects'],_0x1aec53,'\x20'),'description':intUtil[_0x2403('0x48')](_0x1ebc3e[_0x2403('0x49')],_0x1aec53,'\x0a'),'customerid_contact@odata.bind':_0x36b98c[_0x2403('0x31')]?_0x2403('0x4a')+_0x36b98c[_0x2403('0x31')]+')':undefined,'ownerid@odata.bind':'/systemusers('+_0x36b98c['userId']+')','caseorigincode':'1'},getCustomFields(_0x1ebc3e[_0x2403('0x4b')],_0x1aec53,_0x1ebc3e[_0x2403('0x4c')])),'headers':{'Authorization':_0x2403('0x1c')+_0x1ab5b7,'OData-Version':'4.0'},'json':!![],'resolveWithFullResponse':!![]};}if(_0x1ebc3e[_0x2403('0x4c')]===_0x2403('0x4d')){var _0xea4adc=_0x36b98c['enduserId']?[{'partyid_systemuser@odata.bind':'/systemusers('+_0x36b98c['userId']+')','participationtypemask':_0x36b98c[_0x2403('0x4e')]==='queue'?0x2:0x1},{'partyid_contact@odata.bind':_0x2403('0x4a')+_0x36b98c[_0x2403('0x31')]+')','participationtypemask':_0x36b98c[_0x2403('0x4e')]==='queue'?0x1:0x2}]:[{'partyid_systemuser@odata.bind':_0x2403('0x2c')+_0x36b98c[_0x2403('0x25')]+')','participationtypemask':_0x36b98c['callDirection']===_0x2403('0x4f')?0x2:0x1}];_0x22b360={'method':_0x2403('0x11'),'uri':_0x19ea18+'phonecalls','body':Object[_0x2403('0x50')]({},{'subject':intUtil['getString'](_0x1ebc3e['Subjects'],_0x1aec53,'\x20'),'phonenumber':String(_0x1aec53[_0x2403('0x51')]),'description':intUtil[_0x2403('0x48')](_0x1ebc3e[_0x2403('0x49')],_0x1aec53,'\x0a'),'regardingobjectid_contact@odata.bind':_0x36b98c[_0x2403('0x31')]?'/contacts('+_0x36b98c[_0x2403('0x31')]+')':undefined,'ownerid@odata.bind':_0x2403('0x2c')+_0x36b98c[_0x2403('0x25')]+')','directioncode':_0x36b98c[_0x2403('0x4e')]==='queue'?![]:!![],'phonecall_activity_parties':_0xea4adc},getCustomFields(_0x1ebc3e[_0x2403('0x4b')],_0x1aec53,_0x1ebc3e[_0x2403('0x4c')])),'headers':{'Authorization':'Bearer\x20'+_0x1ab5b7,'OData-Version':_0x2403('0x1d')},'json':!![],'resolveWithFullResponse':!![]};}return rp(_0x22b360);})['then'](function(_0x21295a){var _0x5214a9=_0x21295a[_0x2403('0x2e')][_0x2403('0x2f')];var _0x2507ae=_0x5214a9[_0x2403('0x43')](_0x5214a9['lastIndexOf']('(')+0x1,_0x5214a9[_0x2403('0x30')](')'));_0x36b98c[_0x2403('0x52')]=_0x2507ae;_0x231c75(_0x36b98c);})[_0x2403('0x27')](function(_0x23e6b8){_0x321c5c(_0x23e6b8[_0x2403('0x28')]);});});}function emit(_0x15f0ad,_0xafdaff,_0x1eeeeb,_0x2cc805){var _0x584f8f={'uri':util[_0x2403('0x53')](_0x2403('0x54'),_0x15f0ad,_0x1eeeeb,_0x2cc805)};io['to'](util[_0x2403('0x53')](_0x2403('0x55'),_0xafdaff))[_0x2403('0x56')](_0x2403('0x57'),_0x584f8f);}exports['cs']=function(_0x3835ce,_0x121d4e,_0x3f90b4,_0x1eb6e9,_0xf4ff9a,_0x3e2ad8,_0x4c12e0,_0x3e402a){var _0x3fd03e={};_0x3e2ad8[_0x2403('0xb')]=_0x3e2ad8[_0x2403('0x58')]?intUtil[_0x2403('0x59')](_0x3e2ad8[_0x2403('0xe')][_0x2403('0xc')]):intUtil[_0x2403('0x59')](_0x3e2ad8['remoteUri']);_0x3e2ad8[_0x2403('0x5a')]=intUtil[_0x2403('0x59')](_0x3e2ad8['serverUrl']);_0x3fd03e[_0x2403('0x4e')]=_0x3e402a===_0x2403('0x4f')||_0x3e402a===_0x2403('0x5b')?_0x2403('0x4f'):_0x2403('0x2a');var _0x12bf83=_0x3e2ad8[_0x2403('0x58')]?util[_0x2403('0x53')](_0x2403('0x5c'),_0x3e2ad8[_0x2403('0xe')][_0x2403('0xc')]):util['format'](_0x2403('0x5c'),_0x3e2ad8[_0x2403('0xb')]);var _0x1366df=util[_0x2403('0x53')](_0x2403('0x5d'),_0x3e2ad8[_0x2403('0xd')]);var _0x296552=util['format'](_0x2403('0x5e'),_0x3e2ad8[_0x2403('0x5a')],_0x121d4e[_0x2403('0x5f')],md5(_0x121d4e[_0x2403('0x5f')]));if(_0xf4ff9a&&_0xf4ff9a[_0x2403('0x60')]){logger[_0x2403('0x26')](_0x2403('0x61'),_0x2403('0x62'));_0x121d4e[_0x2403('0x63')]=_0x296552;}else if(_0x4c12e0&&_0x4c12e0['recordingFormat']&&_0x4c12e0[_0x2403('0x64')]!==_0x2403('0x65')){logger['info'](_0x2403('0x66'),_0x2403('0x62'));_0x121d4e[_0x2403('0x63')]=_0x296552;}else{_0x121d4e['recordingURL']='';}return getUser(_0x3fd03e,_0x3e2ad8,_0x1eb6e9,_0x1366df,_0x12bf83,_0x3e402a)[_0x2403('0x16')](function(_0x499615){logger[_0x2403('0x26')]('['+_0x3e402a[_0x2403('0x23')]()+']\x20The\x20User\x20ID\x20is:',_0x499615[_0x2403('0x25')]);logger[_0x2403('0x26')]('['+_0x3e402a[_0x2403('0x23')]()+']\x20The\x20User\x20email\x20is:',_0x499615[_0x2403('0x67')]);return getEndUser(_0x499615,_0x3e2ad8,_0x1366df,_0x12bf83,_0x121d4e,_0x3e402a,_0x3f90b4[_0x2403('0x68')],_0x3f90b4[_0x2403('0x69')]);})[_0x2403('0x16')](function(_0x351a26){logger['info']('['+_0x3e402a['toUpperCase']()+_0x2403('0x6a'),_0x351a26[_0x2403('0x31')]);logger[_0x2403('0x26')]('['+_0x3e402a[_0x2403('0x23')]()+']\x20The\x20Enduser\x20phone\x20is:',_0x121d4e[_0x2403('0x51')]);return getTicket(_0x351a26,_0x3e2ad8,_0x1366df,_0x12bf83,_0x121d4e,_0x3f90b4,_0x3e402a);})[_0x2403('0x16')](function(_0x2508d0){logger[_0x2403('0x26')](util['format']('['+_0x3e402a[_0x2403('0x23')]()+_0x2403('0x6b'),_0x3f90b4[_0x2403('0x4c')],_0x2508d0[_0x2403('0x52')]));logger[_0x2403('0x26')](util[_0x2403('0x53')]('['+_0x3e402a['toUpperCase']()+']\x20Call\x20direction:\x20%s',_0x3e402a));if(_0x3e402a!=='unmanaged'&&_0x3f90b4[_0x2403('0x6c')]){logger[_0x2403('0x26')]('['+_0x3e402a['toUpperCase']()+']',_0x2403('0x6d'));emit(_0x3e2ad8[_0x2403('0xb')],_0x1eb6e9[_0x2403('0x6e')],_0x3f90b4[_0x2403('0x4c')],_0x2508d0[_0x2403('0x52')]);}})[_0x2403('0x27')](function(_0x49fb62){logger[_0x2403('0x18')]('['+_0x3e402a['toUpperCase']()+_0x2403('0x6f'),_0x49fb62['message']);console['error']('Error\x20running\x20Dynamics365\x20integration',_0x49fb62);});};
\ No newline at end of file
+var _0x35c1=['outbound','destcalleridnum','calleridnum','contacts','4.0','body','odata-entityid','substring','lastIndexOf','enduserId','catch','telephone1','contacts?$select=','&$filter=','\x20eq\x20\x27','replace','%2b','value','contactid','nothing','info',']\x20Enduser\x20NOT\x20Created\x20-\x20ModuleCreate\x20=\x20Nothing',']\x20Enduser\x20created!','forEach','string','picklist','type','nameField','idField','indexOf','content','ticketType','incident','incidents','assign','Subjects','getString','Fields','phonecall','/systemusers(','callDirection','queue','/contacts(','phonecalls','headers','ticketId','format','%s/main.aspx?pagetype=entityrecord&etn=%s&id=%s','user:%s','emit','stripTrailingSlash','serverUrl','unmanaged','https://login.microsoftonline.com/%s/oauth2/token','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','uniqueid','[QUEUE]','Recording\x20is\x20enabled!','recordingURL','recordingFormat','none',']\x20The\x20User\x20email\x20is:','moduleCreate','additionalSearchContact',']\x20The\x20Enduser\x20phone\x20is:',']\x20The\x20%s\x20ID\x20is:\x20%s',']\x20Call\x20direction:\x20%s','openNewTab','Displaying\x20call\x20in\x20a\x20new\x20tab...','name','Error\x20running\x20Dynamics365\x20integration','request-promise','util','./util','ioredis','../../../../config/logger','dynamics365','defaults','redis','localhost','socket.io-emitter','modernAuthentication','remoteUri','CloudProvider','data7','tenantId','data2','data5','POST','username','password','clientSecret','access_token','error','toUpperCase',']\x20Wrong\x20credentials!','message','GET','systemusers?$select=internalemailaddress,isdisabled,systemuserid','Bearer\x20','then','isNil','validateEmail','email','userEmail','length','isdisabled',']\x20Agent\x20found\x20','internalemailaddress','userId','systemuserid','toLowerCase'];(function(_0x15acbd,_0x327a09){var _0x68f3b3=function(_0x4fe016){while(--_0x4fe016){_0x15acbd['push'](_0x15acbd['shift']());}};_0x68f3b3(++_0x327a09);}(_0x35c1,0xb7));var _0x135c=function(_0x39c9fc,_0x267494){_0x39c9fc=_0x39c9fc-0x0;var _0x425ea4=_0x35c1[_0x39c9fc];return _0x425ea4;};'use strict';var _=require('lodash');var rp=require(_0x135c('0x0'));var util=require(_0x135c('0x1'));var intUtil=require(_0x135c('0x2'));var md5=require('md5');var Redis=require(_0x135c('0x3'));var logger=require(_0x135c('0x4'))(_0x135c('0x5'));var config=require('../../../../config/environment');config['redis']=_[_0x135c('0x6')](config[_0x135c('0x7')],{'host':_0x135c('0x8'),'port':0x18eb});var io=require(_0x135c('0x9'))(new Redis(config[_0x135c('0x7')]));function getAuthToken(_0x1a15e9,_0x33680e,_0x44a171){if(_0x1a15e9[_0x135c('0xa')]){_0x1a15e9[_0x135c('0xb')]=_0x1a15e9[_0x135c('0xc')][_0x135c('0xd')];_0x1a15e9[_0x135c('0xe')]=_0x1a15e9[_0x135c('0xc')][_0x135c('0xf')];return Promise['resolve'](_0x1a15e9['CloudProvider'][_0x135c('0x10')]);}var _0x3efc5f={'method':_0x135c('0x11'),'uri':_0x33680e,'form':{'client_id':_0x1a15e9['clientId'],'resource':_0x1a15e9[_0x135c('0xb')],'username':_0x1a15e9[_0x135c('0x12')],'password':_0x1a15e9['password'],'grant_type':_0x135c('0x13'),'client_secret':_0x1a15e9[_0x135c('0x14')]},'json':!![]};return rp(_0x3efc5f)['then'](function(_0x2978b1){return _0x2978b1[_0x135c('0x15')];})['catch'](function(_0x59b0a6){logger[_0x135c('0x16')]('['+[_0x44a171[_0x135c('0x17')]()]+_0x135c('0x18'));return _0x59b0a6[_0x135c('0x19')];});}function getUser(_0x5734eb,_0x227ce8,_0x314c82,_0xc2a1fc,_0x32f43d,_0x5e0226){return new Promise(function(_0x31310e,_0x47a88f){return getAuthToken(_0x227ce8,_0xc2a1fc,_0x5e0226)['then'](function(_0xd50aa5){var _0x4cdb3c={'method':_0x135c('0x1a'),'uri':_0x32f43d+_0x135c('0x1b'),'headers':{'Authorization':_0x135c('0x1c')+_0xd50aa5,'OData-Version':'4.0'},'json':!![]};return rp(_0x4cdb3c);})[_0x135c('0x1d')](function(_0x29da28){var _0x109a9d=_0x29da28['value'];var _0x34a30b=![];var _0x2cc54b=null;if(!_[_0x135c('0x1e')](_0x314c82)){if(intUtil[_0x135c('0x1f')](_0x314c82[_0x135c('0x20')])){_0x5734eb[_0x135c('0x21')]=_0x314c82[_0x135c('0x20')];for(_0x2cc54b=0x0;_0x2cc54b<_0x109a9d[_0x135c('0x22')];_0x2cc54b++){if(_0x109a9d[_0x2cc54b]['internalemailaddress']===_0x314c82[_0x135c('0x20')]&&!_0x109a9d[_0x2cc54b][_0x135c('0x23')]){_0x34a30b=!![];logger['info']('['+[_0x5e0226[_0x135c('0x17')]()]+_0x135c('0x24')+_0x109a9d[_0x2cc54b]['systemuserid']+'!');_0x5734eb['userId']=_0x109a9d[_0x2cc54b]['systemuserid'];}}}}if(!_0x34a30b){logger['info']('['+[_0x5e0226[_0x135c('0x17')]()]+']\x20Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!');_0x5734eb[_0x135c('0x21')]=_0x227ce8[_0x135c('0x12')];for(_0x2cc54b=0x0;_0x2cc54b<_0x109a9d[_0x135c('0x22')];_0x2cc54b++){if(_0x109a9d[_0x2cc54b][_0x135c('0x25')]===_0x227ce8[_0x135c('0x12')]){_0x5734eb[_0x135c('0x26')]=_0x109a9d[_0x2cc54b][_0x135c('0x27')];}}}_0x31310e(_0x5734eb);})['catch'](function(_0x3973e7){_0x47a88f(_0x3973e7[_0x135c('0x19')]);});});}function createEndUser(_0x2c890e,_0x361282,_0x49a05b,_0x567447,_0x1dcb94,_0x585a51,_0x5713bf){return new Promise(function(_0x128882,_0x547a66){return getAuthToken(_0x361282,_0x49a05b,_0x585a51)[_0x135c('0x1d')](function(_0x533bb6){var _0x35d035=_0x585a51[_0x135c('0x28')]()===_0x135c('0x29')?_0x1dcb94[_0x135c('0x2a')]:_0x1dcb94[_0x135c('0x2b')];var _0x101e89={'method':'POST','uri':_0x567447+_0x135c('0x2c'),'body':{'fullname':_0x35d035,'firstname':_0x35d035,'lastname':'_','mobilephone':null,'address1_telephone1':null,'ownerid@odata.bind':'/systemusers('+_0x2c890e[_0x135c('0x26')]+')'},'headers':{'Authorization':_0x135c('0x1c')+_0x533bb6,'OData-Version':_0x135c('0x2d')},'json':!![],'resolveWithFullResponse':!![]};_0x101e89[_0x135c('0x2e')][_0x5713bf]=_0x35d035;return rp(_0x101e89);})['then'](function(_0x3e3a33){var _0x91d8de=_0x3e3a33['headers'][_0x135c('0x2f')];var _0x1c2bf4=_0x91d8de[_0x135c('0x30')](_0x91d8de[_0x135c('0x31')]('(')+0x1,_0x91d8de[_0x135c('0x31')](')'));_0x2c890e[_0x135c('0x32')]=_0x1c2bf4;_0x128882(_0x2c890e);})[_0x135c('0x33')](function(_0x55d83d){_0x547a66(_0x55d83d[_0x135c('0x19')]);});});}function getEndUser(_0xaaf232,_0x4ce8ef,_0x5c4450,_0x43d3a9,_0x802cd7,_0x2f5ea7,_0x4f7f87,_0x3a4950){var _0x358d9b=_0x2f5ea7['toLowerCase']()==='outbound'?_0x802cd7['destcalleridnum']:_0x802cd7[_0x135c('0x2b')];return getAuthToken(_0x4ce8ef,_0x5c4450,_0x2f5ea7)[_0x135c('0x1d')](function(_0x8fa938){_0x3a4950=_0x3a4950?_0x3a4950:_0x135c('0x34');var _0x1d9131={'method':'GET','uri':_0x43d3a9+_0x135c('0x35')+_0x3a4950+_0x135c('0x36')+_0x3a4950+_0x135c('0x37')+_0x358d9b[_0x135c('0x38')]('+',_0x135c('0x39'))+'\x27','headers':{'Authorization':_0x135c('0x1c')+_0x8fa938,'If-None-Match':null,'OData-Version':_0x135c('0x2d')},'json':!![]};return rp(_0x1d9131);})[_0x135c('0x1d')](function(_0x12f433){var _0x4aaacd=![];if(!_0x12f433)return _0x4aaacd;var _0x3e9833=_0x12f433[_0x135c('0x3a')];for(var _0x3b7c81=0x0;_0x3b7c81<_0x3e9833[_0x135c('0x22')];_0x3b7c81++){if(_0x3e9833[_0x3b7c81][_0x3a4950]===_0x358d9b){_0x4aaacd=!![];_0xaaf232[_0x135c('0x32')]=_0x3e9833[_0x3b7c81][_0x135c('0x3b')];}}return _0x4aaacd;})[_0x135c('0x1d')](function(_0x199100){if(_0x199100)return _0xaaf232;if(_0x4f7f87===_0x135c('0x3c')){logger[_0x135c('0x3d')]('['+[_0x2f5ea7[_0x135c('0x17')]()]+_0x135c('0x3e'));return _0xaaf232;}return createEndUser(_0xaaf232,_0x4ce8ef,_0x5c4450,_0x43d3a9,_0x802cd7,_0x2f5ea7,_0x3a4950)[_0x135c('0x1d')](function(_0x325d44){logger[_0x135c('0x3d')]('['+[_0x2f5ea7['toUpperCase']()]+_0x135c('0x3f'),_0x325d44[_0x135c('0x32')]);return _0x325d44;});});}function getCustomFields(_0xbd5ec6,_0x5ef6c5,_0x3396f0){var _0x2140dc={};if(_0xbd5ec6[_0x135c('0x22')]>0x0){_[_0x135c('0x40')](_0xbd5ec6,function(_0x456c15){if(_['includes']([_0x135c('0x41'),_0x135c('0x42')],_0x456c15[_0x135c('0x43')])&&_0x456c15[_0x135c('0x44')]&&!_0x456c15['customField']){var _0x3bb903=_0x456c15[_0x135c('0x45')][_0x135c('0x28')]();var _0x44c1dc=_0x3bb903[_0x135c('0x30')](0x0,_0x3bb903[_0x135c('0x46')]('_'));var _0x4566bc=_0x3bb903['substring'](_0x3bb903[_0x135c('0x46')]('_')+0x1);if(_0x44c1dc===_0x3396f0){_0x2140dc[_0x4566bc]=_0x456c15[_0x135c('0x47')];}}});}return _0x2140dc;}function getTicket(_0x335835,_0x484f14,_0x1c1569,_0x1bfd4b,_0x4fdb98,_0x2fd383,_0x122edd){return new Promise(function(_0x1ffedc,_0x9187e6){var _0x41a640;return getAuthToken(_0x484f14,_0x1c1569,_0x122edd)[_0x135c('0x1d')](function(_0x51274f){if(_0x2fd383[_0x135c('0x48')]===_0x135c('0x49')){_0x41a640={'method':_0x135c('0x11'),'uri':_0x1bfd4b+_0x135c('0x4a'),'body':Object[_0x135c('0x4b')]({},{'title':intUtil['getString'](_0x2fd383[_0x135c('0x4c')],_0x4fdb98,'\x20'),'description':intUtil[_0x135c('0x4d')](_0x2fd383['Descriptions'],_0x4fdb98,'\x0a'),'customerid_contact@odata.bind':_0x335835[_0x135c('0x32')]?'/contacts('+_0x335835['enduserId']+')':undefined,'ownerid@odata.bind':'/systemusers('+_0x335835[_0x135c('0x26')]+')','caseorigincode':'1'},getCustomFields(_0x2fd383[_0x135c('0x4e')],_0x4fdb98,_0x2fd383[_0x135c('0x48')])),'headers':{'Authorization':_0x135c('0x1c')+_0x51274f,'OData-Version':'4.0'},'json':!![],'resolveWithFullResponse':!![]};}if(_0x2fd383[_0x135c('0x48')]===_0x135c('0x4f')){var _0x631e5b=_0x335835[_0x135c('0x32')]?[{'partyid_systemuser@odata.bind':_0x135c('0x50')+_0x335835[_0x135c('0x26')]+')','participationtypemask':_0x335835[_0x135c('0x51')]===_0x135c('0x52')?0x2:0x1},{'partyid_contact@odata.bind':_0x135c('0x53')+_0x335835[_0x135c('0x32')]+')','participationtypemask':_0x335835[_0x135c('0x51')]==='queue'?0x1:0x2}]:[{'partyid_systemuser@odata.bind':_0x135c('0x50')+_0x335835[_0x135c('0x26')]+')','participationtypemask':_0x335835['callDirection']===_0x135c('0x52')?0x2:0x1}];_0x41a640={'method':_0x135c('0x11'),'uri':_0x1bfd4b+_0x135c('0x54'),'body':Object[_0x135c('0x4b')]({},{'subject':intUtil[_0x135c('0x4d')](_0x2fd383['Subjects'],_0x4fdb98,'\x20'),'phonenumber':String(_0x4fdb98['calleridnum']),'description':intUtil[_0x135c('0x4d')](_0x2fd383['Descriptions'],_0x4fdb98,'\x0a'),'regardingobjectid_contact@odata.bind':_0x335835['enduserId']?'/contacts('+_0x335835[_0x135c('0x32')]+')':undefined,'ownerid@odata.bind':_0x135c('0x50')+_0x335835['userId']+')','directioncode':_0x335835['callDirection']===_0x135c('0x52')?![]:!![],'phonecall_activity_parties':_0x631e5b},getCustomFields(_0x2fd383[_0x135c('0x4e')],_0x4fdb98,_0x2fd383[_0x135c('0x48')])),'headers':{'Authorization':_0x135c('0x1c')+_0x51274f,'OData-Version':'4.0'},'json':!![],'resolveWithFullResponse':!![]};}return rp(_0x41a640);})['then'](function(_0xcd29ab){var _0x167467=_0xcd29ab[_0x135c('0x55')][_0x135c('0x2f')];var _0x547da8=_0x167467[_0x135c('0x30')](_0x167467[_0x135c('0x31')]('(')+0x1,_0x167467[_0x135c('0x31')](')'));_0x335835[_0x135c('0x56')]=_0x547da8;_0x1ffedc(_0x335835);})['catch'](function(_0x3a7844){_0x9187e6(_0x3a7844[_0x135c('0x19')]);});});}function emit(_0x1fb453,_0x530938,_0x330d31,_0x58a0dd){var _0x58c68c={'uri':util[_0x135c('0x57')](_0x135c('0x58'),_0x1fb453,_0x330d31,_0x58a0dd)};io['to'](util[_0x135c('0x57')](_0x135c('0x59'),_0x530938))[_0x135c('0x5a')]('trigger:browser:url',_0x58c68c);}exports['cs']=function(_0x45eab2,_0x3b4b6a,_0x17fd06,_0x4d066f,_0x5bd146,_0x4d08f1,_0x556010,_0x1083b9){var _0x222e32={};_0x4d08f1[_0x135c('0xb')]=_0x4d08f1[_0x135c('0xa')]?intUtil['stripTrailingSlash'](_0x4d08f1['CloudProvider'][_0x135c('0xd')]):intUtil[_0x135c('0x5b')](_0x4d08f1[_0x135c('0xb')]);_0x4d08f1[_0x135c('0x5c')]=intUtil[_0x135c('0x5b')](_0x4d08f1[_0x135c('0x5c')]);_0x222e32[_0x135c('0x51')]=_0x1083b9===_0x135c('0x52')||_0x1083b9===_0x135c('0x5d')?'queue':_0x135c('0x29');var _0x1d5aec=_0x4d08f1[_0x135c('0xa')]?util[_0x135c('0x57')]('%s/api/data/v9.0/',_0x4d08f1['CloudProvider']['data7']):util['format']('%s/api/data/v9.0/',_0x4d08f1['remoteUri']);var _0x4cbf46=util[_0x135c('0x57')](_0x135c('0x5e'),_0x4d08f1['tenantId']);var _0x936b8a=util['format'](_0x135c('0x5f'),_0x4d08f1[_0x135c('0x5c')],_0x3b4b6a[_0x135c('0x60')],md5(_0x3b4b6a[_0x135c('0x60')]));if(_0x5bd146&&_0x5bd146['monitor_format']){logger['info'](_0x135c('0x61'),_0x135c('0x62'));_0x3b4b6a[_0x135c('0x63')]=_0x936b8a;}else if(_0x556010&&_0x556010[_0x135c('0x64')]&&_0x556010[_0x135c('0x64')]!==_0x135c('0x65')){logger[_0x135c('0x3d')]('[OUTBOUND]','Recording\x20is\x20enabled!');_0x3b4b6a[_0x135c('0x63')]=_0x936b8a;}else{_0x3b4b6a['recordingURL']='';}return getUser(_0x222e32,_0x4d08f1,_0x4d066f,_0x4cbf46,_0x1d5aec,_0x1083b9)[_0x135c('0x1d')](function(_0x4315cd){logger[_0x135c('0x3d')]('['+_0x1083b9[_0x135c('0x17')]()+']\x20The\x20User\x20ID\x20is:',_0x4315cd['userId']);logger['info']('['+_0x1083b9['toUpperCase']()+_0x135c('0x66'),_0x4315cd[_0x135c('0x21')]);return getEndUser(_0x4315cd,_0x4d08f1,_0x4cbf46,_0x1d5aec,_0x3b4b6a,_0x1083b9,_0x17fd06[_0x135c('0x67')],_0x17fd06[_0x135c('0x68')]);})[_0x135c('0x1d')](function(_0x5f36fa){logger[_0x135c('0x3d')]('['+_0x1083b9[_0x135c('0x17')]()+']\x20The\x20Enduser\x20ID\x20is:',_0x5f36fa['enduserId']);logger[_0x135c('0x3d')]('['+_0x1083b9[_0x135c('0x17')]()+_0x135c('0x69'),_0x3b4b6a[_0x135c('0x2b')]);return getTicket(_0x5f36fa,_0x4d08f1,_0x4cbf46,_0x1d5aec,_0x3b4b6a,_0x17fd06,_0x1083b9);})[_0x135c('0x1d')](function(_0x16e112){logger[_0x135c('0x3d')](util[_0x135c('0x57')]('['+_0x1083b9['toUpperCase']()+_0x135c('0x6a'),_0x17fd06[_0x135c('0x48')],_0x16e112['ticketId']));logger['info'](util[_0x135c('0x57')]('['+_0x1083b9[_0x135c('0x17')]()+_0x135c('0x6b'),_0x1083b9));if(_0x1083b9!==_0x135c('0x5d')&&_0x17fd06[_0x135c('0x6c')]){logger[_0x135c('0x3d')]('['+_0x1083b9[_0x135c('0x17')]()+']',_0x135c('0x6d'));emit(_0x4d08f1[_0x135c('0xb')],_0x4d066f[_0x135c('0x6e')],_0x17fd06[_0x135c('0x48')],_0x16e112[_0x135c('0x56')]);}})[_0x135c('0x33')](function(_0x2e293e){logger[_0x135c('0x16')]('['+_0x1083b9[_0x135c('0x17')]()+']\x20Error\x20running\x20Dynamics365\x20integration',_0x2e293e[_0x135c('0x19')]);console[_0x135c('0x16')](_0x135c('0x6f'),_0x2e293e);});};
\ No newline at end of file