Built motion from commit 9d0783e6.|2.6.13
[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 _0x9be7=['../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','socket.io-emitter','register','sendStatus','status','end','json','undefined','limit','count','offset','set','Content-Range','apply','destroy','then','UserProfileResource','error','stack','name','map','rawAttributes','fieldName','model','query','filters','attributes','intersection','fields','length','order','sort','where','pick','filter','merge','type','VIRTUAL','WhatsappQueue','includeAll','include','findAll','rows','params','keys','options','find','catch','create','body','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','user','get','WhatsappQueues','UserProfileSection','userProfileId','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','update','describe','findOne','UserWhatsappQueue','hasOwnProperty','nolimit','WhatsappQueueId','User','UserId','agent','whatsappPause','updatedAt','createdAt','format','%s/%s','SIP','getTeams','addTeams','ids','Team','Agents','online','voicePause','interface','flatMap','sequelize','findOrCreate','forEach','emit','userWhatsappQueue:save','removeTeams','field','tq.TeamId','team_has_whatsapp_queues','join','user_has_teams','ut.TeamId\x20=\x20tq.TeamId','WhatsappQueueId\x20=\x20?','clone','ut.UserId\x20=\x20?','push','toString','QueryTypes','every','all','compact','value','transaction','isEmpty','removeAgents','addAgents','omit','isArray','userWhatsappQueue:remove','getAgents','eml-format','rimraf','zip-dir','fast-json-patch','moment','bluebird','mustache','util','path','to-csv','ejs','lodash','crypto','querystring','papaparse','ioredis'];(function(_0x3e7dcf,_0x818fa1){var _0x299f64=function(_0x404a34){while(--_0x404a34){_0x3e7dcf['push'](_0x3e7dcf['shift']());}};_0x299f64(++_0x818fa1);}(_0x9be7,0x7b));var _0x79be=function(_0x378720,_0xa711f1){_0x378720=_0x378720-0x0;var _0x47920a=_0x9be7[_0x378720];return _0x47920a;};'use strict';var emlformat=require(_0x79be('0x0'));var rimraf=require(_0x79be('0x1'));var zipdir=require(_0x79be('0x2'));var jsonpatch=require(_0x79be('0x3'));var rp=require('request-promise');var moment=require(_0x79be('0x4'));var BPromise=require(_0x79be('0x5'));var Mustache=require(_0x79be('0x6'));var util=require(_0x79be('0x7'));var path=require(_0x79be('0x8'));var sox=require('sox');var csv=require(_0x79be('0x9'));var ejs=require(_0x79be('0xa'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x79be('0xb'));var squel=require('squel');var crypto=require(_0x79be('0xc'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0x79be('0x9'));var querystring=require(_0x79be('0xd'));var Papa=require(_0x79be('0xe'));var Redis=require(_0x79be('0xf'));var authService=require(_0x79be('0x10'));var qs=require(_0x79be('0x11'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x79be('0x12'));var logger=require(_0x79be('0x13'))(_0x79be('0x14'));var utils=require(_0x79be('0x15'));var config=require(_0x79be('0x16'));var licenseUtil=require(_0x79be('0x17'));var db=require(_0x79be('0x18'))['db'];config[_0x79be('0x19')]=_[_0x79be('0x1a')](config[_0x79be('0x19')],{'host':'localhost','port':0x18eb});var socket=require(_0x79be('0x1b'))(new Redis(config[_0x79be('0x19')]));require('./whatsappQueue.socket')[_0x79be('0x1c')](socket);function respondWithStatusCode(_0x2905ff,_0x1c4f54){_0x1c4f54=_0x1c4f54||0xcc;return function(_0x5af80a){if(_0x5af80a){return _0x2905ff[_0x79be('0x1d')](_0x1c4f54);}return _0x2905ff[_0x79be('0x1e')](_0x1c4f54)[_0x79be('0x1f')]();};}function respondWithResult(_0x5abb7a,_0x270989){_0x270989=_0x270989||0xc8;return function(_0x5ba99b){if(_0x5ba99b){return _0x5abb7a['status'](_0x270989)[_0x79be('0x20')](_0x5ba99b);}};}function respondWithFilteredResult(_0x599d46,_0x5207e7){return function(_0x420d41){if(_0x420d41){var _0x31c7bb=typeof _0x5207e7['offset']===_0x79be('0x21')&&typeof _0x5207e7[_0x79be('0x22')]===_0x79be('0x21');var _0x417e48=_0x420d41[_0x79be('0x23')];var _0x19e863=_0x31c7bb?0x0:_0x5207e7[_0x79be('0x24')];var _0x2fdf71=_0x31c7bb?_0x420d41[_0x79be('0x23')]:_0x5207e7[_0x79be('0x24')]+_0x5207e7[_0x79be('0x22')];var _0x7496a2;if(_0x2fdf71>=_0x417e48){_0x2fdf71=_0x417e48;_0x7496a2=0xc8;}else{_0x7496a2=0xce;}_0x599d46[_0x79be('0x1e')](_0x7496a2);return _0x599d46[_0x79be('0x25')](_0x79be('0x26'),_0x19e863+'-'+_0x2fdf71+'/'+_0x417e48)[_0x79be('0x20')](_0x420d41);}return null;};}function patchUpdates(_0x18c13e){return function(_0x3f09ec){try{jsonpatch[_0x79be('0x27')](_0x3f09ec,_0x18c13e,!![]);}catch(_0x4b18b4){return BPromise['reject'](_0x4b18b4);}return _0x3f09ec['save']();};}function saveUpdates(_0x5df70e,_0x2608ca){return function(_0x3489ff){if(_0x3489ff){return _0x3489ff['update'](_0x5df70e)['then'](function(_0x2541e0){return _0x2541e0;});}return null;};}function removeEntity(_0x594cea,_0x42edd1){return function(_0x54ca37){if(_0x54ca37){return _0x54ca37[_0x79be('0x28')]()[_0x79be('0x29')](function(){var _0x3b0c45=_0x54ca37['get']({'plain':!![]});var _0x2fe7c0='WhatsappQueues';return db[_0x79be('0x2a')]['destroy']({'where':{'type':_0x2fe7c0,'resourceId':_0x3b0c45['id']}})[_0x79be('0x29')](function(){return _0x54ca37;});})[_0x79be('0x29')](function(){_0x594cea['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x4b8000,_0x4bc1f4){return function(_0x31b099){if(!_0x31b099){_0x4b8000[_0x79be('0x1d')](0x194);}return _0x31b099;};}function handleError(_0x44ce9a,_0xb9cc9){_0xb9cc9=_0xb9cc9||0x1f4;return function(_0x5ab46b){logger[_0x79be('0x2b')](_0x5ab46b[_0x79be('0x2c')]);if(_0x5ab46b[_0x79be('0x2d')]){delete _0x5ab46b[_0x79be('0x2d')];}_0x44ce9a[_0x79be('0x1e')](_0xb9cc9)['send'](_0x5ab46b);};}exports['index']=function(_0x31f483,_0x459039){var _0x44d34b={},_0x32db38={},_0x202b2f={'count':0x0,'rows':[]};var _0x57119c=_[_0x79be('0x2e')](db['WhatsappQueue'][_0x79be('0x2f')],function(_0x6b33bc){return{'name':_0x6b33bc[_0x79be('0x30')],'type':_0x6b33bc['type']['key']};});_0x32db38[_0x79be('0x31')]=_[_0x79be('0x2e')](_0x57119c,'name');_0x32db38[_0x79be('0x32')]=_['keys'](_0x31f483[_0x79be('0x32')]);_0x32db38[_0x79be('0x33')]=_['intersection'](_0x32db38['model'],_0x32db38[_0x79be('0x32')]);_0x44d34b[_0x79be('0x34')]=_[_0x79be('0x35')](_0x32db38[_0x79be('0x31')],qs[_0x79be('0x36')](_0x31f483[_0x79be('0x32')][_0x79be('0x36')]));_0x44d34b['attributes']=_0x44d34b[_0x79be('0x34')][_0x79be('0x37')]?_0x44d34b[_0x79be('0x34')]:_0x32db38[_0x79be('0x31')];if(!_0x31f483[_0x79be('0x32')]['hasOwnProperty']('nolimit')){_0x44d34b[_0x79be('0x22')]=qs[_0x79be('0x22')](_0x31f483[_0x79be('0x32')]['limit']);_0x44d34b[_0x79be('0x24')]=qs['offset'](_0x31f483[_0x79be('0x32')][_0x79be('0x24')]);}_0x44d34b[_0x79be('0x38')]=qs[_0x79be('0x39')](_0x31f483['query'][_0x79be('0x39')]);_0x44d34b[_0x79be('0x3a')]=qs[_0x79be('0x33')](_[_0x79be('0x3b')](_0x31f483['query'],_0x32db38[_0x79be('0x33')]),_0x57119c);if(_0x31f483[_0x79be('0x32')][_0x79be('0x3c')]){_0x44d34b[_0x79be('0x3a')]=_[_0x79be('0x3d')](_0x44d34b[_0x79be('0x3a')],{'$or':_[_0x79be('0x2e')](_0x57119c,function(_0x34d1f6){if(_0x34d1f6[_0x79be('0x3e')]!==_0x79be('0x3f')){var _0x47d865={};_0x47d865[_0x34d1f6[_0x79be('0x2d')]]={'$like':'%'+_0x31f483[_0x79be('0x32')][_0x79be('0x3c')]+'%'};return _0x47d865;}})});}_0x44d34b=_['merge']({},_0x44d34b,_0x31f483['options']);var _0x25771a={'where':_0x44d34b[_0x79be('0x3a')]};return db[_0x79be('0x40')][_0x79be('0x23')](_0x25771a)[_0x79be('0x29')](function(_0x44e3e7){_0x202b2f[_0x79be('0x23')]=_0x44e3e7;if(_0x31f483['query'][_0x79be('0x41')]){_0x44d34b[_0x79be('0x42')]=[{'all':!![]}];}return db[_0x79be('0x40')][_0x79be('0x43')](_0x44d34b);})[_0x79be('0x29')](function(_0x52cc36){_0x202b2f[_0x79be('0x44')]=_0x52cc36;return _0x202b2f;})[_0x79be('0x29')](respondWithFilteredResult(_0x459039,_0x44d34b))['catch'](handleError(_0x459039,null));};exports['show']=function(_0x4aab59,_0x3e6f69){var _0xaf4677={'raw':!![],'where':{'id':_0x4aab59[_0x79be('0x45')]['id']}},_0x30e287={};_0x30e287[_0x79be('0x31')]=_[_0x79be('0x46')](db[_0x79be('0x40')][_0x79be('0x2f')]);_0x30e287[_0x79be('0x32')]=_[_0x79be('0x46')](_0x4aab59[_0x79be('0x32')]);_0x30e287[_0x79be('0x33')]=_[_0x79be('0x35')](_0x30e287[_0x79be('0x31')],_0x30e287['query']);_0xaf4677[_0x79be('0x34')]=_[_0x79be('0x35')](_0x30e287[_0x79be('0x31')],qs['fields'](_0x4aab59[_0x79be('0x32')]['fields']));_0xaf4677['attributes']=_0xaf4677[_0x79be('0x34')][_0x79be('0x37')]?_0xaf4677[_0x79be('0x34')]:_0x30e287[_0x79be('0x31')];if(_0x4aab59[_0x79be('0x32')]['includeAll']){_0xaf4677[_0x79be('0x42')]=[{'all':!![]}];}_0xaf4677=_[_0x79be('0x3d')]({},_0xaf4677,_0x4aab59[_0x79be('0x47')]);return db['WhatsappQueue'][_0x79be('0x48')](_0xaf4677)[_0x79be('0x29')](handleEntityNotFound(_0x3e6f69,null))[_0x79be('0x29')](respondWithResult(_0x3e6f69,null))[_0x79be('0x49')](handleError(_0x3e6f69,null));};exports[_0x79be('0x4a')]=function(_0x5a681c,_0x13d3e3){return db[_0x79be('0x40')]['create'](_0x5a681c[_0x79be('0x4b')],{})[_0x79be('0x29')](function(_0x1cc574){var _0x5248f6=_0x5a681c['user']['get']({'plain':!![]});if(!_0x5248f6)throw new Error(_0x79be('0x4c'));if(_0x5248f6[_0x79be('0x4d')]===_0x79be('0x4e')){var _0x3d91d6=_0x1cc574[_0x79be('0x4f')]({'plain':!![]});var _0x3f0947=_0x79be('0x50');return db[_0x79be('0x51')][_0x79be('0x48')]({'where':{'name':_0x3f0947,'userProfileId':_0x5248f6[_0x79be('0x52')]},'raw':!![]})[_0x79be('0x29')](function(_0x3fa6e7){if(_0x3fa6e7&&_0x3fa6e7['autoAssociation']===0x0){return db['UserProfileResource'][_0x79be('0x4a')]({'name':_0x3d91d6[_0x79be('0x2d')],'resourceId':_0x3d91d6['id'],'type':_0x3fa6e7[_0x79be('0x2d')],'sectionId':_0x3fa6e7['id']},{})[_0x79be('0x29')](function(){return _0x1cc574;});}else{return _0x1cc574;}})[_0x79be('0x49')](function(_0x2964dd){logger['error'](_0x79be('0x53'),_0x2964dd);throw _0x2964dd;});}return _0x1cc574;})['then'](respondWithResult(_0x13d3e3,0xc9))[_0x79be('0x49')](handleError(_0x13d3e3,null));};exports[_0x79be('0x54')]=function(_0x2e7aaf,_0x1de6f5){if(_0x2e7aaf[_0x79be('0x4b')]['id']){delete _0x2e7aaf[_0x79be('0x4b')]['id'];}return db[_0x79be('0x40')][_0x79be('0x48')]({'where':{'id':_0x2e7aaf[_0x79be('0x45')]['id']}})[_0x79be('0x29')](handleEntityNotFound(_0x1de6f5,null))[_0x79be('0x29')](saveUpdates(_0x2e7aaf[_0x79be('0x4b')],null))[_0x79be('0x29')](respondWithResult(_0x1de6f5,null))[_0x79be('0x49')](handleError(_0x1de6f5,null));};exports['destroy']=function(_0x4cca79,_0x42728b){return db[_0x79be('0x40')][_0x79be('0x48')]({'where':{'id':_0x4cca79[_0x79be('0x45')]['id']}})[_0x79be('0x29')](handleEntityNotFound(_0x42728b,null))['then'](removeEntity(_0x42728b,null))[_0x79be('0x49')](handleError(_0x42728b,null));};exports['describe']=function(_0x34f0f7,_0x50c80f){return db[_0x79be('0x40')][_0x79be('0x55')]()[_0x79be('0x29')](respondWithResult(_0x50c80f,null))[_0x79be('0x49')](handleError(_0x50c80f,null));};exports['getMembers']=function(_0x2df891,_0x241257,_0x32d6ed){var _0x356756={'raw':!![],'where':{}},_0x31c58f={},_0x4210fd;return db[_0x79be('0x40')][_0x79be('0x56')]({'where':{'id':_0x2df891[_0x79be('0x45')]['id']}})[_0x79be('0x29')](handleEntityNotFound(_0x241257,null))['then'](function(_0x50ec1e){if(_0x50ec1e){_0x4210fd=_0x50ec1e[_0x79be('0x4f')]({'plain':!![]});_0x31c58f['model']=_[_0x79be('0x46')](db[_0x79be('0x57')]['rawAttributes']);_0x31c58f[_0x79be('0x32')]=_[_0x79be('0x46')](_0x2df891[_0x79be('0x32')]);_0x31c58f[_0x79be('0x33')]=_[_0x79be('0x35')](_0x31c58f['model'],_0x31c58f[_0x79be('0x32')]);_0x356756['attributes']=_[_0x79be('0x35')](_0x31c58f[_0x79be('0x31')],qs[_0x79be('0x36')](_0x2df891[_0x79be('0x32')]['fields']));_0x356756['attributes']=_0x356756['attributes']['length']?_0x356756[_0x79be('0x34')]:_0x31c58f[_0x79be('0x31')];if(!_0x2df891[_0x79be('0x32')][_0x79be('0x58')](_0x79be('0x59'))){_0x356756['limit']=qs[_0x79be('0x22')](_0x2df891[_0x79be('0x32')][_0x79be('0x22')]);_0x356756[_0x79be('0x24')]=qs[_0x79be('0x24')](_0x2df891['query'][_0x79be('0x24')]);}_0x356756[_0x79be('0x38')]=qs['sort'](_0x2df891[_0x79be('0x32')][_0x79be('0x39')]);_0x356756[_0x79be('0x3a')]=qs['filters'](_[_0x79be('0x3b')](_0x2df891[_0x79be('0x32')],_0x31c58f[_0x79be('0x33')]));_0x356756[_0x79be('0x3a')][_0x79be('0x5a')]=_0x50ec1e['id'];if(_0x2df891['query'][_0x79be('0x3c')]){_0x356756[_0x79be('0x3a')]=_['merge'](_0x356756[_0x79be('0x3a')],{'$or':_[_0x79be('0x2e')](_0x356756[_0x79be('0x34')],function(_0xa38de5){var _0x5cd8b6={};_0x5cd8b6[_0xa38de5]={'$like':'%'+_0x2df891['query'][_0x79be('0x3c')]+'%'};return _0x5cd8b6;})});}_0x356756=_[_0x79be('0x3d')]({},_0x356756,_0x2df891['options']);return db['UserWhatsappQueue'][_0x79be('0x43')](_0x356756);}})[_0x79be('0x29')](function(_0x1a04b5){if(_0x1a04b5){return db[_0x79be('0x5b')]['findAndCountAll']({'where':{'id':_[_0x79be('0x2e')](_0x1a04b5,_0x79be('0x5c')),'role':_0x79be('0x5d')},'attributes':['id',_0x79be('0x2d'),_0x79be('0x5e'),_0x79be('0x5f'),_0x79be('0x60')]});}})[_0x79be('0x29')](function(_0x1170eb){if(_0x1170eb){return{'count':_0x1170eb[_0x79be('0x23')],'rows':_[_0x79be('0x2e')](_0x1170eb[_0x79be('0x44')],function(_0x565697){return{'membername':_0x565697['name'],'UserId':_0x565697['id'],'queue_name':_0x4210fd['name'],'WhatsappQueueId':_0x4210fd['id'],'interface':util[_0x79be('0x61')](_0x79be('0x62'),_0x79be('0x63'),_0x565697[_0x79be('0x2d')]),'penalty':0x0,'paused':_0x565697['whatsappPause'],'createdAt':_0x565697[_0x79be('0x60')],'updatedAt':_0x565697[_0x79be('0x5f')]};})};}else{return{'count':0x0,'rows':[]};}})[_0x79be('0x29')](respondWithFilteredResult(_0x241257,_0x356756))[_0x79be('0x49')](handleError(_0x241257,null));};exports[_0x79be('0x64')]=function(_0x2d3cf2,_0x5ada8d,_0x45b326){var _0x31865c={};var _0x168e52={};var _0x4f4c1d;var _0x1d1e98;return db['WhatsappQueue']['findOne']({'where':{'id':_0x2d3cf2['params']['id']}})[_0x79be('0x29')](handleEntityNotFound(_0x5ada8d,null))['then'](function(_0x30ec10){if(_0x30ec10){_0x4f4c1d=_0x30ec10;_0x168e52[_0x79be('0x31')]=_[_0x79be('0x46')](db['Team']['rawAttributes']);_0x168e52[_0x79be('0x32')]=_[_0x79be('0x46')](_0x2d3cf2['query']);_0x168e52[_0x79be('0x33')]=_[_0x79be('0x35')](_0x168e52[_0x79be('0x31')],_0x168e52[_0x79be('0x32')]);_0x31865c[_0x79be('0x34')]=_[_0x79be('0x35')](_0x168e52[_0x79be('0x31')],qs[_0x79be('0x36')](_0x2d3cf2[_0x79be('0x32')][_0x79be('0x36')]));_0x31865c[_0x79be('0x34')]=_0x31865c[_0x79be('0x34')][_0x79be('0x37')]?_0x31865c[_0x79be('0x34')]:_0x168e52[_0x79be('0x31')];_0x31865c[_0x79be('0x38')]=qs[_0x79be('0x39')](_0x2d3cf2[_0x79be('0x32')][_0x79be('0x39')]);_0x31865c[_0x79be('0x3a')]=qs[_0x79be('0x33')](_[_0x79be('0x3b')](_0x2d3cf2[_0x79be('0x32')],_0x168e52[_0x79be('0x33')]));if(_0x2d3cf2[_0x79be('0x32')][_0x79be('0x3c')]){_0x31865c[_0x79be('0x3a')]=_[_0x79be('0x3d')](_0x31865c[_0x79be('0x3a')],{'$or':_[_0x79be('0x2e')](_0x31865c['attributes'],function(_0xf5c836){var _0xecc10e={};_0xecc10e[_0xf5c836]={'$like':'%'+_0x2d3cf2[_0x79be('0x32')][_0x79be('0x3c')]+'%'};return _0xecc10e;})});}_0x31865c=_[_0x79be('0x3d')]({},_0x31865c,_0x2d3cf2[_0x79be('0x47')]);return _0x4f4c1d[_0x79be('0x64')](_0x31865c);}})[_0x79be('0x29')](function(_0x5d012d){if(_0x5d012d){_0x1d1e98=_0x5d012d['length'];if(!_0x2d3cf2[_0x79be('0x32')][_0x79be('0x58')](_0x79be('0x59'))){_0x31865c[_0x79be('0x22')]=qs[_0x79be('0x22')](_0x2d3cf2['query'][_0x79be('0x22')]);_0x31865c['offset']=qs[_0x79be('0x24')](_0x2d3cf2['query'][_0x79be('0x24')]);}return _0x4f4c1d[_0x79be('0x64')](_0x31865c);}})['then'](function(_0xadccc6){if(_0xadccc6){return _0xadccc6?{'count':_0x1d1e98,'rows':_0xadccc6}:null;}})['then'](respondWithResult(_0x5ada8d,null))['catch'](handleError(_0x5ada8d,null));};exports[_0x79be('0x65')]=function(_0x2f3bd5,_0xf83256,_0x103320){var _0x177746=_0x2f3bd5[_0x79be('0x4b')][_0x79be('0x66')];return db[_0x79be('0x67')]['findAll']({'where':{'id':_0x177746},'attributes':['id'],'include':[{'model':db['User'],'as':_0x79be('0x68'),'attributes':['id','name',_0x79be('0x69'),_0x79be('0x6a'),_0x79be('0x6b')],'raw':!![]}]})['then'](function(_0xee0878){if(_0xee0878){var _0x2c72ed=_[_0x79be('0x6c')](_0xee0878,function(_0x12017a){var _0x2436dd=_0x12017a[_0x79be('0x4f')]({'plain':!![]});return _0x2436dd[_0x79be('0x68')];});return db[_0x79be('0x40')][_0x79be('0x48')]({'where':{'id':_0x2f3bd5[_0x79be('0x45')]['id']}})[_0x79be('0x29')](function(_0x5cd380){return db[_0x79be('0x6d')]['transaction'](function(_0x94aff2){return _0x5cd380[_0x79be('0x65')](_0x177746,{'transaction':_0x94aff2})[_0x79be('0x29')](function(){return BPromise['each'](_0x2c72ed,function(_0x5292e1){return db['UserWhatsappQueue'][_0x79be('0x6e')]({'where':{'UserId':_0x5292e1['id'],'WhatsappQueueId':_0x2f3bd5['params']['id']},'transaction':_0x94aff2});});})[_0x79be('0x29')](function(){_0x2c72ed[_0x79be('0x6f')](function(_0x34b781){socket[_0x79be('0x70')](_0x79be('0x71'),{'UserId':_0x34b781['id'],'WhatsappQueueId':_0x5cd380['id']});});});});});}})['then'](respondWithStatusCode(_0xf83256,null))[_0x79be('0x49')](handleError(_0xf83256,null));};exports[_0x79be('0x72')]=function(_0x3d5070,_0x4228ab,_0x262070){return db[_0x79be('0x67')][_0x79be('0x43')]({'where':{'id':_0x3d5070[_0x79be('0x32')][_0x79be('0x66')]},'attributes':['id'],'include':[{'model':db[_0x79be('0x5b')],'as':'Agents','attributes':['id'],'raw':!![]}]})['then'](handleEntityNotFound(_0x4228ab,null))[_0x79be('0x29')](function(_0x5f57f7){var _0x2e1bef=_[_0x79be('0x2e')](_0x5f57f7,'id');var _0x7c064d=[];var _0x1a4fda=[];var _0x5cf159=squel['select']();_0x5cf159[_0x79be('0x73')](_0x79be('0x74'))['from'](_0x79be('0x75'),'tq')[_0x79be('0x76')](_0x79be('0x77'),'ut',_0x79be('0x78'))[_0x79be('0x3a')](_0x79be('0x79'),_0x3d5070[_0x79be('0x45')]['id']);for(var _0x271e15=0x0;_0x271e15<_0x5f57f7[_0x79be('0x37')];_0x271e15+=0x1){let _0x1605f5=_0x5f57f7[_0x271e15];for(var _0x34cb09=0x0;_0x34cb09<_0x1605f5[_0x79be('0x68')][_0x79be('0x37')];_0x34cb09+=0x1){let _0x500029=_0x1605f5[_0x79be('0x68')][_0x34cb09];var _0x39620d=_0x5cf159[_0x79be('0x7a')]();_0x39620d[_0x79be('0x3a')](_0x79be('0x7b'),_0x500029['id']);_0x1a4fda[_0x79be('0x7c')](db[_0x79be('0x6d')][_0x79be('0x32')](_0x39620d[_0x79be('0x7d')](),{'type':db[_0x79be('0x6d')][_0x79be('0x7e')]['SELECT']})[_0x79be('0x29')](function(_0x37d275){if(_0x37d275[_0x79be('0x37')]===0x1){return _0x500029['id'];}else{var _0x123c7a=_[_0x79be('0x7f')](_[_0x79be('0x2e')](_0x37d275,'TeamId'),function(_0x405763){return _['includes'](_0x2e1bef,_0x405763);});if(_0x123c7a){return _0x500029['id'];}}}));}}return BPromise[_0x79be('0x80')](_0x1a4fda)[_0x79be('0x29')](function(_0x29889d){_0x7c064d=_(_0x7c064d)['union'](_0x29889d)[_0x79be('0x81')]()[_0x79be('0x82')]();return db[_0x79be('0x40')][_0x79be('0x48')]({'where':{'id':_0x3d5070[_0x79be('0x45')]['id']}})[_0x79be('0x29')](function(_0x4df19){return db[_0x79be('0x6d')][_0x79be('0x83')](function(_0x317d7f){return _0x4df19[_0x79be('0x72')](_0x3d5070[_0x79be('0x32')][_0x79be('0x66')],{'transaction':_0x317d7f})[_0x79be('0x29')](function(){if(!_[_0x79be('0x84')](_0x7c064d)){return _0x4df19[_0x79be('0x85')](_0x7c064d,{'transaction':_0x317d7f});}})[_0x79be('0x29')](function(){_0x7c064d[_0x79be('0x6f')](function(_0x2f8970){socket[_0x79be('0x70')]('userWhatsappQueue:remove',{'UserId':_0x2f8970,'WhatsappQueueId':_0x4df19['id']});});});});});});})['then'](respondWithStatusCode(_0x4228ab,null))['catch'](handleError(_0x4228ab,null));};exports[_0x79be('0x86')]=function(_0x2990fe,_0x1aa3c5,_0x39686e){return db[_0x79be('0x40')][_0x79be('0x48')]({'where':{'id':_0x2990fe[_0x79be('0x45')]['id']}})[_0x79be('0x29')](handleEntityNotFound(_0x1aa3c5,null))[_0x79be('0x29')](function(_0x3b46c0){if(_0x3b46c0){return _0x3b46c0[_0x79be('0x86')](_0x2990fe['body'][_0x79be('0x66')],_[_0x79be('0x87')](_0x2990fe[_0x79be('0x4b')],[_0x79be('0x66'),'id'])||{})['spread'](function(_0x192106){for(var _0x2253c5=0x0;_0x2253c5<_0x2990fe['body'][_0x79be('0x66')][_0x79be('0x37')];_0x2253c5+=0x1){socket['emit'](_0x79be('0x71'),{'UserId':Number(_0x2990fe[_0x79be('0x4b')][_0x79be('0x66')][_0x2253c5]),'WhatsappQueueId':Number(_0x2990fe['params']['id'])});}return _0x192106;});}})[_0x79be('0x29')](respondWithResult(_0x1aa3c5,null))[_0x79be('0x49')](handleError(_0x1aa3c5,null));};exports[_0x79be('0x85')]=function(_0x167747,_0x16087c,_0x47277f){return db['WhatsappQueue'][_0x79be('0x48')]({'where':{'id':_0x167747['params']['id']}})[_0x79be('0x29')](handleEntityNotFound(_0x16087c,null))[_0x79be('0x29')](function(_0x493a07){if(_0x493a07){return _0x493a07[_0x79be('0x85')](_0x167747[_0x79be('0x32')][_0x79be('0x66')])[_0x79be('0x29')](function(){if(_[_0x79be('0x88')](_0x167747[_0x79be('0x32')]['ids'])){for(var _0x53b89f=0x0;_0x53b89f<_0x167747[_0x79be('0x32')][_0x79be('0x66')]['length'];_0x53b89f+=0x1){socket[_0x79be('0x70')](_0x79be('0x89'),{'UserId':Number(_0x167747[_0x79be('0x32')]['ids'][_0x53b89f]),'WhatsappQueueId':Number(_0x167747[_0x79be('0x45')]['id'])});}}else{socket[_0x79be('0x70')](_0x79be('0x89'),{'UserId':Number(_0x167747[_0x79be('0x32')][_0x79be('0x66')]),'WhatsappQueueId':Number(_0x167747[_0x79be('0x45')]['id'])});}});}})[_0x79be('0x29')](respondWithStatusCode(_0x16087c,null))['catch'](handleError(_0x16087c,null));};exports[_0x79be('0x8a')]=function(_0x5976e3,_0x11feac,_0x5b85f8){var _0x4d3f95={};var _0x414c47={};var _0x524490;var _0x3500f1;return db[_0x79be('0x40')][_0x79be('0x56')]({'where':{'id':_0x5976e3[_0x79be('0x45')]['id']}})[_0x79be('0x29')](handleEntityNotFound(_0x11feac,null))['then'](function(_0x338e5b){if(_0x338e5b){_0x524490=_0x338e5b;_0x414c47[_0x79be('0x31')]=_[_0x79be('0x46')](db['User'][_0x79be('0x2f')]);_0x414c47['query']=_['keys'](_0x5976e3[_0x79be('0x32')]);_0x414c47['filters']=_[_0x79be('0x35')](_0x414c47['model'],_0x414c47[_0x79be('0x32')]);_0x4d3f95[_0x79be('0x34')]=_[_0x79be('0x35')](_0x414c47[_0x79be('0x31')],qs[_0x79be('0x36')](_0x5976e3['query'][_0x79be('0x36')]));_0x4d3f95[_0x79be('0x34')]=_0x4d3f95[_0x79be('0x34')][_0x79be('0x37')]?_0x4d3f95[_0x79be('0x34')]:_0x414c47[_0x79be('0x31')];_0x4d3f95['order']=qs['sort'](_0x5976e3[_0x79be('0x32')][_0x79be('0x39')]);_0x4d3f95[_0x79be('0x3a')]=qs[_0x79be('0x33')](_[_0x79be('0x3b')](_0x5976e3[_0x79be('0x32')],_0x414c47[_0x79be('0x33')]));if(_0x5976e3[_0x79be('0x32')][_0x79be('0x3c')]){_0x4d3f95[_0x79be('0x3a')]=_[_0x79be('0x3d')](_0x4d3f95[_0x79be('0x3a')],{'$or':_[_0x79be('0x2e')](_0x4d3f95[_0x79be('0x34')],function(_0x4fa2e6){var _0x2427eb={};_0x2427eb[_0x4fa2e6]={'$like':'%'+_0x5976e3['query'][_0x79be('0x3c')]+'%'};return _0x2427eb;})});}_0x4d3f95=_[_0x79be('0x3d')]({},_0x4d3f95,_0x5976e3['options']);return _0x524490[_0x79be('0x8a')](_0x4d3f95);}})[_0x79be('0x29')](function(_0x20afd9){if(_0x20afd9){_0x3500f1=_0x20afd9['length'];if(!_0x5976e3[_0x79be('0x32')][_0x79be('0x58')](_0x79be('0x59'))){_0x4d3f95['limit']=qs['limit'](_0x5976e3[_0x79be('0x32')][_0x79be('0x22')]);_0x4d3f95[_0x79be('0x24')]=qs['offset'](_0x5976e3[_0x79be('0x32')][_0x79be('0x24')]);}return _0x524490[_0x79be('0x8a')](_0x4d3f95);}})['then'](function(_0x3ba57c){if(_0x3ba57c){return _0x3ba57c?{'count':_0x3500f1,'rows':_0x3ba57c}:null;}})[_0x79be('0x29')](respondWithResult(_0x11feac,null))['catch'](handleError(_0x11feac,null));};