4aff78e88c33fd8c7899e953f7449bbde8960029
[motion2.git] / server / api / whatsappQueue / whatsappQueue.controller.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0x1e3e=['util','lodash','squel','../../components/parsers/qs','../../config/logger','../../config/environment','../../mysqldb','redis','defaults','socket.io-emitter','register','sendStatus','status','end','offset','undefined','limit','count','set','Content-Range','json','update','then','destroy','get','UserProfileResource','stack','name','send','map','WhatsappQueue','rawAttributes','type','getOptions','where','include','query','findAll','rows','catch','params','keys','filters','model','attributes','fields','length','includeAll','merge','options','find','create','body','user','role','UserProfileSection','autoAssociation','error','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','describe','getMembers','intersection','nolimit','order','sort','pick','filter','UserWhatsappQueue','findAndCountAll','agent','whatsappPause','createdAt','format','%s/%s','SIP','updatedAt','findOne','Team','getTeams','hasOwnProperty','Agents','online','interface','flatMap','sequelize','transaction','addTeams','each','findOrCreate','forEach','emit','userWhatsappQueue:save','ids','User','field','tq.TeamId','from','team_has_whatsapp_queues','join','user_has_teams','WhatsappQueueId\x20=\x20?','clone','ut.UserId\x20=\x20?','push','SELECT','every','TeamId','all','union','compact','value','removeTeams','isEmpty','removeAgents','addAgents','omit','spread','userWhatsappQueue:remove','getAgents','bluebird'];(function(_0x2db667,_0x193cf5){var _0x83ff9=function(_0x5da022){while(--_0x5da022){_0x2db667['push'](_0x2db667['shift']());}};_0x83ff9(++_0x193cf5);}(_0x1e3e,0x167));var _0xe1e3=function(_0x122ef9,_0x451d2a){_0x122ef9=_0x122ef9-0x0;var _0x42fba0=_0x1e3e[_0x122ef9];return _0x42fba0;};'use strict';var BPromise=require(_0xe1e3('0x0'));var util=require(_0xe1e3('0x1'));var _=require(_0xe1e3('0x2'));var squel=require(_0xe1e3('0x3'));var Redis=require('ioredis');var qs=require(_0xe1e3('0x4'));var logger=require(_0xe1e3('0x5'))('api');var config=require(_0xe1e3('0x6'));var db=require(_0xe1e3('0x7'))['db'];config[_0xe1e3('0x8')]=_[_0xe1e3('0x9')](config[_0xe1e3('0x8')],{'host':'localhost','port':0x18eb});var socket=require(_0xe1e3('0xa'))(new Redis(config['redis']));require('./whatsappQueue.socket')[_0xe1e3('0xb')](socket);function respondWithStatusCode(_0x281be2,_0x5deff3){_0x5deff3=_0x5deff3||0xcc;return function(_0x3690af){if(_0x3690af){return _0x281be2[_0xe1e3('0xc')](_0x5deff3);}return _0x281be2[_0xe1e3('0xd')](_0x5deff3)[_0xe1e3('0xe')]();};}function respondWithResult(_0xfcda9d,_0x268710){_0x268710=_0x268710||0xc8;return function(_0x2f1285){if(_0x2f1285){return _0xfcda9d[_0xe1e3('0xd')](_0x268710)['json'](_0x2f1285);}};}function respondWithFilteredResult(_0x30203a,_0x3d429c){return function(_0x2fd485){if(_0x2fd485){var _0x57f3e7=typeof _0x3d429c[_0xe1e3('0xf')]===_0xe1e3('0x10')&&typeof _0x3d429c[_0xe1e3('0x11')]===_0xe1e3('0x10');var _0x2598c0=_0x2fd485['count'];var _0x749723=_0x57f3e7?0x0:_0x3d429c['offset'];var _0x53c934=_0x57f3e7?_0x2fd485[_0xe1e3('0x12')]:_0x3d429c[_0xe1e3('0xf')]+_0x3d429c[_0xe1e3('0x11')];var _0x11f8c9;if(_0x53c934>=_0x2598c0){_0x53c934=_0x2598c0;_0x11f8c9=0xc8;}else{_0x11f8c9=0xce;}_0x30203a[_0xe1e3('0xd')](_0x11f8c9);return _0x30203a[_0xe1e3('0x13')](_0xe1e3('0x14'),_0x749723+'-'+_0x53c934+'/'+_0x2598c0)[_0xe1e3('0x15')](_0x2fd485);}return null;};}function saveUpdates(_0x8c8573){return function(_0x5b67ec){if(_0x5b67ec){return _0x5b67ec[_0xe1e3('0x16')](_0x8c8573)[_0xe1e3('0x17')](function(_0x579eaf){return _0x579eaf;});}return null;};}function removeEntity(_0xd64ad2){return function(_0xb1bfb){if(_0xb1bfb){return _0xb1bfb[_0xe1e3('0x18')]()[_0xe1e3('0x17')](function(){var _0x1ff125=_0xb1bfb[_0xe1e3('0x19')]({'plain':!![]});var _0x25a716='WhatsappQueues';return db[_0xe1e3('0x1a')][_0xe1e3('0x18')]({'where':{'type':_0x25a716,'resourceId':_0x1ff125['id']}})['then'](function(){return _0xb1bfb;});})['then'](function(){_0xd64ad2[_0xe1e3('0xd')](0xcc)[_0xe1e3('0xe')]();});}};}function handleEntityNotFound(_0x539182){return function(_0x31fc53){if(!_0x31fc53){_0x539182['sendStatus'](0x194);}return _0x31fc53;};}function handleError(_0x4eafa4,_0x1abde8){_0x1abde8=_0x1abde8||0x1f4;return function(_0x3c6073){logger['error'](_0x3c6073[_0xe1e3('0x1b')]);if(_0x3c6073['name']){delete _0x3c6073[_0xe1e3('0x1c')];}_0x4eafa4['status'](_0x1abde8)[_0xe1e3('0x1d')](_0x3c6073);};}exports['index']=function(_0x2d781c,_0x803aa4){var _0x331c1c={};var _0x846c6={'count':0x0,'rows':[]};var _0x4973fd=_[_0xe1e3('0x1e')](db[_0xe1e3('0x1f')][_0xe1e3('0x20')],function(_0x33f8bd){return{'name':_0x33f8bd['fieldName'],'type':_0x33f8bd[_0xe1e3('0x21')]['key']};});_0x331c1c=qs[_0xe1e3('0x22')](_0x4973fd,_0x2d781c);var _0x266c68={'where':_0x331c1c[_0xe1e3('0x23')]};return db[_0xe1e3('0x1f')][_0xe1e3('0x12')](_0x266c68)['then'](function(_0x1507e0){_0x846c6[_0xe1e3('0x12')]=_0x1507e0;_0x331c1c['include']=qs[_0xe1e3('0x24')](_0x2d781c[_0xe1e3('0x25')]);return db['WhatsappQueue'][_0xe1e3('0x26')](_0x331c1c);})['then'](function(_0x272a24){_0x846c6[_0xe1e3('0x27')]=_0x272a24;return _0x846c6;})[_0xe1e3('0x17')](respondWithFilteredResult(_0x803aa4,_0x331c1c))[_0xe1e3('0x28')](handleError(_0x803aa4,null));};exports['show']=function(_0xf28d77,_0x55f53f){var _0x23e3f1={'raw':!![],'where':{'id':_0xf28d77[_0xe1e3('0x29')]['id']}},_0x16cf2e={};_0x16cf2e['model']=_[_0xe1e3('0x2a')](db[_0xe1e3('0x1f')][_0xe1e3('0x20')]);_0x16cf2e['query']=_['keys'](_0xf28d77['query']);_0x16cf2e[_0xe1e3('0x2b')]=_['intersection'](_0x16cf2e[_0xe1e3('0x2c')],_0x16cf2e[_0xe1e3('0x25')]);_0x23e3f1[_0xe1e3('0x2d')]=_['intersection'](_0x16cf2e[_0xe1e3('0x2c')],qs[_0xe1e3('0x2e')](_0xf28d77[_0xe1e3('0x25')][_0xe1e3('0x2e')]));_0x23e3f1[_0xe1e3('0x2d')]=_0x23e3f1['attributes'][_0xe1e3('0x2f')]?_0x23e3f1[_0xe1e3('0x2d')]:_0x16cf2e[_0xe1e3('0x2c')];if(_0xf28d77[_0xe1e3('0x25')][_0xe1e3('0x30')]){_0x23e3f1['include']=[{'all':!![]}];}_0x23e3f1=_[_0xe1e3('0x31')]({},_0x23e3f1,_0xf28d77[_0xe1e3('0x32')]);return db[_0xe1e3('0x1f')][_0xe1e3('0x33')](_0x23e3f1)[_0xe1e3('0x17')](handleEntityNotFound(_0x55f53f,null))[_0xe1e3('0x17')](respondWithResult(_0x55f53f,null))[_0xe1e3('0x28')](handleError(_0x55f53f,null));};exports[_0xe1e3('0x34')]=function(_0x591386,_0x261769){return db[_0xe1e3('0x1f')][_0xe1e3('0x34')](_0x591386[_0xe1e3('0x35')],{})['then'](function(_0x3b4d67){var _0x3b91a9=_0x591386[_0xe1e3('0x36')]['get']({'plain':!![]});if(!_0x3b91a9)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x3b91a9[_0xe1e3('0x37')]===_0xe1e3('0x36')){var _0x2b543e=_0x3b4d67[_0xe1e3('0x19')]({'plain':!![]});var _0x16fb95='WhatsappQueues';return db[_0xe1e3('0x38')][_0xe1e3('0x33')]({'where':{'name':_0x16fb95,'userProfileId':_0x3b91a9['userProfileId']},'raw':!![]})[_0xe1e3('0x17')](function(_0x22b489){if(_0x22b489&&_0x22b489[_0xe1e3('0x39')]===0x0){return db[_0xe1e3('0x1a')][_0xe1e3('0x34')]({'name':_0x2b543e[_0xe1e3('0x1c')],'resourceId':_0x2b543e['id'],'type':_0x22b489['name'],'sectionId':_0x22b489['id']},{})[_0xe1e3('0x17')](function(){return _0x3b4d67;});}else{return _0x3b4d67;}})[_0xe1e3('0x28')](function(_0x28b1b7){logger[_0xe1e3('0x3a')](_0xe1e3('0x3b'),_0x28b1b7);throw _0x28b1b7;});}return _0x3b4d67;})[_0xe1e3('0x17')](respondWithResult(_0x261769,0xc9))['catch'](handleError(_0x261769,null));};exports[_0xe1e3('0x16')]=function(_0x1b44fd,_0x5e2b09){if(_0x1b44fd['body']['id']){delete _0x1b44fd['body']['id'];}return db[_0xe1e3('0x1f')][_0xe1e3('0x33')]({'where':{'id':_0x1b44fd[_0xe1e3('0x29')]['id']}})[_0xe1e3('0x17')](handleEntityNotFound(_0x5e2b09,null))[_0xe1e3('0x17')](saveUpdates(_0x1b44fd[_0xe1e3('0x35')],null))[_0xe1e3('0x17')](respondWithResult(_0x5e2b09,null))['catch'](handleError(_0x5e2b09,null));};exports[_0xe1e3('0x18')]=function(_0x5c4b65,_0x24b18d){return db[_0xe1e3('0x1f')][_0xe1e3('0x33')]({'where':{'id':_0x5c4b65['params']['id']}})[_0xe1e3('0x17')](handleEntityNotFound(_0x24b18d,null))[_0xe1e3('0x17')](removeEntity(_0x24b18d,null))[_0xe1e3('0x28')](handleError(_0x24b18d,null));};exports[_0xe1e3('0x3c')]=function(_0x43e295,_0x3b18cc){return db['WhatsappQueue'][_0xe1e3('0x3c')]()[_0xe1e3('0x17')](respondWithResult(_0x3b18cc,null))['catch'](handleError(_0x3b18cc,null));};exports[_0xe1e3('0x3d')]=function(_0x4f5bfe,_0x1465b1){var _0x33f2f1={'raw':!![],'where':{}},_0x4b45c5={},_0x483bf1;return db[_0xe1e3('0x1f')]['findOne']({'where':{'id':_0x4f5bfe[_0xe1e3('0x29')]['id']}})[_0xe1e3('0x17')](handleEntityNotFound(_0x1465b1,null))['then'](function(_0x1dd30e){if(_0x1dd30e){_0x483bf1=_0x1dd30e[_0xe1e3('0x19')]({'plain':!![]});_0x4b45c5[_0xe1e3('0x2c')]=_[_0xe1e3('0x2a')](db['UserWhatsappQueue'][_0xe1e3('0x20')]);_0x4b45c5['query']=_[_0xe1e3('0x2a')](_0x4f5bfe['query']);_0x4b45c5[_0xe1e3('0x2b')]=_['intersection'](_0x4b45c5[_0xe1e3('0x2c')],_0x4b45c5[_0xe1e3('0x25')]);_0x33f2f1[_0xe1e3('0x2d')]=_[_0xe1e3('0x3e')](_0x4b45c5[_0xe1e3('0x2c')],qs[_0xe1e3('0x2e')](_0x4f5bfe[_0xe1e3('0x25')][_0xe1e3('0x2e')]));_0x33f2f1[_0xe1e3('0x2d')]=_0x33f2f1['attributes'][_0xe1e3('0x2f')]?_0x33f2f1['attributes']:_0x4b45c5[_0xe1e3('0x2c')];if(!_0x4f5bfe[_0xe1e3('0x25')]['hasOwnProperty'](_0xe1e3('0x3f'))){_0x33f2f1[_0xe1e3('0x11')]=qs[_0xe1e3('0x11')](_0x4f5bfe[_0xe1e3('0x25')]['limit']);_0x33f2f1[_0xe1e3('0xf')]=qs[_0xe1e3('0xf')](_0x4f5bfe[_0xe1e3('0x25')][_0xe1e3('0xf')]);}_0x33f2f1[_0xe1e3('0x40')]=qs['sort'](_0x4f5bfe['query'][_0xe1e3('0x41')]);_0x33f2f1[_0xe1e3('0x23')]=qs['filters'](_[_0xe1e3('0x42')](_0x4f5bfe[_0xe1e3('0x25')],_0x4b45c5[_0xe1e3('0x2b')]));_0x33f2f1[_0xe1e3('0x23')]['WhatsappQueueId']=_0x1dd30e['id'];if(_0x4f5bfe[_0xe1e3('0x25')]['filter']){_0x33f2f1[_0xe1e3('0x23')]=_[_0xe1e3('0x31')](_0x33f2f1[_0xe1e3('0x23')],{'$or':_[_0xe1e3('0x1e')](_0x33f2f1['attributes'],function(_0x43bada){var _0x453112={};_0x453112[_0x43bada]={'$like':'%'+_0x4f5bfe['query'][_0xe1e3('0x43')]+'%'};return _0x453112;})});}_0x33f2f1=_[_0xe1e3('0x31')]({},_0x33f2f1,_0x4f5bfe[_0xe1e3('0x32')]);return db[_0xe1e3('0x44')]['findAll'](_0x33f2f1);}})[_0xe1e3('0x17')](function(_0x36f26a){if(_0x36f26a){return db['User'][_0xe1e3('0x45')]({'where':{'id':_[_0xe1e3('0x1e')](_0x36f26a,'UserId'),'role':_0xe1e3('0x46')},'attributes':['id',_0xe1e3('0x1c'),_0xe1e3('0x47'),'updatedAt',_0xe1e3('0x48')]});}})[_0xe1e3('0x17')](function(_0x3ea11b){if(_0x3ea11b){return{'count':_0x3ea11b[_0xe1e3('0x12')],'rows':_[_0xe1e3('0x1e')](_0x3ea11b['rows'],function(_0x248434){return{'membername':_0x248434[_0xe1e3('0x1c')],'UserId':_0x248434['id'],'queue_name':_0x483bf1[_0xe1e3('0x1c')],'WhatsappQueueId':_0x483bf1['id'],'interface':util[_0xe1e3('0x49')](_0xe1e3('0x4a'),_0xe1e3('0x4b'),_0x248434['name']),'penalty':0x0,'paused':_0x248434[_0xe1e3('0x47')],'createdAt':_0x248434[_0xe1e3('0x48')],'updatedAt':_0x248434[_0xe1e3('0x4c')]};})};}else{return{'count':0x0,'rows':[]};}})[_0xe1e3('0x17')](respondWithFilteredResult(_0x1465b1,_0x33f2f1))[_0xe1e3('0x28')](handleError(_0x1465b1,null));};exports['getTeams']=function(_0x53808f,_0x14b81c){var _0x1f422d={};var _0x3ef58b={};var _0x5c7348;var _0x47355a;return db[_0xe1e3('0x1f')][_0xe1e3('0x4d')]({'where':{'id':_0x53808f[_0xe1e3('0x29')]['id']}})[_0xe1e3('0x17')](handleEntityNotFound(_0x14b81c,null))[_0xe1e3('0x17')](function(_0x5a51ab){if(_0x5a51ab){_0x5c7348=_0x5a51ab;_0x3ef58b[_0xe1e3('0x2c')]=_[_0xe1e3('0x2a')](db[_0xe1e3('0x4e')][_0xe1e3('0x20')]);_0x3ef58b['query']=_['keys'](_0x53808f[_0xe1e3('0x25')]);_0x3ef58b[_0xe1e3('0x2b')]=_[_0xe1e3('0x3e')](_0x3ef58b[_0xe1e3('0x2c')],_0x3ef58b[_0xe1e3('0x25')]);_0x1f422d[_0xe1e3('0x2d')]=_['intersection'](_0x3ef58b[_0xe1e3('0x2c')],qs[_0xe1e3('0x2e')](_0x53808f[_0xe1e3('0x25')][_0xe1e3('0x2e')]));_0x1f422d[_0xe1e3('0x2d')]=_0x1f422d[_0xe1e3('0x2d')][_0xe1e3('0x2f')]?_0x1f422d[_0xe1e3('0x2d')]:_0x3ef58b[_0xe1e3('0x2c')];_0x1f422d[_0xe1e3('0x40')]=qs[_0xe1e3('0x41')](_0x53808f[_0xe1e3('0x25')][_0xe1e3('0x41')]);_0x1f422d[_0xe1e3('0x23')]=qs[_0xe1e3('0x2b')](_[_0xe1e3('0x42')](_0x53808f['query'],_0x3ef58b['filters']));if(_0x53808f[_0xe1e3('0x25')][_0xe1e3('0x43')]){_0x1f422d[_0xe1e3('0x23')]=_['merge'](_0x1f422d[_0xe1e3('0x23')],{'$or':_[_0xe1e3('0x1e')](_0x1f422d[_0xe1e3('0x2d')],function(_0x2da465){var _0x555fa2={};_0x555fa2[_0x2da465]={'$like':'%'+_0x53808f[_0xe1e3('0x25')]['filter']+'%'};return _0x555fa2;})});}_0x1f422d=_[_0xe1e3('0x31')]({},_0x1f422d,_0x53808f[_0xe1e3('0x32')]);return _0x5c7348[_0xe1e3('0x4f')](_0x1f422d);}})[_0xe1e3('0x17')](function(_0xcd15ba){if(_0xcd15ba){_0x47355a=_0xcd15ba['length'];if(!_0x53808f[_0xe1e3('0x25')][_0xe1e3('0x50')](_0xe1e3('0x3f'))){_0x1f422d['limit']=qs[_0xe1e3('0x11')](_0x53808f['query'][_0xe1e3('0x11')]);_0x1f422d['offset']=qs[_0xe1e3('0xf')](_0x53808f[_0xe1e3('0x25')][_0xe1e3('0xf')]);}return _0x5c7348[_0xe1e3('0x4f')](_0x1f422d);}})[_0xe1e3('0x17')](function(_0x29259d){if(_0x29259d){return _0x29259d?{'count':_0x47355a,'rows':_0x29259d}:null;}})['then'](respondWithResult(_0x14b81c,null))[_0xe1e3('0x28')](handleError(_0x14b81c,null));};exports['addTeams']=function(_0x54de9f,_0x3d1300){var _0x2a4d0e=_0x54de9f[_0xe1e3('0x35')]['ids'];return db[_0xe1e3('0x4e')][_0xe1e3('0x26')]({'where':{'id':_0x2a4d0e},'attributes':['id'],'include':[{'model':db['User'],'as':_0xe1e3('0x51'),'attributes':['id',_0xe1e3('0x1c'),_0xe1e3('0x52'),'voicePause',_0xe1e3('0x53')],'raw':!![]}]})[_0xe1e3('0x17')](function(_0x469e67){if(_0x469e67){var _0x32db70=_[_0xe1e3('0x54')](_0x469e67,function(_0x34e91c){var _0x4eb609=_0x34e91c[_0xe1e3('0x19')]({'plain':!![]});return _0x4eb609['Agents'];});return db[_0xe1e3('0x1f')][_0xe1e3('0x33')]({'where':{'id':_0x54de9f['params']['id']}})[_0xe1e3('0x17')](function(_0x555e2f){return db[_0xe1e3('0x55')][_0xe1e3('0x56')](function(_0x1b3988){return _0x555e2f[_0xe1e3('0x57')](_0x2a4d0e,{'transaction':_0x1b3988})[_0xe1e3('0x17')](function(){return BPromise[_0xe1e3('0x58')](_0x32db70,function(_0x262cd4){return db[_0xe1e3('0x44')][_0xe1e3('0x59')]({'where':{'UserId':_0x262cd4['id'],'WhatsappQueueId':_0x54de9f['params']['id']},'transaction':_0x1b3988});});})[_0xe1e3('0x17')](function(){_0x32db70[_0xe1e3('0x5a')](function(_0x38e98d){socket[_0xe1e3('0x5b')](_0xe1e3('0x5c'),{'UserId':_0x38e98d['id'],'WhatsappQueueId':_0x555e2f['id']});});});});});}})[_0xe1e3('0x17')](respondWithStatusCode(_0x3d1300,null))['catch'](handleError(_0x3d1300,null));};exports['removeTeams']=function(_0x441b3c,_0x202023){return db[_0xe1e3('0x4e')][_0xe1e3('0x26')]({'where':{'id':_0x441b3c[_0xe1e3('0x25')][_0xe1e3('0x5d')]},'attributes':['id'],'include':[{'model':db[_0xe1e3('0x5e')],'as':_0xe1e3('0x51'),'attributes':['id'],'raw':!![]}]})[_0xe1e3('0x17')](handleEntityNotFound(_0x202023,null))['then'](function(_0x293a99){var _0x4aafe2=_[_0xe1e3('0x1e')](_0x293a99,'id');var _0x44c633=[];var _0x16274e=[];var _0x3926de=squel['select']();_0x3926de[_0xe1e3('0x5f')](_0xe1e3('0x60'))[_0xe1e3('0x61')](_0xe1e3('0x62'),'tq')[_0xe1e3('0x63')](_0xe1e3('0x64'),'ut','ut.TeamId\x20=\x20tq.TeamId')[_0xe1e3('0x23')](_0xe1e3('0x65'),_0x441b3c[_0xe1e3('0x29')]['id']);for(var _0xf64177=0x0;_0xf64177<_0x293a99[_0xe1e3('0x2f')];_0xf64177+=0x1){let _0x4b3288=_0x293a99[_0xf64177];for(var _0x17fe3d=0x0;_0x17fe3d<_0x4b3288[_0xe1e3('0x51')][_0xe1e3('0x2f')];_0x17fe3d+=0x1){let _0x554e57=_0x4b3288[_0xe1e3('0x51')][_0x17fe3d];var _0x34324d=_0x3926de[_0xe1e3('0x66')]();_0x34324d[_0xe1e3('0x23')](_0xe1e3('0x67'),_0x554e57['id']);_0x16274e[_0xe1e3('0x68')](db[_0xe1e3('0x55')][_0xe1e3('0x25')](_0x34324d['toString'](),{'type':db[_0xe1e3('0x55')]['QueryTypes'][_0xe1e3('0x69')]})[_0xe1e3('0x17')](function(_0x5a7960){if(_0x5a7960[_0xe1e3('0x2f')]===0x1){return _0x554e57['id'];}else{var _0x5aaa9c=_[_0xe1e3('0x6a')](_['map'](_0x5a7960,_0xe1e3('0x6b')),function(_0x559d5b){return _['includes'](_0x4aafe2,_0x559d5b);});if(_0x5aaa9c){return _0x554e57['id'];}}}));}}return BPromise[_0xe1e3('0x6c')](_0x16274e)[_0xe1e3('0x17')](function(_0x1bc617){_0x44c633=_(_0x44c633)[_0xe1e3('0x6d')](_0x1bc617)[_0xe1e3('0x6e')]()[_0xe1e3('0x6f')]();return db[_0xe1e3('0x1f')][_0xe1e3('0x33')]({'where':{'id':_0x441b3c[_0xe1e3('0x29')]['id']}})[_0xe1e3('0x17')](function(_0x5570bc){return db[_0xe1e3('0x55')]['transaction'](function(_0x2934d3){return _0x5570bc[_0xe1e3('0x70')](_0x441b3c[_0xe1e3('0x25')][_0xe1e3('0x5d')],{'transaction':_0x2934d3})[_0xe1e3('0x17')](function(){if(!_[_0xe1e3('0x71')](_0x44c633)){return _0x5570bc[_0xe1e3('0x72')](_0x44c633,{'transaction':_0x2934d3});}})[_0xe1e3('0x17')](function(){_0x44c633[_0xe1e3('0x5a')](function(_0x121806){socket['emit']('userWhatsappQueue:remove',{'UserId':_0x121806,'WhatsappQueueId':_0x5570bc['id']});});});});});});})[_0xe1e3('0x17')](respondWithStatusCode(_0x202023,null))[_0xe1e3('0x28')](handleError(_0x202023,null));};exports[_0xe1e3('0x73')]=function(_0x789139,_0x2b0173){return db['WhatsappQueue'][_0xe1e3('0x33')]({'where':{'id':_0x789139[_0xe1e3('0x29')]['id']}})[_0xe1e3('0x17')](handleEntityNotFound(_0x2b0173,null))[_0xe1e3('0x17')](function(_0x83854e){if(_0x83854e){return _0x83854e[_0xe1e3('0x73')](_0x789139['body'][_0xe1e3('0x5d')],_[_0xe1e3('0x74')](_0x789139[_0xe1e3('0x35')],[_0xe1e3('0x5d'),'id'])||{})[_0xe1e3('0x75')](function(_0x148385){for(var _0x501488=0x0;_0x501488<_0x789139[_0xe1e3('0x35')][_0xe1e3('0x5d')][_0xe1e3('0x2f')];_0x501488+=0x1){socket['emit'](_0xe1e3('0x5c'),{'UserId':Number(_0x789139[_0xe1e3('0x35')]['ids'][_0x501488]),'WhatsappQueueId':Number(_0x789139[_0xe1e3('0x29')]['id'])});}return _0x148385;});}})['then'](respondWithResult(_0x2b0173,null))[_0xe1e3('0x28')](handleError(_0x2b0173,null));};exports[_0xe1e3('0x72')]=function(_0x330ca4,_0x4efd06){return db[_0xe1e3('0x1f')][_0xe1e3('0x33')]({'where':{'id':_0x330ca4[_0xe1e3('0x29')]['id']}})[_0xe1e3('0x17')](handleEntityNotFound(_0x4efd06,null))[_0xe1e3('0x17')](function(_0x5c6f4e){if(_0x5c6f4e){return _0x5c6f4e['removeAgents'](_0x330ca4[_0xe1e3('0x25')][_0xe1e3('0x5d')])[_0xe1e3('0x17')](function(){if(_['isArray'](_0x330ca4[_0xe1e3('0x25')][_0xe1e3('0x5d')])){for(var _0x44c268=0x0;_0x44c268<_0x330ca4[_0xe1e3('0x25')][_0xe1e3('0x5d')][_0xe1e3('0x2f')];_0x44c268+=0x1){socket['emit'](_0xe1e3('0x76'),{'UserId':Number(_0x330ca4[_0xe1e3('0x25')][_0xe1e3('0x5d')][_0x44c268]),'WhatsappQueueId':Number(_0x330ca4[_0xe1e3('0x29')]['id'])});}}else{socket['emit'](_0xe1e3('0x76'),{'UserId':Number(_0x330ca4[_0xe1e3('0x25')][_0xe1e3('0x5d')]),'WhatsappQueueId':Number(_0x330ca4[_0xe1e3('0x29')]['id'])});}});}})['then'](respondWithStatusCode(_0x4efd06,null))['catch'](handleError(_0x4efd06,null));};exports[_0xe1e3('0x77')]=function(_0x1a62df,_0x19c350){var _0x1947f7={};var _0x114775={};var _0x4cf3a3;var _0x543c6f;return db[_0xe1e3('0x1f')]['findOne']({'where':{'id':_0x1a62df[_0xe1e3('0x29')]['id']}})[_0xe1e3('0x17')](handleEntityNotFound(_0x19c350,null))[_0xe1e3('0x17')](function(_0x34161e){if(_0x34161e){_0x4cf3a3=_0x34161e;_0x114775[_0xe1e3('0x2c')]=_[_0xe1e3('0x2a')](db[_0xe1e3('0x5e')]['rawAttributes']);_0x114775[_0xe1e3('0x25')]=_[_0xe1e3('0x2a')](_0x1a62df[_0xe1e3('0x25')]);_0x114775[_0xe1e3('0x2b')]=_[_0xe1e3('0x3e')](_0x114775['model'],_0x114775[_0xe1e3('0x25')]);_0x1947f7[_0xe1e3('0x2d')]=_['intersection'](_0x114775[_0xe1e3('0x2c')],qs['fields'](_0x1a62df[_0xe1e3('0x25')]['fields']));_0x1947f7[_0xe1e3('0x2d')]=_0x1947f7['attributes'][_0xe1e3('0x2f')]?_0x1947f7['attributes']:_0x114775['model'];_0x1947f7[_0xe1e3('0x40')]=qs[_0xe1e3('0x41')](_0x1a62df[_0xe1e3('0x25')][_0xe1e3('0x41')]);_0x1947f7[_0xe1e3('0x23')]=qs[_0xe1e3('0x2b')](_[_0xe1e3('0x42')](_0x1a62df['query'],_0x114775[_0xe1e3('0x2b')]));if(_0x1a62df[_0xe1e3('0x25')][_0xe1e3('0x43')]){_0x1947f7[_0xe1e3('0x23')]=_[_0xe1e3('0x31')](_0x1947f7[_0xe1e3('0x23')],{'$or':_[_0xe1e3('0x1e')](_0x1947f7[_0xe1e3('0x2d')],function(_0x52bd59){var _0xed40f7={};_0xed40f7[_0x52bd59]={'$like':'%'+_0x1a62df['query'][_0xe1e3('0x43')]+'%'};return _0xed40f7;})});}_0x1947f7=_[_0xe1e3('0x31')]({},_0x1947f7,_0x1a62df[_0xe1e3('0x32')]);return _0x4cf3a3[_0xe1e3('0x77')](_0x1947f7);}})[_0xe1e3('0x17')](function(_0x147114){if(_0x147114){_0x543c6f=_0x147114[_0xe1e3('0x2f')];if(!_0x1a62df['query'][_0xe1e3('0x50')]('nolimit')){_0x1947f7[_0xe1e3('0x11')]=qs['limit'](_0x1a62df[_0xe1e3('0x25')][_0xe1e3('0x11')]);_0x1947f7[_0xe1e3('0xf')]=qs[_0xe1e3('0xf')](_0x1a62df[_0xe1e3('0x25')][_0xe1e3('0xf')]);}return _0x4cf3a3[_0xe1e3('0x77')](_0x1947f7);}})[_0xe1e3('0x17')](function(_0x1390ef){if(_0x1390ef){return _0x1390ef?{'count':_0x543c6f,'rows':_0x1390ef}:null;}})[_0xe1e3('0x17')](respondWithResult(_0x19c350,null))[_0xe1e3('0x28')](handleError(_0x19c350,null));};