Built motion from commit (unavailable).|2.5.4
[motion2.git] / server / services / ami / trigger / integration / salesforce.js
index 9c83cdf..a93c06c 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x5e1b=['Connection','remoteUri','https://login.salesforce.com','login','Connection\x20established.','queue','stripTrailingSlash','serverUrl','monitor_format','[QUEUE]','Recording\x20is\x20enabled!','recordingURL','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','uniqueid','email','calleridname','Fields','[QUEUE]\x20Ticket\x20%s\x20created','[QUEUE]\x20Displaying\x20ticket\x20%s\x20to\x20agent\x20%s.\x20Integration\x20account\x20type\x20%s.','integrationTab','newTab','user:%s','%s/%s/e','instanceUrl','error','outbound','recordingFormat','none','[OUTBOUND]','trigger:salesforce:display','trigger:browser:url','unmanaged','lastevent','toUpperCase','isNil',']\x20Integration\x20account\x20type\x20%s.','catch','stringify','lodash','request-promise','moment','bluebird','jsforce','util','ioredis','../../../../config/environment','../../../../config/logger','salesforce','redis','defaults','localhost','socket.io-emitter','emit','ticketType','assign','getString','Subjects','Descriptions','WhoId','ContactId','sobject','create','User','find','execute','Email','info','resolve','Name','Agent\x20%s\x20not\x20found.\x20Switch\x20to\x20the\x20admin\x20account.','then','user_id','display_name','identity','Task','Searching\x20enduser\x20with\x20phone\x20%s.\x20Serching\x20method\x20used\x20%s.','moduleSearch','Contact','Lead','contact','lead','Case','length','Phone','Enduser\x20with\x20phone\x20%s\x20found.','Enduser\x20with\x20phone\x20%s\x20not\x20found.','<unknown>','format','Caller\x20-\x20%s','moduleCreate','Enduser\x20with\x20phone\x20%s.\x20Creating\x20method\x20used\x20%s.','Company','No\x20Company','upperFirst','forEach','type','idField','content','toString','variable','variableName','customVariable','Variable','name','toLowerCase','password','securityToken'];(function(_0x12d951,_0x249808){var _0x44de17=function(_0x182fd9){while(--_0x182fd9){_0x12d951['push'](_0x12d951['shift']());}};_0x44de17(++_0x249808);}(_0x5e1b,0xfc));var _0xb5e1=function(_0x5d4607,_0x6b5e7b){_0x5d4607=_0x5d4607-0x0;var _0x5e4a86=_0x5e1b[_0x5d4607];return _0x5e4a86;};'use strict';var _=require(_0xb5e1('0x0'));var rp=require(_0xb5e1('0x1'));var moment=require(_0xb5e1('0x2'));var BPromise=require(_0xb5e1('0x3'));var md5=require('md5');var jsforce=require(_0xb5e1('0x4'));var util=require(_0xb5e1('0x5'));var Redis=require(_0xb5e1('0x6'));var intUtil=require('./util');var config=require(_0xb5e1('0x7'));var logger=require(_0xb5e1('0x8'))(_0xb5e1('0x9'));config[_0xb5e1('0xa')]=_[_0xb5e1('0xb')](config[_0xb5e1('0xa')],{'host':_0xb5e1('0xc'),'port':0x18eb});var io=require(_0xb5e1('0xd'))(new Redis(config[_0xb5e1('0xa')]));function emit(_0x29aced,_0x47884a,_0x59fff0){io['to'](_0x29aced)[_0xb5e1('0xe')](_0x47884a,_0x59fff0);}function getTicket(_0x52ef0a,_0x2e344a,_0x596f93,_0x184f6b,_0x547f6b,_0x6efcee,_0x5a3911,_0x7d7ca){var _0x330733={};if(_0x184f6b[_0xb5e1('0xf')]==='Task'){_0x330733=Object[_0xb5e1('0x10')]({},{'OwnerId':_0x2e344a['id'],'ActivityDate':moment['utc'](),'IsReminderSet':![],'IsRecurrence':![],'Subject':intUtil[_0xb5e1('0x11')](_0x184f6b[_0xb5e1('0x12')],_0x547f6b,'\x20'),'Description':intUtil[_0xb5e1('0x11')](_0x184f6b[_0xb5e1('0x13')],_0x547f6b,'\x0a')},getCustomFields(_0x6efcee,_0x547f6b));if(_0x596f93){_0x330733[_0xb5e1('0x14')]=_0x596f93['id'];}}else if(_0x184f6b[_0xb5e1('0xf')]==='Case'){_0x330733=Object[_0xb5e1('0x10')]({},{'OwnerId':_0x2e344a['id'],'Subject':intUtil['getString'](_0x184f6b[_0xb5e1('0x12')],_0x547f6b,'\x20'),'Description':intUtil[_0xb5e1('0x11')](_0x184f6b[_0xb5e1('0x13')],_0x547f6b,'\x0a')},getCustomFields(_0x6efcee,_0x547f6b));if(_0x596f93){_0x330733[_0xb5e1('0x15')]=_0x596f93['id'];}}return _0x5a3911[_0xb5e1('0x16')](_0x184f6b[_0xb5e1('0xf')])[_0xb5e1('0x17')](_0x330733);}function getUser(_0x3f0e4c,_0x453410,_0x38433f){if(!_['isNil'](_0x453410)&&intUtil['validateEmail'](_0x453410)){var _0xf50706={'Email':_0x453410};var _0x583554={'Id':!![],'Username':!![],'Name':!![],'Email':!![]};return _0x38433f['sobject'](_0xb5e1('0x18'))[_0xb5e1('0x19')](_0xf50706,_0x583554)[_0xb5e1('0x1a')]()['then'](function(_0x508d68){if(_0x508d68['length']){var _0x16298b=_[_0xb5e1('0x19')](_0x508d68,function(_0x36596e){return _0x36596e[_0xb5e1('0x1b')]===_0x453410;});if(_0x16298b){logger[_0xb5e1('0x1c')]('Agent\x20%s\x20found.',_0x453410);return BPromise[_0xb5e1('0x1d')]({'id':_0x16298b['Id'],'name':_0x16298b[_0xb5e1('0x1e')]});}}else{logger[_0xb5e1('0x1c')](_0xb5e1('0x1f'),_0x453410);return _0x38433f['identity']()[_0xb5e1('0x20')](function(_0x4ced9f){return BPromise[_0xb5e1('0x1d')]({'id':_0x4ced9f[_0xb5e1('0x21')],'name':_0x4ced9f[_0xb5e1('0x22')]});});}});}else{logger['info'](_0xb5e1('0x1f'),_0x453410);return _0x38433f[_0xb5e1('0x23')]()['then'](function(_0x3c25a2){return BPromise[_0xb5e1('0x1d')]({'id':_0x3c25a2[_0xb5e1('0x21')],'name':_0x3c25a2[_0xb5e1('0x22')]});});}}function getEndUser(_0xbaa53e,_0x4050e2,_0x39d70,_0x5de443,_0x2fddc2){var _0x386a99={'Phone':_0x5de443};var _0x4653c6={'Id':!![],'Name':!![],'Phone':!![]};return BPromise['resolve']()[_0xb5e1('0x20')](function(){if(_0x4050e2[_0xb5e1('0xf')]===_0xb5e1('0x24')){logger[_0xb5e1('0x1c')](_0xb5e1('0x25'),_0x5de443,_0x4050e2[_0xb5e1('0x26')]);switch(_0x4050e2['moduleSearch']){case'contact_lead':return _0x2fddc2[_0xb5e1('0x16')](_0xb5e1('0x27'))[_0xb5e1('0x19')](_0x386a99,_0x4653c6)[_0xb5e1('0x1a')]()[_0xb5e1('0x20')](function(_0x4b2751){if(_0x4b2751&&_0x4b2751['length']){return _0x4b2751;}else{return _0x2fddc2[_0xb5e1('0x16')](_0xb5e1('0x28'))[_0xb5e1('0x19')](_0x386a99,_0x4653c6);}});case _0xb5e1('0x29'):return _0x2fddc2[_0xb5e1('0x16')]('Contact')[_0xb5e1('0x19')](_0x386a99,_0x4653c6)[_0xb5e1('0x1a')]();case _0xb5e1('0x2a'):return _0x2fddc2['sobject']('Lead')['find'](_0x386a99,_0x4653c6);default:return null;}}else if(_0x4050e2['ticketType']===_0xb5e1('0x2b')){logger['info'](_0xb5e1('0x25'),_0x5de443,_0xb5e1('0x29'));return _0x2fddc2[_0xb5e1('0x16')](_0xb5e1('0x27'))['find'](_0x386a99,_0x4653c6)[_0xb5e1('0x1a')]();}})['then'](function(_0x33b1b0){if(_0x33b1b0&&_0x33b1b0[_0xb5e1('0x2c')]){var _0x400381=_[_0xb5e1('0x19')](_0x33b1b0,function(_0x159dfc){return _0x159dfc[_0xb5e1('0x2d')]===_0x5de443;});if(_0x400381){return BPromise[_0xb5e1('0x1d')]({'id':_0x400381['Id'],'name':_0x400381['Name'],'phone':_0x400381['Phone']});}}})[_0xb5e1('0x20')](function(_0x12c620){if(_0x12c620){logger['info'](_0xb5e1('0x2e'),_0x5de443);return BPromise[_0xb5e1('0x1d')](_0x12c620);}else{logger[_0xb5e1('0x1c')](_0xb5e1('0x2f'),_0x5de443);var _0x552139={'LastName':_0x39d70!==_0xb5e1('0x30')?_0x39d70:util[_0xb5e1('0x31')](_0xb5e1('0x32'),_0x5de443),'Phone':_0x5de443};if(_0x4050e2[_0xb5e1('0x33')]){if(_0x4050e2[_0xb5e1('0x33')]===_0xb5e1('0x29')){logger[_0xb5e1('0x1c')](_0xb5e1('0x34'),_0x5de443,_0x4050e2[_0xb5e1('0x33')]);}else if(_0x4050e2[_0xb5e1('0x33')]===_0xb5e1('0x2a')&&_0x4050e2[_0xb5e1('0xf')]==='Task'){logger[_0xb5e1('0x1c')](_0xb5e1('0x34'),_0x5de443,_0x4050e2[_0xb5e1('0x33')]);_0x552139[_0xb5e1('0x35')]=_0xb5e1('0x36');}else{return null;}}return _0x2fddc2[_0xb5e1('0x16')](_[_0xb5e1('0x37')](_0x4050e2['moduleCreate']))[_0xb5e1('0x17')](_0x552139);}});}function getCustomFields(_0x1527b8,_0x29f371){var _0x3a5aa8={};if(_0x1527b8[_0xb5e1('0x2c')]>0x0){_[_0xb5e1('0x38')](_0x1527b8,function(_0x5c449f){if(_0x5c449f[_0xb5e1('0x39')]==='string'&&_0x5c449f[_0xb5e1('0x3a')]){_0x3a5aa8[_0x5c449f[_0xb5e1('0x3a')]]=_0x5c449f[_0xb5e1('0x3b')][_0xb5e1('0x3c')]();}else if(_0x5c449f[_0xb5e1('0x39')]===_0xb5e1('0x3d')&&_0x5c449f[_0xb5e1('0x3e')]&&_0x5c449f[_0xb5e1('0x3a')]){_0x29f371[_0x5c449f[_0xb5e1('0x3e')]]&&(_0x3a5aa8[_0x5c449f[_0xb5e1('0x3a')]]=_0x29f371[_0x5c449f['variableName']]['toString']());}else if(_0x5c449f['type']===_0xb5e1('0x3f')&&_0x5c449f[_0xb5e1('0x40')]&&_0x5c449f[_0xb5e1('0x40')]['name']&&_0x5c449f['idField']){_0x29f371[_0x5c449f['Variable'][_0xb5e1('0x41')][_0xb5e1('0x42')]()]&&(_0x3a5aa8[_0x5c449f[_0xb5e1('0x3a')]]=_0x29f371[_0x5c449f[_0xb5e1('0x40')][_0xb5e1('0x41')][_0xb5e1('0x42')]()][_0xb5e1('0x3c')]());}});}return _0x3a5aa8;}function getConnection(_0x49c2df){var _0x85e636=_0x49c2df[_0xb5e1('0x43')]['concat'](_0x49c2df[_0xb5e1('0x44')]);var _0x4accb8=new jsforce[(_0xb5e1('0x45'))]({'oauth2':{'loginUrl':_0x49c2df[_0xb5e1('0x46')]||_0xb5e1('0x47'),'clientId':_0x49c2df['clientId'],'clientSecret':_0x49c2df['clientSecret']}});return _0x4accb8[_0xb5e1('0x48')](_0x49c2df['username'],_0x85e636)[_0xb5e1('0x20')](function(){logger[_0xb5e1('0x1c')](_0xb5e1('0x49'));return _0x4accb8;});}exports[_0xb5e1('0x4a')]=function(_0x305c9b,_0x237df3,_0x50e0e9,_0x2f882c,_0x410087,_0xe20a06){var _0x13df47,_0x44895a,_0x4dec48,_0xd9a4b3;_0xe20a06['serverUrl']=intUtil[_0xb5e1('0x4b')](_0xe20a06[_0xb5e1('0x4c')]);_0xe20a06[_0xb5e1('0x46')]=intUtil[_0xb5e1('0x4b')](_0xe20a06['remoteUri']);if(_0x410087&&_0x410087[_0xb5e1('0x4d')]){logger[_0xb5e1('0x1c')](_0xb5e1('0x4e'),_0xb5e1('0x4f'));_0x237df3[_0xb5e1('0x50')]=util['format'](_0xb5e1('0x51'),_0xe20a06['serverUrl'],_0x237df3[_0xb5e1('0x52')],md5(_0x237df3['uniqueid']));}else{_0x237df3['recordingURL']='';}return getConnection(_0xe20a06)['then'](function(_0x5b8761){_0xd9a4b3=_0x5b8761;return getUser(_0xe20a06,_0x2f882c[_0xb5e1('0x53')],_0xd9a4b3);})[_0xb5e1('0x20')](function(_0x24d159){_0x13df47=_0x24d159;return getEndUser(_0xe20a06,_0x50e0e9,_0x237df3[_0xb5e1('0x54')],_0x237df3['calleridnum'],_0xd9a4b3);})['then'](function(_0x14e453){_0x44895a=_0x14e453;return getTicket(_0xe20a06,_0x13df47,_0x44895a,_0x50e0e9,_0x237df3,_0x50e0e9[_0xb5e1('0x55')],_0xd9a4b3,_0xb5e1('0x4a'));})['then'](function(_0x4acfe5){_0x4dec48=_0x4acfe5;logger['info'](_0xb5e1('0x56'),_0x4dec48['id']);logger['info'](_0xb5e1('0x57'),_0x4dec48['id'],_0x2f882c[_0xb5e1('0x41')],_0xe20a06['type']);switch(_0xe20a06[_0xb5e1('0x39')]){case _0xb5e1('0x58'):emit(util[_0xb5e1('0x31')]('user:%s',_0x2f882c[_0xb5e1('0x41')]),'trigger:salesforce:display',{'recordId':_0x4dec48['id']});break;case _0xb5e1('0x59'):emit(util[_0xb5e1('0x31')](_0xb5e1('0x5a'),_0x2f882c[_0xb5e1('0x41')]),'trigger:browser:url',{'uri':util[_0xb5e1('0x31')](_0xb5e1('0x5b'),_0xd9a4b3[_0xb5e1('0x5c')],_0x4dec48['id'])});break;default:logger[_0xb5e1('0x5d')]('[QUEUE]\x20Salesforce\x20account\x20type\x20not\x20recognized.');}})['catch'](function(_0x51237){logger[_0xb5e1('0x5d')](_0xb5e1('0x4e'),JSON['stringify'](_0x51237));});};exports[_0xb5e1('0x5e')]=function(_0x4a598b,_0x19527a,_0x4a5233,_0x179392,_0x580e97,_0x19ad54,_0x4e8ea8){var _0x59359f,_0x26e5e6,_0x31cef2,_0x468f4a;_0x19ad54[_0xb5e1('0x4c')]=intUtil[_0xb5e1('0x4b')](_0x19ad54[_0xb5e1('0x4c')]);_0x19ad54[_0xb5e1('0x46')]=intUtil[_0xb5e1('0x4b')](_0x19ad54[_0xb5e1('0x46')]);if(_0x4e8ea8&&_0x4e8ea8[_0xb5e1('0x5f')]&&_0x4e8ea8[_0xb5e1('0x5f')]!==_0xb5e1('0x60')){logger[_0xb5e1('0x1c')](_0xb5e1('0x61'),'Recording\x20is\x20enabled!');_0x19527a[_0xb5e1('0x50')]=util['format'](_0xb5e1('0x51'),_0x19ad54[_0xb5e1('0x4c')],_0x19527a[_0xb5e1('0x52')],md5(_0x19527a[_0xb5e1('0x52')]));}return getConnection(_0x19ad54)['then'](function(_0x5aeb47){_0x468f4a=_0x5aeb47;return getUser(_0x19ad54,_0x179392[_0xb5e1('0x53')],_0x468f4a);})['then'](function(_0x1355fc){_0x59359f=_0x1355fc;return getEndUser(_0x19ad54,_0x4a5233,_0x19527a['destcalleridname'],_0x19527a['destcalleridnum'],_0x468f4a);})[_0xb5e1('0x20')](function(_0x2b89b1){_0x26e5e6=_0x2b89b1;return getTicket(_0x19ad54,_0x59359f,_0x26e5e6,_0x4a5233,_0x19527a,_0x4a5233[_0xb5e1('0x55')],_0x468f4a,'outbound');})[_0xb5e1('0x20')](function(_0x422a89){_0x31cef2=_0x422a89;logger[_0xb5e1('0x1c')]('[OUTBOUND]\x20Ticket\x20%s\x20created.',_0x31cef2['id']);logger[_0xb5e1('0x1c')]('[OUTBOUND]\x20Displaying\x20ticket\x20%s\x20to\x20agent\x20%s.\x20Integration\x20account\x20type\x20%s.',_0x31cef2['id'],_0x179392[_0xb5e1('0x41')],_0x19ad54['type']);switch(_0x19ad54['type']){case _0xb5e1('0x58'):emit(util['format']('user:%s',_0x179392[_0xb5e1('0x41')]),_0xb5e1('0x62'),{'recordId':_0x31cef2['id']});break;case'newTab':emit(util[_0xb5e1('0x31')](_0xb5e1('0x5a'),_0x179392[_0xb5e1('0x41')]),_0xb5e1('0x63'),{'uri':util[_0xb5e1('0x31')]('%s/%s/e',_0x468f4a[_0xb5e1('0x5c')],_0x31cef2['id'])});break;default:logger[_0xb5e1('0x5d')](_0xb5e1('0x61'),'Salesforce\x20account\x20type\x20not\x20recognized');}})['catch'](function(_0x388a80){logger[_0xb5e1('0x5d')]('[OUTBOUND]',JSON['stringify'](_0x388a80));});};exports[_0xb5e1('0x64')]=function(_0x1bcc59,_0x18237e,_0x3b4d01,_0x25b0fd,_0xc15fad,_0x5db1aa){var _0x4e8765,_0x3ce40a,_0x36b8e5,_0x349fc3;_0x5db1aa['serverUrl']=intUtil[_0xb5e1('0x4b')](_0x5db1aa['serverUrl']);_0x5db1aa['remoteUri']=intUtil[_0xb5e1('0x4b')](_0x5db1aa[_0xb5e1('0x46')]);if(_0xc15fad&&_0xc15fad['monitor_format']){logger['info']('['+_0x18237e[_0xb5e1('0x65')][_0xb5e1('0x66')]()+']',_0xb5e1('0x4f'));_0x18237e[_0xb5e1('0x50')]=util[_0xb5e1('0x31')](_0xb5e1('0x51'),_0x5db1aa['serverUrl'],_0x18237e[_0xb5e1('0x52')],md5(_0x18237e[_0xb5e1('0x52')]));}else{_0x18237e[_0xb5e1('0x50')]='';}return getConnection(_0x5db1aa)['then'](function(_0x48d307){_0x349fc3=_0x48d307;if(!_[_0xb5e1('0x67')](_0x25b0fd)){return getUser(_0x5db1aa,_0x25b0fd[_0xb5e1('0x41')],_0x349fc3);}else{return getUser(_0x5db1aa,null,_0x349fc3);}})['then'](function(_0x349ca9){_0x4e8765=_0x349ca9;return getEndUser(_0x5db1aa,_0x3b4d01,_0x18237e['calleridname'],_0x18237e['calleridnum'],_0x349fc3);})[_0xb5e1('0x20')](function(_0x412a5a){_0x3ce40a=_0x412a5a;return getTicket(_0x5db1aa,_0x4e8765,_0x3ce40a,_0x3b4d01,_0x18237e,_0x3b4d01[_0xb5e1('0x55')],_0x349fc3);})[_0xb5e1('0x20')](function(_0x115540){_0x36b8e5=_0x115540;logger[_0xb5e1('0x1c')]('['+_0x18237e[_0xb5e1('0x65')]['toUpperCase']()+']\x20Ticket\x20%s\x20created.',_0x36b8e5['id']);logger[_0xb5e1('0x1c')]('['+_0x18237e[_0xb5e1('0x65')][_0xb5e1('0x66')]()+_0xb5e1('0x68'),_0x5db1aa[_0xb5e1('0x39')]);})[_0xb5e1('0x69')](function(_0x39c6ad){logger[_0xb5e1('0x5d')]('['+_0x18237e[_0xb5e1('0x65')][_0xb5e1('0x66')]()+']',JSON[_0xb5e1('0x6a')](_0x39c6ad));});};
\ No newline at end of file
+var _0x590f=['monitor_format','[QUEUE]','Recording\x20is\x20enabled!','recordingURL','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','serverUrl','uniqueid','email','calleridname','[QUEUE]\x20Ticket\x20%s\x20created','[QUEUE]\x20Displaying\x20ticket\x20%s\x20to\x20agent\x20%s.\x20Integration\x20account\x20type\x20%s.','integrationTab','trigger:salesforce:display','newTab','user:%s','%s/%s/e','error','[QUEUE]\x20Salesforce\x20account\x20type\x20not\x20recognized.','catch','stringify','outbound','recordingFormat','none','destcalleridname','destcalleridnum','Fields','[OUTBOUND]\x20Ticket\x20%s\x20created.','[OUTBOUND]\x20Displaying\x20ticket\x20%s\x20to\x20agent\x20%s.\x20Integration\x20account\x20type\x20%s.','trigger:browser:url','instanceUrl','[OUTBOUND]','Salesforce\x20account\x20type\x20not\x20recognized','unmanaged','lastevent','calleridnum','toUpperCase',']\x20Ticket\x20%s\x20created.',']\x20Integration\x20account\x20type\x20%s.','lodash','request-promise','moment','bluebird','jsforce','util','../../../../config/environment','../../../../config/logger','redis','localhost','socket.io-emitter','ticketType','assign','utc','Subjects','Descriptions','WhoId','getString','ContactId','sobject','create','isNil','validateEmail','User','execute','length','find','Email','resolve','Name','info','Agent\x20%s\x20not\x20found.\x20Switch\x20to\x20the\x20admin\x20account.','then','user_id','display_name','identity','Task','Searching\x20enduser\x20with\x20phone\x20%s.\x20Serching\x20method\x20used\x20%s.','moduleSearch','contact_lead','Lead','Contact','Case','Phone','Enduser\x20with\x20phone\x20%s\x20found.','format','Caller\x20-\x20%s','moduleCreate','contact','Enduser\x20with\x20phone\x20%s.\x20Creating\x20method\x20used\x20%s.','lead','Company','upperFirst','type','string','idField','content','variable','variableName','toString','customVariable','Variable','name','toLowerCase','password','concat','securityToken','Connection','remoteUri','https://login.salesforce.com','login','username','Connection\x20established.','queue','stripTrailingSlash'];(function(_0x97f6dd,_0x417a98){var _0x12c5c1=function(_0x47af5a){while(--_0x47af5a){_0x97f6dd['push'](_0x97f6dd['shift']());}};_0x12c5c1(++_0x417a98);}(_0x590f,0x97));var _0xf590=function(_0x3b7ae2,_0x3a82bd){_0x3b7ae2=_0x3b7ae2-0x0;var _0x4067c1=_0x590f[_0x3b7ae2];return _0x4067c1;};'use strict';var _=require(_0xf590('0x0'));var rp=require(_0xf590('0x1'));var moment=require(_0xf590('0x2'));var BPromise=require(_0xf590('0x3'));var md5=require('md5');var jsforce=require(_0xf590('0x4'));var util=require(_0xf590('0x5'));var Redis=require('ioredis');var intUtil=require('./util');var config=require(_0xf590('0x6'));var logger=require(_0xf590('0x7'))('salesforce');config[_0xf590('0x8')]=_['defaults'](config['redis'],{'host':_0xf590('0x9'),'port':0x18eb});var io=require(_0xf590('0xa'))(new Redis(config['redis']));function emit(_0x373ef7,_0x35892d,_0x4280de){io['to'](_0x373ef7)['emit'](_0x35892d,_0x4280de);}function getTicket(_0x2c2e77,_0x3163c1,_0x1c9fb2,_0x3f36cc,_0x4ea3b4,_0xdc03ac,_0x2a76a7,_0x2b9382){var _0xa2e02c={};if(_0x3f36cc[_0xf590('0xb')]==='Task'){_0xa2e02c=Object[_0xf590('0xc')]({},{'OwnerId':_0x3163c1['id'],'ActivityDate':moment[_0xf590('0xd')](),'IsReminderSet':![],'IsRecurrence':![],'Subject':intUtil['getString'](_0x3f36cc[_0xf590('0xe')],_0x4ea3b4,'\x20'),'Description':intUtil['getString'](_0x3f36cc[_0xf590('0xf')],_0x4ea3b4,'\x0a')},getCustomFields(_0xdc03ac,_0x4ea3b4));if(_0x1c9fb2){_0xa2e02c[_0xf590('0x10')]=_0x1c9fb2['id'];}}else if(_0x3f36cc['ticketType']==='Case'){_0xa2e02c=Object[_0xf590('0xc')]({},{'OwnerId':_0x3163c1['id'],'Subject':intUtil[_0xf590('0x11')](_0x3f36cc[_0xf590('0xe')],_0x4ea3b4,'\x20'),'Description':intUtil[_0xf590('0x11')](_0x3f36cc[_0xf590('0xf')],_0x4ea3b4,'\x0a')},getCustomFields(_0xdc03ac,_0x4ea3b4));if(_0x1c9fb2){_0xa2e02c[_0xf590('0x12')]=_0x1c9fb2['id'];}}return _0x2a76a7[_0xf590('0x13')](_0x3f36cc[_0xf590('0xb')])[_0xf590('0x14')](_0xa2e02c);}function getUser(_0x3ad704,_0xf47e6c,_0x909c89){if(!_[_0xf590('0x15')](_0xf47e6c)&&intUtil[_0xf590('0x16')](_0xf47e6c)){var _0x164c03={'Email':_0xf47e6c};var _0x553a33={'Id':!![],'Username':!![],'Name':!![],'Email':!![]};return _0x909c89[_0xf590('0x13')](_0xf590('0x17'))['find'](_0x164c03,_0x553a33)[_0xf590('0x18')]()['then'](function(_0x230504){if(_0x230504[_0xf590('0x19')]){var _0x208528=_[_0xf590('0x1a')](_0x230504,function(_0x2e9b7d){return _0x2e9b7d[_0xf590('0x1b')]===_0xf47e6c;});if(_0x208528){logger['info']('Agent\x20%s\x20found.',_0xf47e6c);return BPromise[_0xf590('0x1c')]({'id':_0x208528['Id'],'name':_0x208528[_0xf590('0x1d')]});}}else{logger[_0xf590('0x1e')](_0xf590('0x1f'),_0xf47e6c);return _0x909c89['identity']()[_0xf590('0x20')](function(_0x28b0b0){return BPromise[_0xf590('0x1c')]({'id':_0x28b0b0[_0xf590('0x21')],'name':_0x28b0b0[_0xf590('0x22')]});});}});}else{logger[_0xf590('0x1e')]('Agent\x20%s\x20not\x20found.\x20Switch\x20to\x20the\x20admin\x20account.',_0xf47e6c);return _0x909c89[_0xf590('0x23')]()[_0xf590('0x20')](function(_0x6648eb){return BPromise[_0xf590('0x1c')]({'id':_0x6648eb[_0xf590('0x21')],'name':_0x6648eb['display_name']});});}}function getEndUser(_0x242a03,_0x43ce27,_0x5cef8b,_0x41a09b,_0x2033f2){var _0x28b853={'Phone':_0x41a09b};var _0x3c0e27={'Id':!![],'Name':!![],'Phone':!![]};return BPromise[_0xf590('0x1c')]()[_0xf590('0x20')](function(){if(_0x43ce27[_0xf590('0xb')]===_0xf590('0x24')){logger[_0xf590('0x1e')](_0xf590('0x25'),_0x41a09b,_0x43ce27['moduleSearch']);switch(_0x43ce27[_0xf590('0x26')]){case _0xf590('0x27'):return _0x2033f2[_0xf590('0x13')]('Contact')[_0xf590('0x1a')](_0x28b853,_0x3c0e27)[_0xf590('0x18')]()[_0xf590('0x20')](function(_0x553e02){if(_0x553e02&&_0x553e02[_0xf590('0x19')]){return _0x553e02;}else{return _0x2033f2['sobject'](_0xf590('0x28'))[_0xf590('0x1a')](_0x28b853,_0x3c0e27);}});case'contact':return _0x2033f2[_0xf590('0x13')](_0xf590('0x29'))[_0xf590('0x1a')](_0x28b853,_0x3c0e27)[_0xf590('0x18')]();case'lead':return _0x2033f2[_0xf590('0x13')](_0xf590('0x28'))[_0xf590('0x1a')](_0x28b853,_0x3c0e27);default:return null;}}else if(_0x43ce27[_0xf590('0xb')]===_0xf590('0x2a')){logger[_0xf590('0x1e')](_0xf590('0x25'),_0x41a09b,'contact');return _0x2033f2['sobject'](_0xf590('0x29'))[_0xf590('0x1a')](_0x28b853,_0x3c0e27)[_0xf590('0x18')]();}})['then'](function(_0x1484a6){if(_0x1484a6&&_0x1484a6[_0xf590('0x19')]){var _0x511dc1=_[_0xf590('0x1a')](_0x1484a6,function(_0x28e5d3){return _0x28e5d3[_0xf590('0x2b')]===_0x41a09b;});if(_0x511dc1){return BPromise[_0xf590('0x1c')]({'id':_0x511dc1['Id'],'name':_0x511dc1[_0xf590('0x1d')],'phone':_0x511dc1['Phone']});}}})['then'](function(_0x3dd643){if(_0x3dd643){logger['info'](_0xf590('0x2c'),_0x41a09b);return BPromise[_0xf590('0x1c')](_0x3dd643);}else{logger[_0xf590('0x1e')]('Enduser\x20with\x20phone\x20%s\x20not\x20found.',_0x41a09b);var _0x556f98={'LastName':_0x5cef8b!=='<unknown>'?_0x5cef8b:util[_0xf590('0x2d')](_0xf590('0x2e'),_0x41a09b),'Phone':_0x41a09b};if(_0x43ce27[_0xf590('0x2f')]){if(_0x43ce27[_0xf590('0x2f')]===_0xf590('0x30')){logger[_0xf590('0x1e')](_0xf590('0x31'),_0x41a09b,_0x43ce27['moduleCreate']);}else if(_0x43ce27['moduleCreate']===_0xf590('0x32')&&_0x43ce27[_0xf590('0xb')]==='Task'){logger[_0xf590('0x1e')](_0xf590('0x31'),_0x41a09b,_0x43ce27[_0xf590('0x2f')]);_0x556f98[_0xf590('0x33')]='No\x20Company';}else{return null;}}return _0x2033f2[_0xf590('0x13')](_[_0xf590('0x34')](_0x43ce27[_0xf590('0x2f')]))['create'](_0x556f98);}});}function getCustomFields(_0x1a2d46,_0x151d96){var _0x2b0c91={};if(_0x1a2d46[_0xf590('0x19')]>0x0){_['forEach'](_0x1a2d46,function(_0x21e49b){if(_0x21e49b[_0xf590('0x35')]===_0xf590('0x36')&&_0x21e49b[_0xf590('0x37')]){_0x2b0c91[_0x21e49b[_0xf590('0x37')]]=_0x21e49b[_0xf590('0x38')]['toString']();}else if(_0x21e49b[_0xf590('0x35')]===_0xf590('0x39')&&_0x21e49b['variableName']&&_0x21e49b[_0xf590('0x37')]){_0x151d96[_0x21e49b[_0xf590('0x3a')]]&&(_0x2b0c91[_0x21e49b['idField']]=_0x151d96[_0x21e49b[_0xf590('0x3a')]][_0xf590('0x3b')]());}else if(_0x21e49b[_0xf590('0x35')]===_0xf590('0x3c')&&_0x21e49b[_0xf590('0x3d')]&&_0x21e49b[_0xf590('0x3d')][_0xf590('0x3e')]&&_0x21e49b['idField']){_0x151d96[_0x21e49b['Variable'][_0xf590('0x3e')][_0xf590('0x3f')]()]&&(_0x2b0c91[_0x21e49b[_0xf590('0x37')]]=_0x151d96[_0x21e49b[_0xf590('0x3d')][_0xf590('0x3e')]['toLowerCase']()][_0xf590('0x3b')]());}});}return _0x2b0c91;}function getConnection(_0x4a535d){var _0xfb7d74=_0x4a535d[_0xf590('0x40')][_0xf590('0x41')](_0x4a535d[_0xf590('0x42')]);var _0x3437c0=new jsforce[(_0xf590('0x43'))]({'oauth2':{'loginUrl':_0x4a535d[_0xf590('0x44')]||_0xf590('0x45'),'clientId':_0x4a535d['clientId'],'clientSecret':_0x4a535d['clientSecret']}});return _0x3437c0[_0xf590('0x46')](_0x4a535d[_0xf590('0x47')],_0xfb7d74)[_0xf590('0x20')](function(){logger[_0xf590('0x1e')](_0xf590('0x48'));return _0x3437c0;});}exports[_0xf590('0x49')]=function(_0x1d4e75,_0x3cc8f2,_0xe6a54b,_0x228515,_0x194eab,_0x7a3958){var _0x41fcb0,_0x203214,_0x5d712d,_0x3fec36;_0x7a3958['serverUrl']=intUtil[_0xf590('0x4a')](_0x7a3958['serverUrl']);_0x7a3958['remoteUri']=intUtil[_0xf590('0x4a')](_0x7a3958[_0xf590('0x44')]);if(_0x194eab&&_0x194eab[_0xf590('0x4b')]){logger[_0xf590('0x1e')](_0xf590('0x4c'),_0xf590('0x4d'));_0x3cc8f2[_0xf590('0x4e')]=util[_0xf590('0x2d')](_0xf590('0x4f'),_0x7a3958[_0xf590('0x50')],_0x3cc8f2[_0xf590('0x51')],md5(_0x3cc8f2[_0xf590('0x51')]));}else{_0x3cc8f2[_0xf590('0x4e')]='';}return getConnection(_0x7a3958)['then'](function(_0x20b353){_0x3fec36=_0x20b353;return getUser(_0x7a3958,_0x228515[_0xf590('0x52')],_0x3fec36);})[_0xf590('0x20')](function(_0x3d6522){_0x41fcb0=_0x3d6522;return getEndUser(_0x7a3958,_0xe6a54b,_0x3cc8f2[_0xf590('0x53')],_0x3cc8f2['calleridnum'],_0x3fec36);})[_0xf590('0x20')](function(_0x2ca9d9){_0x203214=_0x2ca9d9;return getTicket(_0x7a3958,_0x41fcb0,_0x203214,_0xe6a54b,_0x3cc8f2,_0xe6a54b['Fields'],_0x3fec36,_0xf590('0x49'));})[_0xf590('0x20')](function(_0x33b9ae){_0x5d712d=_0x33b9ae;logger[_0xf590('0x1e')](_0xf590('0x54'),_0x5d712d['id']);logger['info'](_0xf590('0x55'),_0x5d712d['id'],_0x228515[_0xf590('0x3e')],_0x7a3958[_0xf590('0x35')]);switch(_0x7a3958['type']){case _0xf590('0x56'):emit(util[_0xf590('0x2d')]('user:%s',_0x228515['name']),_0xf590('0x57'),{'recordId':_0x5d712d['id']});break;case _0xf590('0x58'):emit(util['format'](_0xf590('0x59'),_0x228515[_0xf590('0x3e')]),'trigger:browser:url',{'uri':util[_0xf590('0x2d')](_0xf590('0x5a'),_0x3fec36['instanceUrl'],_0x5d712d['id'])});break;default:logger[_0xf590('0x5b')](_0xf590('0x5c'));}})[_0xf590('0x5d')](function(_0x26f806){logger['error'](_0xf590('0x4c'),JSON[_0xf590('0x5e')](_0x26f806));});};exports[_0xf590('0x5f')]=function(_0x401120,_0x16d5a0,_0xec6ab0,_0x27be3f,_0x490f2a,_0x4ce4bf,_0x2730f4){var _0x498ff5,_0x5ae8d9,_0x5ab6b1,_0x3e1b35;_0x4ce4bf[_0xf590('0x50')]=intUtil[_0xf590('0x4a')](_0x4ce4bf[_0xf590('0x50')]);_0x4ce4bf['remoteUri']=intUtil[_0xf590('0x4a')](_0x4ce4bf[_0xf590('0x44')]);if(_0x2730f4&&_0x2730f4[_0xf590('0x60')]&&_0x2730f4['recordingFormat']!==_0xf590('0x61')){logger['info']('[OUTBOUND]',_0xf590('0x4d'));_0x16d5a0[_0xf590('0x4e')]=util['format'](_0xf590('0x4f'),_0x4ce4bf[_0xf590('0x50')],_0x16d5a0[_0xf590('0x51')],md5(_0x16d5a0['uniqueid']));}return getConnection(_0x4ce4bf)['then'](function(_0xf00e5a){_0x3e1b35=_0xf00e5a;return getUser(_0x4ce4bf,_0x27be3f[_0xf590('0x52')],_0x3e1b35);})[_0xf590('0x20')](function(_0x430a62){_0x498ff5=_0x430a62;return getEndUser(_0x4ce4bf,_0xec6ab0,_0x16d5a0[_0xf590('0x62')],_0x16d5a0[_0xf590('0x63')],_0x3e1b35);})['then'](function(_0x2ec1c6){_0x5ae8d9=_0x2ec1c6;return getTicket(_0x4ce4bf,_0x498ff5,_0x5ae8d9,_0xec6ab0,_0x16d5a0,_0xec6ab0[_0xf590('0x64')],_0x3e1b35,_0xf590('0x5f'));})[_0xf590('0x20')](function(_0x4bdc56){_0x5ab6b1=_0x4bdc56;logger[_0xf590('0x1e')](_0xf590('0x65'),_0x5ab6b1['id']);logger[_0xf590('0x1e')](_0xf590('0x66'),_0x5ab6b1['id'],_0x27be3f[_0xf590('0x3e')],_0x4ce4bf[_0xf590('0x35')]);switch(_0x4ce4bf[_0xf590('0x35')]){case _0xf590('0x56'):emit(util[_0xf590('0x2d')]('user:%s',_0x27be3f[_0xf590('0x3e')]),_0xf590('0x57'),{'recordId':_0x5ab6b1['id']});break;case _0xf590('0x58'):emit(util[_0xf590('0x2d')]('user:%s',_0x27be3f[_0xf590('0x3e')]),_0xf590('0x67'),{'uri':util[_0xf590('0x2d')](_0xf590('0x5a'),_0x3e1b35[_0xf590('0x68')],_0x5ab6b1['id'])});break;default:logger['error'](_0xf590('0x69'),_0xf590('0x6a'));}})[_0xf590('0x5d')](function(_0x4215f7){logger['error'](_0xf590('0x69'),JSON['stringify'](_0x4215f7));});};exports[_0xf590('0x6b')]=function(_0x2ba0be,_0x1e048e,_0x9e388b,_0x365bab,_0x465014,_0x2c2086){var _0xd996b0,_0x3a904d,_0x201a91,_0x115dc2;_0x2c2086[_0xf590('0x50')]=intUtil[_0xf590('0x4a')](_0x2c2086[_0xf590('0x50')]);_0x2c2086[_0xf590('0x44')]=intUtil['stripTrailingSlash'](_0x2c2086['remoteUri']);if(_0x465014&&_0x465014[_0xf590('0x4b')]){logger['info']('['+_0x1e048e[_0xf590('0x6c')]['toUpperCase']()+']',_0xf590('0x4d'));_0x1e048e[_0xf590('0x4e')]=util[_0xf590('0x2d')]('%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s',_0x2c2086[_0xf590('0x50')],_0x1e048e[_0xf590('0x51')],md5(_0x1e048e[_0xf590('0x51')]));}else{_0x1e048e[_0xf590('0x4e')]='';}return getConnection(_0x2c2086)['then'](function(_0x4cde2c){_0x115dc2=_0x4cde2c;if(!_[_0xf590('0x15')](_0x365bab)){return getUser(_0x2c2086,_0x365bab['name'],_0x115dc2);}else{return getUser(_0x2c2086,null,_0x115dc2);}})[_0xf590('0x20')](function(_0x1a10e4){_0xd996b0=_0x1a10e4;return getEndUser(_0x2c2086,_0x9e388b,_0x1e048e['calleridname'],_0x1e048e[_0xf590('0x6d')],_0x115dc2);})[_0xf590('0x20')](function(_0xc524f2){_0x3a904d=_0xc524f2;return getTicket(_0x2c2086,_0xd996b0,_0x3a904d,_0x9e388b,_0x1e048e,_0x9e388b['Fields'],_0x115dc2);})[_0xf590('0x20')](function(_0x4a609e){_0x201a91=_0x4a609e;logger[_0xf590('0x1e')]('['+_0x1e048e['lastevent'][_0xf590('0x6e')]()+_0xf590('0x6f'),_0x201a91['id']);logger[_0xf590('0x1e')]('['+_0x1e048e[_0xf590('0x6c')][_0xf590('0x6e')]()+_0xf590('0x70'),_0x2c2086['type']);})['catch'](function(_0x54c7e4){logger[_0xf590('0x5b')]('['+_0x1e048e[_0xf590('0x6c')]['toUpperCase']()+']',JSON[_0xf590('0x5e')](_0x54c7e4));});};
\ No newline at end of file