Built motion from commit 9d1906d1.|2.5.40
[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 _0xb0ba=['name','index','map','WhatsappQueue','rawAttributes','fieldName','key','model','keys','filters','intersection','query','attributes','fields','hasOwnProperty','nolimit','order','where','pick','filter','merge','options','includeAll','findAll','rows','catch','show','include','find','get','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','user','UserProfileSection','userProfileId','create','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','body','params','describe','getMembers','findOne','UserWhatsappQueue','length','WhatsappQueueId','findAndCountAll','agent','whatsappPause','updatedAt','createdAt','format','%s/%s','SIP','getTeams','addTeams','ids','Team','Agents','online','voicePause','interface','flatMap','transaction','each','findOrCreate','forEach','emit','removeTeams','select','field','tq.TeamId','from','team_has_whatsapp_queues','user_has_teams','clone','ut.UserId\x20=\x20?','push','toString','sequelize','QueryTypes','SELECT','TeamId','includes','all','union','compact','removeAgents','addAgents','omit','spread','userWhatsappQueue:save','userWhatsappQueue:remove','getAgents','User','sort','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','path','to-csv','fs-extra','squel','crypto','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','defaults','redis','localhost','socket.io-emitter','./whatsappQueue.socket','register','status','end','offset','undefined','count','limit','set','json','reject','update','then','destroy','WhatsappQueues','UserProfileResource','sendStatus','error','stack'];(function(_0x8c43de,_0x90ff31){var _0xa6591b=function(_0x469716){while(--_0x469716){_0x8c43de['push'](_0x8c43de['shift']());}};_0xa6591b(++_0x90ff31);}(_0xb0ba,0x179));var _0xab0b=function(_0x11e134,_0x30631b){_0x11e134=_0x11e134-0x0;var _0x402cdb=_0xb0ba[_0x11e134];return _0x402cdb;};'use strict';var emlformat=require(_0xab0b('0x0'));var rimraf=require(_0xab0b('0x1'));var zipdir=require(_0xab0b('0x2'));var jsonpatch=require(_0xab0b('0x3'));var rp=require(_0xab0b('0x4'));var moment=require(_0xab0b('0x5'));var BPromise=require(_0xab0b('0x6'));var Mustache=require(_0xab0b('0x7'));var util=require('util');var path=require(_0xab0b('0x8'));var sox=require('sox');var csv=require(_0xab0b('0x9'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xab0b('0xa'));var _=require('lodash');var squel=require(_0xab0b('0xb'));var crypto=require(_0xab0b('0xc'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require(_0xab0b('0xd'));var Papa=require(_0xab0b('0xe'));var Redis=require(_0xab0b('0xf'));var authService=require(_0xab0b('0x10'));var qs=require(_0xab0b('0x11'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')(_0xab0b('0x12'));var utils=require(_0xab0b('0x13'));var config=require(_0xab0b('0x14'));var licenseUtil=require(_0xab0b('0x15'));var db=require(_0xab0b('0x16'))['db'];config['redis']=_[_0xab0b('0x17')](config[_0xab0b('0x18')],{'host':_0xab0b('0x19'),'port':0x18eb});var socket=require(_0xab0b('0x1a'))(new Redis(config['redis']));require(_0xab0b('0x1b'))[_0xab0b('0x1c')](socket);function respondWithStatusCode(_0x1303c4,_0x1e3e11){_0x1e3e11=_0x1e3e11||0xcc;return function(_0x404bd1){if(_0x404bd1){return _0x1303c4['sendStatus'](_0x1e3e11);}return _0x1303c4[_0xab0b('0x1d')](_0x1e3e11)[_0xab0b('0x1e')]();};}function respondWithResult(_0x7e1a9f,_0x775097){_0x775097=_0x775097||0xc8;return function(_0x58618d){if(_0x58618d){return _0x7e1a9f['status'](_0x775097)['json'](_0x58618d);}};}function respondWithFilteredResult(_0x3deaaa,_0x204fe8){return function(_0x497cde){if(_0x497cde){var _0x59dc2f=typeof _0x204fe8[_0xab0b('0x1f')]==='undefined'&&typeof _0x204fe8['limit']===_0xab0b('0x20');var _0x1fe47a=_0x497cde[_0xab0b('0x21')];var _0x5304f0=_0x59dc2f?0x0:_0x204fe8[_0xab0b('0x1f')];var _0x1dba2e=_0x59dc2f?_0x497cde['count']:_0x204fe8[_0xab0b('0x1f')]+_0x204fe8[_0xab0b('0x22')];var _0x59d98b;if(_0x1dba2e>=_0x1fe47a){_0x1dba2e=_0x1fe47a;_0x59d98b=0xc8;}else{_0x59d98b=0xce;}_0x3deaaa[_0xab0b('0x1d')](_0x59d98b);return _0x3deaaa[_0xab0b('0x23')]('Content-Range',_0x5304f0+'-'+_0x1dba2e+'/'+_0x1fe47a)[_0xab0b('0x24')](_0x497cde);}return null;};}function patchUpdates(_0x137e5c){return function(_0x48529a){try{jsonpatch['apply'](_0x48529a,_0x137e5c,!![]);}catch(_0x1e1170){return BPromise[_0xab0b('0x25')](_0x1e1170);}return _0x48529a['save']();};}function saveUpdates(_0xa86584,_0x47bfb3){return function(_0x4d107d){if(_0x4d107d){return _0x4d107d[_0xab0b('0x26')](_0xa86584)[_0xab0b('0x27')](function(_0x5eff91){return _0x5eff91;});}return null;};}function removeEntity(_0x5de21b,_0x3db3d2){return function(_0x57396c){if(_0x57396c){return _0x57396c[_0xab0b('0x28')]()[_0xab0b('0x27')](function(){var _0x59b392=_0x57396c['get']({'plain':!![]});var _0x1ec266=_0xab0b('0x29');return db[_0xab0b('0x2a')]['destroy']({'where':{'type':_0x1ec266,'resourceId':_0x59b392['id']}})[_0xab0b('0x27')](function(){return _0x57396c;});})[_0xab0b('0x27')](function(){_0x5de21b[_0xab0b('0x1d')](0xcc)[_0xab0b('0x1e')]();});}};}function handleEntityNotFound(_0x173355,_0x5913e5){return function(_0x5540f2){if(!_0x5540f2){_0x173355[_0xab0b('0x2b')](0x194);}return _0x5540f2;};}function handleError(_0x131205,_0x1faa7d){_0x1faa7d=_0x1faa7d||0x1f4;return function(_0x57a751){logger[_0xab0b('0x2c')](_0x57a751[_0xab0b('0x2d')]);if(_0x57a751[_0xab0b('0x2e')]){delete _0x57a751['name'];}_0x131205['status'](_0x1faa7d)['send'](_0x57a751);};}exports[_0xab0b('0x2f')]=function(_0x295a75,_0x15b4ad){var _0xea71bd={},_0xb60939={},_0x10087e={'count':0x0,'rows':[]};var _0x2f2f15=_[_0xab0b('0x30')](db[_0xab0b('0x31')][_0xab0b('0x32')],function(_0x4224ab){return{'name':_0x4224ab[_0xab0b('0x33')],'type':_0x4224ab['type'][_0xab0b('0x34')]};});_0xb60939[_0xab0b('0x35')]=_[_0xab0b('0x30')](_0x2f2f15,_0xab0b('0x2e'));_0xb60939['query']=_[_0xab0b('0x36')](_0x295a75['query']);_0xb60939[_0xab0b('0x37')]=_[_0xab0b('0x38')](_0xb60939[_0xab0b('0x35')],_0xb60939[_0xab0b('0x39')]);_0xea71bd[_0xab0b('0x3a')]=_['intersection'](_0xb60939[_0xab0b('0x35')],qs[_0xab0b('0x3b')](_0x295a75['query'][_0xab0b('0x3b')]));_0xea71bd[_0xab0b('0x3a')]=_0xea71bd['attributes']['length']?_0xea71bd[_0xab0b('0x3a')]:_0xb60939['model'];if(!_0x295a75[_0xab0b('0x39')][_0xab0b('0x3c')](_0xab0b('0x3d'))){_0xea71bd[_0xab0b('0x22')]=qs['limit'](_0x295a75[_0xab0b('0x39')][_0xab0b('0x22')]);_0xea71bd[_0xab0b('0x1f')]=qs[_0xab0b('0x1f')](_0x295a75[_0xab0b('0x39')][_0xab0b('0x1f')]);}_0xea71bd[_0xab0b('0x3e')]=qs['sort'](_0x295a75[_0xab0b('0x39')]['sort']);_0xea71bd[_0xab0b('0x3f')]=qs[_0xab0b('0x37')](_[_0xab0b('0x40')](_0x295a75['query'],_0xb60939['filters']),_0x2f2f15);if(_0x295a75[_0xab0b('0x39')][_0xab0b('0x41')]){_0xea71bd[_0xab0b('0x3f')]=_[_0xab0b('0x42')](_0xea71bd[_0xab0b('0x3f')],{'$or':_['map'](_0x2f2f15,function(_0x3d8fd2){if(_0x3d8fd2['type']!=='VIRTUAL'){var _0x1a45c5={};_0x1a45c5[_0x3d8fd2[_0xab0b('0x2e')]]={'$like':'%'+_0x295a75[_0xab0b('0x39')][_0xab0b('0x41')]+'%'};return _0x1a45c5;}})});}_0xea71bd=_[_0xab0b('0x42')]({},_0xea71bd,_0x295a75[_0xab0b('0x43')]);var _0x26abef={'where':_0xea71bd[_0xab0b('0x3f')]};return db['WhatsappQueue'][_0xab0b('0x21')](_0x26abef)[_0xab0b('0x27')](function(_0x1b4539){_0x10087e['count']=_0x1b4539;if(_0x295a75[_0xab0b('0x39')][_0xab0b('0x44')]){_0xea71bd['include']=[{'all':!![]}];}return db[_0xab0b('0x31')][_0xab0b('0x45')](_0xea71bd);})[_0xab0b('0x27')](function(_0x2d0a66){_0x10087e[_0xab0b('0x46')]=_0x2d0a66;return _0x10087e;})[_0xab0b('0x27')](respondWithFilteredResult(_0x15b4ad,_0xea71bd))[_0xab0b('0x47')](handleError(_0x15b4ad,null));};exports[_0xab0b('0x48')]=function(_0x346006,_0x36bf93){var _0x4a5c14={'raw':!![],'where':{'id':_0x346006['params']['id']}},_0x4bc77e={};_0x4bc77e['model']=_['keys'](db[_0xab0b('0x31')]['rawAttributes']);_0x4bc77e[_0xab0b('0x39')]=_[_0xab0b('0x36')](_0x346006['query']);_0x4bc77e[_0xab0b('0x37')]=_['intersection'](_0x4bc77e[_0xab0b('0x35')],_0x4bc77e[_0xab0b('0x39')]);_0x4a5c14[_0xab0b('0x3a')]=_[_0xab0b('0x38')](_0x4bc77e[_0xab0b('0x35')],qs['fields'](_0x346006[_0xab0b('0x39')][_0xab0b('0x3b')]));_0x4a5c14[_0xab0b('0x3a')]=_0x4a5c14[_0xab0b('0x3a')]['length']?_0x4a5c14[_0xab0b('0x3a')]:_0x4bc77e[_0xab0b('0x35')];if(_0x346006[_0xab0b('0x39')]['includeAll']){_0x4a5c14[_0xab0b('0x49')]=[{'all':!![]}];}_0x4a5c14=_[_0xab0b('0x42')]({},_0x4a5c14,_0x346006[_0xab0b('0x43')]);return db[_0xab0b('0x31')][_0xab0b('0x4a')](_0x4a5c14)[_0xab0b('0x27')](handleEntityNotFound(_0x36bf93,null))[_0xab0b('0x27')](respondWithResult(_0x36bf93,null))[_0xab0b('0x47')](handleError(_0x36bf93,null));};exports['create']=function(_0x20af7c,_0x57ccaa){return db[_0xab0b('0x31')]['create'](_0x20af7c['body'],{})[_0xab0b('0x27')](function(_0x3dcaa6){var _0x5abc82=_0x20af7c['user'][_0xab0b('0x4b')]({'plain':!![]});if(!_0x5abc82)throw new Error(_0xab0b('0x4c'));if(_0x5abc82[_0xab0b('0x4d')]===_0xab0b('0x4e')){var _0x2fc2dc=_0x3dcaa6['get']({'plain':!![]});var _0x163ffb=_0xab0b('0x29');return db[_0xab0b('0x4f')][_0xab0b('0x4a')]({'where':{'name':_0x163ffb,'userProfileId':_0x5abc82[_0xab0b('0x50')]},'raw':!![]})[_0xab0b('0x27')](function(_0x1dd365){if(_0x1dd365&&_0x1dd365['autoAssociation']===0x0){return db[_0xab0b('0x2a')][_0xab0b('0x51')]({'name':_0x2fc2dc[_0xab0b('0x2e')],'resourceId':_0x2fc2dc['id'],'type':_0x1dd365['name'],'sectionId':_0x1dd365['id']},{})[_0xab0b('0x27')](function(){return _0x3dcaa6;});}else{return _0x3dcaa6;}})['catch'](function(_0x3d1d87){logger[_0xab0b('0x2c')](_0xab0b('0x52'),_0x3d1d87);throw _0x3d1d87;});}return _0x3dcaa6;})[_0xab0b('0x27')](respondWithResult(_0x57ccaa,0xc9))['catch'](handleError(_0x57ccaa,null));};exports['update']=function(_0x194123,_0xf22483){if(_0x194123[_0xab0b('0x53')]['id']){delete _0x194123[_0xab0b('0x53')]['id'];}return db[_0xab0b('0x31')]['find']({'where':{'id':_0x194123[_0xab0b('0x54')]['id']}})[_0xab0b('0x27')](handleEntityNotFound(_0xf22483,null))[_0xab0b('0x27')](saveUpdates(_0x194123[_0xab0b('0x53')],null))[_0xab0b('0x27')](respondWithResult(_0xf22483,null))[_0xab0b('0x47')](handleError(_0xf22483,null));};exports['destroy']=function(_0x65aff3,_0x498b53){return db['WhatsappQueue'][_0xab0b('0x4a')]({'where':{'id':_0x65aff3[_0xab0b('0x54')]['id']}})[_0xab0b('0x27')](handleEntityNotFound(_0x498b53,null))['then'](removeEntity(_0x498b53,null))[_0xab0b('0x47')](handleError(_0x498b53,null));};exports['describe']=function(_0x202201,_0x49c069){return db['WhatsappQueue'][_0xab0b('0x55')]()[_0xab0b('0x27')](respondWithResult(_0x49c069,null))[_0xab0b('0x47')](handleError(_0x49c069,null));};exports[_0xab0b('0x56')]=function(_0x82d157,_0x4f9b4e,_0x30b98c){var _0x3fb516={'raw':!![],'where':{}},_0x3a1b03={},_0x2c96d8;return db[_0xab0b('0x31')][_0xab0b('0x57')]({'where':{'id':_0x82d157[_0xab0b('0x54')]['id']}})[_0xab0b('0x27')](handleEntityNotFound(_0x4f9b4e,null))[_0xab0b('0x27')](function(_0x464b50){if(_0x464b50){_0x2c96d8=_0x464b50[_0xab0b('0x4b')]({'plain':!![]});_0x3a1b03[_0xab0b('0x35')]=_[_0xab0b('0x36')](db[_0xab0b('0x58')][_0xab0b('0x32')]);_0x3a1b03[_0xab0b('0x39')]=_[_0xab0b('0x36')](_0x82d157['query']);_0x3a1b03[_0xab0b('0x37')]=_[_0xab0b('0x38')](_0x3a1b03['model'],_0x3a1b03[_0xab0b('0x39')]);_0x3fb516[_0xab0b('0x3a')]=_[_0xab0b('0x38')](_0x3a1b03[_0xab0b('0x35')],qs[_0xab0b('0x3b')](_0x82d157['query']['fields']));_0x3fb516[_0xab0b('0x3a')]=_0x3fb516[_0xab0b('0x3a')][_0xab0b('0x59')]?_0x3fb516['attributes']:_0x3a1b03[_0xab0b('0x35')];if(!_0x82d157[_0xab0b('0x39')]['hasOwnProperty'](_0xab0b('0x3d'))){_0x3fb516[_0xab0b('0x22')]=qs['limit'](_0x82d157[_0xab0b('0x39')][_0xab0b('0x22')]);_0x3fb516[_0xab0b('0x1f')]=qs[_0xab0b('0x1f')](_0x82d157['query'][_0xab0b('0x1f')]);}_0x3fb516['order']=qs['sort'](_0x82d157[_0xab0b('0x39')]['sort']);_0x3fb516['where']=qs[_0xab0b('0x37')](_[_0xab0b('0x40')](_0x82d157[_0xab0b('0x39')],_0x3a1b03['filters']));_0x3fb516[_0xab0b('0x3f')][_0xab0b('0x5a')]=_0x464b50['id'];if(_0x82d157[_0xab0b('0x39')][_0xab0b('0x41')]){_0x3fb516['where']=_[_0xab0b('0x42')](_0x3fb516[_0xab0b('0x3f')],{'$or':_[_0xab0b('0x30')](_0x3fb516[_0xab0b('0x3a')],function(_0x50adda){var _0x1b12e8={};_0x1b12e8[_0x50adda]={'$like':'%'+_0x82d157[_0xab0b('0x39')][_0xab0b('0x41')]+'%'};return _0x1b12e8;})});}_0x3fb516=_[_0xab0b('0x42')]({},_0x3fb516,_0x82d157[_0xab0b('0x43')]);return db[_0xab0b('0x58')][_0xab0b('0x45')](_0x3fb516);}})[_0xab0b('0x27')](function(_0x4867cd){if(_0x4867cd){return db['User'][_0xab0b('0x5b')]({'where':{'id':_[_0xab0b('0x30')](_0x4867cd,'UserId'),'role':_0xab0b('0x5c')},'attributes':['id','name',_0xab0b('0x5d'),_0xab0b('0x5e'),_0xab0b('0x5f')]});}})[_0xab0b('0x27')](function(_0x5ae6b6){if(_0x5ae6b6){return{'count':_0x5ae6b6[_0xab0b('0x21')],'rows':_['map'](_0x5ae6b6['rows'],function(_0x3a4bd8){return{'membername':_0x3a4bd8[_0xab0b('0x2e')],'UserId':_0x3a4bd8['id'],'queue_name':_0x2c96d8['name'],'WhatsappQueueId':_0x2c96d8['id'],'interface':util[_0xab0b('0x60')](_0xab0b('0x61'),_0xab0b('0x62'),_0x3a4bd8['name']),'penalty':0x0,'paused':_0x3a4bd8['whatsappPause'],'createdAt':_0x3a4bd8[_0xab0b('0x5f')],'updatedAt':_0x3a4bd8[_0xab0b('0x5e')]};})};}else{return{'count':0x0,'rows':[]};}})[_0xab0b('0x27')](respondWithFilteredResult(_0x4f9b4e,_0x3fb516))[_0xab0b('0x47')](handleError(_0x4f9b4e,null));};exports[_0xab0b('0x63')]=function(_0x50dd07,_0xe5e38,_0x13b4e5){var _0x5d1f8e={};var _0xb3c3f9={};var _0x5a4d6e;var _0x15b59e;return db['WhatsappQueue']['findOne']({'where':{'id':_0x50dd07[_0xab0b('0x54')]['id']}})[_0xab0b('0x27')](handleEntityNotFound(_0xe5e38,null))[_0xab0b('0x27')](function(_0x2edf02){if(_0x2edf02){_0x5a4d6e=_0x2edf02;_0xb3c3f9[_0xab0b('0x35')]=_[_0xab0b('0x36')](db['Team'][_0xab0b('0x32')]);_0xb3c3f9[_0xab0b('0x39')]=_[_0xab0b('0x36')](_0x50dd07[_0xab0b('0x39')]);_0xb3c3f9['filters']=_[_0xab0b('0x38')](_0xb3c3f9[_0xab0b('0x35')],_0xb3c3f9['query']);_0x5d1f8e[_0xab0b('0x3a')]=_['intersection'](_0xb3c3f9['model'],qs[_0xab0b('0x3b')](_0x50dd07[_0xab0b('0x39')]['fields']));_0x5d1f8e['attributes']=_0x5d1f8e[_0xab0b('0x3a')][_0xab0b('0x59')]?_0x5d1f8e[_0xab0b('0x3a')]:_0xb3c3f9[_0xab0b('0x35')];_0x5d1f8e[_0xab0b('0x3e')]=qs['sort'](_0x50dd07[_0xab0b('0x39')]['sort']);_0x5d1f8e[_0xab0b('0x3f')]=qs[_0xab0b('0x37')](_['pick'](_0x50dd07['query'],_0xb3c3f9[_0xab0b('0x37')]));if(_0x50dd07[_0xab0b('0x39')][_0xab0b('0x41')]){_0x5d1f8e['where']=_[_0xab0b('0x42')](_0x5d1f8e[_0xab0b('0x3f')],{'$or':_[_0xab0b('0x30')](_0x5d1f8e[_0xab0b('0x3a')],function(_0x5014f0){var _0x37aa91={};_0x37aa91[_0x5014f0]={'$like':'%'+_0x50dd07['query'][_0xab0b('0x41')]+'%'};return _0x37aa91;})});}_0x5d1f8e=_[_0xab0b('0x42')]({},_0x5d1f8e,_0x50dd07[_0xab0b('0x43')]);return _0x5a4d6e[_0xab0b('0x63')](_0x5d1f8e);}})[_0xab0b('0x27')](function(_0x48be6d){if(_0x48be6d){_0x15b59e=_0x48be6d[_0xab0b('0x59')];if(!_0x50dd07[_0xab0b('0x39')]['hasOwnProperty']('nolimit')){_0x5d1f8e[_0xab0b('0x22')]=qs['limit'](_0x50dd07[_0xab0b('0x39')][_0xab0b('0x22')]);_0x5d1f8e[_0xab0b('0x1f')]=qs[_0xab0b('0x1f')](_0x50dd07[_0xab0b('0x39')][_0xab0b('0x1f')]);}return _0x5a4d6e[_0xab0b('0x63')](_0x5d1f8e);}})['then'](function(_0x4ea849){if(_0x4ea849){return _0x4ea849?{'count':_0x15b59e,'rows':_0x4ea849}:null;}})['then'](respondWithResult(_0xe5e38,null))[_0xab0b('0x47')](handleError(_0xe5e38,null));};exports[_0xab0b('0x64')]=function(_0x36ce68,_0x1b3af1,_0x1a5b5f){var _0x122ac0=_0x36ce68[_0xab0b('0x53')][_0xab0b('0x65')];return db[_0xab0b('0x66')]['findAll']({'where':{'id':_0x122ac0},'attributes':['id'],'include':[{'model':db['User'],'as':_0xab0b('0x67'),'attributes':['id',_0xab0b('0x2e'),_0xab0b('0x68'),_0xab0b('0x69'),_0xab0b('0x6a')],'raw':!![]}]})[_0xab0b('0x27')](function(_0x4f5c1d){if(_0x4f5c1d){var _0x24ab66=_[_0xab0b('0x6b')](_0x4f5c1d,function(_0x33f818){var _0x128d13=_0x33f818[_0xab0b('0x4b')]({'plain':!![]});return _0x128d13[_0xab0b('0x67')];});return db[_0xab0b('0x31')][_0xab0b('0x4a')]({'where':{'id':_0x36ce68[_0xab0b('0x54')]['id']}})['then'](function(_0x52c159){return db['sequelize'][_0xab0b('0x6c')](function(_0x3f99bb){return _0x52c159['addTeams'](_0x122ac0,{'transaction':_0x3f99bb})['then'](function(){return BPromise[_0xab0b('0x6d')](_0x24ab66,function(_0x8deed6){return db[_0xab0b('0x58')][_0xab0b('0x6e')]({'where':{'UserId':_0x8deed6['id'],'WhatsappQueueId':_0x36ce68[_0xab0b('0x54')]['id']},'transaction':_0x3f99bb});});})[_0xab0b('0x27')](function(){_0x24ab66[_0xab0b('0x6f')](function(_0x230c68){socket[_0xab0b('0x70')]('userWhatsappQueue:save',{'UserId':_0x230c68['id'],'WhatsappQueueId':_0x52c159['id']});});});});});}})[_0xab0b('0x27')](respondWithStatusCode(_0x1b3af1,null))[_0xab0b('0x47')](handleError(_0x1b3af1,null));};exports[_0xab0b('0x71')]=function(_0x27ae6b,_0xcfb74d,_0x67eee3){return db['Team'][_0xab0b('0x45')]({'where':{'id':_0x27ae6b[_0xab0b('0x39')][_0xab0b('0x65')]},'attributes':['id'],'include':[{'model':db['User'],'as':'Agents','attributes':['id'],'raw':!![]}]})[_0xab0b('0x27')](handleEntityNotFound(_0xcfb74d,null))[_0xab0b('0x27')](function(_0x545c42){var _0x228f6f=_[_0xab0b('0x30')](_0x545c42,'id');var _0x64e365=[];var _0x120d9d=[];var _0x282145=squel[_0xab0b('0x72')]();_0x282145[_0xab0b('0x73')](_0xab0b('0x74'))[_0xab0b('0x75')](_0xab0b('0x76'),'tq')['join'](_0xab0b('0x77'),'ut','ut.TeamId\x20=\x20tq.TeamId')[_0xab0b('0x3f')]('WhatsappQueueId\x20=\x20?',_0x27ae6b[_0xab0b('0x54')]['id']);for(var _0x28608d=0x0;_0x28608d<_0x545c42[_0xab0b('0x59')];_0x28608d+=0x1){let _0x13e038=_0x545c42[_0x28608d];for(var _0x4c9752=0x0;_0x4c9752<_0x13e038['Agents'][_0xab0b('0x59')];_0x4c9752+=0x1){let _0x5310b0=_0x13e038[_0xab0b('0x67')][_0x4c9752];var _0x36889d=_0x282145[_0xab0b('0x78')]();_0x36889d[_0xab0b('0x3f')](_0xab0b('0x79'),_0x5310b0['id']);_0x120d9d[_0xab0b('0x7a')](db['sequelize']['query'](_0x36889d[_0xab0b('0x7b')](),{'type':db[_0xab0b('0x7c')][_0xab0b('0x7d')][_0xab0b('0x7e')]})['then'](function(_0x295c5e){if(_0x295c5e[_0xab0b('0x59')]===0x1){return _0x5310b0['id'];}else{var _0x30be34=_['every'](_[_0xab0b('0x30')](_0x295c5e,_0xab0b('0x7f')),function(_0x3b25c1){return _[_0xab0b('0x80')](_0x228f6f,_0x3b25c1);});if(_0x30be34){return _0x5310b0['id'];}}}));}}return BPromise[_0xab0b('0x81')](_0x120d9d)[_0xab0b('0x27')](function(_0x25aa54){_0x64e365=_(_0x64e365)[_0xab0b('0x82')](_0x25aa54)[_0xab0b('0x83')]()['value']();return db['WhatsappQueue']['find']({'where':{'id':_0x27ae6b[_0xab0b('0x54')]['id']}})['then'](function(_0x490397){return db[_0xab0b('0x7c')]['transaction'](function(_0x40fd11){return _0x490397[_0xab0b('0x71')](_0x27ae6b['query'][_0xab0b('0x65')],{'transaction':_0x40fd11})[_0xab0b('0x27')](function(){if(!_['isEmpty'](_0x64e365)){return _0x490397[_0xab0b('0x84')](_0x64e365,{'transaction':_0x40fd11});}})[_0xab0b('0x27')](function(){_0x64e365['forEach'](function(_0x1583f3){socket[_0xab0b('0x70')]('userWhatsappQueue:remove',{'UserId':_0x1583f3,'WhatsappQueueId':_0x490397['id']});});});});});});})['then'](respondWithStatusCode(_0xcfb74d,null))[_0xab0b('0x47')](handleError(_0xcfb74d,null));};exports['addAgents']=function(_0x3a07ad,_0xc8e26f,_0x59d743){return db['WhatsappQueue']['find']({'where':{'id':_0x3a07ad[_0xab0b('0x54')]['id']}})[_0xab0b('0x27')](handleEntityNotFound(_0xc8e26f,null))[_0xab0b('0x27')](function(_0x24e30e){if(_0x24e30e){return _0x24e30e[_0xab0b('0x85')](_0x3a07ad[_0xab0b('0x53')][_0xab0b('0x65')],_[_0xab0b('0x86')](_0x3a07ad['body'],[_0xab0b('0x65'),'id'])||{})[_0xab0b('0x87')](function(_0x762d3d){for(var _0x2d42a7=0x0;_0x2d42a7<_0x3a07ad[_0xab0b('0x53')][_0xab0b('0x65')][_0xab0b('0x59')];_0x2d42a7+=0x1){socket['emit'](_0xab0b('0x88'),{'UserId':Number(_0x3a07ad[_0xab0b('0x53')][_0xab0b('0x65')][_0x2d42a7]),'WhatsappQueueId':Number(_0x3a07ad[_0xab0b('0x54')]['id'])});}return _0x762d3d;});}})['then'](respondWithResult(_0xc8e26f,null))['catch'](handleError(_0xc8e26f,null));};exports['removeAgents']=function(_0x26fd69,_0x3ec343,_0x2f79d1){return db['WhatsappQueue'][_0xab0b('0x4a')]({'where':{'id':_0x26fd69[_0xab0b('0x54')]['id']}})[_0xab0b('0x27')](handleEntityNotFound(_0x3ec343,null))['then'](function(_0x2cceea){if(_0x2cceea){return _0x2cceea[_0xab0b('0x84')](_0x26fd69['query'][_0xab0b('0x65')])[_0xab0b('0x27')](function(){if(_['isArray'](_0x26fd69[_0xab0b('0x39')]['ids'])){for(var _0x28d2a0=0x0;_0x28d2a0<_0x26fd69[_0xab0b('0x39')][_0xab0b('0x65')][_0xab0b('0x59')];_0x28d2a0+=0x1){socket['emit'](_0xab0b('0x89'),{'UserId':Number(_0x26fd69[_0xab0b('0x39')]['ids'][_0x28d2a0]),'WhatsappQueueId':Number(_0x26fd69[_0xab0b('0x54')]['id'])});}}else{socket['emit'](_0xab0b('0x89'),{'UserId':Number(_0x26fd69[_0xab0b('0x39')][_0xab0b('0x65')]),'WhatsappQueueId':Number(_0x26fd69[_0xab0b('0x54')]['id'])});}});}})[_0xab0b('0x27')](respondWithStatusCode(_0x3ec343,null))[_0xab0b('0x47')](handleError(_0x3ec343,null));};exports[_0xab0b('0x8a')]=function(_0x3155eb,_0x4a3556,_0x5adc8b){var _0x1904c1={};var _0x5d3d48={};var _0x31bd6f;var _0x3839f8;return db[_0xab0b('0x31')]['findOne']({'where':{'id':_0x3155eb[_0xab0b('0x54')]['id']}})[_0xab0b('0x27')](handleEntityNotFound(_0x4a3556,null))[_0xab0b('0x27')](function(_0x5947e8){if(_0x5947e8){_0x31bd6f=_0x5947e8;_0x5d3d48[_0xab0b('0x35')]=_['keys'](db[_0xab0b('0x8b')][_0xab0b('0x32')]);_0x5d3d48[_0xab0b('0x39')]=_[_0xab0b('0x36')](_0x3155eb[_0xab0b('0x39')]);_0x5d3d48[_0xab0b('0x37')]=_[_0xab0b('0x38')](_0x5d3d48['model'],_0x5d3d48[_0xab0b('0x39')]);_0x1904c1[_0xab0b('0x3a')]=_[_0xab0b('0x38')](_0x5d3d48[_0xab0b('0x35')],qs[_0xab0b('0x3b')](_0x3155eb['query'][_0xab0b('0x3b')]));_0x1904c1[_0xab0b('0x3a')]=_0x1904c1[_0xab0b('0x3a')][_0xab0b('0x59')]?_0x1904c1[_0xab0b('0x3a')]:_0x5d3d48['model'];_0x1904c1['order']=qs[_0xab0b('0x8c')](_0x3155eb[_0xab0b('0x39')][_0xab0b('0x8c')]);_0x1904c1[_0xab0b('0x3f')]=qs[_0xab0b('0x37')](_[_0xab0b('0x40')](_0x3155eb[_0xab0b('0x39')],_0x5d3d48[_0xab0b('0x37')]));if(_0x3155eb['query'][_0xab0b('0x41')]){_0x1904c1['where']=_[_0xab0b('0x42')](_0x1904c1[_0xab0b('0x3f')],{'$or':_[_0xab0b('0x30')](_0x1904c1[_0xab0b('0x3a')],function(_0x1a877c){var _0x5cf60f={};_0x5cf60f[_0x1a877c]={'$like':'%'+_0x3155eb[_0xab0b('0x39')][_0xab0b('0x41')]+'%'};return _0x5cf60f;})});}_0x1904c1=_[_0xab0b('0x42')]({},_0x1904c1,_0x3155eb['options']);return _0x31bd6f['getAgents'](_0x1904c1);}})[_0xab0b('0x27')](function(_0x36d6a8){if(_0x36d6a8){_0x3839f8=_0x36d6a8[_0xab0b('0x59')];if(!_0x3155eb['query']['hasOwnProperty'](_0xab0b('0x3d'))){_0x1904c1['limit']=qs['limit'](_0x3155eb[_0xab0b('0x39')][_0xab0b('0x22')]);_0x1904c1['offset']=qs[_0xab0b('0x1f')](_0x3155eb['query'][_0xab0b('0x1f')]);}return _0x31bd6f['getAgents'](_0x1904c1);}})[_0xab0b('0x27')](function(_0x43c981){if(_0x43c981){return _0x43c981?{'count':_0x3839f8,'rows':_0x43c981}:null;}})[_0xab0b('0x27')](respondWithResult(_0x4a3556,null))[_0xab0b('0x47')](handleError(_0x4a3556,null));};