Built motion from commit efa66e19.|2.6.22
[motion2.git] / server / services / ami / trigger / integration / dynamics365.js
index 488613d..2633fe1 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x54f1=['incident','incidents','assign','getString','Descriptions','/contacts(','phonecalls','Subjects','queue','callDirection','lastIndexOf','format','%s/main.aspx?pagetype=entityrecord&etn=%s&id=%s','user:%s','emit','serverUrl','stripTrailingSlash','unmanaged','%s/api/data/v9.0/','https://login.microsoftonline.com/%s/oauth2/token','tenantId','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','uniqueid','[QUEUE]','recordingURL','recordingFormat','none','[OUTBOUND]',']\x20The\x20User\x20ID\x20is:',']\x20The\x20User\x20email\x20is:',']\x20The\x20Enduser\x20phone\x20is:',']\x20The\x20%s\x20ID\x20is:\x20%s','ticketId','Displaying\x20call\x20in\x20a\x20new\x20tab...','name',']\x20Error\x20running\x20Dynamics365\x20integration','inspect','lodash','bluebird','request-promise','util','./util','md5','../../../../config/logger','dynamics365','redis','defaults','localhost','clientId','remoteUri','username','password','then','catch','error','toUpperCase',']\x20Wrong\x20credentials!','message','GET','systemusers?$select=internalemailaddress,isdisabled,systemuserid','value','isNil','email','userEmail','internalemailaddress','info',']\x20Agent\x20found\x20','systemuserid','length','toLowerCase','outbound','destcalleridnum','calleridnum','POST','contacts','/systemusers(','userId','Bearer\x20','4.0','headers','odata-entityid','substring','telephone1','enduserId',']\x20Enduser\x20created!',']\x20Enduser\x20Created!','forEach','type','string','nameField','customField','indexOf','content','ticketType'];(function(_0x4b8cd8,_0x19ca72){var _0x238ed2=function(_0x2f9584){while(--_0x2f9584){_0x4b8cd8['push'](_0x4b8cd8['shift']());}};_0x238ed2(++_0x19ca72);}(_0x54f1,0x83));var _0x154f=function(_0x330a3b,_0x2bcb89){_0x330a3b=_0x330a3b-0x0;var _0x18a7fb=_0x54f1[_0x330a3b];return _0x18a7fb;};'use strict';var _=require(_0x154f('0x0'));var BPromise=require(_0x154f('0x1'));var rp=require(_0x154f('0x2'));var util=require(_0x154f('0x3'));var intUtil=require(_0x154f('0x4'));var md5=require(_0x154f('0x5'));var Redis=require('ioredis');var logger=require(_0x154f('0x6'))(_0x154f('0x7'));var config=require('../../../../config/environment');config[_0x154f('0x8')]=_[_0x154f('0x9')](config[_0x154f('0x8')],{'host':_0x154f('0xa'),'port':0x18eb});var io=require('socket.io-emitter')(new Redis(config[_0x154f('0x8')]));function getAuthToken(_0x4069f4,_0xbc50f9,_0x3a193e){var _0x2d46d0={'method':'POST','uri':_0xbc50f9,'form':{'client_id':_0x4069f4[_0x154f('0xb')],'resource':_0x4069f4[_0x154f('0xc')],'username':_0x4069f4[_0x154f('0xd')],'password':_0x4069f4['password'],'grant_type':_0x154f('0xe'),'client_secret':_0x4069f4['clientSecret']},'json':!![]};return rp(_0x2d46d0)[_0x154f('0xf')](function(_0xa6b323){return _0xa6b323['access_token'];})[_0x154f('0x10')](function(_0x9e5331){logger[_0x154f('0x11')]('['+[_0x3a193e[_0x154f('0x12')]()]+_0x154f('0x13'));return _0x9e5331[_0x154f('0x14')];});}function getUser(_0x8c8353,_0x33b354,_0x5e112e,_0x177f1f,_0x2b786d,_0x390bb3){return new BPromise(function(_0x37b150,_0x23762c){return getAuthToken(_0x33b354,_0x177f1f,_0x390bb3)['then'](function(_0x154d64){var _0x2ca8f2={'method':_0x154f('0x15'),'uri':_0x2b786d+_0x154f('0x16'),'headers':{'Authorization':'Bearer\x20'+_0x154d64,'OData-Version':'4.0'},'json':!![]};return rp(_0x2ca8f2);})['then'](function(_0x4a66e3){var _0x10540f=_0x4a66e3[_0x154f('0x17')];var _0x2684d9=![];var _0x59eb2b=null;if(!_[_0x154f('0x18')](_0x5e112e)){if(intUtil['validateEmail'](_0x5e112e[_0x154f('0x19')])){_0x8c8353[_0x154f('0x1a')]=_0x5e112e[_0x154f('0x19')];for(_0x59eb2b=0x0;_0x59eb2b<_0x10540f['length'];_0x59eb2b++){if(_0x10540f[_0x59eb2b][_0x154f('0x1b')]===_0x5e112e[_0x154f('0x19')]&&!_0x10540f[_0x59eb2b]['isdisabled']){_0x2684d9=!![];logger[_0x154f('0x1c')]('['+[_0x390bb3[_0x154f('0x12')]()]+_0x154f('0x1d')+_0x10540f[_0x59eb2b][_0x154f('0x1e')]+'!');_0x8c8353['userId']=_0x10540f[_0x59eb2b][_0x154f('0x1e')];}}}}if(!_0x2684d9){logger['info']('['+[_0x390bb3[_0x154f('0x12')]()]+']\x20Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!');_0x8c8353[_0x154f('0x1a')]=_0x33b354[_0x154f('0xd')];for(_0x59eb2b=0x0;_0x59eb2b<_0x10540f[_0x154f('0x1f')];_0x59eb2b++){if(_0x10540f[_0x59eb2b][_0x154f('0x1b')]===_0x33b354['username']){_0x8c8353['userId']=_0x10540f[_0x59eb2b][_0x154f('0x1e')];}}}_0x37b150(_0x8c8353);})[_0x154f('0x10')](function(_0x49594f){_0x23762c(_0x49594f['message']);});});}function createEndUser(_0x1d2f08,_0x1d0f9b,_0x20c55a,_0x249950,_0x3cb777,_0x486ae7){return new BPromise(function(_0x520e2d,_0x209667){return getAuthToken(_0x1d0f9b,_0x20c55a,_0x486ae7)[_0x154f('0xf')](function(_0x4c64da){var _0x4b8929=_0x486ae7[_0x154f('0x20')]()===_0x154f('0x21')?_0x3cb777[_0x154f('0x22')]:_0x3cb777[_0x154f('0x23')];var _0x16a3d1={'method':_0x154f('0x24'),'uri':_0x249950+_0x154f('0x25'),'body':{'telephone1':_0x4b8929,'fullname':_0x4b8929,'firstname':_0x4b8929,'lastname':'_','mobilephone':null,'address1_telephone1':null,'ownerid@odata.bind':_0x154f('0x26')+_0x1d2f08[_0x154f('0x27')]+')'},'headers':{'Authorization':_0x154f('0x28')+_0x4c64da,'OData-Version':_0x154f('0x29')},'json':!![],'resolveWithFullResponse':!![]};return rp(_0x16a3d1);})[_0x154f('0xf')](function(_0x49fdb1){var _0x21d667=_0x49fdb1[_0x154f('0x2a')][_0x154f('0x2b')];var _0x58ba61=_0x21d667[_0x154f('0x2c')](_0x21d667['lastIndexOf']('(')+0x1,_0x21d667['lastIndexOf'](')'));_0x1d2f08['enduserId']=_0x58ba61;_0x520e2d(_0x1d2f08);})[_0x154f('0x10')](function(_0x2c7131){_0x209667(_0x2c7131[_0x154f('0x14')]);});});}function getEndUser(_0xefc4b4,_0x57f233,_0x6f6a74,_0x369602,_0x2391e5,_0x4827d6){return new BPromise(function(_0xf071f7,_0x4fa3cf){return getAuthToken(_0x57f233,_0x6f6a74,_0x4827d6)[_0x154f('0xf')](function(_0x1f956d){var _0x37237a={'method':_0x154f('0x15'),'uri':_0x369602+'contacts?$select=telephone1','headers':{'Authorization':_0x154f('0x28')+_0x1f956d,'If-None-Match':null,'OData-Version':_0x154f('0x29')},'json':!![]};return rp(_0x37237a);})['then'](function(_0x7fa784){var _0x254e7b=null;if(_0x7fa784){var _0x57f0a4=_0x7fa784[_0x154f('0x17')];var _0x10395f=![];for(_0x254e7b=0x0;_0x254e7b<_0x57f0a4[_0x154f('0x1f')];_0x254e7b++){var _0x18b830=_0x4827d6['toLowerCase']()===_0x154f('0x21')?_0x2391e5[_0x154f('0x22')]:_0x2391e5['calleridnum'];if(_0x57f0a4[_0x254e7b][_0x154f('0x2d')]===_0x18b830){_0x10395f=!![];_0xefc4b4[_0x154f('0x2e')]=_0x57f0a4[_0x254e7b]['contactid'];}}if(_0x10395f){_0xf071f7(_0xefc4b4);}else{return createEndUser(_0xefc4b4,_0x57f233,_0x6f6a74,_0x369602,_0x2391e5,_0x4827d6)['then'](function(_0x5bfcd8){logger[_0x154f('0x1c')]('['+[_0x4827d6[_0x154f('0x12')]()]+_0x154f('0x2f'),_0x5bfcd8[_0x154f('0x2e')]);_0xf071f7(_0x5bfcd8);});}}else{return createEndUser(_0xefc4b4,_0x57f233,_0x6f6a74,_0x369602,_0x2391e5,_0x4827d6)['then'](function(_0x1b367d){logger['info']('['+[_0x4827d6[_0x154f('0x12')]()]+_0x154f('0x30'),_0x1b367d['enduserId']);_0xf071f7(_0x1b367d);});}});});}function getCustomFields(_0x3811fe,_0xe39fc7,_0x4ad652){var _0x111e03={};if(_0x3811fe[_0x154f('0x1f')]>0x0){_[_0x154f('0x31')](_0x3811fe,function(_0x3ee310){if(_0x3ee310[_0x154f('0x32')]===_0x154f('0x33')&&_0x3ee310[_0x154f('0x34')]&&!_0x3ee310[_0x154f('0x35')]){var _0x55ad1a=_0x3ee310['idField']['toLowerCase']();var _0x330019=_0x55ad1a[_0x154f('0x2c')](0x0,_0x55ad1a[_0x154f('0x36')]('_'));var _0x41f6d1=_0x55ad1a['substring'](_0x55ad1a[_0x154f('0x36')]('_')+0x1);if(_0x330019===_0x4ad652){_0x111e03[_0x41f6d1]=_0x3ee310[_0x154f('0x37')];}}});}return _0x111e03;}function getTicket(_0x118bea,_0x16a6c3,_0x1260e1,_0xd85363,_0x2226a3,_0x235630,_0x2c6e72){return new BPromise(function(_0x4157a3,_0x1e85eb){var _0x1b38d8;return getAuthToken(_0x16a6c3,_0x1260e1,_0x2c6e72)[_0x154f('0xf')](function(_0x5b9695){if(_0x235630[_0x154f('0x38')]===_0x154f('0x39')){_0x1b38d8={'method':_0x154f('0x24'),'uri':_0xd85363+_0x154f('0x3a'),'body':Object[_0x154f('0x3b')]({},{'title':intUtil[_0x154f('0x3c')](_0x235630['Subjects'],_0x2226a3,'\x20'),'description':intUtil['getString'](_0x235630[_0x154f('0x3d')],_0x2226a3,'\x0a'),'customerid_contact@odata.bind':_0x154f('0x3e')+_0x118bea[_0x154f('0x2e')]+')','ownerid@odata.bind':_0x154f('0x26')+_0x118bea[_0x154f('0x27')]+')','caseorigincode':'1'},getCustomFields(_0x235630['Fields'],_0x2226a3,_0x235630[_0x154f('0x38')])),'headers':{'Authorization':_0x154f('0x28')+_0x5b9695,'OData-Version':_0x154f('0x29')},'json':!![],'resolveWithFullResponse':!![]};}if(_0x235630[_0x154f('0x38')]==='phonecall'){_0x1b38d8={'method':'POST','uri':_0xd85363+_0x154f('0x3f'),'body':Object[_0x154f('0x3b')]({},{'subject':intUtil[_0x154f('0x3c')](_0x235630[_0x154f('0x40')],_0x2226a3,'\x20'),'phonenumber':String(_0x2226a3[_0x154f('0x23')]),'description':intUtil[_0x154f('0x3c')](_0x235630[_0x154f('0x3d')],_0x2226a3,'\x0a'),'regardingobjectid_contact@odata.bind':_0x154f('0x3e')+_0x118bea[_0x154f('0x2e')]+')','ownerid@odata.bind':_0x154f('0x26')+_0x118bea[_0x154f('0x27')]+')','directioncode':_0x118bea['callDirection']===_0x154f('0x41')?![]:!![],'phonecall_activity_parties':[{'partyid_systemuser@odata.bind':_0x154f('0x26')+_0x118bea[_0x154f('0x27')]+')','participationtypemask':_0x118bea['callDirection']===_0x154f('0x41')?0x2:0x1},{'partyid_contact@odata.bind':'/contacts('+_0x118bea[_0x154f('0x2e')]+')','participationtypemask':_0x118bea[_0x154f('0x42')]===_0x154f('0x41')?0x1:0x2}]},getCustomFields(_0x235630['Fields'],_0x2226a3,_0x235630['ticketType'])),'headers':{'Authorization':_0x154f('0x28')+_0x5b9695,'OData-Version':_0x154f('0x29')},'json':!![],'resolveWithFullResponse':!![]};}return rp(_0x1b38d8);})[_0x154f('0xf')](function(_0x21ead0){var _0x5113b7=_0x21ead0[_0x154f('0x2a')]['odata-entityid'];var _0x13c279=_0x5113b7[_0x154f('0x2c')](_0x5113b7[_0x154f('0x43')]('(')+0x1,_0x5113b7[_0x154f('0x43')](')'));_0x118bea['ticketId']=_0x13c279;_0x4157a3(_0x118bea);})[_0x154f('0x10')](function(_0x5c1af3){_0x1e85eb(_0x5c1af3[_0x154f('0x14')]);});});}function emit(_0x27cb73,_0x453e87,_0x43db59,_0x3f84d4){var _0xd9a5bc={'uri':util[_0x154f('0x44')](_0x154f('0x45'),_0x27cb73,_0x43db59,_0x3f84d4)};io['to'](util[_0x154f('0x44')](_0x154f('0x46'),_0x453e87))[_0x154f('0x47')]('trigger:browser:url',_0xd9a5bc);}exports['cs']=function(_0x23b294,_0x2d87e7,_0x4d402e,_0x333b94,_0x2d29b4,_0x3024f2,_0x444197,_0x3ccd33){var _0x361927={};_0x3024f2[_0x154f('0xc')]=intUtil['stripTrailingSlash'](_0x3024f2['remoteUri']);_0x3024f2[_0x154f('0x48')]=intUtil[_0x154f('0x49')](_0x3024f2['serverUrl']);_0x361927['callDirection']=_0x3ccd33===_0x154f('0x41')||_0x3ccd33===_0x154f('0x4a')?_0x154f('0x41'):_0x154f('0x21');var _0x4c52f8=util[_0x154f('0x44')](_0x154f('0x4b'),_0x3024f2['remoteUri']);var _0x4e09df=util[_0x154f('0x44')](_0x154f('0x4c'),_0x3024f2[_0x154f('0x4d')]);var _0x34045f=util['format'](_0x154f('0x4e'),_0x3024f2[_0x154f('0x48')],_0x2d87e7[_0x154f('0x4f')],md5(_0x2d87e7[_0x154f('0x4f')]));if(_0x2d29b4&&_0x2d29b4['monitor_format']){logger[_0x154f('0x1c')](_0x154f('0x50'),'Recording\x20is\x20enabled!');_0x2d87e7[_0x154f('0x51')]=_0x34045f;}else if(_0x444197&&_0x444197[_0x154f('0x52')]&&_0x444197[_0x154f('0x52')]!==_0x154f('0x53')){logger[_0x154f('0x1c')](_0x154f('0x54'),'Recording\x20is\x20enabled!');_0x2d87e7[_0x154f('0x51')]=_0x34045f;}else{_0x2d87e7[_0x154f('0x51')]='';}return getUser(_0x361927,_0x3024f2,_0x333b94,_0x4e09df,_0x4c52f8,_0x3ccd33)[_0x154f('0xf')](function(_0x56c59c){logger[_0x154f('0x1c')]('['+_0x3ccd33['toUpperCase']()+_0x154f('0x55'),_0x56c59c[_0x154f('0x27')]);logger['info']('['+_0x3ccd33[_0x154f('0x12')]()+_0x154f('0x56'),_0x56c59c['userEmail']);return getEndUser(_0x56c59c,_0x3024f2,_0x4e09df,_0x4c52f8,_0x2d87e7,_0x3ccd33);})[_0x154f('0xf')](function(_0x2d5254){logger[_0x154f('0x1c')]('['+_0x3ccd33[_0x154f('0x12')]()+']\x20The\x20Enduser\x20ID\x20is:',_0x2d5254[_0x154f('0x2e')]);logger['info']('['+_0x3ccd33[_0x154f('0x12')]()+_0x154f('0x57'),_0x2d87e7['calleridnum']);return getTicket(_0x2d5254,_0x3024f2,_0x4e09df,_0x4c52f8,_0x2d87e7,_0x4d402e,_0x3ccd33);})['then'](function(_0x40de22){logger[_0x154f('0x1c')](util[_0x154f('0x44')]('['+_0x3ccd33[_0x154f('0x12')]()+_0x154f('0x58'),_0x4d402e['ticketType'],_0x40de22[_0x154f('0x59')]));logger['info'](util[_0x154f('0x44')]('['+_0x3ccd33[_0x154f('0x12')]()+']\x20Call\x20direction:\x20%s',_0x3ccd33));if(_0x3ccd33!==_0x154f('0x4a')){logger['info']('['+_0x3ccd33['toUpperCase']()+']',_0x154f('0x5a'));emit(_0x3024f2[_0x154f('0xc')],_0x333b94[_0x154f('0x5b')],_0x4d402e[_0x154f('0x38')],_0x40de22[_0x154f('0x59')]);}})[_0x154f('0x10')](function(_0x5e7ab9){logger[_0x154f('0x11')]('['+_0x3ccd33['toUpperCase']()+_0x154f('0x5c'),util[_0x154f('0x5d')](_0x5e7ab9,{'showHidden':!![],'depth':null}));});};
\ No newline at end of file
+var _0x382d=['replace','%2b','forEach','string','picklist','type','customField','idField','indexOf','content','ticketType','incidents','assign','Subjects','Descriptions','/contacts(','queue','callDirection','phonecalls','getString','Fields','odata-entityid','ticketId','format','%s/main.aspx?pagetype=entityrecord&etn=%s&id=%s','user:%s','emit','modernAuthentication','stripTrailingSlash','serverUrl','unmanaged','%s/api/data/v9.0/','https://login.microsoftonline.com/%s/oauth2/token','uniqueid','[QUEUE]','Recording\x20is\x20enabled!','recordingURL','recordingFormat','none','[OUTBOUND]',']\x20The\x20User\x20ID\x20is:',']\x20The\x20User\x20email\x20is:','additionalSearchContact',']\x20The\x20Enduser\x20ID\x20is:',']\x20The\x20%s\x20ID\x20is:\x20%s','openNewTab','Displaying\x20call\x20in\x20a\x20new\x20tab...','name',']\x20Error\x20running\x20Dynamics365\x20integration','Error\x20running\x20Dynamics365\x20integration','lodash','request-promise','util','./util','md5','ioredis','../../../../config/logger','dynamics365','../../../../config/environment','defaults','localhost','socket.io-emitter','remoteUri','CloudProvider','data7','tenantId','data2','resolve','data5','POST','clientId','username','password','clientSecret','access_token','catch','error','toUpperCase',']\x20Wrong\x20credentials!','message','GET','Bearer\x20','4.0','value','isNil','validateEmail','email','userEmail','length','internalemailaddress','isdisabled','info',']\x20Agent\x20found\x20','systemuserid','userId',']\x20Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!','then','toLowerCase','destcalleridnum','contacts','/systemusers(','headers','substring','lastIndexOf','enduserId','outbound','calleridnum','contacts?$select='];(function(_0x4fcc1d,_0x6f4fc5){var _0x4a1957=function(_0x3e3bb9){while(--_0x3e3bb9){_0x4fcc1d['push'](_0x4fcc1d['shift']());}};_0x4a1957(++_0x6f4fc5);}(_0x382d,0x10a));var _0xd382=function(_0x5ba949,_0x43cceb){_0x5ba949=_0x5ba949-0x0;var _0xb27be0=_0x382d[_0x5ba949];return _0xb27be0;};'use strict';var _=require(_0xd382('0x0'));var rp=require(_0xd382('0x1'));var util=require(_0xd382('0x2'));var intUtil=require(_0xd382('0x3'));var md5=require(_0xd382('0x4'));var Redis=require(_0xd382('0x5'));var logger=require(_0xd382('0x6'))(_0xd382('0x7'));var config=require(_0xd382('0x8'));config['redis']=_[_0xd382('0x9')](config['redis'],{'host':_0xd382('0xa'),'port':0x18eb});var io=require(_0xd382('0xb'))(new Redis(config['redis']));function getAuthToken(_0x47856c,_0x30bc07,_0x2fb2ac){if(_0x47856c['modernAuthentication']){_0x47856c[_0xd382('0xc')]=_0x47856c[_0xd382('0xd')][_0xd382('0xe')];_0x47856c[_0xd382('0xf')]=_0x47856c['CloudProvider'][_0xd382('0x10')];return Promise[_0xd382('0x11')](_0x47856c['CloudProvider'][_0xd382('0x12')]);}var _0xe722e4={'method':_0xd382('0x13'),'uri':_0x30bc07,'form':{'client_id':_0x47856c[_0xd382('0x14')],'resource':_0x47856c[_0xd382('0xc')],'username':_0x47856c[_0xd382('0x15')],'password':_0x47856c[_0xd382('0x16')],'grant_type':_0xd382('0x16'),'client_secret':_0x47856c[_0xd382('0x17')]},'json':!![]};return rp(_0xe722e4)['then'](function(_0x5ef2d1){return _0x5ef2d1[_0xd382('0x18')];})[_0xd382('0x19')](function(_0x27ce64){logger[_0xd382('0x1a')]('['+[_0x2fb2ac[_0xd382('0x1b')]()]+_0xd382('0x1c'));return _0x27ce64[_0xd382('0x1d')];});}function getUser(_0xc4c995,_0x141e21,_0x1e80c7,_0x7ff635,_0x564366,_0x4849fb){return new Promise(function(_0xdfc9cc,_0x4c3210){return getAuthToken(_0x141e21,_0x7ff635,_0x4849fb)['then'](function(_0x253082){var _0x1db4e5={'method':_0xd382('0x1e'),'uri':_0x564366+'systemusers?$select=internalemailaddress,isdisabled,systemuserid','headers':{'Authorization':_0xd382('0x1f')+_0x253082,'OData-Version':_0xd382('0x20')},'json':!![]};return rp(_0x1db4e5);})['then'](function(_0x427d6f){var _0x1e55eb=_0x427d6f[_0xd382('0x21')];var _0x4aff2a=![];var _0x5ad4b7=null;if(!_[_0xd382('0x22')](_0x1e80c7)){if(intUtil[_0xd382('0x23')](_0x1e80c7[_0xd382('0x24')])){_0xc4c995[_0xd382('0x25')]=_0x1e80c7[_0xd382('0x24')];for(_0x5ad4b7=0x0;_0x5ad4b7<_0x1e55eb[_0xd382('0x26')];_0x5ad4b7++){if(_0x1e55eb[_0x5ad4b7][_0xd382('0x27')]===_0x1e80c7['email']&&!_0x1e55eb[_0x5ad4b7][_0xd382('0x28')]){_0x4aff2a=!![];logger[_0xd382('0x29')]('['+[_0x4849fb['toUpperCase']()]+_0xd382('0x2a')+_0x1e55eb[_0x5ad4b7][_0xd382('0x2b')]+'!');_0xc4c995[_0xd382('0x2c')]=_0x1e55eb[_0x5ad4b7][_0xd382('0x2b')];}}}}if(!_0x4aff2a){logger[_0xd382('0x29')]('['+[_0x4849fb[_0xd382('0x1b')]()]+_0xd382('0x2d'));_0xc4c995['userEmail']=_0x141e21[_0xd382('0x15')];for(_0x5ad4b7=0x0;_0x5ad4b7<_0x1e55eb[_0xd382('0x26')];_0x5ad4b7++){if(_0x1e55eb[_0x5ad4b7][_0xd382('0x27')]===_0x141e21[_0xd382('0x15')]){_0xc4c995['userId']=_0x1e55eb[_0x5ad4b7][_0xd382('0x2b')];}}}_0xdfc9cc(_0xc4c995);})[_0xd382('0x19')](function(_0xf58f42){_0x4c3210(_0xf58f42['message']);});});}function createEndUser(_0x33e5da,_0x545786,_0x2f0a32,_0x418301,_0x524117,_0x502cb1,_0x40fadb){return new Promise(function(_0x1fdf1e,_0x522573){return getAuthToken(_0x545786,_0x2f0a32,_0x502cb1)[_0xd382('0x2e')](function(_0x198565){var _0x3dafc4=_0x502cb1[_0xd382('0x2f')]()==='outbound'?_0x524117[_0xd382('0x30')]:_0x524117['calleridnum'];var _0x518ba8={'method':'POST','uri':_0x418301+_0xd382('0x31'),'body':{'fullname':_0x3dafc4,'firstname':_0x3dafc4,'lastname':'_','mobilephone':null,'address1_telephone1':null,'ownerid@odata.bind':_0xd382('0x32')+_0x33e5da['userId']+')'},'headers':{'Authorization':_0xd382('0x1f')+_0x198565,'OData-Version':_0xd382('0x20')},'json':!![],'resolveWithFullResponse':!![]};_0x518ba8['body'][_0x40fadb]=_0x3dafc4;return rp(_0x518ba8);})[_0xd382('0x2e')](function(_0x16bde7){var _0x1dfda9=_0x16bde7[_0xd382('0x33')]['odata-entityid'];var _0x5c0854=_0x1dfda9[_0xd382('0x34')](_0x1dfda9[_0xd382('0x35')]('(')+0x1,_0x1dfda9[_0xd382('0x35')](')'));_0x33e5da[_0xd382('0x36')]=_0x5c0854;_0x1fdf1e(_0x33e5da);})[_0xd382('0x19')](function(_0x565eb0){_0x522573(_0x565eb0[_0xd382('0x1d')]);});});}function getEndUser(_0x577dae,_0x55739e,_0xcbf34d,_0x51215a,_0x3d9ce2,_0x16bdd7,_0xeca81b,_0x566c4e){var _0x1ccee4=_0x16bdd7[_0xd382('0x2f')]()===_0xd382('0x37')?_0x3d9ce2[_0xd382('0x30')]:_0x3d9ce2[_0xd382('0x38')];return getAuthToken(_0x55739e,_0xcbf34d,_0x16bdd7)['then'](function(_0x2d3df0){_0x566c4e=_0x566c4e?_0x566c4e:'telephone1';var _0x266a4d={'method':_0xd382('0x1e'),'uri':_0x51215a+_0xd382('0x39')+_0x566c4e+'&$filter='+_0x566c4e+'\x20eq\x20\x27'+_0x1ccee4[_0xd382('0x3a')]('+',_0xd382('0x3b'))+'\x27','headers':{'Authorization':_0xd382('0x1f')+_0x2d3df0,'If-None-Match':null,'OData-Version':'4.0'},'json':!![]};return rp(_0x266a4d);})[_0xd382('0x2e')](function(_0xb412d2){var _0x52bc18=![];if(!_0xb412d2)return _0x52bc18;var _0x10139b=_0xb412d2[_0xd382('0x21')];for(var _0xae1915=0x0;_0xae1915<_0x10139b['length'];_0xae1915++){if(_0x10139b[_0xae1915][_0x566c4e]===_0x1ccee4){_0x52bc18=!![];_0x577dae[_0xd382('0x36')]=_0x10139b[_0xae1915]['contactid'];}}return _0x52bc18;})[_0xd382('0x2e')](function(_0x5d8696){if(_0x5d8696)return _0x577dae;if(_0xeca81b==='nothing'){logger['info']('['+[_0x16bdd7[_0xd382('0x1b')]()]+']\x20Enduser\x20NOT\x20Created\x20-\x20ModuleCreate\x20=\x20Nothing');return _0x577dae;}return createEndUser(_0x577dae,_0x55739e,_0xcbf34d,_0x51215a,_0x3d9ce2,_0x16bdd7,_0x566c4e)[_0xd382('0x2e')](function(_0x1a8180){logger[_0xd382('0x29')]('['+[_0x16bdd7[_0xd382('0x1b')]()]+']\x20Enduser\x20created!',_0x1a8180[_0xd382('0x36')]);return _0x1a8180;});});}function getCustomFields(_0x4d684a,_0x27897b,_0x1a4e95){var _0x273156={};if(_0x4d684a[_0xd382('0x26')]>0x0){_[_0xd382('0x3c')](_0x4d684a,function(_0x490f11){if(_['includes']([_0xd382('0x3d'),_0xd382('0x3e')],_0x490f11[_0xd382('0x3f')])&&_0x490f11['nameField']&&!_0x490f11[_0xd382('0x40')]){var _0x2608ea=_0x490f11[_0xd382('0x41')][_0xd382('0x2f')]();var _0x58c07d=_0x2608ea[_0xd382('0x34')](0x0,_0x2608ea[_0xd382('0x42')]('_'));var _0x4fb680=_0x2608ea[_0xd382('0x34')](_0x2608ea[_0xd382('0x42')]('_')+0x1);if(_0x58c07d===_0x1a4e95){_0x273156[_0x4fb680]=_0x490f11[_0xd382('0x43')];}}});}return _0x273156;}function getTicket(_0x45b85e,_0x15c2d6,_0x4e777b,_0x1b8cec,_0x2e7893,_0x22dcf7,_0x1e4043){return new Promise(function(_0xf5e04f,_0x547968){var _0x19d5ac;return getAuthToken(_0x15c2d6,_0x4e777b,_0x1e4043)[_0xd382('0x2e')](function(_0x194bc5){if(_0x22dcf7[_0xd382('0x44')]==='incident'){_0x19d5ac={'method':'POST','uri':_0x1b8cec+_0xd382('0x45'),'body':Object[_0xd382('0x46')]({},{'title':intUtil['getString'](_0x22dcf7[_0xd382('0x47')],_0x2e7893,'\x20'),'description':intUtil['getString'](_0x22dcf7[_0xd382('0x48')],_0x2e7893,'\x0a'),'customerid_contact@odata.bind':_0x45b85e['enduserId']?_0xd382('0x49')+_0x45b85e['enduserId']+')':undefined,'ownerid@odata.bind':'/systemusers('+_0x45b85e[_0xd382('0x2c')]+')','caseorigincode':'1'},getCustomFields(_0x22dcf7['Fields'],_0x2e7893,_0x22dcf7['ticketType'])),'headers':{'Authorization':_0xd382('0x1f')+_0x194bc5,'OData-Version':_0xd382('0x20')},'json':!![],'resolveWithFullResponse':!![]};}if(_0x22dcf7[_0xd382('0x44')]==='phonecall'){var _0x45784a=_0x45b85e['enduserId']?[{'partyid_systemuser@odata.bind':'/systemusers('+_0x45b85e['userId']+')','participationtypemask':_0x45b85e['callDirection']===_0xd382('0x4a')?0x2:0x1},{'partyid_contact@odata.bind':_0xd382('0x49')+_0x45b85e[_0xd382('0x36')]+')','participationtypemask':_0x45b85e[_0xd382('0x4b')]===_0xd382('0x4a')?0x1:0x2}]:[{'partyid_systemuser@odata.bind':'/systemusers('+_0x45b85e['userId']+')','participationtypemask':_0x45b85e[_0xd382('0x4b')]===_0xd382('0x4a')?0x2:0x1}];_0x19d5ac={'method':_0xd382('0x13'),'uri':_0x1b8cec+_0xd382('0x4c'),'body':Object[_0xd382('0x46')]({},{'subject':intUtil[_0xd382('0x4d')](_0x22dcf7['Subjects'],_0x2e7893,'\x20'),'phonenumber':String(_0x2e7893[_0xd382('0x38')]),'description':intUtil[_0xd382('0x4d')](_0x22dcf7['Descriptions'],_0x2e7893,'\x0a'),'regardingobjectid_contact@odata.bind':_0x45b85e[_0xd382('0x36')]?'/contacts('+_0x45b85e[_0xd382('0x36')]+')':undefined,'ownerid@odata.bind':_0xd382('0x32')+_0x45b85e['userId']+')','directioncode':_0x45b85e[_0xd382('0x4b')]===_0xd382('0x4a')?![]:!![],'phonecall_activity_parties':_0x45784a},getCustomFields(_0x22dcf7[_0xd382('0x4e')],_0x2e7893,_0x22dcf7[_0xd382('0x44')])),'headers':{'Authorization':_0xd382('0x1f')+_0x194bc5,'OData-Version':_0xd382('0x20')},'json':!![],'resolveWithFullResponse':!![]};}return rp(_0x19d5ac);})[_0xd382('0x2e')](function(_0x44d286){var _0x29e7b8=_0x44d286[_0xd382('0x33')][_0xd382('0x4f')];var _0x3a8c5a=_0x29e7b8[_0xd382('0x34')](_0x29e7b8['lastIndexOf']('(')+0x1,_0x29e7b8[_0xd382('0x35')](')'));_0x45b85e[_0xd382('0x50')]=_0x3a8c5a;_0xf5e04f(_0x45b85e);})[_0xd382('0x19')](function(_0x42acfb){_0x547968(_0x42acfb[_0xd382('0x1d')]);});});}function emit(_0x280677,_0x1a1c93,_0x82bc71,_0x4b1b75){var _0x31ed91={'uri':util[_0xd382('0x51')](_0xd382('0x52'),_0x280677,_0x82bc71,_0x4b1b75)};io['to'](util['format'](_0xd382('0x53'),_0x1a1c93))[_0xd382('0x54')]('trigger:browser:url',_0x31ed91);}exports['cs']=function(_0x4bb8ff,_0x3db4b7,_0x27e5da,_0x18d349,_0x5e0654,_0x5a679e,_0x4b6118,_0x389dbd){var _0x260b25={};_0x5a679e[_0xd382('0xc')]=_0x5a679e[_0xd382('0x55')]?intUtil[_0xd382('0x56')](_0x5a679e[_0xd382('0xd')][_0xd382('0xe')]):intUtil[_0xd382('0x56')](_0x5a679e[_0xd382('0xc')]);_0x5a679e[_0xd382('0x57')]=intUtil['stripTrailingSlash'](_0x5a679e['serverUrl']);_0x260b25['callDirection']=_0x389dbd===_0xd382('0x4a')||_0x389dbd===_0xd382('0x58')?_0xd382('0x4a'):_0xd382('0x37');var _0x576fde=_0x5a679e[_0xd382('0x55')]?util['format'](_0xd382('0x59'),_0x5a679e['CloudProvider'][_0xd382('0xe')]):util['format'](_0xd382('0x59'),_0x5a679e[_0xd382('0xc')]);var _0x1f3f3d=util['format'](_0xd382('0x5a'),_0x5a679e[_0xd382('0xf')]);var _0x11d43e=util[_0xd382('0x51')]('%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s',_0x5a679e['serverUrl'],_0x3db4b7['uniqueid'],md5(_0x3db4b7[_0xd382('0x5b')]));if(_0x5e0654&&_0x5e0654['monitor_format']){logger[_0xd382('0x29')](_0xd382('0x5c'),_0xd382('0x5d'));_0x3db4b7[_0xd382('0x5e')]=_0x11d43e;}else if(_0x4b6118&&_0x4b6118[_0xd382('0x5f')]&&_0x4b6118['recordingFormat']!==_0xd382('0x60')){logger[_0xd382('0x29')](_0xd382('0x61'),_0xd382('0x5d'));_0x3db4b7[_0xd382('0x5e')]=_0x11d43e;}else{_0x3db4b7['recordingURL']='';}return getUser(_0x260b25,_0x5a679e,_0x18d349,_0x1f3f3d,_0x576fde,_0x389dbd)['then'](function(_0x3e059d){logger['info']('['+_0x389dbd['toUpperCase']()+_0xd382('0x62'),_0x3e059d[_0xd382('0x2c')]);logger[_0xd382('0x29')]('['+_0x389dbd[_0xd382('0x1b')]()+_0xd382('0x63'),_0x3e059d[_0xd382('0x25')]);return getEndUser(_0x3e059d,_0x5a679e,_0x1f3f3d,_0x576fde,_0x3db4b7,_0x389dbd,_0x27e5da['moduleCreate'],_0x27e5da[_0xd382('0x64')]);})['then'](function(_0x5ddb53){logger[_0xd382('0x29')]('['+_0x389dbd[_0xd382('0x1b')]()+_0xd382('0x65'),_0x5ddb53[_0xd382('0x36')]);logger[_0xd382('0x29')]('['+_0x389dbd[_0xd382('0x1b')]()+']\x20The\x20Enduser\x20phone\x20is:',_0x3db4b7[_0xd382('0x38')]);return getTicket(_0x5ddb53,_0x5a679e,_0x1f3f3d,_0x576fde,_0x3db4b7,_0x27e5da,_0x389dbd);})[_0xd382('0x2e')](function(_0x51c802){logger[_0xd382('0x29')](util[_0xd382('0x51')]('['+_0x389dbd[_0xd382('0x1b')]()+_0xd382('0x66'),_0x27e5da[_0xd382('0x44')],_0x51c802[_0xd382('0x50')]));logger[_0xd382('0x29')](util[_0xd382('0x51')]('['+_0x389dbd[_0xd382('0x1b')]()+']\x20Call\x20direction:\x20%s',_0x389dbd));if(_0x389dbd!=='unmanaged'&&_0x27e5da[_0xd382('0x67')]){logger[_0xd382('0x29')]('['+_0x389dbd['toUpperCase']()+']',_0xd382('0x68'));emit(_0x5a679e['remoteUri'],_0x18d349[_0xd382('0x69')],_0x27e5da['ticketType'],_0x51c802[_0xd382('0x50')]);}})[_0xd382('0x19')](function(_0x53c4f3){logger[_0xd382('0x1a')]('['+_0x389dbd['toUpperCase']()+_0xd382('0x6a'),_0x53c4f3[_0xd382('0x1d')]);console[_0xd382('0x1a')](_0xd382('0x6b'),_0x53c4f3);});};
\ No newline at end of file