a0e34ae9264b6ddbe5807be8e9c50da49f52cb43
[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 _0x2774=['removeAgents','emit','userWhatsappQueue:remove','omit','isArray','getAgents','bluebird','util','lodash','squel','ioredis','../../components/parsers/qs','../../config/logger','../../config/environment','../../mysqldb','redis','defaults','localhost','./whatsappQueue.socket','register','status','end','json','offset','undefined','limit','count','Content-Range','update','then','destroy','get','WhatsappQueues','error','name','send','map','WhatsappQueue','fieldName','type','getOptions','where','include','query','findAll','rows','catch','show','params','model','keys','filters','intersection','attributes','length','includeAll','merge','options','create','body','user','role','UserProfileSection','find','autoAssociation','describe','getMembers','findOne','UserWhatsappQueue','rawAttributes','fields','nolimit','order','sort','pick','WhatsappQueueId','findAndCountAll','agent','whatsappPause','createdAt','format','%s/%s','SIP','getTeams','Team','filter','hasOwnProperty','ids','User','Agents','online','voicePause','flatMap','sequelize','transaction','findOrCreate','forEach','userWhatsappQueue:save','removeTeams','select','field','join','ut.TeamId\x20=\x20tq.TeamId','ut.UserId\x20=\x20?','push','toString','QueryTypes','SELECT','TeamId','includes','compact','value','isEmpty'];(function(_0x4a281d,_0x27cde8){var _0x3033e7=function(_0x25ba1f){while(--_0x25ba1f){_0x4a281d['push'](_0x4a281d['shift']());}};_0x3033e7(++_0x27cde8);}(_0x2774,0x1ca));var _0x4277=function(_0x1ccfe3,_0x52cab5){_0x1ccfe3=_0x1ccfe3-0x0;var _0x4216cb=_0x2774[_0x1ccfe3];return _0x4216cb;};'use strict';var BPromise=require(_0x4277('0x0'));var util=require(_0x4277('0x1'));var _=require(_0x4277('0x2'));var squel=require(_0x4277('0x3'));var Redis=require(_0x4277('0x4'));var qs=require(_0x4277('0x5'));var logger=require(_0x4277('0x6'))('api');var config=require(_0x4277('0x7'));var db=require(_0x4277('0x8'))['db'];config[_0x4277('0x9')]=_[_0x4277('0xa')](config[_0x4277('0x9')],{'host':_0x4277('0xb'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x4277('0x9')]));require(_0x4277('0xc'))[_0x4277('0xd')](socket);function respondWithStatusCode(_0x4bd5c4,_0x46386a){_0x46386a=_0x46386a||0xcc;return function(_0x4c0d14){if(_0x4c0d14){return _0x4bd5c4['sendStatus'](_0x46386a);}return _0x4bd5c4[_0x4277('0xe')](_0x46386a)[_0x4277('0xf')]();};}function respondWithResult(_0x283bf7,_0xe38950){_0xe38950=_0xe38950||0xc8;return function(_0x59ae0c){if(_0x59ae0c){return _0x283bf7[_0x4277('0xe')](_0xe38950)[_0x4277('0x10')](_0x59ae0c);}};}function respondWithFilteredResult(_0x1db8ff,_0x38f371){return function(_0x2e5412){if(_0x2e5412){var _0x283cf5=typeof _0x38f371[_0x4277('0x11')]===_0x4277('0x12')&&typeof _0x38f371[_0x4277('0x13')]===_0x4277('0x12');var _0x481093=_0x2e5412[_0x4277('0x14')];var _0x2e8b13=_0x283cf5?0x0:_0x38f371['offset'];var _0x44a3c1=_0x283cf5?_0x2e5412[_0x4277('0x14')]:_0x38f371[_0x4277('0x11')]+_0x38f371['limit'];var _0xf8e51f;if(_0x44a3c1>=_0x481093){_0x44a3c1=_0x481093;_0xf8e51f=0xc8;}else{_0xf8e51f=0xce;}_0x1db8ff[_0x4277('0xe')](_0xf8e51f);return _0x1db8ff['set'](_0x4277('0x15'),_0x2e8b13+'-'+_0x44a3c1+'/'+_0x481093)[_0x4277('0x10')](_0x2e5412);}return null;};}function saveUpdates(_0x560047){return function(_0x350aa3){if(_0x350aa3){return _0x350aa3[_0x4277('0x16')](_0x560047)[_0x4277('0x17')](function(_0x288c18){return _0x288c18;});}return null;};}function removeEntity(_0x2e90d1){return function(_0x6e428e){if(_0x6e428e){return _0x6e428e[_0x4277('0x18')]()[_0x4277('0x17')](function(){var _0x607d2a=_0x6e428e[_0x4277('0x19')]({'plain':!![]});var _0x3cf594=_0x4277('0x1a');return db['UserProfileResource'][_0x4277('0x18')]({'where':{'type':_0x3cf594,'resourceId':_0x607d2a['id']}})[_0x4277('0x17')](function(){return _0x6e428e;});})[_0x4277('0x17')](function(){_0x2e90d1[_0x4277('0xe')](0xcc)[_0x4277('0xf')]();});}};}function handleEntityNotFound(_0x16ddf2){return function(_0x53b61c){if(!_0x53b61c){_0x16ddf2['sendStatus'](0x194);}return _0x53b61c;};}function handleError(_0xe83705,_0x19c3b4){_0x19c3b4=_0x19c3b4||0x1f4;return function(_0x330393){logger[_0x4277('0x1b')](_0x330393['stack']);if(_0x330393[_0x4277('0x1c')]){delete _0x330393[_0x4277('0x1c')];}_0xe83705[_0x4277('0xe')](_0x19c3b4)[_0x4277('0x1d')](_0x330393);};}exports['index']=function(_0x24c52e,_0x447a2c){var _0x522a1={};var _0x3bba01={'count':0x0,'rows':[]};var _0x4f8ecb=_[_0x4277('0x1e')](db[_0x4277('0x1f')]['rawAttributes'],function(_0x4b23bc){return{'name':_0x4b23bc[_0x4277('0x20')],'type':_0x4b23bc[_0x4277('0x21')]['key']};});_0x522a1=qs[_0x4277('0x22')](_0x4f8ecb,_0x24c52e);var _0x56092b={'where':_0x522a1[_0x4277('0x23')]};return db['WhatsappQueue'][_0x4277('0x14')](_0x56092b)[_0x4277('0x17')](function(_0x765f94){_0x3bba01['count']=_0x765f94;_0x522a1[_0x4277('0x24')]=qs[_0x4277('0x24')](_0x24c52e[_0x4277('0x25')]);return db[_0x4277('0x1f')][_0x4277('0x26')](_0x522a1);})[_0x4277('0x17')](function(_0x2e0ff2){_0x3bba01[_0x4277('0x27')]=_0x2e0ff2;return _0x3bba01;})[_0x4277('0x17')](respondWithFilteredResult(_0x447a2c,_0x522a1))[_0x4277('0x28')](handleError(_0x447a2c,null));};exports[_0x4277('0x29')]=function(_0x2e1a96,_0x61693c){var _0x199626={'raw':!![],'where':{'id':_0x2e1a96[_0x4277('0x2a')]['id']}},_0x1c73d9={};_0x1c73d9[_0x4277('0x2b')]=_[_0x4277('0x2c')](db[_0x4277('0x1f')]['rawAttributes']);_0x1c73d9['query']=_['keys'](_0x2e1a96[_0x4277('0x25')]);_0x1c73d9[_0x4277('0x2d')]=_[_0x4277('0x2e')](_0x1c73d9['model'],_0x1c73d9['query']);_0x199626[_0x4277('0x2f')]=_[_0x4277('0x2e')](_0x1c73d9[_0x4277('0x2b')],qs['fields'](_0x2e1a96['query']['fields']));_0x199626[_0x4277('0x2f')]=_0x199626[_0x4277('0x2f')][_0x4277('0x30')]?_0x199626[_0x4277('0x2f')]:_0x1c73d9[_0x4277('0x2b')];if(_0x2e1a96[_0x4277('0x25')][_0x4277('0x31')]){_0x199626['include']=[{'all':!![]}];}_0x199626=_[_0x4277('0x32')]({},_0x199626,_0x2e1a96[_0x4277('0x33')]);return db['WhatsappQueue']['find'](_0x199626)[_0x4277('0x17')](handleEntityNotFound(_0x61693c,null))[_0x4277('0x17')](respondWithResult(_0x61693c,null))[_0x4277('0x28')](handleError(_0x61693c,null));};exports['create']=function(_0x10c33c,_0x12e798){return db[_0x4277('0x1f')][_0x4277('0x34')](_0x10c33c[_0x4277('0x35')],{})[_0x4277('0x17')](function(_0x311832){var _0x2d3997=_0x10c33c[_0x4277('0x36')][_0x4277('0x19')]({'plain':!![]});if(!_0x2d3997)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x2d3997[_0x4277('0x37')]==='user'){var _0x411b9e=_0x311832[_0x4277('0x19')]({'plain':!![]});var _0xe5f603='WhatsappQueues';return db[_0x4277('0x38')][_0x4277('0x39')]({'where':{'name':_0xe5f603,'userProfileId':_0x2d3997['userProfileId']},'raw':!![]})[_0x4277('0x17')](function(_0x3db2b7){if(_0x3db2b7&&_0x3db2b7[_0x4277('0x3a')]===0x0){return db['UserProfileResource']['create']({'name':_0x411b9e[_0x4277('0x1c')],'resourceId':_0x411b9e['id'],'type':_0x3db2b7[_0x4277('0x1c')],'sectionId':_0x3db2b7['id']},{})[_0x4277('0x17')](function(){return _0x311832;});}else{return _0x311832;}})[_0x4277('0x28')](function(_0x159cba){logger[_0x4277('0x1b')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x159cba);throw _0x159cba;});}return _0x311832;})[_0x4277('0x17')](respondWithResult(_0x12e798,0xc9))['catch'](handleError(_0x12e798,null));};exports[_0x4277('0x16')]=function(_0x90f169,_0x2edf7a){if(_0x90f169['body']['id']){delete _0x90f169[_0x4277('0x35')]['id'];}return db[_0x4277('0x1f')]['find']({'where':{'id':_0x90f169[_0x4277('0x2a')]['id']}})[_0x4277('0x17')](handleEntityNotFound(_0x2edf7a,null))[_0x4277('0x17')](saveUpdates(_0x90f169[_0x4277('0x35')],null))[_0x4277('0x17')](respondWithResult(_0x2edf7a,null))[_0x4277('0x28')](handleError(_0x2edf7a,null));};exports[_0x4277('0x18')]=function(_0x474e51,_0x268103){return db[_0x4277('0x1f')][_0x4277('0x39')]({'where':{'id':_0x474e51[_0x4277('0x2a')]['id']}})['then'](handleEntityNotFound(_0x268103,null))[_0x4277('0x17')](removeEntity(_0x268103,null))[_0x4277('0x28')](handleError(_0x268103,null));};exports[_0x4277('0x3b')]=function(_0x47ba18,_0x17f4f7){return db[_0x4277('0x1f')][_0x4277('0x3b')]()['then'](respondWithResult(_0x17f4f7,null))[_0x4277('0x28')](handleError(_0x17f4f7,null));};exports[_0x4277('0x3c')]=function(_0x1c3f89,_0x2cb20a){var _0x4e0282={'raw':!![],'where':{}},_0x450dec={},_0x55910e;return db['WhatsappQueue'][_0x4277('0x3d')]({'where':{'id':_0x1c3f89[_0x4277('0x2a')]['id']}})[_0x4277('0x17')](handleEntityNotFound(_0x2cb20a,null))[_0x4277('0x17')](function(_0x1c1c23){if(_0x1c1c23){_0x55910e=_0x1c1c23[_0x4277('0x19')]({'plain':!![]});_0x450dec[_0x4277('0x2b')]=_[_0x4277('0x2c')](db[_0x4277('0x3e')][_0x4277('0x3f')]);_0x450dec[_0x4277('0x25')]=_['keys'](_0x1c3f89[_0x4277('0x25')]);_0x450dec[_0x4277('0x2d')]=_['intersection'](_0x450dec[_0x4277('0x2b')],_0x450dec[_0x4277('0x25')]);_0x4e0282[_0x4277('0x2f')]=_[_0x4277('0x2e')](_0x450dec[_0x4277('0x2b')],qs[_0x4277('0x40')](_0x1c3f89[_0x4277('0x25')][_0x4277('0x40')]));_0x4e0282[_0x4277('0x2f')]=_0x4e0282[_0x4277('0x2f')][_0x4277('0x30')]?_0x4e0282['attributes']:_0x450dec[_0x4277('0x2b')];if(!_0x1c3f89[_0x4277('0x25')]['hasOwnProperty'](_0x4277('0x41'))){_0x4e0282['limit']=qs[_0x4277('0x13')](_0x1c3f89[_0x4277('0x25')]['limit']);_0x4e0282[_0x4277('0x11')]=qs[_0x4277('0x11')](_0x1c3f89[_0x4277('0x25')][_0x4277('0x11')]);}_0x4e0282[_0x4277('0x42')]=qs[_0x4277('0x43')](_0x1c3f89[_0x4277('0x25')][_0x4277('0x43')]);_0x4e0282[_0x4277('0x23')]=qs[_0x4277('0x2d')](_[_0x4277('0x44')](_0x1c3f89[_0x4277('0x25')],_0x450dec[_0x4277('0x2d')]));_0x4e0282[_0x4277('0x23')][_0x4277('0x45')]=_0x1c1c23['id'];if(_0x1c3f89[_0x4277('0x25')]['filter']){_0x4e0282[_0x4277('0x23')]=_['merge'](_0x4e0282[_0x4277('0x23')],{'$or':_[_0x4277('0x1e')](_0x4e0282['attributes'],function(_0x3f1e23){var _0x325d79={};_0x325d79[_0x3f1e23]={'$like':'%'+_0x1c3f89[_0x4277('0x25')]['filter']+'%'};return _0x325d79;})});}_0x4e0282=_[_0x4277('0x32')]({},_0x4e0282,_0x1c3f89[_0x4277('0x33')]);return db[_0x4277('0x3e')][_0x4277('0x26')](_0x4e0282);}})[_0x4277('0x17')](function(_0x26bbac){if(_0x26bbac){return db['User'][_0x4277('0x46')]({'where':{'id':_[_0x4277('0x1e')](_0x26bbac,'UserId'),'role':_0x4277('0x47')},'attributes':['id',_0x4277('0x1c'),_0x4277('0x48'),'updatedAt',_0x4277('0x49')]});}})[_0x4277('0x17')](function(_0x53fec4){if(_0x53fec4){return{'count':_0x53fec4[_0x4277('0x14')],'rows':_[_0x4277('0x1e')](_0x53fec4[_0x4277('0x27')],function(_0x561626){return{'membername':_0x561626[_0x4277('0x1c')],'UserId':_0x561626['id'],'queue_name':_0x55910e['name'],'WhatsappQueueId':_0x55910e['id'],'interface':util[_0x4277('0x4a')](_0x4277('0x4b'),_0x4277('0x4c'),_0x561626[_0x4277('0x1c')]),'penalty':0x0,'paused':_0x561626[_0x4277('0x48')],'createdAt':_0x561626[_0x4277('0x49')],'updatedAt':_0x561626['updatedAt']};})};}else{return{'count':0x0,'rows':[]};}})[_0x4277('0x17')](respondWithFilteredResult(_0x2cb20a,_0x4e0282))[_0x4277('0x28')](handleError(_0x2cb20a,null));};exports[_0x4277('0x4d')]=function(_0x4ca80e,_0x200b75){var _0x526f44={};var _0x8eb15d={};var _0x15f50a;var _0x1598a6;return db[_0x4277('0x1f')][_0x4277('0x3d')]({'where':{'id':_0x4ca80e[_0x4277('0x2a')]['id']}})['then'](handleEntityNotFound(_0x200b75,null))[_0x4277('0x17')](function(_0x197cea){if(_0x197cea){_0x15f50a=_0x197cea;_0x8eb15d[_0x4277('0x2b')]=_[_0x4277('0x2c')](db[_0x4277('0x4e')][_0x4277('0x3f')]);_0x8eb15d['query']=_[_0x4277('0x2c')](_0x4ca80e['query']);_0x8eb15d[_0x4277('0x2d')]=_[_0x4277('0x2e')](_0x8eb15d[_0x4277('0x2b')],_0x8eb15d[_0x4277('0x25')]);_0x526f44['attributes']=_[_0x4277('0x2e')](_0x8eb15d[_0x4277('0x2b')],qs['fields'](_0x4ca80e[_0x4277('0x25')][_0x4277('0x40')]));_0x526f44[_0x4277('0x2f')]=_0x526f44[_0x4277('0x2f')][_0x4277('0x30')]?_0x526f44[_0x4277('0x2f')]:_0x8eb15d['model'];_0x526f44[_0x4277('0x42')]=qs[_0x4277('0x43')](_0x4ca80e[_0x4277('0x25')][_0x4277('0x43')]);_0x526f44[_0x4277('0x23')]=qs[_0x4277('0x2d')](_[_0x4277('0x44')](_0x4ca80e['query'],_0x8eb15d['filters']));if(_0x4ca80e[_0x4277('0x25')][_0x4277('0x4f')]){_0x526f44[_0x4277('0x23')]=_[_0x4277('0x32')](_0x526f44[_0x4277('0x23')],{'$or':_[_0x4277('0x1e')](_0x526f44[_0x4277('0x2f')],function(_0x8cad5f){var _0x5d2572={};_0x5d2572[_0x8cad5f]={'$like':'%'+_0x4ca80e['query'][_0x4277('0x4f')]+'%'};return _0x5d2572;})});}_0x526f44=_[_0x4277('0x32')]({},_0x526f44,_0x4ca80e['options']);return _0x15f50a[_0x4277('0x4d')](_0x526f44);}})[_0x4277('0x17')](function(_0x5ee1a4){if(_0x5ee1a4){_0x1598a6=_0x5ee1a4[_0x4277('0x30')];if(!_0x4ca80e[_0x4277('0x25')][_0x4277('0x50')]('nolimit')){_0x526f44['limit']=qs[_0x4277('0x13')](_0x4ca80e[_0x4277('0x25')][_0x4277('0x13')]);_0x526f44[_0x4277('0x11')]=qs[_0x4277('0x11')](_0x4ca80e['query'][_0x4277('0x11')]);}return _0x15f50a[_0x4277('0x4d')](_0x526f44);}})['then'](function(_0x4106a9){if(_0x4106a9){return _0x4106a9?{'count':_0x1598a6,'rows':_0x4106a9}:null;}})['then'](respondWithResult(_0x200b75,null))[_0x4277('0x28')](handleError(_0x200b75,null));};exports['addTeams']=function(_0x298628,_0x31291c){var _0x3de804=_0x298628[_0x4277('0x35')][_0x4277('0x51')];return db['Team'][_0x4277('0x26')]({'where':{'id':_0x3de804},'attributes':['id'],'include':[{'model':db[_0x4277('0x52')],'as':_0x4277('0x53'),'attributes':['id','name',_0x4277('0x54'),_0x4277('0x55'),'interface'],'raw':!![]}]})[_0x4277('0x17')](function(_0x561c15){if(_0x561c15){var _0x58b99f=_[_0x4277('0x56')](_0x561c15,function(_0x130cd8){var _0x57cb82=_0x130cd8[_0x4277('0x19')]({'plain':!![]});return _0x57cb82[_0x4277('0x53')];});return db[_0x4277('0x1f')]['find']({'where':{'id':_0x298628[_0x4277('0x2a')]['id']}})['then'](function(_0x1c4125){return db[_0x4277('0x57')][_0x4277('0x58')](function(_0x4db6d2){return _0x1c4125['addTeams'](_0x3de804,{'transaction':_0x4db6d2})[_0x4277('0x17')](function(){return BPromise['each'](_0x58b99f,function(_0x544ec7){return db[_0x4277('0x3e')][_0x4277('0x59')]({'where':{'UserId':_0x544ec7['id'],'WhatsappQueueId':_0x298628[_0x4277('0x2a')]['id']},'transaction':_0x4db6d2});});})[_0x4277('0x17')](function(){_0x58b99f[_0x4277('0x5a')](function(_0x238306){socket['emit'](_0x4277('0x5b'),{'UserId':_0x238306['id'],'WhatsappQueueId':_0x1c4125['id']});});});});});}})['then'](respondWithStatusCode(_0x31291c,null))[_0x4277('0x28')](handleError(_0x31291c,null));};exports[_0x4277('0x5c')]=function(_0x57f7ec,_0x18b854){return db[_0x4277('0x4e')][_0x4277('0x26')]({'where':{'id':_0x57f7ec[_0x4277('0x25')][_0x4277('0x51')]},'attributes':['id'],'include':[{'model':db['User'],'as':_0x4277('0x53'),'attributes':['id'],'raw':!![]}]})['then'](handleEntityNotFound(_0x18b854,null))['then'](function(_0x22319d){var _0x58b59c=_[_0x4277('0x1e')](_0x22319d,'id');var _0xaf340d=[];var _0x1ed447=[];var _0x5cbc26=squel[_0x4277('0x5d')]();_0x5cbc26[_0x4277('0x5e')]('tq.TeamId')['from']('team_has_whatsapp_queues','tq')[_0x4277('0x5f')]('user_has_teams','ut',_0x4277('0x60'))[_0x4277('0x23')]('WhatsappQueueId\x20=\x20?',_0x57f7ec['params']['id']);for(var _0x42dacd=0x0;_0x42dacd<_0x22319d[_0x4277('0x30')];_0x42dacd+=0x1){let _0x564aed=_0x22319d[_0x42dacd];for(var _0x38ffba=0x0;_0x38ffba<_0x564aed['Agents']['length'];_0x38ffba+=0x1){let _0x5f4055=_0x564aed[_0x4277('0x53')][_0x38ffba];var _0x1f31e5=_0x5cbc26['clone']();_0x1f31e5[_0x4277('0x23')](_0x4277('0x61'),_0x5f4055['id']);_0x1ed447[_0x4277('0x62')](db[_0x4277('0x57')][_0x4277('0x25')](_0x1f31e5[_0x4277('0x63')](),{'type':db['sequelize'][_0x4277('0x64')][_0x4277('0x65')]})['then'](function(_0x12b4c6){if(_0x12b4c6[_0x4277('0x30')]===0x1){return _0x5f4055['id'];}else{var _0x1dfa82=_['every'](_[_0x4277('0x1e')](_0x12b4c6,_0x4277('0x66')),function(_0x4e7924){return _[_0x4277('0x67')](_0x58b59c,_0x4e7924);});if(_0x1dfa82){return _0x5f4055['id'];}}}));}}return BPromise['all'](_0x1ed447)['then'](function(_0x3e74a9){_0xaf340d=_(_0xaf340d)['union'](_0x3e74a9)[_0x4277('0x68')]()[_0x4277('0x69')]();return db[_0x4277('0x1f')][_0x4277('0x39')]({'where':{'id':_0x57f7ec[_0x4277('0x2a')]['id']}})['then'](function(_0x3083e7){return db[_0x4277('0x57')][_0x4277('0x58')](function(_0x146d58){return _0x3083e7[_0x4277('0x5c')](_0x57f7ec['query'][_0x4277('0x51')],{'transaction':_0x146d58})[_0x4277('0x17')](function(){if(!_[_0x4277('0x6a')](_0xaf340d)){return _0x3083e7[_0x4277('0x6b')](_0xaf340d,{'transaction':_0x146d58});}})[_0x4277('0x17')](function(){_0xaf340d[_0x4277('0x5a')](function(_0x451ba5){socket[_0x4277('0x6c')](_0x4277('0x6d'),{'UserId':_0x451ba5,'WhatsappQueueId':_0x3083e7['id']});});});});});});})[_0x4277('0x17')](respondWithStatusCode(_0x18b854,null))['catch'](handleError(_0x18b854,null));};exports['addAgents']=function(_0x55ab94,_0x1c689a){return db[_0x4277('0x1f')][_0x4277('0x39')]({'where':{'id':_0x55ab94[_0x4277('0x2a')]['id']}})['then'](handleEntityNotFound(_0x1c689a,null))[_0x4277('0x17')](function(_0x469bac){if(_0x469bac){return _0x469bac['addAgents'](_0x55ab94['body']['ids'],_[_0x4277('0x6e')](_0x55ab94[_0x4277('0x35')],[_0x4277('0x51'),'id'])||{})['spread'](function(_0x59af19){for(var _0x4e05d8=0x0;_0x4e05d8<_0x55ab94[_0x4277('0x35')][_0x4277('0x51')][_0x4277('0x30')];_0x4e05d8+=0x1){socket[_0x4277('0x6c')](_0x4277('0x5b'),{'UserId':Number(_0x55ab94['body'][_0x4277('0x51')][_0x4e05d8]),'WhatsappQueueId':Number(_0x55ab94[_0x4277('0x2a')]['id'])});}return _0x59af19;});}})[_0x4277('0x17')](respondWithResult(_0x1c689a,null))['catch'](handleError(_0x1c689a,null));};exports[_0x4277('0x6b')]=function(_0x36964b,_0x4833b0){return db[_0x4277('0x1f')]['find']({'where':{'id':_0x36964b[_0x4277('0x2a')]['id']}})['then'](handleEntityNotFound(_0x4833b0,null))[_0x4277('0x17')](function(_0x47a712){if(_0x47a712){return _0x47a712[_0x4277('0x6b')](_0x36964b[_0x4277('0x25')]['ids'])[_0x4277('0x17')](function(){if(_[_0x4277('0x6f')](_0x36964b[_0x4277('0x25')]['ids'])){for(var _0xef11c7=0x0;_0xef11c7<_0x36964b[_0x4277('0x25')][_0x4277('0x51')][_0x4277('0x30')];_0xef11c7+=0x1){socket['emit'](_0x4277('0x6d'),{'UserId':Number(_0x36964b[_0x4277('0x25')]['ids'][_0xef11c7]),'WhatsappQueueId':Number(_0x36964b[_0x4277('0x2a')]['id'])});}}else{socket['emit'](_0x4277('0x6d'),{'UserId':Number(_0x36964b['query'][_0x4277('0x51')]),'WhatsappQueueId':Number(_0x36964b[_0x4277('0x2a')]['id'])});}});}})[_0x4277('0x17')](respondWithStatusCode(_0x4833b0,null))[_0x4277('0x28')](handleError(_0x4833b0,null));};exports[_0x4277('0x70')]=function(_0x2649a1,_0x1b9c3e){var _0x2a841c={};var _0x78354b={};var _0x50a55e;var _0x28b15c;return db[_0x4277('0x1f')][_0x4277('0x3d')]({'where':{'id':_0x2649a1[_0x4277('0x2a')]['id']}})[_0x4277('0x17')](handleEntityNotFound(_0x1b9c3e,null))['then'](function(_0x37dbd5){if(_0x37dbd5){_0x50a55e=_0x37dbd5;_0x78354b[_0x4277('0x2b')]=_[_0x4277('0x2c')](db[_0x4277('0x52')]['rawAttributes']);_0x78354b[_0x4277('0x25')]=_[_0x4277('0x2c')](_0x2649a1['query']);_0x78354b[_0x4277('0x2d')]=_[_0x4277('0x2e')](_0x78354b[_0x4277('0x2b')],_0x78354b[_0x4277('0x25')]);_0x2a841c['attributes']=_[_0x4277('0x2e')](_0x78354b[_0x4277('0x2b')],qs[_0x4277('0x40')](_0x2649a1[_0x4277('0x25')]['fields']));_0x2a841c[_0x4277('0x2f')]=_0x2a841c[_0x4277('0x2f')][_0x4277('0x30')]?_0x2a841c[_0x4277('0x2f')]:_0x78354b['model'];_0x2a841c[_0x4277('0x42')]=qs[_0x4277('0x43')](_0x2649a1['query'][_0x4277('0x43')]);_0x2a841c[_0x4277('0x23')]=qs[_0x4277('0x2d')](_[_0x4277('0x44')](_0x2649a1[_0x4277('0x25')],_0x78354b[_0x4277('0x2d')]));if(_0x2649a1['query']['filter']){_0x2a841c[_0x4277('0x23')]=_['merge'](_0x2a841c[_0x4277('0x23')],{'$or':_[_0x4277('0x1e')](_0x2a841c['attributes'],function(_0x38f800){var _0x2910b8={};_0x2910b8[_0x38f800]={'$like':'%'+_0x2649a1[_0x4277('0x25')][_0x4277('0x4f')]+'%'};return _0x2910b8;})});}_0x2a841c=_[_0x4277('0x32')]({},_0x2a841c,_0x2649a1[_0x4277('0x33')]);return _0x50a55e[_0x4277('0x70')](_0x2a841c);}})[_0x4277('0x17')](function(_0x1c458d){if(_0x1c458d){_0x28b15c=_0x1c458d['length'];if(!_0x2649a1[_0x4277('0x25')]['hasOwnProperty'](_0x4277('0x41'))){_0x2a841c[_0x4277('0x13')]=qs[_0x4277('0x13')](_0x2649a1[_0x4277('0x25')]['limit']);_0x2a841c['offset']=qs['offset'](_0x2649a1['query'][_0x4277('0x11')]);}return _0x50a55e['getAgents'](_0x2a841c);}})[_0x4277('0x17')](function(_0xae89b5){if(_0xae89b5){return _0xae89b5?{'count':_0x28b15c,'rows':_0xae89b5}:null;}})[_0x4277('0x17')](respondWithResult(_0x1b9c3e,null))[_0x4277('0x28')](handleError(_0x1b9c3e,null));};