Built motion from commit (unavailable).|2.5.22
[motion2.git] / server / api / team / team.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 _0xd523=['name','send','map','rawAttributes','type','key','model','query','keys','filters','attributes','intersection','fields','length','hasOwnProperty','limit','sort','where','pick','VIRTUAL','merge','options','Team','rows','catch','show','params','includeAll','find','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','getQueues','channel','Sequelize','ValidationError','capitalize','Queue','order','toLowerCase','Queues','addQueues','findOne','isValidChannel','Unknown\x20channel','add','ids','removeQueues','addAgents','Voice','Mail','Openchannel','through','penalty','QueueId','TeamVoiceQueue','findOrCreate','Queue:save','online','interface','UserVoiceQueueRt','upsert','isNil','format','voicePause','all','spread','removeAgents','Chat','Sms','Fax','Whatsapp','sequelize','transaction','getAgents','User','filter','nolimit','html-pdf','eml-format','rimraf','zip-dir','request-promise','moment','bluebird','util','path','sox','to-csv','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/license/util','defaults','redis','./team.socket','register','sendStatus','status','end','json','count','offset','set','Content-Range','apply','save','update','then','destroy','get','UserProfileResource','error'];(function(_0x1a45d2,_0x461b4b){var _0x35866f=function(_0x2e0fbe){while(--_0x2e0fbe){_0x1a45d2['push'](_0x1a45d2['shift']());}};_0x35866f(++_0x461b4b);}(_0xd523,0x153));var _0x3d52=function(_0x44eb19,_0x5a7fd6){_0x44eb19=_0x44eb19-0x0;var _0x1e4611=_0xd523[_0x44eb19];return _0x1e4611;};'use strict';var pdf=require(_0x3d52('0x0'));var emlformat=require(_0x3d52('0x1'));var rimraf=require(_0x3d52('0x2'));var zipdir=require(_0x3d52('0x3'));var jsonpatch=require('fast-json-patch');var rp=require(_0x3d52('0x4'));var moment=require(_0x3d52('0x5'));var BPromise=require(_0x3d52('0x6'));var Mustache=require('mustache');var util=require(_0x3d52('0x7'));var path=require(_0x3d52('0x8'));var sox=require(_0x3d52('0x9'));var csv=require(_0x3d52('0xa'));var ejs=require('ejs');var fs=require('fs');var _=require('lodash');var squel=require(_0x3d52('0xb'));var crypto=require(_0x3d52('0xc'));var jsforce=require(_0x3d52('0xd'));var deskjs=require(_0x3d52('0xe'));var toCsv=require(_0x3d52('0xa'));var querystring=require(_0x3d52('0xf'));var Papa=require(_0x3d52('0x10'));var Redis=require(_0x3d52('0x11'));var authService=require(_0x3d52('0x12'));var qs=require('../../components/parsers/qs');var as=require(_0x3d52('0x13'));var hardwareService=require(_0x3d52('0x14'));var logger=require(_0x3d52('0x15'))(_0x3d52('0x16'));var utils=require(_0x3d52('0x17'));var config=require('../../config/environment');var licenseUtil=require(_0x3d52('0x18'));var db=require('../../mysqldb')['db'];config['redis']=_[_0x3d52('0x19')](config[_0x3d52('0x1a')],{'host':'localhost','port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config['redis']));require(_0x3d52('0x1b'))[_0x3d52('0x1c')](socket);function respondWithStatusCode(_0x1430c1,_0x2fd86e){_0x2fd86e=_0x2fd86e||0xcc;return function(_0x336261){if(_0x336261){return _0x1430c1[_0x3d52('0x1d')](_0x2fd86e);}return _0x1430c1[_0x3d52('0x1e')](_0x2fd86e)[_0x3d52('0x1f')]();};}function respondWithResult(_0x2e956d,_0x360659){_0x360659=_0x360659||0xc8;return function(_0x153c89){if(_0x153c89){return _0x2e956d[_0x3d52('0x1e')](_0x360659)[_0x3d52('0x20')](_0x153c89);}};}function respondWithFilteredResult(_0x10ec1e,_0x1dcea9){return function(_0x5bce9a){if(_0x5bce9a){var _0x163d88=_0x5bce9a[_0x3d52('0x21')],_0x3b3451=_0x1dcea9[_0x3d52('0x22')],_0x386cdb=_0x1dcea9[_0x3d52('0x22')]+_0x1dcea9['limit'],_0x54a514;if(_0x386cdb>=_0x163d88){_0x386cdb=_0x163d88;_0x54a514=0xc8;}else{_0x54a514=0xce;}_0x10ec1e[_0x3d52('0x1e')](_0x54a514);return _0x10ec1e[_0x3d52('0x23')](_0x3d52('0x24'),_0x3b3451+'-'+_0x386cdb+'/'+_0x163d88)[_0x3d52('0x20')](_0x5bce9a);}return null;};}function patchUpdates(_0x3bd95f){return function(_0xc0c16e){try{jsonpatch[_0x3d52('0x25')](_0xc0c16e,_0x3bd95f,!![]);}catch(_0x34b572){return BPromise['reject'](_0x34b572);}return _0xc0c16e[_0x3d52('0x26')]();};}function saveUpdates(_0x10f432,_0xd31ce4){return function(_0x5826c9){if(_0x5826c9){return _0x5826c9[_0x3d52('0x27')](_0x10f432)[_0x3d52('0x28')](function(_0x423d33){return _0x423d33;});}return null;};}function removeEntity(_0xc6c76,_0x3816bc){return function(_0x349b30){if(_0x349b30){return _0x349b30[_0x3d52('0x29')]()[_0x3d52('0x28')](function(){var _0x44ba59=_0x349b30[_0x3d52('0x2a')]({'plain':!![]});var _0x1ef6db='Teams';return db[_0x3d52('0x2b')][_0x3d52('0x29')]({'where':{'type':_0x1ef6db,'resourceId':_0x44ba59['id']}})[_0x3d52('0x28')](function(){return _0x349b30;});})[_0x3d52('0x28')](function(){_0xc6c76['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x473842,_0x11bf44){return function(_0x28e50d){if(!_0x28e50d){_0x473842['sendStatus'](0x194);}return _0x28e50d;};}function handleError(_0x209cca,_0x4312a7){_0x4312a7=_0x4312a7||0x1f4;return function(_0x2fd0ec){logger[_0x3d52('0x2c')](_0x2fd0ec['stack']);if(_0x2fd0ec[_0x3d52('0x2d')]){delete _0x2fd0ec[_0x3d52('0x2d')];}_0x209cca[_0x3d52('0x1e')](_0x4312a7)[_0x3d52('0x2e')](_0x2fd0ec);};}exports['index']=function(_0x12538a,_0x5a7455){var _0x5f006b={},_0x389582={},_0x45eabe={'count':0x0,'rows':[]};var _0x5e4e7b=_[_0x3d52('0x2f')](db['Team'][_0x3d52('0x30')],function(_0x4c0273){return{'name':_0x4c0273['fieldName'],'type':_0x4c0273[_0x3d52('0x31')][_0x3d52('0x32')]};});_0x389582[_0x3d52('0x33')]=_[_0x3d52('0x2f')](_0x5e4e7b,_0x3d52('0x2d'));_0x389582[_0x3d52('0x34')]=_[_0x3d52('0x35')](_0x12538a[_0x3d52('0x34')]);_0x389582[_0x3d52('0x36')]=_['intersection'](_0x389582[_0x3d52('0x33')],_0x389582[_0x3d52('0x34')]);_0x5f006b[_0x3d52('0x37')]=_[_0x3d52('0x38')](_0x389582['model'],qs[_0x3d52('0x39')](_0x12538a[_0x3d52('0x34')]['fields']));_0x5f006b[_0x3d52('0x37')]=_0x5f006b['attributes'][_0x3d52('0x3a')]?_0x5f006b[_0x3d52('0x37')]:_0x389582[_0x3d52('0x33')];if(!_0x12538a['query'][_0x3d52('0x3b')]('nolimit')){_0x5f006b[_0x3d52('0x3c')]=qs[_0x3d52('0x3c')](_0x12538a[_0x3d52('0x34')]['limit']);_0x5f006b['offset']=qs[_0x3d52('0x22')](_0x12538a[_0x3d52('0x34')][_0x3d52('0x22')]);}_0x5f006b['order']=qs[_0x3d52('0x3d')](_0x12538a[_0x3d52('0x34')][_0x3d52('0x3d')]);_0x5f006b[_0x3d52('0x3e')]=qs['filters'](_[_0x3d52('0x3f')](_0x12538a['query'],_0x389582['filters']),_0x5e4e7b);if(_0x12538a[_0x3d52('0x34')]['filter']){_0x5f006b[_0x3d52('0x3e')]=_['merge'](_0x5f006b[_0x3d52('0x3e')],{'$or':_['map'](_0x5e4e7b,function(_0x576562){if(_0x576562[_0x3d52('0x31')]!==_0x3d52('0x40')){var _0x5cecb5={};_0x5cecb5[_0x576562[_0x3d52('0x2d')]]={'$like':'%'+_0x12538a[_0x3d52('0x34')]['filter']+'%'};return _0x5cecb5;}})});}_0x5f006b=_[_0x3d52('0x41')]({},_0x5f006b,_0x12538a[_0x3d52('0x42')]);var _0x25702d={'where':_0x5f006b[_0x3d52('0x3e')]};return db[_0x3d52('0x43')][_0x3d52('0x21')](_0x25702d)[_0x3d52('0x28')](function(_0x5cf4b9){_0x45eabe['count']=_0x5cf4b9;if(_0x12538a['query']['includeAll']){_0x5f006b['include']=[{'all':!![]}];}return db[_0x3d52('0x43')]['findAll'](_0x5f006b);})[_0x3d52('0x28')](function(_0x49064e){_0x45eabe[_0x3d52('0x44')]=_0x49064e;return _0x45eabe;})[_0x3d52('0x28')](respondWithFilteredResult(_0x5a7455,_0x5f006b))[_0x3d52('0x45')](handleError(_0x5a7455,null));};exports[_0x3d52('0x46')]=function(_0x5cdeb7,_0x394200){var _0x1e0487={'raw':![],'where':{'id':_0x5cdeb7[_0x3d52('0x47')]['id']}},_0x5dd63c={};_0x5dd63c[_0x3d52('0x33')]=_[_0x3d52('0x35')](db['Team'][_0x3d52('0x30')]);_0x5dd63c['query']=_['keys'](_0x5cdeb7['query']);_0x5dd63c['filters']=_[_0x3d52('0x38')](_0x5dd63c[_0x3d52('0x33')],_0x5dd63c[_0x3d52('0x34')]);_0x1e0487['attributes']=_[_0x3d52('0x38')](_0x5dd63c['model'],qs[_0x3d52('0x39')](_0x5cdeb7[_0x3d52('0x34')]['fields']));_0x1e0487[_0x3d52('0x37')]=_0x1e0487[_0x3d52('0x37')][_0x3d52('0x3a')]?_0x1e0487[_0x3d52('0x37')]:_0x5dd63c['model'];if(_0x5cdeb7['query'][_0x3d52('0x48')]){_0x1e0487['include']=[{'all':!![]}];}_0x1e0487=_[_0x3d52('0x41')]({},_0x1e0487,_0x5cdeb7[_0x3d52('0x42')]);return db[_0x3d52('0x43')][_0x3d52('0x49')](_0x1e0487)['then'](handleEntityNotFound(_0x394200,null))[_0x3d52('0x28')](respondWithResult(_0x394200,null))['catch'](handleError(_0x394200,null));};exports[_0x3d52('0x4a')]=function(_0x2911da,_0x524b9a){return db[_0x3d52('0x43')][_0x3d52('0x4a')](_0x2911da[_0x3d52('0x4b')],{})[_0x3d52('0x28')](function(_0x2b0c0e){var _0x3f4db8=_0x2911da[_0x3d52('0x4c')][_0x3d52('0x2a')]({'plain':!![]});if(!_0x3f4db8)throw new Error(_0x3d52('0x4d'));if(_0x3f4db8['role']===_0x3d52('0x4c')){var _0x380699=_0x2b0c0e['get']({'plain':!![]});var _0x237a6e='Teams';return db[_0x3d52('0x4e')][_0x3d52('0x49')]({'where':{'name':_0x237a6e,'userProfileId':_0x3f4db8[_0x3d52('0x4f')]},'raw':!![]})['then'](function(_0x2cb287){if(_0x2cb287&&_0x2cb287[_0x3d52('0x50')]===0x0){return db['UserProfileResource']['create']({'name':_0x380699[_0x3d52('0x2d')],'resourceId':_0x380699['id'],'type':_0x2cb287[_0x3d52('0x2d')],'sectionId':_0x2cb287['id']},{})['then'](function(){return _0x2b0c0e;});}else{return _0x2b0c0e;}})[_0x3d52('0x45')](function(_0x146a5b){logger[_0x3d52('0x2c')](_0x3d52('0x51'),_0x146a5b);throw _0x146a5b;});}return _0x2b0c0e;})[_0x3d52('0x28')](respondWithResult(_0x524b9a,0xc9))[_0x3d52('0x45')](handleError(_0x524b9a,null));};exports['update']=function(_0x2828d2,_0x1783d5){if(_0x2828d2[_0x3d52('0x4b')]['id']){delete _0x2828d2[_0x3d52('0x4b')]['id'];}return db[_0x3d52('0x43')][_0x3d52('0x49')]({'where':{'id':_0x2828d2[_0x3d52('0x47')]['id']}})[_0x3d52('0x28')](handleEntityNotFound(_0x1783d5,null))['then'](saveUpdates(_0x2828d2[_0x3d52('0x4b')],null))['then'](respondWithResult(_0x1783d5,null))[_0x3d52('0x45')](handleError(_0x1783d5,null));};exports[_0x3d52('0x29')]=function(_0x5434ee,_0x4e6d22){return db[_0x3d52('0x43')][_0x3d52('0x49')]({'where':{'id':_0x5434ee[_0x3d52('0x47')]['id']}})[_0x3d52('0x28')](handleEntityNotFound(_0x4e6d22,null))[_0x3d52('0x28')](removeEntity(_0x4e6d22,null))[_0x3d52('0x45')](handleError(_0x4e6d22,null));};exports[_0x3d52('0x52')]=function(_0x3e709b,_0x2f425f,_0x49f23f){return db[_0x3d52('0x43')]['findOne']({'where':{'id':_0x3e709b[_0x3d52('0x47')]['id']}})[_0x3d52('0x28')](handleEntityNotFound(_0x2f425f,null))[_0x3d52('0x28')](function(_0x3b1d34){if(!_0x3e709b[_0x3d52('0x34')][_0x3d52('0x53')]||!utils['isValidChannel'](_0x3e709b[_0x3d52('0x34')][_0x3d52('0x53')])){throw new db[(_0x3d52('0x54'))][(_0x3d52('0x55'))]('Unknown\x20channel');}var _0x1d6594={};var _0x327a3f={};_0x327a3f[_0x3d52('0x33')]=_[_0x3d52('0x35')](db[_[_0x3d52('0x56')](_0x3e709b['query'][_0x3d52('0x53')]['toLowerCase']())+_0x3d52('0x57')]['rawAttributes']);_0x327a3f[_0x3d52('0x34')]=_[_0x3d52('0x35')](_0x3e709b['query']);_0x327a3f['filters']=_['intersection'](_0x327a3f[_0x3d52('0x33')],_0x327a3f['query']);_0x1d6594[_0x3d52('0x37')]=_[_0x3d52('0x38')](_0x327a3f['model'],qs[_0x3d52('0x39')](_0x3e709b[_0x3d52('0x34')][_0x3d52('0x39')]));_0x1d6594['attributes']=_0x1d6594[_0x3d52('0x37')][_0x3d52('0x3a')]?_0x1d6594[_0x3d52('0x37')]:_0x327a3f[_0x3d52('0x33')];_0x1d6594[_0x3d52('0x3c')]=qs[_0x3d52('0x3c')](_0x3e709b[_0x3d52('0x34')][_0x3d52('0x3c')]);_0x1d6594[_0x3d52('0x22')]=qs[_0x3d52('0x22')](_0x3e709b[_0x3d52('0x34')][_0x3d52('0x22')]);_0x1d6594[_0x3d52('0x58')]=qs[_0x3d52('0x3d')](_0x3e709b[_0x3d52('0x34')][_0x3d52('0x3d')]);_0x1d6594[_0x3d52('0x3e')]=qs[_0x3d52('0x36')](_[_0x3d52('0x3f')](_0x3e709b['query'],_0x327a3f[_0x3d52('0x36')]));_0x1d6594=_['merge']({},_0x1d6594,_0x3e709b[_0x3d52('0x42')]);return _0x3b1d34[_0x3d52('0x2a')+_[_0x3d52('0x56')](_0x3e709b[_0x3d52('0x34')]['channel'][_0x3d52('0x59')]())+_0x3d52('0x5a')](_0x1d6594);})[_0x3d52('0x28')](respondWithResult(_0x2f425f,null))[_0x3d52('0x45')](handleError(_0x2f425f,null));};exports[_0x3d52('0x5b')]=function(_0x439f50,_0x118b68,_0xb1e4df){return db[_0x3d52('0x43')][_0x3d52('0x5c')]({'where':{'id':_0x439f50[_0x3d52('0x47')]['id']}})[_0x3d52('0x28')](function(_0x46274a){if(_0x46274a){if(!_0x439f50[_0x3d52('0x4b')][_0x3d52('0x53')]||!utils[_0x3d52('0x5d')](_0x439f50[_0x3d52('0x4b')]['channel'])){throw new db[(_0x3d52('0x54'))][(_0x3d52('0x55'))](_0x3d52('0x5e'));}return _0x46274a[_0x3d52('0x5f')+_[_0x3d52('0x56')](_0x439f50['body'][_0x3d52('0x53')][_0x3d52('0x59')]())+_0x3d52('0x5a')](_0x439f50[_0x3d52('0x4b')][_0x3d52('0x60')]);}return null;})[_0x3d52('0x28')](handleEntityNotFound(_0x118b68,null))['then'](respondWithStatusCode(_0x118b68,null))[_0x3d52('0x45')](handleError(_0x118b68,null));};exports[_0x3d52('0x61')]=function(_0x51f87b,_0x45dc5f,_0x5ae68e){return db[_0x3d52('0x43')][_0x3d52('0x5c')]({'where':{'id':_0x51f87b[_0x3d52('0x47')]['id']}})['then'](function(_0x423e34){if(_0x423e34){if(!_0x51f87b['query'][_0x3d52('0x53')]||!utils['isValidChannel'](_0x51f87b[_0x3d52('0x34')][_0x3d52('0x53')])){throw new db['Sequelize'][(_0x3d52('0x55'))](_0x3d52('0x5e'));}return _0x423e34['remove'+_['capitalize'](_0x51f87b[_0x3d52('0x34')][_0x3d52('0x53')][_0x3d52('0x59')]())+_0x3d52('0x5a')](_0x51f87b[_0x3d52('0x34')]['ids']);}return null;})[_0x3d52('0x28')](handleEntityNotFound(_0x45dc5f,null))[_0x3d52('0x28')](respondWithStatusCode(_0x45dc5f,null))['catch'](handleError(_0x45dc5f,null));};exports[_0x3d52('0x62')]=function(_0x260fe3,_0x4c03d5){return db[_0x3d52('0x43')][_0x3d52('0x49')]({'where':{'id':_0x260fe3['params']['id']}})[_0x3d52('0x28')](handleEntityNotFound(_0x4c03d5,null))['then'](function(_0x518923){if(_0x518923){var _0x43b015=[_0x3d52('0x63'),'Chat',_0x3d52('0x64'),'Sms','Fax',_0x3d52('0x65'),'Whatsapp'];return db['sequelize']['transaction'](function(_0x48a18b){var _0x2e5f67=_[_0x3d52('0x2f')](_0x43b015,function(_0x26c99d){var _0x3e46f9={'attributes':['id',_0x3d52('0x2d')]};if(_0x26c99d===_0x3d52('0x63')){_0x3e46f9[_0x3d52('0x66')]={'attributes':[_0x3d52('0x67')]};}return _0x518923[_0x3d52('0x2a')+_0x26c99d+_0x3d52('0x5a')](_0x3e46f9)['then'](function(_0x27ce20){var _0x4d74ef=_[_0x3d52('0x2f')](_0x27ce20,function(_0x418574){var _0xe4ee95=_[_0x3d52('0x2f')](_0x260fe3['body'][_0x3d52('0x60')],function(_0x2c6c44){var _0x4f0426={'where':{'UserId':_0x2c6c44,[_0x26c99d+_0x3d52('0x68')]:_0x418574['id']},'transaction':_0x48a18b};if(_0x26c99d==='Voice'){_0x4f0426['defaults']={'penalty':_0x418574[_0x3d52('0x69')][_0x3d52('0x67')]};}return db['User'+_0x26c99d+_0x3d52('0x57')][_0x3d52('0x6a')](_0x4f0426)[_0x3d52('0x28')](function(){socket['emit'](_0x3d52('0x4c')+_0x26c99d+_0x3d52('0x6b'),{'UserId':_0x2c6c44,[_0x26c99d+_0x3d52('0x68')]:_0x418574['id']});if(_0x26c99d!=='Voice')return;return db['User']['findAll']({'where':{'id':_0x260fe3['body'][_0x3d52('0x60')],'online':0x1},'attributes':['id',_0x3d52('0x2d'),_0x3d52('0x6c'),'voicePause',_0x3d52('0x6d')],'raw':!![]})['then'](function(_0xea608b){var _0x5ebd8c=_[_0x3d52('0x2f')](_0xea608b,function(_0x5b6c4d){return db[_0x3d52('0x6e')][_0x3d52('0x6f')]({'membername':_0x5b6c4d[_0x3d52('0x2d')],'UserId':_0x5b6c4d['id'],'queue_name':_0x418574[_0x3d52('0x2d')],'VoiceQueueId':_0x418574['id'],'interface':_[_0x3d52('0x70')](_0x5b6c4d[_0x3d52('0x6d')])?util[_0x3d52('0x71')]('SIP/%s',_0x5b6c4d[_0x3d52('0x2d')]):_0x5b6c4d[_0x3d52('0x6d')],'paused':_0x5b6c4d[_0x3d52('0x72')]||![],'penalty':_0x418574['TeamVoiceQueue'][_0x3d52('0x67')]},{'transaction':_0x48a18b});});return Promise[_0x3d52('0x73')](_0x5ebd8c);});});});return Promise[_0x3d52('0x73')](_0xe4ee95);});return Promise[_0x3d52('0x73')](_0x4d74ef);});});return Promise[_0x3d52('0x73')](_0x2e5f67)[_0x3d52('0x28')](function(){return _0x518923[_0x3d52('0x62')](_0x260fe3[_0x3d52('0x4b')]['ids'],{'transaction':_0x48a18b})[_0x3d52('0x74')](function(_0x5d65a1){return _0x5d65a1;});});});}})[_0x3d52('0x28')](respondWithResult(_0x4c03d5,null))[_0x3d52('0x45')](handleError(_0x4c03d5,null));};exports[_0x3d52('0x75')]=function(_0x4c2606,_0x58d1db){return db[_0x3d52('0x43')]['find']({'where':{'id':_0x4c2606[_0x3d52('0x47')]['id']}})[_0x3d52('0x28')](handleEntityNotFound(_0x58d1db,null))[_0x3d52('0x28')](function(_0x492045){if(_0x492045){var _0x18d3f9=[_0x3d52('0x63'),_0x3d52('0x76'),_0x3d52('0x64'),_0x3d52('0x77'),_0x3d52('0x78'),'Openchannel',_0x3d52('0x79')];return db[_0x3d52('0x7a')][_0x3d52('0x7b')](function(_0x4fc2f8){var _0x1b1269=_['map'](_0x18d3f9,function(_0x300fab){var _0x28259a={'attributes':['id',_0x3d52('0x2d')]};return _0x492045['get'+_0x300fab+_0x3d52('0x5a')](_0x28259a)['then'](function(_0x297720){var _0x365997=_['map'](_0x297720,function(_0xab4963){return _0xab4963[_0x3d52('0x75')](_0x4c2606[_0x3d52('0x34')][_0x3d52('0x60')],{'transaction':_0x4fc2f8})[_0x3d52('0x28')](function(){var _0x4f811c=JSON['parse']('['+_0x4c2606[_0x3d52('0x34')][_0x3d52('0x60')]+']');var _0x19263b=_['map'](_0x4f811c,function(_0x41c843){socket['emit']('user'+_0x300fab+'Queue:remove',{'UserId':Number(_0x41c843),[_0x300fab+_0x3d52('0x68')]:_0xab4963['id']});if(_0x300fab!==_0x3d52('0x63'))return;return db[_0x3d52('0x6e')]['destroy']({'where':{'VoiceQueueId':_0xab4963['id'],'UserId':_0x41c843},'transaction':_0x4fc2f8});});return Promise[_0x3d52('0x73')](_0x19263b);});});return Promise[_0x3d52('0x73')](_0x365997);});});return Promise['all'](_0x1b1269)['then'](function(){return _0x492045[_0x3d52('0x75')](_0x4c2606[_0x3d52('0x34')][_0x3d52('0x60')],{'transaction':_0x4fc2f8});});});}})[_0x3d52('0x28')](respondWithStatusCode(_0x58d1db,null))[_0x3d52('0x45')](handleError(_0x58d1db,null));};exports[_0x3d52('0x7c')]=function(_0x3223f7,_0x34f996,_0x3c51de){var _0x1ac089={};var _0x3f14ac={};var _0x5d37d1;var _0x2b3e01;return db[_0x3d52('0x43')][_0x3d52('0x5c')]({'where':{'id':_0x3223f7[_0x3d52('0x47')]['id']}})['then'](handleEntityNotFound(_0x34f996,null))[_0x3d52('0x28')](function(_0x3c8685){if(_0x3c8685){_0x5d37d1=_0x3c8685;_0x3f14ac[_0x3d52('0x33')]=_[_0x3d52('0x35')](db[_0x3d52('0x7d')]['rawAttributes']);_0x3f14ac[_0x3d52('0x34')]=_['keys'](_0x3223f7['query']);_0x3f14ac[_0x3d52('0x36')]=_[_0x3d52('0x38')](_0x3f14ac[_0x3d52('0x33')],_0x3f14ac[_0x3d52('0x34')]);_0x1ac089[_0x3d52('0x37')]=_[_0x3d52('0x38')](_0x3f14ac[_0x3d52('0x33')],qs[_0x3d52('0x39')](_0x3223f7[_0x3d52('0x34')]['fields']));_0x1ac089[_0x3d52('0x37')]=_0x1ac089['attributes']['length']?_0x1ac089[_0x3d52('0x37')]:_0x3f14ac[_0x3d52('0x33')];_0x1ac089[_0x3d52('0x58')]=qs['sort'](_0x3223f7[_0x3d52('0x34')][_0x3d52('0x3d')]);_0x1ac089[_0x3d52('0x3e')]=qs[_0x3d52('0x36')](_[_0x3d52('0x3f')](_0x3223f7['query'],_0x3f14ac['filters']));if(_0x3223f7['query'][_0x3d52('0x7e')]){_0x1ac089['where']=_['merge'](_0x1ac089['where'],{'$or':_[_0x3d52('0x2f')](_0x1ac089[_0x3d52('0x37')],function(_0x3b95eb){var _0x46583a={};_0x46583a[_0x3b95eb]={'$like':'%'+_0x3223f7[_0x3d52('0x34')][_0x3d52('0x7e')]+'%'};return _0x46583a;})});}_0x1ac089=_[_0x3d52('0x41')]({},_0x1ac089,_0x3223f7[_0x3d52('0x42')]);return _0x5d37d1[_0x3d52('0x7c')](_0x1ac089);}})[_0x3d52('0x28')](function(_0x154ef1){if(_0x154ef1){_0x2b3e01=_0x154ef1[_0x3d52('0x3a')];if(!_0x3223f7['query']['hasOwnProperty'](_0x3d52('0x7f'))){_0x1ac089['limit']=qs[_0x3d52('0x3c')](_0x3223f7[_0x3d52('0x34')]['limit']);_0x1ac089['offset']=qs[_0x3d52('0x22')](_0x3223f7[_0x3d52('0x34')][_0x3d52('0x22')]);}return _0x5d37d1[_0x3d52('0x7c')](_0x1ac089);}})[_0x3d52('0x28')](function(_0x58e52a){if(_0x58e52a){return _0x58e52a?{'count':_0x2b3e01,'rows':_0x58e52a}:null;}})[_0x3d52('0x28')](respondWithResult(_0x34f996,null))['catch'](handleError(_0x34f996,null));};