9e1a44cd65b3f5a44cffcf71999c136cef8f338e
[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 _0xc6fb=['./whatsappQueue.socket','sendStatus','status','count','offset','limit','set','json','apply','save','update','destroy','then','get','WhatsappQueues','end','error','stack','name','index','map','WhatsappQueue','rawAttributes','key','model','query','keys','intersection','attributes','fields','length','hasOwnProperty','order','sort','where','filters','filter','merge','type','VIRTUAL','options','includeAll','include','findAll','rows','catch','params','create','body','user','role','UserProfileSection','find','userProfileId','autoAssociation','UserProfileResource','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','describe','getMembers','pick','WhatsappQueueId','UserWhatsappQueue','User','findAndCountAll','UserId','agent','whatsappPause','updatedAt','createdAt','format','SIP','getTeams','findOne','Team','nolimit','addTeams','Agents','online','voicePause','interface','flatMap','findOrCreate','forEach','emit','userWhatsappQueue:save','ids','field','tq.TeamId','from','team_has_whatsapp_queues','user_has_teams','ut.TeamId\x20=\x20tq.TeamId','WhatsappQueueId\x20=\x20?','clone','ut.UserId\x20=\x20?','toString','QueryTypes','SELECT','every','TeamId','includes','union','compact','value','sequelize','transaction','removeTeams','isEmpty','removeAgents','addAgents','omit','spread','isArray','userWhatsappQueue:remove','getAgents','html-pdf','eml-format','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','ejs','lodash','squel','crypto','jsforce','desk.js','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../mysqldb','redis','localhost'];(function(_0x43a1b8,_0x1c90c8){var _0x324ecc=function(_0x53a93b){while(--_0x53a93b){_0x43a1b8['push'](_0x43a1b8['shift']());}};_0x324ecc(++_0x1c90c8);}(_0xc6fb,0x104));var _0xbc6f=function(_0x3e0763,_0x3d12be){_0x3e0763=_0x3e0763-0x0;var _0x351ca2=_0xc6fb[_0x3e0763];return _0x351ca2;};'use strict';var pdf=require(_0xbc6f('0x0'));var emlformat=require(_0xbc6f('0x1'));var rimraf=require('rimraf');var zipdir=require(_0xbc6f('0x2'));var jsonpatch=require(_0xbc6f('0x3'));var rp=require(_0xbc6f('0x4'));var moment=require(_0xbc6f('0x5'));var BPromise=require(_0xbc6f('0x6'));var Mustache=require(_0xbc6f('0x7'));var util=require(_0xbc6f('0x8'));var path=require(_0xbc6f('0x9'));var sox=require(_0xbc6f('0xa'));var csv=require('to-csv');var ejs=require(_0xbc6f('0xb'));var fs=require('fs');var _=require(_0xbc6f('0xc'));var squel=require(_0xbc6f('0xd'));var crypto=require(_0xbc6f('0xe'));var jsforce=require(_0xbc6f('0xf'));var deskjs=require(_0xbc6f('0x10'));var toCsv=require(_0xbc6f('0x11'));var querystring=require(_0xbc6f('0x12'));var Papa=require(_0xbc6f('0x13'));var Redis=require(_0xbc6f('0x14'));var authService=require(_0xbc6f('0x15'));var qs=require('../../components/parsers/qs');var as=require(_0xbc6f('0x16'));var hardwareService=require(_0xbc6f('0x17'));var logger=require(_0xbc6f('0x18'))('api');var utils=require(_0xbc6f('0x19'));var config=require(_0xbc6f('0x1a'));var db=require(_0xbc6f('0x1b'))['db'];config[_0xbc6f('0x1c')]=_['defaults'](config[_0xbc6f('0x1c')],{'host':_0xbc6f('0x1d'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0xbc6f('0x1c')]));require(_0xbc6f('0x1e'))['register'](socket);function respondWithStatusCode(_0x520aa7,_0x51e787){_0x51e787=_0x51e787||0xcc;return function(_0x133594){if(_0x133594){return _0x520aa7[_0xbc6f('0x1f')](_0x51e787);}return _0x520aa7['status'](_0x51e787)['end']();};}function respondWithResult(_0x5c16a1,_0x1863d2){_0x1863d2=_0x1863d2||0xc8;return function(_0x15b36e){if(_0x15b36e){return _0x5c16a1[_0xbc6f('0x20')](_0x1863d2)['json'](_0x15b36e);}};}function respondWithFilteredResult(_0xce6e4e,_0x77f30b){return function(_0x43ba9e){if(_0x43ba9e){var _0x296882=_0x43ba9e[_0xbc6f('0x21')],_0x38e607=_0x77f30b[_0xbc6f('0x22')],_0x25af2b=_0x77f30b[_0xbc6f('0x22')]+_0x77f30b[_0xbc6f('0x23')],_0x12225f;if(_0x25af2b>=_0x296882){_0x25af2b=_0x296882;_0x12225f=0xc8;}else{_0x12225f=0xce;}_0xce6e4e[_0xbc6f('0x20')](_0x12225f);return _0xce6e4e[_0xbc6f('0x24')]('Content-Range',_0x38e607+'-'+_0x25af2b+'/'+_0x296882)[_0xbc6f('0x25')](_0x43ba9e);}return null;};}function patchUpdates(_0x167a89){return function(_0x173bd7){try{jsonpatch[_0xbc6f('0x26')](_0x173bd7,_0x167a89,!![]);}catch(_0x7aba84){return BPromise['reject'](_0x7aba84);}return _0x173bd7[_0xbc6f('0x27')]();};}function saveUpdates(_0xb53c4a,_0x319592){return function(_0xfe44fd){if(_0xfe44fd){return _0xfe44fd[_0xbc6f('0x28')](_0xb53c4a)['then'](function(_0x4445e6){return _0x4445e6;});}return null;};}function removeEntity(_0x4b8b29,_0x4fdba3){return function(_0xc10e2e){if(_0xc10e2e){return _0xc10e2e[_0xbc6f('0x29')]()[_0xbc6f('0x2a')](function(){var _0x1fccff=_0xc10e2e[_0xbc6f('0x2b')]({'plain':!![]});var _0x150756=_0xbc6f('0x2c');return db['UserProfileResource'][_0xbc6f('0x29')]({'where':{'type':_0x150756,'resourceId':_0x1fccff['id']}})[_0xbc6f('0x2a')](function(){return _0xc10e2e;});})['then'](function(){_0x4b8b29[_0xbc6f('0x20')](0xcc)[_0xbc6f('0x2d')]();});}};}function handleEntityNotFound(_0x555053,_0xd228c0){return function(_0xc907f5){if(!_0xc907f5){_0x555053[_0xbc6f('0x1f')](0x194);}return _0xc907f5;};}function handleError(_0x31b8b0,_0x2af641){_0x2af641=_0x2af641||0x1f4;return function(_0x5a9b93){logger[_0xbc6f('0x2e')](_0x5a9b93[_0xbc6f('0x2f')]);if(_0x5a9b93[_0xbc6f('0x30')]){delete _0x5a9b93[_0xbc6f('0x30')];}_0x31b8b0[_0xbc6f('0x20')](_0x2af641)['send'](_0x5a9b93);};}exports[_0xbc6f('0x31')]=function(_0x53d841,_0x55d7ec){var _0x2a44d3={},_0x1d1446={},_0x4c9e80={'count':0x0,'rows':[]};var _0x17bb1d=_[_0xbc6f('0x32')](db[_0xbc6f('0x33')][_0xbc6f('0x34')],function(_0x28a358){return{'name':_0x28a358['fieldName'],'type':_0x28a358['type'][_0xbc6f('0x35')]};});_0x1d1446[_0xbc6f('0x36')]=_[_0xbc6f('0x32')](_0x17bb1d,_0xbc6f('0x30'));_0x1d1446[_0xbc6f('0x37')]=_[_0xbc6f('0x38')](_0x53d841['query']);_0x1d1446['filters']=_[_0xbc6f('0x39')](_0x1d1446[_0xbc6f('0x36')],_0x1d1446[_0xbc6f('0x37')]);_0x2a44d3[_0xbc6f('0x3a')]=_[_0xbc6f('0x39')](_0x1d1446[_0xbc6f('0x36')],qs['fields'](_0x53d841[_0xbc6f('0x37')][_0xbc6f('0x3b')]));_0x2a44d3[_0xbc6f('0x3a')]=_0x2a44d3[_0xbc6f('0x3a')][_0xbc6f('0x3c')]?_0x2a44d3[_0xbc6f('0x3a')]:_0x1d1446[_0xbc6f('0x36')];if(!_0x53d841[_0xbc6f('0x37')][_0xbc6f('0x3d')]('nolimit')){_0x2a44d3[_0xbc6f('0x23')]=qs['limit'](_0x53d841['query'][_0xbc6f('0x23')]);_0x2a44d3[_0xbc6f('0x22')]=qs[_0xbc6f('0x22')](_0x53d841[_0xbc6f('0x37')][_0xbc6f('0x22')]);}_0x2a44d3[_0xbc6f('0x3e')]=qs[_0xbc6f('0x3f')](_0x53d841[_0xbc6f('0x37')][_0xbc6f('0x3f')]);_0x2a44d3[_0xbc6f('0x40')]=qs[_0xbc6f('0x41')](_['pick'](_0x53d841[_0xbc6f('0x37')],_0x1d1446[_0xbc6f('0x41')]),_0x17bb1d);if(_0x53d841['query'][_0xbc6f('0x42')]){_0x2a44d3[_0xbc6f('0x40')]=_[_0xbc6f('0x43')](_0x2a44d3[_0xbc6f('0x40')],{'$or':_[_0xbc6f('0x32')](_0x17bb1d,function(_0x3116f5){if(_0x3116f5[_0xbc6f('0x44')]!==_0xbc6f('0x45')){var _0x453f3f={};_0x453f3f[_0x3116f5[_0xbc6f('0x30')]]={'$like':'%'+_0x53d841[_0xbc6f('0x37')]['filter']+'%'};return _0x453f3f;}})});}_0x2a44d3=_[_0xbc6f('0x43')]({},_0x2a44d3,_0x53d841[_0xbc6f('0x46')]);var _0x25d847={'where':_0x2a44d3[_0xbc6f('0x40')]};return db[_0xbc6f('0x33')][_0xbc6f('0x21')](_0x25d847)['then'](function(_0x4e26af){_0x4c9e80[_0xbc6f('0x21')]=_0x4e26af;if(_0x53d841[_0xbc6f('0x37')][_0xbc6f('0x47')]){_0x2a44d3[_0xbc6f('0x48')]=[{'all':!![]}];}return db[_0xbc6f('0x33')][_0xbc6f('0x49')](_0x2a44d3);})[_0xbc6f('0x2a')](function(_0x31abd5){_0x4c9e80[_0xbc6f('0x4a')]=_0x31abd5;return _0x4c9e80;})[_0xbc6f('0x2a')](respondWithFilteredResult(_0x55d7ec,_0x2a44d3))[_0xbc6f('0x4b')](handleError(_0x55d7ec,null));};exports['show']=function(_0x3a1fde,_0x277c72){var _0x350b11={'raw':!![],'where':{'id':_0x3a1fde[_0xbc6f('0x4c')]['id']}},_0xd9811d={};_0xd9811d['model']=_[_0xbc6f('0x38')](db[_0xbc6f('0x33')]['rawAttributes']);_0xd9811d[_0xbc6f('0x37')]=_[_0xbc6f('0x38')](_0x3a1fde[_0xbc6f('0x37')]);_0xd9811d[_0xbc6f('0x41')]=_[_0xbc6f('0x39')](_0xd9811d['model'],_0xd9811d['query']);_0x350b11['attributes']=_[_0xbc6f('0x39')](_0xd9811d['model'],qs['fields'](_0x3a1fde['query'][_0xbc6f('0x3b')]));_0x350b11[_0xbc6f('0x3a')]=_0x350b11['attributes'][_0xbc6f('0x3c')]?_0x350b11[_0xbc6f('0x3a')]:_0xd9811d[_0xbc6f('0x36')];if(_0x3a1fde[_0xbc6f('0x37')][_0xbc6f('0x47')]){_0x350b11[_0xbc6f('0x48')]=[{'all':!![]}];}_0x350b11=_[_0xbc6f('0x43')]({},_0x350b11,_0x3a1fde['options']);return db[_0xbc6f('0x33')]['find'](_0x350b11)[_0xbc6f('0x2a')](handleEntityNotFound(_0x277c72,null))[_0xbc6f('0x2a')](respondWithResult(_0x277c72,null))[_0xbc6f('0x4b')](handleError(_0x277c72,null));};exports[_0xbc6f('0x4d')]=function(_0x4bc677,_0x1ee7be){return db['WhatsappQueue']['create'](_0x4bc677[_0xbc6f('0x4e')],{})[_0xbc6f('0x2a')](function(_0x29a8f8){var _0xfbbe87=_0x4bc677[_0xbc6f('0x4f')][_0xbc6f('0x2b')]({'plain':!![]});if(!_0xfbbe87)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0xfbbe87[_0xbc6f('0x50')]===_0xbc6f('0x4f')){var _0x50d4f6=_0x29a8f8[_0xbc6f('0x2b')]({'plain':!![]});var _0x282789='WhatsappQueues';return db[_0xbc6f('0x51')][_0xbc6f('0x52')]({'where':{'name':_0x282789,'userProfileId':_0xfbbe87[_0xbc6f('0x53')]},'raw':!![]})[_0xbc6f('0x2a')](function(_0x541ac0){if(_0x541ac0&&_0x541ac0[_0xbc6f('0x54')]===0x0){return db[_0xbc6f('0x55')]['create']({'name':_0x50d4f6[_0xbc6f('0x30')],'resourceId':_0x50d4f6['id'],'type':_0x541ac0['name'],'sectionId':_0x541ac0['id']},{})[_0xbc6f('0x2a')](function(){return _0x29a8f8;});}else{return _0x29a8f8;}})[_0xbc6f('0x4b')](function(_0x1115d6){logger['error'](_0xbc6f('0x56'),_0x1115d6);throw _0x1115d6;});}return _0x29a8f8;})['then'](respondWithResult(_0x1ee7be,0xc9))['catch'](handleError(_0x1ee7be,null));};exports[_0xbc6f('0x28')]=function(_0x125601,_0x2e8c1a){if(_0x125601[_0xbc6f('0x4e')]['id']){delete _0x125601[_0xbc6f('0x4e')]['id'];}return db[_0xbc6f('0x33')]['find']({'where':{'id':_0x125601[_0xbc6f('0x4c')]['id']}})[_0xbc6f('0x2a')](handleEntityNotFound(_0x2e8c1a,null))['then'](saveUpdates(_0x125601[_0xbc6f('0x4e')],null))[_0xbc6f('0x2a')](respondWithResult(_0x2e8c1a,null))[_0xbc6f('0x4b')](handleError(_0x2e8c1a,null));};exports['destroy']=function(_0x392355,_0x274937){return db[_0xbc6f('0x33')][_0xbc6f('0x52')]({'where':{'id':_0x392355[_0xbc6f('0x4c')]['id']}})[_0xbc6f('0x2a')](handleEntityNotFound(_0x274937,null))[_0xbc6f('0x2a')](removeEntity(_0x274937,null))[_0xbc6f('0x4b')](handleError(_0x274937,null));};exports[_0xbc6f('0x57')]=function(_0x187507,_0x2d9c77){return db['WhatsappQueue'][_0xbc6f('0x57')]()[_0xbc6f('0x2a')](respondWithResult(_0x2d9c77,null))[_0xbc6f('0x4b')](handleError(_0x2d9c77,null));};exports[_0xbc6f('0x58')]=function(_0x291aaf,_0x22621b,_0x2251f7){var _0x33dc0c={'raw':!![],'where':{}},_0x5a0fbc={},_0x432f1b;return db[_0xbc6f('0x33')]['findOne']({'where':{'id':_0x291aaf[_0xbc6f('0x4c')]['id']}})[_0xbc6f('0x2a')](handleEntityNotFound(_0x22621b,null))['then'](function(_0x352fa7){if(_0x352fa7){_0x432f1b=_0x352fa7[_0xbc6f('0x2b')]({'plain':!![]});_0x5a0fbc[_0xbc6f('0x36')]=_[_0xbc6f('0x38')](db['UserWhatsappQueue'][_0xbc6f('0x34')]);_0x5a0fbc[_0xbc6f('0x37')]=_[_0xbc6f('0x38')](_0x291aaf['query']);_0x5a0fbc[_0xbc6f('0x41')]=_[_0xbc6f('0x39')](_0x5a0fbc[_0xbc6f('0x36')],_0x5a0fbc[_0xbc6f('0x37')]);_0x33dc0c[_0xbc6f('0x3a')]=_[_0xbc6f('0x39')](_0x5a0fbc[_0xbc6f('0x36')],qs[_0xbc6f('0x3b')](_0x291aaf[_0xbc6f('0x37')][_0xbc6f('0x3b')]));_0x33dc0c[_0xbc6f('0x3a')]=_0x33dc0c[_0xbc6f('0x3a')][_0xbc6f('0x3c')]?_0x33dc0c[_0xbc6f('0x3a')]:_0x5a0fbc[_0xbc6f('0x36')];if(!_0x291aaf[_0xbc6f('0x37')][_0xbc6f('0x3d')]('nolimit')){_0x33dc0c['limit']=qs[_0xbc6f('0x23')](_0x291aaf[_0xbc6f('0x37')]['limit']);_0x33dc0c[_0xbc6f('0x22')]=qs['offset'](_0x291aaf[_0xbc6f('0x37')][_0xbc6f('0x22')]);}_0x33dc0c[_0xbc6f('0x3e')]=qs[_0xbc6f('0x3f')](_0x291aaf[_0xbc6f('0x37')][_0xbc6f('0x3f')]);_0x33dc0c['where']=qs[_0xbc6f('0x41')](_[_0xbc6f('0x59')](_0x291aaf['query'],_0x5a0fbc[_0xbc6f('0x41')]));_0x33dc0c['where'][_0xbc6f('0x5a')]=_0x352fa7['id'];if(_0x291aaf[_0xbc6f('0x37')][_0xbc6f('0x42')]){_0x33dc0c[_0xbc6f('0x40')]=_[_0xbc6f('0x43')](_0x33dc0c[_0xbc6f('0x40')],{'$or':_[_0xbc6f('0x32')](_0x33dc0c[_0xbc6f('0x3a')],function(_0x416a29){var _0x50ec25={};_0x50ec25[_0x416a29]={'$like':'%'+_0x291aaf[_0xbc6f('0x37')][_0xbc6f('0x42')]+'%'};return _0x50ec25;})});}_0x33dc0c=_[_0xbc6f('0x43')]({},_0x33dc0c,_0x291aaf['options']);return db[_0xbc6f('0x5b')][_0xbc6f('0x49')](_0x33dc0c);}})[_0xbc6f('0x2a')](function(_0x29a782){if(_0x29a782){return db[_0xbc6f('0x5c')][_0xbc6f('0x5d')]({'where':{'id':_[_0xbc6f('0x32')](_0x29a782,_0xbc6f('0x5e')),'role':_0xbc6f('0x5f')},'attributes':['id','name',_0xbc6f('0x60'),_0xbc6f('0x61'),_0xbc6f('0x62')]});}})['then'](function(_0x39e006){if(_0x39e006){return{'count':_0x39e006[_0xbc6f('0x21')],'rows':_[_0xbc6f('0x32')](_0x39e006[_0xbc6f('0x4a')],function(_0x24d063){return{'membername':_0x24d063[_0xbc6f('0x30')],'UserId':_0x24d063['id'],'queue_name':_0x432f1b[_0xbc6f('0x30')],'WhatsappQueueId':_0x432f1b['id'],'interface':util[_0xbc6f('0x63')]('%s/%s',_0xbc6f('0x64'),_0x24d063['name']),'penalty':0x0,'paused':_0x24d063[_0xbc6f('0x60')],'createdAt':_0x24d063[_0xbc6f('0x62')],'updatedAt':_0x24d063['updatedAt']};})};}else{return{'count':0x0,'rows':[]};}})[_0xbc6f('0x2a')](respondWithFilteredResult(_0x22621b,_0x33dc0c))[_0xbc6f('0x4b')](handleError(_0x22621b,null));};exports[_0xbc6f('0x65')]=function(_0x23e2f8,_0x360b7d,_0x24a293){var _0x4453a5={};var _0x2846ba={};var _0x3ffe39;var _0x16ceb1;return db[_0xbc6f('0x33')][_0xbc6f('0x66')]({'where':{'id':_0x23e2f8[_0xbc6f('0x4c')]['id']}})[_0xbc6f('0x2a')](handleEntityNotFound(_0x360b7d,null))['then'](function(_0x425b95){if(_0x425b95){_0x3ffe39=_0x425b95;_0x2846ba['model']=_[_0xbc6f('0x38')](db[_0xbc6f('0x67')][_0xbc6f('0x34')]);_0x2846ba['query']=_['keys'](_0x23e2f8[_0xbc6f('0x37')]);_0x2846ba['filters']=_['intersection'](_0x2846ba['model'],_0x2846ba['query']);_0x4453a5[_0xbc6f('0x3a')]=_['intersection'](_0x2846ba['model'],qs['fields'](_0x23e2f8['query'][_0xbc6f('0x3b')]));_0x4453a5['attributes']=_0x4453a5[_0xbc6f('0x3a')][_0xbc6f('0x3c')]?_0x4453a5[_0xbc6f('0x3a')]:_0x2846ba[_0xbc6f('0x36')];_0x4453a5[_0xbc6f('0x3e')]=qs[_0xbc6f('0x3f')](_0x23e2f8[_0xbc6f('0x37')][_0xbc6f('0x3f')]);_0x4453a5[_0xbc6f('0x40')]=qs['filters'](_[_0xbc6f('0x59')](_0x23e2f8[_0xbc6f('0x37')],_0x2846ba['filters']));if(_0x23e2f8['query'][_0xbc6f('0x42')]){_0x4453a5[_0xbc6f('0x40')]=_['merge'](_0x4453a5[_0xbc6f('0x40')],{'$or':_[_0xbc6f('0x32')](_0x4453a5[_0xbc6f('0x3a')],function(_0x569233){var _0x29bea6={};_0x29bea6[_0x569233]={'$like':'%'+_0x23e2f8['query'][_0xbc6f('0x42')]+'%'};return _0x29bea6;})});}_0x4453a5=_[_0xbc6f('0x43')]({},_0x4453a5,_0x23e2f8[_0xbc6f('0x46')]);return _0x3ffe39[_0xbc6f('0x65')](_0x4453a5);}})[_0xbc6f('0x2a')](function(_0x2c6148){if(_0x2c6148){_0x16ceb1=_0x2c6148[_0xbc6f('0x3c')];if(!_0x23e2f8['query']['hasOwnProperty'](_0xbc6f('0x68'))){_0x4453a5[_0xbc6f('0x23')]=qs['limit'](_0x23e2f8['query'][_0xbc6f('0x23')]);_0x4453a5[_0xbc6f('0x22')]=qs[_0xbc6f('0x22')](_0x23e2f8['query'][_0xbc6f('0x22')]);}return _0x3ffe39[_0xbc6f('0x65')](_0x4453a5);}})[_0xbc6f('0x2a')](function(_0x50d4b2){if(_0x50d4b2){return _0x50d4b2?{'count':_0x16ceb1,'rows':_0x50d4b2}:null;}})[_0xbc6f('0x2a')](respondWithResult(_0x360b7d,null))[_0xbc6f('0x4b')](handleError(_0x360b7d,null));};exports[_0xbc6f('0x69')]=function(_0x169bd7,_0x1f4116,_0x410063){var _0x31b655=_0x169bd7[_0xbc6f('0x4e')]['ids'];return db[_0xbc6f('0x67')]['findAll']({'where':{'id':_0x31b655},'attributes':['id'],'include':[{'model':db['User'],'as':_0xbc6f('0x6a'),'attributes':['id','name',_0xbc6f('0x6b'),_0xbc6f('0x6c'),_0xbc6f('0x6d')],'raw':!![]}]})['then'](function(_0x355144){if(_0x355144){var _0x58d542=_[_0xbc6f('0x6e')](_0x355144,function(_0x166518){var _0x3c55b=_0x166518[_0xbc6f('0x2b')]({'plain':!![]});return _0x3c55b[_0xbc6f('0x6a')];});return db[_0xbc6f('0x33')][_0xbc6f('0x52')]({'where':{'id':_0x169bd7[_0xbc6f('0x4c')]['id']}})[_0xbc6f('0x2a')](function(_0x142095){return db['sequelize']['transaction'](function(_0x26dd9d){return _0x142095[_0xbc6f('0x69')](_0x31b655,{'transaction':_0x26dd9d})[_0xbc6f('0x2a')](function(){return BPromise['each'](_0x58d542,function(_0x26e1a0){return db['UserWhatsappQueue'][_0xbc6f('0x6f')]({'where':{'UserId':_0x26e1a0['id'],'WhatsappQueueId':_0x169bd7[_0xbc6f('0x4c')]['id']},'transaction':_0x26dd9d});});})[_0xbc6f('0x2a')](function(){_0x58d542[_0xbc6f('0x70')](function(_0x13499b){socket[_0xbc6f('0x71')](_0xbc6f('0x72'),{'UserId':_0x13499b['id'],'WhatsappQueueId':_0x142095['id']});});});});});}})[_0xbc6f('0x2a')](respondWithStatusCode(_0x1f4116,null))[_0xbc6f('0x4b')](handleError(_0x1f4116,null));};exports['removeTeams']=function(_0x2e7da7,_0x422717,_0x33212b){return db['Team'][_0xbc6f('0x49')]({'where':{'id':_0x2e7da7['query'][_0xbc6f('0x73')]},'attributes':['id'],'include':[{'model':db[_0xbc6f('0x5c')],'as':'Agents','attributes':['id'],'raw':!![]}]})[_0xbc6f('0x2a')](handleEntityNotFound(_0x422717,null))[_0xbc6f('0x2a')](function(_0x423f0d){var _0x52cc7f=_[_0xbc6f('0x32')](_0x423f0d,'id');var _0x3dd52b=[];var _0x4a2e62=[];var _0x33d390=squel['select']();_0x33d390[_0xbc6f('0x74')](_0xbc6f('0x75'))[_0xbc6f('0x76')](_0xbc6f('0x77'),'tq')['join'](_0xbc6f('0x78'),'ut',_0xbc6f('0x79'))[_0xbc6f('0x40')](_0xbc6f('0x7a'),_0x2e7da7[_0xbc6f('0x4c')]['id']);for(var _0x539fd2=0x0;_0x539fd2<_0x423f0d['length'];_0x539fd2+=0x1){let _0x44d540=_0x423f0d[_0x539fd2];for(var _0x25ef7f=0x0;_0x25ef7f<_0x44d540[_0xbc6f('0x6a')]['length'];_0x25ef7f+=0x1){let _0x38c758=_0x44d540[_0xbc6f('0x6a')][_0x25ef7f];var _0x52c524=_0x33d390[_0xbc6f('0x7b')]();_0x52c524[_0xbc6f('0x40')](_0xbc6f('0x7c'),_0x38c758['id']);_0x4a2e62['push'](db['sequelize'][_0xbc6f('0x37')](_0x52c524[_0xbc6f('0x7d')](),{'type':db['sequelize'][_0xbc6f('0x7e')][_0xbc6f('0x7f')]})[_0xbc6f('0x2a')](function(_0x519447){if(_0x519447[_0xbc6f('0x3c')]===0x1){return _0x38c758['id'];}else{var _0x5c9e47=_[_0xbc6f('0x80')](_[_0xbc6f('0x32')](_0x519447,_0xbc6f('0x81')),function(_0x33a985){return _[_0xbc6f('0x82')](_0x52cc7f,_0x33a985);});if(_0x5c9e47){return _0x38c758['id'];}}}));}}return BPromise['all'](_0x4a2e62)[_0xbc6f('0x2a')](function(_0x4e9f82){_0x3dd52b=_(_0x3dd52b)[_0xbc6f('0x83')](_0x4e9f82)[_0xbc6f('0x84')]()[_0xbc6f('0x85')]();return db[_0xbc6f('0x33')][_0xbc6f('0x52')]({'where':{'id':_0x2e7da7[_0xbc6f('0x4c')]['id']}})[_0xbc6f('0x2a')](function(_0xed317d){return db[_0xbc6f('0x86')][_0xbc6f('0x87')](function(_0x5ca252){return _0xed317d[_0xbc6f('0x88')](_0x2e7da7[_0xbc6f('0x37')][_0xbc6f('0x73')],{'transaction':_0x5ca252})[_0xbc6f('0x2a')](function(){if(!_[_0xbc6f('0x89')](_0x3dd52b)){return _0xed317d[_0xbc6f('0x8a')](_0x3dd52b,{'transaction':_0x5ca252});}})['then'](function(){_0x3dd52b[_0xbc6f('0x70')](function(_0x2040b4){socket[_0xbc6f('0x71')]('userWhatsappQueue:remove',{'UserId':_0x2040b4,'WhatsappQueueId':_0xed317d['id']});});});});});});})['then'](respondWithStatusCode(_0x422717,null))[_0xbc6f('0x4b')](handleError(_0x422717,null));};exports[_0xbc6f('0x8b')]=function(_0x44d88b,_0x4b5032,_0x22bd45){return db['WhatsappQueue'][_0xbc6f('0x52')]({'where':{'id':_0x44d88b[_0xbc6f('0x4c')]['id']}})['then'](handleEntityNotFound(_0x4b5032,null))['then'](function(_0x15eadc){if(_0x15eadc){return _0x15eadc[_0xbc6f('0x8b')](_0x44d88b[_0xbc6f('0x4e')][_0xbc6f('0x73')],_[_0xbc6f('0x8c')](_0x44d88b['body'],[_0xbc6f('0x73'),'id'])||{})[_0xbc6f('0x8d')](function(_0x5d5df4){for(var _0x42f0bc=0x0;_0x42f0bc<_0x44d88b[_0xbc6f('0x4e')][_0xbc6f('0x73')][_0xbc6f('0x3c')];_0x42f0bc+=0x1){socket[_0xbc6f('0x71')](_0xbc6f('0x72'),{'UserId':_0x44d88b[_0xbc6f('0x4e')][_0xbc6f('0x73')][_0x42f0bc],'WhatsappQueueId':_0x44d88b['params']['id']});}return _0x5d5df4;});}})['then'](respondWithResult(_0x4b5032,null))[_0xbc6f('0x4b')](handleError(_0x4b5032,null));};exports[_0xbc6f('0x8a')]=function(_0xf1c2b8,_0x39b132,_0x3ddecb){return db[_0xbc6f('0x33')][_0xbc6f('0x52')]({'where':{'id':_0xf1c2b8[_0xbc6f('0x4c')]['id']}})['then'](handleEntityNotFound(_0x39b132,null))[_0xbc6f('0x2a')](function(_0x4950c0){if(_0x4950c0){return _0x4950c0[_0xbc6f('0x8a')](_0xf1c2b8[_0xbc6f('0x37')][_0xbc6f('0x73')])['then'](function(){if(_[_0xbc6f('0x8e')](_0xf1c2b8[_0xbc6f('0x37')][_0xbc6f('0x73')])){for(var _0x10cc17=0x0;_0x10cc17<_0xf1c2b8[_0xbc6f('0x37')][_0xbc6f('0x73')]['length'];_0x10cc17+=0x1){socket[_0xbc6f('0x71')](_0xbc6f('0x8f'),{'UserId':Number(_0xf1c2b8[_0xbc6f('0x37')][_0xbc6f('0x73')][_0x10cc17]),'WhatsappQueueId':Number(_0xf1c2b8[_0xbc6f('0x4c')]['id'])});}}else{socket[_0xbc6f('0x71')](_0xbc6f('0x8f'),{'UserId':Number(_0xf1c2b8[_0xbc6f('0x37')][_0xbc6f('0x73')]),'WhatsappQueueId':Number(_0xf1c2b8[_0xbc6f('0x4c')]['id'])});}});}})[_0xbc6f('0x2a')](respondWithStatusCode(_0x39b132,null))[_0xbc6f('0x4b')](handleError(_0x39b132,null));};exports[_0xbc6f('0x90')]=function(_0x5f34af,_0x28141d,_0x3658a6){var _0x1a12f8={};var _0x11cb5b={};var _0x576d7f;var _0x1a5725;return db[_0xbc6f('0x33')][_0xbc6f('0x66')]({'where':{'id':_0x5f34af[_0xbc6f('0x4c')]['id']}})['then'](handleEntityNotFound(_0x28141d,null))[_0xbc6f('0x2a')](function(_0x174848){if(_0x174848){_0x576d7f=_0x174848;_0x11cb5b[_0xbc6f('0x36')]=_[_0xbc6f('0x38')](db[_0xbc6f('0x5c')][_0xbc6f('0x34')]);_0x11cb5b[_0xbc6f('0x37')]=_[_0xbc6f('0x38')](_0x5f34af[_0xbc6f('0x37')]);_0x11cb5b[_0xbc6f('0x41')]=_[_0xbc6f('0x39')](_0x11cb5b[_0xbc6f('0x36')],_0x11cb5b[_0xbc6f('0x37')]);_0x1a12f8[_0xbc6f('0x3a')]=_[_0xbc6f('0x39')](_0x11cb5b[_0xbc6f('0x36')],qs[_0xbc6f('0x3b')](_0x5f34af[_0xbc6f('0x37')][_0xbc6f('0x3b')]));_0x1a12f8['attributes']=_0x1a12f8[_0xbc6f('0x3a')][_0xbc6f('0x3c')]?_0x1a12f8[_0xbc6f('0x3a')]:_0x11cb5b[_0xbc6f('0x36')];_0x1a12f8[_0xbc6f('0x3e')]=qs[_0xbc6f('0x3f')](_0x5f34af[_0xbc6f('0x37')][_0xbc6f('0x3f')]);_0x1a12f8[_0xbc6f('0x40')]=qs[_0xbc6f('0x41')](_[_0xbc6f('0x59')](_0x5f34af['query'],_0x11cb5b[_0xbc6f('0x41')]));if(_0x5f34af[_0xbc6f('0x37')][_0xbc6f('0x42')]){_0x1a12f8['where']=_[_0xbc6f('0x43')](_0x1a12f8[_0xbc6f('0x40')],{'$or':_[_0xbc6f('0x32')](_0x1a12f8[_0xbc6f('0x3a')],function(_0x15dbae){var _0x510cc1={};_0x510cc1[_0x15dbae]={'$like':'%'+_0x5f34af[_0xbc6f('0x37')][_0xbc6f('0x42')]+'%'};return _0x510cc1;})});}_0x1a12f8=_['merge']({},_0x1a12f8,_0x5f34af[_0xbc6f('0x46')]);return _0x576d7f[_0xbc6f('0x90')](_0x1a12f8);}})[_0xbc6f('0x2a')](function(_0x38647e){if(_0x38647e){_0x1a5725=_0x38647e[_0xbc6f('0x3c')];if(!_0x5f34af[_0xbc6f('0x37')][_0xbc6f('0x3d')](_0xbc6f('0x68'))){_0x1a12f8[_0xbc6f('0x23')]=qs['limit'](_0x5f34af[_0xbc6f('0x37')][_0xbc6f('0x23')]);_0x1a12f8['offset']=qs[_0xbc6f('0x22')](_0x5f34af['query']['offset']);}return _0x576d7f[_0xbc6f('0x90')](_0x1a12f8);}})[_0xbc6f('0x2a')](function(_0xa1612e){if(_0xa1612e){return _0xa1612e?{'count':_0x1a5725,'rows':_0xa1612e}:null;}})[_0xbc6f('0x2a')](respondWithResult(_0x28141d,null))[_0xbc6f('0x4b')](handleError(_0x28141d,null));};