Built motion from commit 953226e6.|2.6.32
[motion2.git] / server / api / cmContact / cmContact.model.js
index d1af724..6d3c934 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x669d=['afterCreate','inspect','scheduledat','format','YYYY-MM-DD\x20HH:mm:ss','isNil','VoiceQueue','findOne','dialTimezone','timezones','utcOffset','minutes','then','CmHopper','cmContact,\x20afterCreate\x20','\x20contact\x20not\x20insert\x20in\x20hopper,\x20check\x20duplicate\x20onlyIfOpen,\x20exist\x20in\x20hopper\x20VoiceQueue\x20','ListId','priority','callbackUniqueid','ret','CmHopperFinal','cmContact,\x20afterCreate,\x20','\x20contact\x20not\x20insert\x20in\x20hopper,\x20check\x20duplicate\x20always,\x20exist\x20in\x20hopperFinal\x20VoiceQueue\x20','create','catch','Campaign','\x20contact\x20not\x20insert\x20in\x20hopper,\x20check\x20duplicate\x20always,\x20exist\x20in\x20hopper\x20Campaign\x20','findAll','dialCheckDuplicateType','CmList','Lists','get','onlyIfOpen','outbound','BlackLists','length','cmContact,\x20%s,\x20%s','always','CmHopperBlack','message','ContactId','VoiceQueueId','all','info','lodash','util','../../config/logger','api','moment','path','rimraf','../../config/environment','../../config/environment/shared','exports','define','CmContact','phone','firstName','lastName','mobile','fax','email','FULLTEXT','utf8mb4_unicode_ci','models','error','cmContact'];(function(_0x548d7d,_0x2d41fc){var _0xb1c878=function(_0x570f09){while(--_0x570f09){_0x548d7d['push'](_0x548d7d['shift']());}};_0xb1c878(++_0x2d41fc);}(_0x669d,0x138));var _0xd669=function(_0x341e0f,_0x4a09d0){_0x341e0f=_0x341e0f-0x0;var _0x59555a=_0x669d[_0x341e0f];return _0x59555a;};'use strict';var _=require(_0xd669('0x0'));var util=require(_0xd669('0x1'));var logger=require(_0xd669('0x2'))(_0xd669('0x3'));var moment=require(_0xd669('0x4'));var BPromise=require('bluebird');var rp=require('request-promise');var fs=require('fs');var path=require(_0xd669('0x5'));var rimraf=require(_0xd669('0x6'));var config=require(_0xd669('0x7'));var shared=require(_0xd669('0x8'));var attributes=require('./cmContact.attributes');module[_0xd669('0x9')]=function(_0x469798,_0x127a3f){return _0x469798[_0xd669('0xa')](_0xd669('0xb'),attributes,{'tableName':'cm_contacts','paranoid':!![],'indexes':[{'name':_0xd669('0xc'),'fields':[_0xd669('0xc')]},{'name':'fti_cm_contacts','fields':[_0xd669('0xd'),_0xd669('0xe'),'phone',_0xd669('0xf'),_0xd669('0x10'),_0xd669('0x11')],'type':_0xd669('0x12')}],'timestamps':!![],'charset':'utf8mb4','collate':_0xd669('0x13'),'hooks':{'afterCreate':function(_0x2b8423,_0xd7df7,_0x4eb628){var _0x3d0c09=_0x469798[_0xd669('0x14')];var _0x271185=_0x2b8423['get']({'plain':!![]});function _0x20a693(){return function(_0x231e0f){logger[_0xd669('0x15')](_0xd669('0x16'),_0xd669('0x17'),util[_0xd669('0x18')](_0x231e0f,{'showHidden':![],'depth':null}));};}function _0x4d7e99(_0x40d196,_0x4d7efa){var _0x420940=_0x4d7efa[_0xd669('0x19')]?_0x4d7efa[_0xd669('0x19')]:moment()[_0xd669('0x1a')](_0xd669('0x1b'));return new BPromise(function(_0x110731,_0x2a20c1){if(_[_0xd669('0x1c')](_0x4d7efa['dialTimezone'])){_0x110731({'ret':_0x420940});}else{_0x3d0c09[_0xd669('0x1d')][_0xd669('0x1e')]({'where':{'id':_0x40d196['id']}})['then'](function(_0x3719d9){if(!_['isNil'](_0x3719d9)){var _0x333662=_0x3719d9[_0xd669('0x1f')];if(!_[_0xd669('0x1c')](_0x333662)){var _0x4a688c=shared[_0xd669('0x20')];var _0x18359b=_0x4a688c[_0x333662];var _0x256cdc=_0x4a688c[_0x4d7efa[_0xd669('0x1f')]];if(!_[_0xd669('0x1c')](_0x18359b)&&!_[_0xd669('0x1c')](_0x256cdc)){var _0x59d78e=_0x18359b[_0xd669('0x21')]-_0x256cdc[_0xd669('0x21')];_0x420940=_0x4d7efa['scheduledat']?_0x4d7efa[_0xd669('0x19')]:moment();var _0x23fad0=moment(_0x420940)['add'](_0x59d78e,_0xd669('0x22'));_0x110731({'ret':_0x23fad0[_0xd669('0x1a')](_0xd669('0x1b'))});}else _0x110731({'ret':_0x420940});}else _0x110731({'ret':_0x420940});}else{_0x110731({'ret':_0x420940});}});}});return 0xa;}var _0x11b171=function(_0x37370d){return new BPromise(function(_0x3e715b,_0x248b88){_0x4d7e99(_0x37370d,_0x271185)[_0xd669('0x23')](function(_0x47a657){_0x271185[_0xd669('0x19')]=_0x47a657['ret'];_0x3d0c09[_0xd669('0x24')][_0xd669('0x1e')]({'where':{'phone':_0x271185[_0xd669('0xc')],'VoiceQueueId':_0x37370d['id']}})[_0xd669('0x23')](function(_0x2756ec){if(!_['isNil'](_0x2756ec)){throw new Error(_0xd669('0x25')+_0x271185[_0xd669('0xc')]+_0xd669('0x26')+_0x37370d['id']);}return _0x3d0c09[_0xd669('0x24')]['create']({'phone':_0x271185[_0xd669('0xc')],'ContactId':_0x271185['id'],'ListId':_0x271185[_0xd669('0x27')],'priority':_0x271185[_0xd669('0x28')]?_0x271185[_0xd669('0x28')]:0x2,'scheduledat':_0x271185[_0xd669('0x19')]?_0x271185[_0xd669('0x19')]:moment()['format']('YYYY-MM-DD\x20HH:mm:ss'),'callback':_0x271185['callbackUniqueid']?!![]:![],'callbackuniqueid':_0x271185['callbackUniqueid']?_0x271185[_0xd669('0x29')]:undefined,'callbackat':_0x271185[_0xd669('0x29')]?moment()[_0xd669('0x1a')](_0xd669('0x1b')):undefined,'VoiceQueueId':_0x37370d['id']});})['catch'](function(_0x3b9de1){_0x248b88(_0x3b9de1);});});});};var _0x3178c8=function(_0x52ad86){return new BPromise(function(_0x2078ed,_0x358d85){_0x4d7e99(_0x52ad86,_0x271185)[_0xd669('0x23')](function(_0x11bbbf){_0x271185[_0xd669('0x19')]=_0x11bbbf[_0xd669('0x2a')];_0x3d0c09[_0xd669('0x24')][_0xd669('0x1e')]({'where':{'phone':_0x271185[_0xd669('0xc')],'VoiceQueueId':_0x52ad86['id']}})[_0xd669('0x23')](function(_0x34b568){if(!_[_0xd669('0x1c')](_0x34b568)){throw new Error(_0xd669('0x25')+_0x271185[_0xd669('0xc')]+'\x20contact\x20not\x20insert\x20in\x20hopper,\x20check\x20duplicate\x20always,\x20exist\x20in\x20hopper\x20VoiceQueue\x20'+_0x52ad86['id']);}return _0x3d0c09[_0xd669('0x2b')][_0xd669('0x1e')]({'where':{'calleridnum':_0x271185['phone'],'VoiceQueueId':_0x52ad86['id']}});})['then'](function(_0x37cb20){if(!_['isNil'](_0x37cb20)){throw new Error(_0xd669('0x2c')+_0x271185[_0xd669('0xc')]+_0xd669('0x2d')+_0x52ad86['id']);}return _0x3d0c09[_0xd669('0x24')][_0xd669('0x2e')]({'phone':_0x271185[_0xd669('0xc')],'ContactId':_0x271185['id'],'ListId':_0x271185[_0xd669('0x27')],'priority':_0x271185['priority']?_0x271185[_0xd669('0x28')]:0x2,'scheduledat':_0x271185[_0xd669('0x19')]?_0x271185['scheduledat']:moment()[_0xd669('0x1a')](_0xd669('0x1b')),'callback':_0x271185[_0xd669('0x29')]?!![]:![],'callbackuniqueid':_0x271185[_0xd669('0x29')]?_0x271185['callbackUniqueid']:undefined,'callbackat':_0x271185[_0xd669('0x29')]?moment()[_0xd669('0x1a')]('YYYY-MM-DD\x20HH:mm:ss'):undefined,'VoiceQueueId':_0x52ad86['id']});})[_0xd669('0x2f')](function(_0x2f116d){_0x358d85(_0x2f116d);});});});};function _0x245d7b(){return function(_0xf14fd5){logger['error']('cmContact',_0xd669('0x17'),util[_0xd669('0x18')](_0xf14fd5,{'showHidden':![],'depth':null}));};}function _0x2e4254(_0xb1fd26,_0x521a72){var _0x3f4636=_0x521a72[_0xd669('0x19')]?_0x521a72['scheduledat']:moment()[_0xd669('0x1a')](_0xd669('0x1b'));return new BPromise(function(_0x40b9ed,_0x398b23){if(_[_0xd669('0x1c')](_0x521a72['dialTimezone'])){_0x40b9ed({'ret':_0x3f4636});}else{_0x3d0c09[_0xd669('0x30')]['findOne']({'where':{'id':_0xb1fd26['id']}})[_0xd669('0x23')](function(_0x4a85d0){if(!_[_0xd669('0x1c')](_0x4a85d0)){var _0x301db9=_0x4a85d0['dialTimezone'];if(!_['isNil'](_0x301db9)){var _0x517fb5=shared['timezones'];var _0x57183e=_0x517fb5[_0x301db9];var _0x2eb21f=_0x517fb5[_0x521a72[_0xd669('0x1f')]];if(!_['isNil'](_0x57183e)&&!_[_0xd669('0x1c')](_0x2eb21f)){var _0x4421ba=_0x57183e['utcOffset']-_0x2eb21f[_0xd669('0x21')];_0x3f4636=_0x521a72[_0xd669('0x19')]?_0x521a72[_0xd669('0x19')]:moment();var _0x4f1d4a=moment(_0x3f4636)['add'](_0x4421ba,_0xd669('0x22'));_0x40b9ed({'ret':_0x4f1d4a[_0xd669('0x1a')](_0xd669('0x1b'))});}else _0x40b9ed({'ret':_0x3f4636});}else _0x40b9ed({'ret':_0x3f4636});}else{_0x40b9ed({'ret':_0x3f4636});}});}});return 0xa;}var _0x286b90=function(_0x227ad8){return new BPromise(function(_0x5b0883,_0x49daf8){_0x2e4254(_0x227ad8,_0x271185)['then'](function(_0x4f0ac5){_0x271185['scheduledat']=_0x4f0ac5[_0xd669('0x2a')];_0x3d0c09['CmHopper'][_0xd669('0x1e')]({'where':{'phone':_0x271185[_0xd669('0xc')],'CampaignId':_0x227ad8['id']}})[_0xd669('0x23')](function(_0x4dbf1b){if(!_[_0xd669('0x1c')](_0x4dbf1b)){throw new Error(_0xd669('0x25')+_0x271185[_0xd669('0xc')]+'\x20contact\x20not\x20insert\x20in\x20hopper,\x20check\x20duplicate\x20onlyIfOpen,\x20exist\x20in\x20hopper\x20Campaign\x20'+_0x227ad8['id']);}return _0x3d0c09['CmHopper'][_0xd669('0x2e')]({'phone':_0x271185[_0xd669('0xc')],'ContactId':_0x271185['id'],'ListId':_0x271185[_0xd669('0x27')],'priority':_0x271185['priority']?_0x271185[_0xd669('0x28')]:0x2,'scheduledat':_0x271185['scheduledat']?_0x271185['scheduledat']:moment()[_0xd669('0x1a')]('YYYY-MM-DD\x20HH:mm:ss'),'callback':_0x271185['callbackUniqueid']?!![]:![],'callbackuniqueid':_0x271185[_0xd669('0x29')]?_0x271185[_0xd669('0x29')]:undefined,'callbackat':_0x271185[_0xd669('0x29')]?moment()[_0xd669('0x1a')](_0xd669('0x1b')):undefined,'CampaignId':_0x227ad8['id']});})[_0xd669('0x2f')](function(_0x2da876){_0x49daf8(_0x2da876);});});});};var _0xab9cc0=function(_0x4c1de1){return new BPromise(function(_0x50d585,_0x4bf5b9){_0x2e4254(_0x4c1de1,_0x271185)['then'](function(_0x1bb27b){_0x271185[_0xd669('0x19')]=_0x1bb27b[_0xd669('0x2a')];_0x3d0c09[_0xd669('0x24')]['findOne']({'where':{'phone':_0x271185[_0xd669('0xc')],'CampaignId':_0x4c1de1['id']}})['then'](function(_0x3fedc9){if(!_[_0xd669('0x1c')](_0x3fedc9)){throw new Error(_0xd669('0x25')+_0x271185[_0xd669('0xc')]+_0xd669('0x31')+_0x4c1de1['id']);}return _0x3d0c09[_0xd669('0x2b')][_0xd669('0x1e')]({'where':{'calleridnum':_0x271185[_0xd669('0xc')],'CampaignId':_0x4c1de1['id']}});})[_0xd669('0x23')](function(_0xcd60b6){if(!_[_0xd669('0x1c')](_0xcd60b6)){throw new Error(_0xd669('0x2c')+_0x271185[_0xd669('0xc')]+'\x20contact\x20not\x20insert\x20in\x20hopper,\x20check\x20duplicate\x20always,\x20exist\x20in\x20hopperFinal\x20Campaign\x20'+_0x4c1de1['id']);}return _0x3d0c09[_0xd669('0x24')]['create']({'phone':_0x271185[_0xd669('0xc')],'ContactId':_0x271185['id'],'ListId':_0x271185[_0xd669('0x27')],'priority':_0x271185['priority']?_0x271185['priority']:0x2,'scheduledat':_0x271185[_0xd669('0x19')]?_0x271185['scheduledat']:moment()[_0xd669('0x1a')]('YYYY-MM-DD\x20HH:mm:ss'),'callback':_0x271185[_0xd669('0x29')]?!![]:![],'callbackuniqueid':_0x271185[_0xd669('0x29')]?_0x271185[_0xd669('0x29')]:undefined,'callbackat':_0x271185[_0xd669('0x29')]?moment()[_0xd669('0x1a')](_0xd669('0x1b')):undefined,'CampaignId':_0x4c1de1['id']});})['catch'](function(_0x20d762){_0x4bf5b9(_0x20d762);});});});};if(_0x271185[_0xd669('0x27')]){_0x3d0c09['VoiceQueue'][_0xd669('0x32')]({'where':{'type':'outbound'},'attributes':['id',_0xd669('0x33'),'dialTimezone'],'include':[{'model':_0x3d0c09[_0xd669('0x34')],'as':_0xd669('0x35'),'where':{'id':_0x271185[_0xd669('0x27')]}}]})['then'](function(_0x29067a){if(_0x29067a){var _0x13840a=[];for(var _0x2fc52f=0x0,_0xee199c;_0x2fc52f<_0x29067a['length'];_0x2fc52f+=0x1){_0xee199c=_0x29067a[_0x2fc52f][_0xd669('0x36')]({'plain':!![]});switch(_0xee199c['dialCheckDuplicateType']){case'always':_0x3178c8(_0xee199c)[_0xd669('0x2f')](_0x20a693());break;case _0xd669('0x37'):_0x11b171(_0xee199c)[_0xd669('0x2f')](_0x20a693());break;default:_0x2e4254(_0xee199c,_0x271185)[_0xd669('0x23')](function(_0x2d3018){_0x271185[_0xd669('0x19')]=_0x2d3018[_0xd669('0x2a')];_0x3d0c09[_0xd669('0x24')]['create']({'phone':_0x271185[_0xd669('0xc')],'ContactId':_0x271185['id'],'ListId':_0x271185[_0xd669('0x27')],'scheduledat':_0x271185[_0xd669('0x19')]?_0x271185[_0xd669('0x19')]:moment()[_0xd669('0x1a')](_0xd669('0x1b')),'priority':_0x271185[_0xd669('0x28')]?_0x271185['priority']:0x2,'callback':_0x271185[_0xd669('0x29')]?!![]:![],'callbackuniqueid':_0x271185[_0xd669('0x29')]?_0x271185[_0xd669('0x29')]:undefined,'callbackat':_0x271185[_0xd669('0x29')]?moment()[_0xd669('0x1a')](_0xd669('0x1b')):undefined,'VoiceQueueId':_0xee199c['id']})[_0xd669('0x2f')](_0x20a693());});}}}})[_0xd669('0x23')](function(){return _0x3d0c09[_0xd669('0x1d')][_0xd669('0x32')]({'where':{'type':_0xd669('0x38')},'attributes':['id'],'include':[{'model':_0x3d0c09[_0xd669('0x34')],'as':_0xd669('0x39'),'where':{'id':_0x271185['ListId']}}]})[_0xd669('0x23')](function(_0x171d7a){if(_0x171d7a){var _0x4cb57a=[];for(var _0x2c99b0=0x0,_0x36582f;_0x2c99b0<_0x171d7a[_0xd669('0x3a')];_0x2c99b0+=0x1){_0x36582f=_0x171d7a[_0x2c99b0][_0xd669('0x36')]({'plain':!![]});_0x3d0c09['CmHopperBlack'][_0xd669('0x2e')]({'phone':_0x271185[_0xd669('0xc')],'ContactId':_0x271185['id'],'ListId':_0x271185[_0xd669('0x27')],'VoiceQueueId':_0x36582f['id']})['catch'](function(_0x2b9868){logger['error'](_0xd669('0x3b'),_0xd669('0x17'),_0x2b9868['message']);});}}});})[_0xd669('0x23')](function(){return _0x3d0c09['Campaign']['findAll']({'attributes':['id',_0xd669('0x33'),_0xd669('0x1f')],'include':[{'model':_0x3d0c09[_0xd669('0x34')],'as':_0xd669('0x35'),'where':{'id':_0x271185[_0xd669('0x27')]}}]})['then'](function(_0x27ae7b){if(_0x27ae7b){var _0x2570fb=[];for(var _0x32247e=0x0,_0x13399b;_0x32247e<_0x27ae7b[_0xd669('0x3a')];_0x32247e+=0x1){_0x13399b=_0x27ae7b[_0x32247e][_0xd669('0x36')]({'plain':!![]});switch(_0x13399b[_0xd669('0x33')]){case _0xd669('0x3c'):_0xab9cc0(_0x13399b)[_0xd669('0x2f')](_0x245d7b());break;case _0xd669('0x37'):_0x286b90(_0x13399b)[_0xd669('0x2f')](_0x245d7b());break;default:_0x3d0c09[_0xd669('0x24')]['create']({'phone':_0x271185['phone'],'ContactId':_0x271185['id'],'ListId':_0x271185[_0xd669('0x27')],'scheduledat':_0x271185['scheduledat']?_0x271185[_0xd669('0x19')]:moment()[_0xd669('0x1a')]('YYYY-MM-DD\x20HH:mm:ss'),'priority':_0x271185[_0xd669('0x28')]?_0x271185[_0xd669('0x28')]:0x2,'callback':_0x271185['callbackUniqueid']?!![]:![],'callbackuniqueid':_0x271185[_0xd669('0x29')]?_0x271185[_0xd669('0x29')]:undefined,'callbackat':_0x271185['callbackUniqueid']?moment()[_0xd669('0x1a')](_0xd669('0x1b')):undefined,'CampaignId':_0x13399b['id']})['catch'](_0x245d7b());}}}});})[_0xd669('0x23')](function(){return _0x3d0c09[_0xd669('0x30')]['findAll']({'attributes':['id'],'include':[{'model':_0x3d0c09[_0xd669('0x34')],'as':_0xd669('0x39'),'where':{'id':_0x271185[_0xd669('0x27')]}}]})[_0xd669('0x23')](function(_0x3f01fd){if(_0x3f01fd){var _0x4ac8ae=[];for(var _0x2b3407=0x0,_0x280b2b;_0x2b3407<_0x3f01fd[_0xd669('0x3a')];_0x2b3407+=0x1){_0x280b2b=_0x3f01fd[_0x2b3407]['get']({'plain':!![]});_0x3d0c09[_0xd669('0x3d')]['create']({'phone':_0x271185[_0xd669('0xc')],'ContactId':_0x271185['id'],'ListId':_0x271185[_0xd669('0x27')],'CampaignId':_0x280b2b['id']})[_0xd669('0x2f')](function(_0x109eaa){logger['error'](_0xd669('0x3b'),_0xd669('0x17'),_0x109eaa[_0xd669('0x3e')]);});}}});})[_0xd669('0x23')](function(){_0x4eb628();})[_0xd669('0x2f')](function(_0x533e11){logger[_0xd669('0x15')]('cmContact,\x20%s,\x20%s',_0xd669('0x17'),_0x533e11['message']);_0x4eb628(_0x533e11);});}else{_0x4eb628(new Error('List\x20not\x20found'));}},'afterDestroy':function(_0x42db17,_0x1b0231,_0x157f16){var _0x316b3a=_0x469798[_0xd669('0x14')];var _0x42cc74=_0x42db17[_0xd669('0x36')]({'plain':!![]});return _0x316b3a[_0xd669('0x24')][_0xd669('0x32')]({'raw':!![],'where':{'ListId':_0x42cc74['ListId'],'ContactId':_0x42cc74['id']}})[_0xd669('0x23')](function(_0x2226dc){if(!_['isEmpty'](_0x2226dc)){var _0x3ab11a=[];for(var _0x19833e=0x0;_0x19833e<_0x2226dc[_0xd669('0x3a')];_0x19833e+=0x1){var _0x543981=_0x316b3a[_0xd669('0x24')]['destroy']({'where':{'ListId':_0x2226dc[_0x19833e]['ListId'],'ContactId':_0x2226dc[_0x19833e][_0xd669('0x3f')],'VoiceQueueId':_0x2226dc[_0x19833e][_0xd669('0x40')],'CampaignId':_0x2226dc[_0x19833e]['CampaignId']}});_0x3ab11a['push'](_0x543981);}return BPromise[_0xd669('0x41')](_0x3ab11a);}})[_0xd669('0x23')](function(_0x1fb038){logger[_0xd669('0x42')]('[CmContact][afterDestroy][Succesfull]',util['inspect'](_0x1fb038,{'showHidden':![],'depth':null}));_0x157f16();})[_0xd669('0x2f')](function(_0x26830e){logger[_0xd669('0x15')]('[CmContact][afterDestroy][Error]',util[_0xd669('0x18')](_0x26830e,{'showHidden':![],'depth':null}));_0x157f16(_0x26830e);});}}});};
\ No newline at end of file
+var _0xc17f=['util','moment','../../config/environment/shared','Campaign','VoiceQueue','scheduledat','format','isNil','dialTimezone','resolve','findOne','then','timezones','utcOffset','minutes','YYYY-MM-DD\x20HH:mm:ss','phone','ListId','priority','callbackUniqueid','assign','CmHopper','[Always]\x20Hopper\x20already\x20exists\x20for\x20contact\x20with\x20phone\x20','\x20in\x20Campaign\x20with\x20id\x20','[Always]\x20Hopper\x20Final\x20already\x20exists\x20for\x20contact\x20with\x20phone\x20','CampaignId','VoiceQueueId','create','[OnlyIfOpen]\x20Hopper\x20already\x20exists\x20for\x20contact\x20with\x20phone\x20','dialCheckDuplicateType','onlyIfOpen','outbound','CmList','map','Lists','all','findAll','CmHopperBlack','BlackLists','exports','cm_contacts','fti_cm_contacts','mobile','fax','utf8mb4','utf8mb4_unicode_ci','error','[cmContact][afterCreate]\x20List\x20not\x20found\x20for\x20contact\x20with\x20id\x20','catch','[cmContact][afterCreate]','message','get','isEmpty','length','destroy','info','[CmContact][afterDestroy][Succesfull]','inspect','[CmContact][afterDestroy][Error]'];(function(_0x53ccf2,_0x13cb67){var _0x5a2964=function(_0x3b0514){while(--_0x3b0514){_0x53ccf2['push'](_0x53ccf2['shift']());}};_0x5a2964(++_0x13cb67);}(_0xc17f,0x1d8));var _0xfc17=function(_0x258534,_0x586b54){_0x258534=_0x258534-0x0;var _0x37b893=_0xc17f[_0x258534];return _0x37b893;};'use strict';var _=require('lodash');var util=require(_0xfc17('0x0'));var logger=require('../../config/logger')('api');var moment=require(_0xfc17('0x1'));var shared=require(_0xfc17('0x2'));var attributes=require('./cmContact.attributes');function getTimezoneCallbackAt(_0x218bb7,_0x2ca557,_0x31a4dd,_0x1e6ff7){var _0x5c309d=_0x1e6ff7?_0xfc17('0x3'):_0xfc17('0x4');var _0x51b0c1=_0x31a4dd[_0xfc17('0x5')]?_0x31a4dd[_0xfc17('0x5')]:moment()[_0xfc17('0x6')]('YYYY-MM-DD\x20HH:mm:ss');if(_[_0xfc17('0x7')](_0x31a4dd[_0xfc17('0x8')])){return Promise[_0xfc17('0x9')](_0x51b0c1);}return _0x218bb7[_0x5c309d][_0xfc17('0xa')]({'where':{'id':_0x2ca557}})[_0xfc17('0xb')](function(_0x190a8c){if(_[_0xfc17('0x7')](_0x190a8c)||_[_0xfc17('0x7')](_0x190a8c[_0xfc17('0x8')])){return Promise[_0xfc17('0x9')](_0x51b0c1);}var _0x430e5a=shared[_0xfc17('0xc')];var _0x541b8a=_0x430e5a[_0x190a8c[_0xfc17('0x8')]];var _0x438b0a=_0x430e5a[_0x31a4dd[_0xfc17('0x8')]];if(_[_0xfc17('0x7')](_0x541b8a)&&_[_0xfc17('0x7')](_0x438b0a)){return Promise['resolve'](_0x51b0c1);}var _0x264d8f=_0x541b8a[_0xfc17('0xd')]-_0x438b0a[_0xfc17('0xd')];var _0x226ac6=_0x31a4dd[_0xfc17('0x5')]?_0x31a4dd[_0xfc17('0x5')]:moment();_0x51b0c1=moment(_0x226ac6)['add'](_0x264d8f,_0xfc17('0xe'))[_0xfc17('0x6')](_0xfc17('0xf'));return Promise[_0xfc17('0x9')](_0x51b0c1);});}function getNewHopperPayload(_0x5d4b5d){return{'phone':_0x5d4b5d[_0xfc17('0x10')],'ContactId':_0x5d4b5d['id'],'ListId':_0x5d4b5d[_0xfc17('0x11')],'scheduledat':_0x5d4b5d[_0xfc17('0x5')]?_0x5d4b5d[_0xfc17('0x5')]:moment()[_0xfc17('0x6')](_0xfc17('0xf')),'priority':_0x5d4b5d[_0xfc17('0x12')]?_0x5d4b5d[_0xfc17('0x12')]:0x2,'callback':_0x5d4b5d['callbackUniqueid']?!![]:![],'callbackuniqueid':_0x5d4b5d[_0xfc17('0x13')]?_0x5d4b5d[_0xfc17('0x13')]:undefined,'callbackat':_0x5d4b5d['callbackUniqueid']?moment()['format'](_0xfc17('0xf')):undefined};}function handleAlwaysCheckDuplicate(_0x140adc,_0x54253f,_0x2b304,_0x741623){var _0xa43f01={'phone':_0x2b304[_0xfc17('0x10')]};var _0x278d52={'calleridnum':_0x2b304[_0xfc17('0x10')]};if(_0x741623){Object[_0xfc17('0x14')](_0xa43f01,{'CampaignId':_0x54253f['id']});Object[_0xfc17('0x14')](_0x278d52,{'CampaignId':_0x54253f['id']});}else{Object['assign'](_0xa43f01,{'VoiceQueueId':_0x54253f['id']});Object[_0xfc17('0x14')](_0x278d52,{'VoiceQueueId':_0x54253f['id']});}return _0x140adc[_0xfc17('0x15')][_0xfc17('0xa')]({'where':_0xa43f01})[_0xfc17('0xb')](function(_0x340361){if(_0x340361){throw new Error(_0xfc17('0x16')+_0x2b304[_0xfc17('0x10')]+_0xfc17('0x17')+_0x54253f['id']);}return _0x140adc['CmHopperFinal'][_0xfc17('0xa')]({'where':_0x278d52});})[_0xfc17('0xb')](function(_0x658ed2){if(_0x658ed2){throw new Error(_0xfc17('0x18')+_0x2b304[_0xfc17('0x10')]+_0xfc17('0x17')+_0x54253f['id']);}var _0x2568da=getNewHopperPayload(_0x2b304);if(_0x741623){_0x2568da[_0xfc17('0x19')]=_0x54253f['id'];}else{_0x2568da[_0xfc17('0x1a')]=_0x54253f['id'];}return _0x140adc[_0xfc17('0x15')][_0xfc17('0x1b')](_0x2568da);});}function handleOnlyIfOpenCheckDuplicate(_0x33016e,_0x301f00,_0x216a01,_0x311fad){var _0xf87eb5={'phone':_0x216a01[_0xfc17('0x10')]};if(_0x311fad){Object['assign'](_0xf87eb5,{'CampaignId':_0x301f00['id']});}else{Object[_0xfc17('0x14')](_0xf87eb5,{'VoiceQueueId':_0x301f00['id']});}return _0x33016e['CmHopper'][_0xfc17('0xa')]({'where':_0xf87eb5})[_0xfc17('0xb')](function(_0x545ff7){if(_0x545ff7){throw new Error(_0xfc17('0x1c')+_0x216a01[_0xfc17('0x10')]+_0xfc17('0x17')+_0x301f00['id']);}var _0x41b6e7=getNewHopperPayload(_0x216a01);if(_0x311fad){_0x41b6e7[_0xfc17('0x19')]=_0x301f00['id'];}else{_0x41b6e7[_0xfc17('0x1a')]=_0x301f00['id'];}return _0x33016e[_0xfc17('0x15')][_0xfc17('0x1b')](_0x41b6e7);});}function handleNeverCheckDuplicate(_0xdfdce5,_0x4197b7,_0x558358){var _0x443cfb=getNewHopperPayload(_0x558358);_0x443cfb[_0xfc17('0x1a')]=_0x4197b7['id'];return _0xdfdce5[_0xfc17('0x15')][_0xfc17('0x1b')](_0x443cfb);}function handleCheckDuplicate(_0x2effb9,_0x58864e,_0x131def,_0x27ce61){return getTimezoneCallbackAt(_0x2effb9,_0x58864e,_0x131def,_0x27ce61)[_0xfc17('0xb')](function(_0x22c038){_0x131def[_0xfc17('0x5')]=_0x22c038;switch(_0x58864e[_0xfc17('0x1d')]){case'always':return handleAlwaysCheckDuplicate(_0x2effb9,_0x58864e,_0x131def,_0x27ce61);case _0xfc17('0x1e'):return handleOnlyIfOpenCheckDuplicate(_0x2effb9,_0x58864e,_0x131def,_0x27ce61);default:return handleNeverCheckDuplicate(_0x2effb9,_0x58864e,_0x131def);}});}function createHopperForVoiceQueues(_0x363a0b,_0x457d71){return _0x363a0b[_0xfc17('0x4')]['findAll']({'where':{'type':_0xfc17('0x1f')},'attributes':['id',_0xfc17('0x1d'),_0xfc17('0x8')],'include':[{'model':_0x363a0b[_0xfc17('0x20')],'as':'Lists','where':{'id':_0x457d71[_0xfc17('0x11')]}}],'raw':!![]})['then'](function(_0x316ca6){var _0x1af927=_0x316ca6[_0xfc17('0x21')](function(_0x48221e){return handleCheckDuplicate(_0x363a0b,_0x48221e,_0x457d71,![]);});return Promise['all'](_0x1af927);});}function createHopperForCampaigns(_0x22b070,_0x1614fe){return _0x22b070[_0xfc17('0x3')]['findAll']({'attributes':['id',_0xfc17('0x1d'),'dialTimezone'],'include':[{'model':_0x22b070['CmList'],'as':_0xfc17('0x22'),'where':{'id':_0x1614fe['ListId']}}],'raw':!![]})[_0xfc17('0xb')](function(_0x5511d2){var _0x29426e=_0x5511d2['map'](function(_0x2b846d){return handleCheckDuplicate(_0x22b070,_0x2b846d,_0x1614fe,!![]);});return Promise[_0xfc17('0x23')](_0x29426e);});}function createHopperBlackForVoiceQueues(_0x26eb02,_0x35d484){return _0x26eb02[_0xfc17('0x4')][_0xfc17('0x24')]({'where':{'type':_0xfc17('0x1f')},'attributes':['id'],'include':[{'model':_0x26eb02[_0xfc17('0x20')],'as':'BlackLists','where':{'id':_0x35d484[_0xfc17('0x11')]}}],'raw':!![]})['then'](function(_0x2912a9){var _0x125027=_0x2912a9[_0xfc17('0x21')](function(_0xeb5d07){return _0x26eb02[_0xfc17('0x25')][_0xfc17('0x1b')]({'phone':_0x35d484[_0xfc17('0x10')],'ContactId':_0x35d484['id'],'ListId':_0x35d484[_0xfc17('0x11')],'VoiceQueueId':_0xeb5d07['id']});});return Promise[_0xfc17('0x23')](_0x125027);});}function createHopperBlackForCampaigns(_0x2ab9a0,_0x2b9810){return _0x2ab9a0[_0xfc17('0x3')][_0xfc17('0x24')]({'attributes':['id'],'include':[{'model':_0x2ab9a0[_0xfc17('0x20')],'as':_0xfc17('0x26'),'where':{'id':_0x2b9810[_0xfc17('0x11')]}}],'raw':!![]})[_0xfc17('0xb')](function(_0xeeefc9){var _0x4acd39=_0xeeefc9[_0xfc17('0x21')](function(_0x59f3ec){return _0x2ab9a0[_0xfc17('0x25')][_0xfc17('0x1b')]({'phone':_0x2b9810['phone'],'ContactId':_0x2b9810['id'],'ListId':_0x2b9810[_0xfc17('0x11')],'CampaignId':_0x59f3ec['id']});});return Promise['all'](_0x4acd39);});}module[_0xfc17('0x27')]=function(_0x1567cf){return _0x1567cf['define']('CmContact',attributes,{'tableName':_0xfc17('0x28'),'paranoid':!![],'indexes':[{'name':'phone','fields':[_0xfc17('0x10')]},{'name':_0xfc17('0x29'),'fields':['firstName','lastName',_0xfc17('0x10'),_0xfc17('0x2a'),_0xfc17('0x2b'),'email'],'type':'FULLTEXT'}],'timestamps':!![],'charset':_0xfc17('0x2c'),'collate':_0xfc17('0x2d'),'hooks':{'afterCreate':function(_0x40b8e7,_0x287477,_0xdd4cfe){var _0x1be5ed=_0x1567cf['models'];var _0x55cc0e=_0x40b8e7['get']({'plain':!![]});if(!_0x55cc0e[_0xfc17('0x11')]){logger[_0xfc17('0x2e')](_0xfc17('0x2f')+_0x55cc0e['id']);return _0xdd4cfe();}if(!_0x55cc0e[_0xfc17('0x10')]){return _0xdd4cfe();}return createHopperForVoiceQueues(_0x1be5ed,_0x55cc0e)['then'](function(){return createHopperBlackForVoiceQueues(_0x1be5ed,_0x55cc0e);})[_0xfc17('0xb')](function(){return createHopperForCampaigns(_0x1be5ed,_0x55cc0e);})[_0xfc17('0xb')](function(){return createHopperBlackForCampaigns(_0x1be5ed,_0x55cc0e);})[_0xfc17('0xb')](function(){return _0xdd4cfe();})[_0xfc17('0x30')](function(_0x46e2f5){logger[_0xfc17('0x2e')](_0xfc17('0x31'),_0x46e2f5[_0xfc17('0x32')]);_0xdd4cfe();});},'afterDestroy':function(_0x2aab2c,_0xe8a39e,_0x3f0bea){var _0x494c65=_0x1567cf['models'];var _0x50cff6=_0x2aab2c[_0xfc17('0x33')]({'plain':!![]});return _0x494c65[_0xfc17('0x15')][_0xfc17('0x24')]({'raw':!![],'where':{'ListId':_0x50cff6[_0xfc17('0x11')],'ContactId':_0x50cff6['id']}})[_0xfc17('0xb')](function(_0x2660aa){if(!_[_0xfc17('0x34')](_0x2660aa)){var _0xbeacae=[];for(var _0xe38936=0x0;_0xe38936<_0x2660aa[_0xfc17('0x35')];_0xe38936+=0x1){var _0xf22f06=_0x494c65[_0xfc17('0x15')][_0xfc17('0x36')]({'where':{'ListId':_0x2660aa[_0xe38936]['ListId'],'ContactId':_0x2660aa[_0xe38936]['ContactId'],'VoiceQueueId':_0x2660aa[_0xe38936][_0xfc17('0x1a')],'CampaignId':_0x2660aa[_0xe38936][_0xfc17('0x19')]}});_0xbeacae['push'](_0xf22f06);}return Promise[_0xfc17('0x23')](_0xbeacae);}})[_0xfc17('0xb')](function(_0x3149e2){logger[_0xfc17('0x37')](_0xfc17('0x38'),util[_0xfc17('0x39')](_0x3149e2,{'showHidden':![],'depth':null}));_0x3f0bea();})['catch'](function(_0x27e283){logger[_0xfc17('0x2e')](_0xfc17('0x3a'),util[_0xfc17('0x39')](_0x27e283,{'showHidden':![],'depth':null}));_0x3f0bea(_0x27e283);});}}});};
\ No newline at end of file