Built motion from commit 775e2a94.|2.6.3
[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 _0xf85d=['sendStatus','end','status','json','offset','undefined','count','set','Content-Range','save','then','error','stack','map','Team','rawAttributes','fieldName','name','query','keys','filters','intersection','model','attributes','hasOwnProperty','nolimit','limit','order','sort','where','pick','filter','merge','type','options','include','findAll','rows','show','params','fields','find','catch','create','user','get','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','Teams','UserProfileSection','autoAssociation','UserProfileResource','update','body','sequelize','transaction','SELECT\x20UserId\x20FROM\x20user_has_teams\x20WHERE\x20TeamId\x20=\x20','Sequelize','QueryTypes','SELECT','UserId','SELECT\x20VoiceQueueId\x20FROM\x20team_has_voice_queues\x20WHERE\x20TeamId\x20=\x20','VoiceQueueId','SELECT\x20MailQueueId\x20FROM\x20team_has_mail_queues\x20WHERE\x20TeamId\x20=\x20','UserMailQueue','SELECT\x20SmsQueueId\x20FROM\x20team_has_sms_queues\x20WHERE\x20TeamId\x20=\x20','SmsQueueId','SELECT\x20ChatQueueId\x20FROM\x20team_has_chat_queues\x20WHERE\x20TeamId\x20=\x20','ChatQueueId','UserChatQueue','destroy','UserFaxQueue','SELECT\x20OpenchannelQueueId\x20FROM\x20team_has_openchannel_queues\x20WHERE\x20TeamId\x20=\x20','OpenchannelQueueId','UserOpenchannelQueue','SELECT\x20WhatsappQueueId\x20FROM\x20team_has_whatsapp_queues\x20WHERE\x20TeamId\x20=\x20','UserWhatsappQueue','TeamVoicePrefix','UserVoicePrefix','VoicePrefixId','getQueues','channel','Unknown\x20channel','capitalize','toLowerCase','length','addQueues','findOne','isValidChannel','ValidationError','add','Queues','removeQueues','remove','addAgents','isArray','ids','Voice','Chat','Mail','Sms','Fax','Openchannel','Whatsapp','through','QueueId','defaults','penalty','User','Queue','findOrCreate','emit','Queue:save','online','upsert','isNil','interface','format','voicePause','TeamVoiceQueue','all','spread','removeAgents','Queue:remove','UserVoiceQueueRt','getAgents','eml-format','rimraf','zip-dir','moment','bluebird','mustache','path','sox','lodash','crypto','jsforce','desk.js','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../mysqldb','redis','localhost','socket.io-emitter','./team.socket','register'];(function(_0x126558,_0x143c9a){var _0x1f6d14=function(_0x2b0eea){while(--_0x2b0eea){_0x126558['push'](_0x126558['shift']());}};_0x1f6d14(++_0x143c9a);}(_0xf85d,0x119));var _0xdf85=function(_0x512891,_0x46005a){_0x512891=_0x512891-0x0;var _0x1c190c=_0xf85d[_0x512891];return _0x1c190c;};'use strict';var emlformat=require(_0xdf85('0x0'));var rimraf=require(_0xdf85('0x1'));var zipdir=require(_0xdf85('0x2'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0xdf85('0x3'));var BPromise=require(_0xdf85('0x4'));var Mustache=require(_0xdf85('0x5'));var util=require('util');var path=require(_0xdf85('0x6'));var sox=require(_0xdf85('0x7'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xdf85('0x8'));var squel=require('squel');var crypto=require(_0xdf85('0x9'));var jsforce=require(_0xdf85('0xa'));var deskjs=require(_0xdf85('0xb'));var toCsv=require(_0xdf85('0xc'));var querystring=require(_0xdf85('0xd'));var Papa=require(_0xdf85('0xe'));var Redis=require(_0xdf85('0xf'));var authService=require(_0xdf85('0x10'));var qs=require(_0xdf85('0x11'));var as=require(_0xdf85('0x12'));var hardwareService=require(_0xdf85('0x13'));var logger=require(_0xdf85('0x14'))('api');var utils=require(_0xdf85('0x15'));var config=require(_0xdf85('0x16'));var licenseUtil=require('../../config/license/util');var db=require(_0xdf85('0x17'))['db'];config[_0xdf85('0x18')]=_['defaults'](config[_0xdf85('0x18')],{'host':_0xdf85('0x19'),'port':0x18eb});var socket=require(_0xdf85('0x1a'))(new Redis(config[_0xdf85('0x18')]));require(_0xdf85('0x1b'))[_0xdf85('0x1c')](socket);function respondWithStatusCode(_0x3409c8,_0x2b0e57){_0x2b0e57=_0x2b0e57||0xcc;return function(_0x4fc810){if(_0x4fc810){return _0x3409c8[_0xdf85('0x1d')](_0x2b0e57);}return _0x3409c8['status'](_0x2b0e57)[_0xdf85('0x1e')]();};}function respondWithResult(_0x2eaedc,_0x1dc3e5){_0x1dc3e5=_0x1dc3e5||0xc8;return function(_0x48b0a4){if(_0x48b0a4){return _0x2eaedc[_0xdf85('0x1f')](_0x1dc3e5)[_0xdf85('0x20')](_0x48b0a4);}};}function respondWithFilteredResult(_0x2e34e4,_0xb34ed9){return function(_0x58736d){if(_0x58736d){var _0x255119=typeof _0xb34ed9[_0xdf85('0x21')]===_0xdf85('0x22')&&typeof _0xb34ed9['limit']===_0xdf85('0x22');var _0x62470b=_0x58736d['count'];var _0x54a502=_0x255119?0x0:_0xb34ed9[_0xdf85('0x21')];var _0xc32d8=_0x255119?_0x58736d[_0xdf85('0x23')]:_0xb34ed9[_0xdf85('0x21')]+_0xb34ed9['limit'];var _0x28ec0b;if(_0xc32d8>=_0x62470b){_0xc32d8=_0x62470b;_0x28ec0b=0xc8;}else{_0x28ec0b=0xce;}_0x2e34e4[_0xdf85('0x1f')](_0x28ec0b);return _0x2e34e4[_0xdf85('0x24')](_0xdf85('0x25'),_0x54a502+'-'+_0xc32d8+'/'+_0x62470b)['json'](_0x58736d);}return null;};}function patchUpdates(_0xe800f7){return function(_0x49cf30){try{jsonpatch['apply'](_0x49cf30,_0xe800f7,!![]);}catch(_0x21978f){return BPromise['reject'](_0x21978f);}return _0x49cf30[_0xdf85('0x26')]();};}function saveUpdates(_0x3fdc89,_0x43d78c){return function(_0x29dd81){if(_0x29dd81){return _0x29dd81['update'](_0x3fdc89)[_0xdf85('0x27')](function(_0x3a16f4){return _0x3a16f4;});}return null;};}function handleEntityNotFound(_0xa6bb38,_0x103747){return function(_0x842da4){if(!_0x842da4){_0xa6bb38[_0xdf85('0x1d')](0x194);}return _0x842da4;};}function handleError(_0xe85496,_0x91cf74){_0x91cf74=_0x91cf74||0x1f4;return function(_0x4ede7f){logger[_0xdf85('0x28')](_0x4ede7f[_0xdf85('0x29')]);if(_0x4ede7f['name']){delete _0x4ede7f['name'];}_0xe85496[_0xdf85('0x1f')](_0x91cf74)['send'](_0x4ede7f);};}exports['index']=function(_0x1ad917,_0x3eaf79){var _0x481cf7={},_0xf7ccbe={},_0x544242={'count':0x0,'rows':[]};var _0x599da8=_[_0xdf85('0x2a')](db[_0xdf85('0x2b')][_0xdf85('0x2c')],function(_0x138d76){return{'name':_0x138d76[_0xdf85('0x2d')],'type':_0x138d76['type']['key']};});_0xf7ccbe['model']=_[_0xdf85('0x2a')](_0x599da8,_0xdf85('0x2e'));_0xf7ccbe[_0xdf85('0x2f')]=_[_0xdf85('0x30')](_0x1ad917[_0xdf85('0x2f')]);_0xf7ccbe[_0xdf85('0x31')]=_[_0xdf85('0x32')](_0xf7ccbe[_0xdf85('0x33')],_0xf7ccbe['query']);_0x481cf7['attributes']=_[_0xdf85('0x32')](_0xf7ccbe[_0xdf85('0x33')],qs['fields'](_0x1ad917[_0xdf85('0x2f')]['fields']));_0x481cf7[_0xdf85('0x34')]=_0x481cf7[_0xdf85('0x34')]['length']?_0x481cf7[_0xdf85('0x34')]:_0xf7ccbe[_0xdf85('0x33')];if(!_0x1ad917[_0xdf85('0x2f')][_0xdf85('0x35')](_0xdf85('0x36'))){_0x481cf7[_0xdf85('0x37')]=qs[_0xdf85('0x37')](_0x1ad917[_0xdf85('0x2f')]['limit']);_0x481cf7[_0xdf85('0x21')]=qs[_0xdf85('0x21')](_0x1ad917['query']['offset']);}_0x481cf7[_0xdf85('0x38')]=qs[_0xdf85('0x39')](_0x1ad917[_0xdf85('0x2f')][_0xdf85('0x39')]);_0x481cf7[_0xdf85('0x3a')]=qs[_0xdf85('0x31')](_[_0xdf85('0x3b')](_0x1ad917['query'],_0xf7ccbe['filters']),_0x599da8);if(_0x1ad917['query'][_0xdf85('0x3c')]){_0x481cf7[_0xdf85('0x3a')]=_[_0xdf85('0x3d')](_0x481cf7['where'],{'$or':_[_0xdf85('0x2a')](_0x599da8,function(_0xb9daab){if(_0xb9daab[_0xdf85('0x3e')]!=='VIRTUAL'){var _0x48d090={};_0x48d090[_0xb9daab[_0xdf85('0x2e')]]={'$like':'%'+_0x1ad917['query'][_0xdf85('0x3c')]+'%'};return _0x48d090;}})});}_0x481cf7=_[_0xdf85('0x3d')]({},_0x481cf7,_0x1ad917[_0xdf85('0x3f')]);var _0x4d63f3={'where':_0x481cf7[_0xdf85('0x3a')]};return db[_0xdf85('0x2b')][_0xdf85('0x23')](_0x4d63f3)[_0xdf85('0x27')](function(_0x16790b){_0x544242['count']=_0x16790b;if(_0x1ad917[_0xdf85('0x2f')]['includeAll']){_0x481cf7[_0xdf85('0x40')]=[{'all':!![]}];}return db[_0xdf85('0x2b')][_0xdf85('0x41')](_0x481cf7);})[_0xdf85('0x27')](function(_0x3aa0a2){_0x544242[_0xdf85('0x42')]=_0x3aa0a2;return _0x544242;})['then'](respondWithFilteredResult(_0x3eaf79,_0x481cf7))['catch'](handleError(_0x3eaf79,null));};exports[_0xdf85('0x43')]=function(_0x3c025f,_0x47ba5f){var _0x370e3c={'raw':![],'where':{'id':_0x3c025f[_0xdf85('0x44')]['id']}},_0x2c40fc={};_0x2c40fc[_0xdf85('0x33')]=_[_0xdf85('0x30')](db[_0xdf85('0x2b')][_0xdf85('0x2c')]);_0x2c40fc[_0xdf85('0x2f')]=_[_0xdf85('0x30')](_0x3c025f[_0xdf85('0x2f')]);_0x2c40fc['filters']=_['intersection'](_0x2c40fc[_0xdf85('0x33')],_0x2c40fc['query']);_0x370e3c[_0xdf85('0x34')]=_['intersection'](_0x2c40fc[_0xdf85('0x33')],qs['fields'](_0x3c025f['query'][_0xdf85('0x45')]));_0x370e3c['attributes']=_0x370e3c[_0xdf85('0x34')]['length']?_0x370e3c[_0xdf85('0x34')]:_0x2c40fc[_0xdf85('0x33')];if(_0x3c025f['query']['includeAll']){_0x370e3c[_0xdf85('0x40')]=[{'all':!![]}];}_0x370e3c=_[_0xdf85('0x3d')]({},_0x370e3c,_0x3c025f['options']);return db[_0xdf85('0x2b')][_0xdf85('0x46')](_0x370e3c)[_0xdf85('0x27')](handleEntityNotFound(_0x47ba5f,null))[_0xdf85('0x27')](respondWithResult(_0x47ba5f,null))[_0xdf85('0x47')](handleError(_0x47ba5f,null));};exports[_0xdf85('0x48')]=function(_0x34f8fa,_0x51441c){return db['Team'][_0xdf85('0x48')](_0x34f8fa['body'],{})[_0xdf85('0x27')](function(_0x320faa){var _0x170915=_0x34f8fa[_0xdf85('0x49')][_0xdf85('0x4a')]({'plain':!![]});if(!_0x170915)throw new Error(_0xdf85('0x4b'));if(_0x170915[_0xdf85('0x4c')]===_0xdf85('0x49')){var _0x5355ba=_0x320faa[_0xdf85('0x4a')]({'plain':!![]});var _0x31786e=_0xdf85('0x4d');return db[_0xdf85('0x4e')]['find']({'where':{'name':_0x31786e,'userProfileId':_0x170915['userProfileId']},'raw':!![]})[_0xdf85('0x27')](function(_0x59b309){if(_0x59b309&&_0x59b309[_0xdf85('0x4f')]===0x0){return db[_0xdf85('0x50')]['create']({'name':_0x5355ba['name'],'resourceId':_0x5355ba['id'],'type':_0x59b309['name'],'sectionId':_0x59b309['id']},{})[_0xdf85('0x27')](function(){return _0x320faa;});}else{return _0x320faa;}})[_0xdf85('0x47')](function(_0x302a0e){logger[_0xdf85('0x28')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x302a0e);throw _0x302a0e;});}return _0x320faa;})[_0xdf85('0x27')](respondWithResult(_0x51441c,0xc9))[_0xdf85('0x47')](handleError(_0x51441c,null));};exports[_0xdf85('0x51')]=function(_0xb206c6,_0x423a61){if(_0xb206c6[_0xdf85('0x52')]['id']){delete _0xb206c6['body']['id'];}return db[_0xdf85('0x2b')][_0xdf85('0x46')]({'where':{'id':_0xb206c6[_0xdf85('0x44')]['id']}})[_0xdf85('0x27')](handleEntityNotFound(_0x423a61,null))[_0xdf85('0x27')](saveUpdates(_0xb206c6[_0xdf85('0x52')],null))[_0xdf85('0x27')](respondWithResult(_0x423a61,null))[_0xdf85('0x47')](handleError(_0x423a61,null));};exports['destroy']=function(_0x1925af,_0x2a4dc7){var _0x19987f=_0x1925af['params']['id'];var _0x3a03b6=[];return db[_0xdf85('0x53')][_0xdf85('0x54')](function(_0x3a0128){var _0x136b15=_0xdf85('0x55')+_0x19987f;return db['sequelize'][_0xdf85('0x2f')](_0x136b15,{'type':db[_0xdf85('0x56')][_0xdf85('0x57')][_0xdf85('0x58')],'raw':!![],'transaction':_0x3a0128})[_0xdf85('0x27')](function(_0x48b26f){_0x3a03b6=_[_0xdf85('0x2a')](_0x48b26f,function(_0x2124c5){return Number(_0x2124c5[_0xdf85('0x59')]);});})[_0xdf85('0x27')](function(){var _0x37a4f0=_0xdf85('0x5a')+_0x19987f;return db[_0xdf85('0x53')][_0xdf85('0x2f')](_0x37a4f0,{'type':db[_0xdf85('0x56')][_0xdf85('0x57')][_0xdf85('0x58')],'raw':!![],'transaction':_0x3a0128});})['then'](function(_0x2d04ff){var _0x4e5993=_['map'](_0x2d04ff,function(_0x2a1605){return Number(_0x2a1605[_0xdf85('0x5b')]);});return db['UserVoiceQueue']['destroy']({'where':{'UserId':{'$in':_0x3a03b6},'VoiceQueueId':{'$in':_0x4e5993}},'transaction':_0x3a0128});})[_0xdf85('0x27')](function(){var _0x3039fc=_0xdf85('0x5c')+_0x19987f;return db[_0xdf85('0x53')][_0xdf85('0x2f')](_0x3039fc,{'type':db[_0xdf85('0x56')][_0xdf85('0x57')][_0xdf85('0x58')],'raw':!![],'transaction':_0x3a0128});})[_0xdf85('0x27')](function(_0x187700){var _0x1d7ebc=_[_0xdf85('0x2a')](_0x187700,function(_0xaa633c){return Number(_0xaa633c['MailQueueId']);});return db[_0xdf85('0x5d')]['destroy']({'where':{'UserId':{'$in':_0x3a03b6},'MailQueueId':{'$in':_0x1d7ebc}},'transaction':_0x3a0128});})[_0xdf85('0x27')](function(){var _0x724284=_0xdf85('0x5e')+_0x19987f;return db[_0xdf85('0x53')][_0xdf85('0x2f')](_0x724284,{'type':db['Sequelize'][_0xdf85('0x57')][_0xdf85('0x58')],'raw':!![],'transaction':_0x3a0128});})[_0xdf85('0x27')](function(_0x1b7305){var _0x267b35=_[_0xdf85('0x2a')](_0x1b7305,function(_0x2c2284){return Number(_0x2c2284[_0xdf85('0x5f')]);});return db['UserSmsQueue']['destroy']({'where':{'UserId':{'$in':_0x3a03b6},'SmsQueueId':{'$in':_0x267b35}},'transaction':_0x3a0128});})[_0xdf85('0x27')](function(){var _0x4e10b1=_0xdf85('0x60')+_0x19987f;return db[_0xdf85('0x53')][_0xdf85('0x2f')](_0x4e10b1,{'type':db[_0xdf85('0x56')]['QueryTypes'][_0xdf85('0x58')],'raw':!![],'transaction':_0x3a0128});})[_0xdf85('0x27')](function(_0x575712){var _0xf3ba66=_['map'](_0x575712,function(_0x5bfea1){return Number(_0x5bfea1[_0xdf85('0x61')]);});return db[_0xdf85('0x62')][_0xdf85('0x63')]({'where':{'UserId':{'$in':_0x3a03b6},'ChatQueueId':{'$in':_0xf3ba66}},'transaction':_0x3a0128});})[_0xdf85('0x27')](function(){var _0x235cc6='SELECT\x20FaxQueueId\x20FROM\x20team_has_fax_queues\x20WHERE\x20TeamId\x20=\x20'+_0x19987f;return db['sequelize']['query'](_0x235cc6,{'type':db['Sequelize'][_0xdf85('0x57')][_0xdf85('0x58')],'raw':!![],'transaction':_0x3a0128});})['then'](function(_0x5b1932){var _0xc75bda=_[_0xdf85('0x2a')](_0x5b1932,function(_0x13ec6f){return Number(_0x13ec6f['FaxQueueId']);});return db[_0xdf85('0x64')][_0xdf85('0x63')]({'where':{'UserId':{'$in':_0x3a03b6},'FaxQueueId':{'$in':_0xc75bda}},'transaction':_0x3a0128});})[_0xdf85('0x27')](function(){var _0x353d74=_0xdf85('0x65')+_0x19987f;return db[_0xdf85('0x53')][_0xdf85('0x2f')](_0x353d74,{'type':db[_0xdf85('0x56')][_0xdf85('0x57')][_0xdf85('0x58')],'raw':!![],'transaction':_0x3a0128});})[_0xdf85('0x27')](function(_0x7bef8d){var _0x302579=_[_0xdf85('0x2a')](_0x7bef8d,function(_0x386f71){return Number(_0x386f71[_0xdf85('0x66')]);});return db[_0xdf85('0x67')][_0xdf85('0x63')]({'where':{'UserId':{'$in':_0x3a03b6},'OpenchannelQueueId':{'$in':_0x302579}},'transaction':_0x3a0128});})['then'](function(){var _0x2b9eab=_0xdf85('0x68')+_0x19987f;return db[_0xdf85('0x53')][_0xdf85('0x2f')](_0x2b9eab,{'type':db[_0xdf85('0x56')][_0xdf85('0x57')][_0xdf85('0x58')],'raw':!![],'transaction':_0x3a0128});})['then'](function(_0x316229){var _0x4f454c=_[_0xdf85('0x2a')](_0x316229,function(_0x558ed6){return Number(_0x558ed6['WhatsappQueueId']);});return db[_0xdf85('0x69')][_0xdf85('0x63')]({'where':{'UserId':{'$in':_0x3a03b6},'WhatsappQueueId':{'$in':_0x4f454c}},'transaction':_0x3a0128});})['then'](function(){return db[_0xdf85('0x6a')][_0xdf85('0x46')]({'where':{'TeamId':_0x19987f}});})[_0xdf85('0x27')](function(_0x496ec9){if(_0x496ec9===null){return;}return db[_0xdf85('0x6b')][_0xdf85('0x63')]({'where':{'UserId':{'$in':_0x3a03b6},'VoicePrefixId':_0x496ec9[_0xdf85('0x6c')]},'transaction':_0x3a0128});})[_0xdf85('0x27')](function(){return db[_0xdf85('0x2b')][_0xdf85('0x63')]({'where':{'id':_0x19987f},'cascade':!![],'transaction':_0x3a0128});})[_0xdf85('0x27')](function(_0x1fa3ad){if(_0x1fa3ad===0x0){_0x2a4dc7[_0xdf85('0x1d')](0x194);}else{return db[_0xdf85('0x50')][_0xdf85('0x63')]({'where':{'type':_0xdf85('0x4d'),'resourceId':_0x19987f},'cascade':!![],'transaction':_0x3a0128})[_0xdf85('0x27')](function(){_0x2a4dc7[_0xdf85('0x1f')](0xcc)[_0xdf85('0x1e')]();});}})[_0xdf85('0x47')](function(_0x1dd34f){_0x2a4dc7[_0xdf85('0x1f')](0x1f4)['send'](_0x1dd34f);});});};exports[_0xdf85('0x6d')]=function(_0xa28a52,_0x440f13,_0x48c769){return db[_0xdf85('0x2b')]['findOne']({'where':{'id':_0xa28a52[_0xdf85('0x44')]['id']}})[_0xdf85('0x27')](handleEntityNotFound(_0x440f13,null))[_0xdf85('0x27')](function(_0x153409){if(!_0xa28a52[_0xdf85('0x2f')][_0xdf85('0x6e')]||!utils['isValidChannel'](_0xa28a52['query'][_0xdf85('0x6e')])){throw new db[(_0xdf85('0x56'))]['ValidationError'](_0xdf85('0x6f'));}var _0x1e6f6a={};var _0x5e4ea1={};_0x5e4ea1[_0xdf85('0x33')]=_[_0xdf85('0x30')](db[_[_0xdf85('0x70')](_0xa28a52[_0xdf85('0x2f')]['channel'][_0xdf85('0x71')]())+'Queue'][_0xdf85('0x2c')]);_0x5e4ea1[_0xdf85('0x2f')]=_['keys'](_0xa28a52[_0xdf85('0x2f')]);_0x5e4ea1[_0xdf85('0x31')]=_['intersection'](_0x5e4ea1[_0xdf85('0x33')],_0x5e4ea1['query']);_0x1e6f6a[_0xdf85('0x34')]=_[_0xdf85('0x32')](_0x5e4ea1[_0xdf85('0x33')],qs[_0xdf85('0x45')](_0xa28a52[_0xdf85('0x2f')][_0xdf85('0x45')]));_0x1e6f6a['attributes']=_0x1e6f6a[_0xdf85('0x34')][_0xdf85('0x72')]?_0x1e6f6a[_0xdf85('0x34')]:_0x5e4ea1[_0xdf85('0x33')];_0x1e6f6a[_0xdf85('0x37')]=qs[_0xdf85('0x37')](_0xa28a52[_0xdf85('0x2f')]['limit']);_0x1e6f6a['offset']=qs[_0xdf85('0x21')](_0xa28a52[_0xdf85('0x2f')][_0xdf85('0x21')]);_0x1e6f6a[_0xdf85('0x38')]=qs['sort'](_0xa28a52[_0xdf85('0x2f')][_0xdf85('0x39')]);_0x1e6f6a['where']=qs[_0xdf85('0x31')](_[_0xdf85('0x3b')](_0xa28a52[_0xdf85('0x2f')],_0x5e4ea1[_0xdf85('0x31')]));_0x1e6f6a=_[_0xdf85('0x3d')]({},_0x1e6f6a,_0xa28a52[_0xdf85('0x3f')]);return _0x153409[_0xdf85('0x4a')+_['capitalize'](_0xa28a52[_0xdf85('0x2f')]['channel']['toLowerCase']())+'Queues'](_0x1e6f6a);})[_0xdf85('0x27')](respondWithResult(_0x440f13,null))[_0xdf85('0x47')](handleError(_0x440f13,null));};exports[_0xdf85('0x73')]=function(_0xa55d8b,_0x469876,_0x4200fe){return db[_0xdf85('0x2b')][_0xdf85('0x74')]({'where':{'id':_0xa55d8b['params']['id']}})[_0xdf85('0x27')](function(_0x27f570){if(_0x27f570){if(!_0xa55d8b[_0xdf85('0x52')]['channel']||!utils[_0xdf85('0x75')](_0xa55d8b[_0xdf85('0x52')][_0xdf85('0x6e')])){throw new db[(_0xdf85('0x56'))][(_0xdf85('0x76'))](_0xdf85('0x6f'));}return _0x27f570[_0xdf85('0x77')+_[_0xdf85('0x70')](_0xa55d8b[_0xdf85('0x52')]['channel'][_0xdf85('0x71')]())+_0xdf85('0x78')](_0xa55d8b['body']['ids']);}return null;})[_0xdf85('0x27')](handleEntityNotFound(_0x469876,null))[_0xdf85('0x27')](respondWithStatusCode(_0x469876,null))[_0xdf85('0x47')](handleError(_0x469876,null));};exports[_0xdf85('0x79')]=function(_0x56d52d,_0x2f86fe,_0x5f2b98){return db[_0xdf85('0x2b')]['findOne']({'where':{'id':_0x56d52d[_0xdf85('0x44')]['id']}})[_0xdf85('0x27')](function(_0x2bce75){if(_0x2bce75){if(!_0x56d52d[_0xdf85('0x2f')]['channel']||!utils['isValidChannel'](_0x56d52d['query'][_0xdf85('0x6e')])){throw new db[(_0xdf85('0x56'))][(_0xdf85('0x76'))](_0xdf85('0x6f'));}return _0x2bce75[_0xdf85('0x7a')+_[_0xdf85('0x70')](_0x56d52d[_0xdf85('0x2f')][_0xdf85('0x6e')]['toLowerCase']())+_0xdf85('0x78')](_0x56d52d['query']['ids']);}return null;})[_0xdf85('0x27')](handleEntityNotFound(_0x2f86fe,null))['then'](respondWithStatusCode(_0x2f86fe,null))['catch'](handleError(_0x2f86fe,null));};exports[_0xdf85('0x7b')]=function(_0x5cc362,_0x2d7124){var _0x2c7227=_[_0xdf85('0x7c')](_0x5cc362[_0xdf85('0x52')]['ids'])?_0x5cc362[_0xdf85('0x52')]['ids']:[_0x5cc362['body'][_0xdf85('0x7d')]];var _0xa8a0f0=_0x5cc362[_0xdf85('0x44')]['id'];return db['Team']['find']({'where':{'id':_0xa8a0f0}})[_0xdf85('0x27')](handleEntityNotFound(_0x2d7124,null))['then'](function(_0x1768c2){if(_0x1768c2){var _0xab18b7=[_0xdf85('0x7e'),_0xdf85('0x7f'),_0xdf85('0x80'),_0xdf85('0x81'),_0xdf85('0x82'),_0xdf85('0x83'),_0xdf85('0x84')];return db[_0xdf85('0x53')]['transaction'](function(_0x41c44f){var _0x483490=_[_0xdf85('0x2a')](_0xab18b7,function(_0x382cfe){var _0x1b9099={'attributes':['id','name']};if(_0x382cfe===_0xdf85('0x7e')){_0x1b9099[_0xdf85('0x85')]={'attributes':['penalty']};}return _0x1768c2[_0xdf85('0x4a')+_0x382cfe+_0xdf85('0x78')](_0x1b9099)[_0xdf85('0x27')](function(_0x54bcc4){var _0xd4df20=_[_0xdf85('0x2a')](_0x54bcc4,function(_0x3eb583){var _0x4f64e1=_[_0xdf85('0x2a')](_0x2c7227,function(_0x51655c){var _0x188482={'where':{'UserId':_0x51655c,[_0x382cfe+_0xdf85('0x86')]:_0x3eb583['id']},'transaction':_0x41c44f};if(_0x382cfe===_0xdf85('0x7e')){_0x188482[_0xdf85('0x87')]={'penalty':_0x3eb583['TeamVoiceQueue'][_0xdf85('0x88')]};}return db[_0xdf85('0x89')+_0x382cfe+_0xdf85('0x8a')][_0xdf85('0x8b')](_0x188482)[_0xdf85('0x27')](function(){socket[_0xdf85('0x8c')](_0xdf85('0x49')+_0x382cfe+_0xdf85('0x8d'),{'UserId':_0x51655c,[_0x382cfe+_0xdf85('0x86')]:_0x3eb583['id']});if(_0x382cfe!==_0xdf85('0x7e')){return;}return db['User'][_0xdf85('0x41')]({'where':{'id':_0x2c7227,'online':0x1},'attributes':['id','name',_0xdf85('0x8e'),'voicePause','interface'],'raw':!![]})['then'](function(_0x25dff8){var _0x41a16b=_['map'](_0x25dff8,function(_0x11168c){return db['UserVoiceQueueRt'][_0xdf85('0x8f')]({'membername':_0x11168c[_0xdf85('0x2e')],'UserId':_0x11168c['id'],'queue_name':_0x3eb583['name'],'VoiceQueueId':_0x3eb583['id'],'interface':_[_0xdf85('0x90')](_0x11168c[_0xdf85('0x91')])?util[_0xdf85('0x92')]('SIP/%s',_0x11168c[_0xdf85('0x2e')]):_0x11168c['interface'],'paused':_0x11168c[_0xdf85('0x93')]||![],'penalty':_0x3eb583[_0xdf85('0x94')][_0xdf85('0x88')]},{'transaction':_0x41c44f});});return Promise[_0xdf85('0x95')](_0x41a16b);});});});return Promise[_0xdf85('0x95')](_0x4f64e1);});return Promise[_0xdf85('0x95')](_0xd4df20);})[_0xdf85('0x27')](function(){return db[_0xdf85('0x6a')][_0xdf85('0x74')]({'where':{'teamId':_0xa8a0f0}})['then'](function(_0x30a505){if(_0x30a505){var _0x5bee18=_['map'](_0x2c7227,function(_0x6e46f1){db[_0xdf85('0x6b')]['upsert']({'UserId':_0x6e46f1,'VoicePrefixId':_0x30a505['VoicePrefixId']});});return Promise['all'](_0x5bee18);}});});});return Promise[_0xdf85('0x95')](_0x483490)[_0xdf85('0x27')](function(){return _0x1768c2[_0xdf85('0x7b')](_0x2c7227,{'transaction':_0x41c44f})[_0xdf85('0x96')](function(_0x186421){return _0x186421;});});});}})['then'](respondWithResult(_0x2d7124,null))[_0xdf85('0x47')](handleError(_0x2d7124,null));};exports[_0xdf85('0x97')]=function(_0x2d8e54,_0x141506){var _0x275d6b=_['isArray'](_0x2d8e54['query'][_0xdf85('0x7d')])?_0x2d8e54[_0xdf85('0x2f')][_0xdf85('0x7d')]:[_0x2d8e54[_0xdf85('0x2f')][_0xdf85('0x7d')]];var _0x3c3db5=_0x2d8e54['params']['id'];return db['Team'][_0xdf85('0x46')]({'where':{'id':_0x3c3db5}})[_0xdf85('0x27')](handleEntityNotFound(_0x141506,null))[_0xdf85('0x27')](function(_0x137423){if(_0x137423){var _0x389f57=[_0xdf85('0x7e'),_0xdf85('0x7f'),_0xdf85('0x80'),_0xdf85('0x81'),_0xdf85('0x82'),_0xdf85('0x83'),_0xdf85('0x84')];return db['sequelize'][_0xdf85('0x54')](function(_0x3e380d){var _0x536f07=_[_0xdf85('0x2a')](_0x389f57,function(_0x1b9c06){var _0x43819b={'attributes':['id','name']};return _0x137423['get'+_0x1b9c06+_0xdf85('0x78')](_0x43819b)[_0xdf85('0x27')](function(_0x4e3327){var _0xb76900=_['map'](_0x4e3327,function(_0x59c361){return _0x59c361['removeAgents'](_0x275d6b,{'transaction':_0x3e380d})[_0xdf85('0x27')](function(){var _0x96b74b=_['map'](_0x275d6b,function(_0x48c385){socket[_0xdf85('0x8c')]('user'+_0x1b9c06+_0xdf85('0x98'),{'UserId':Number(_0x48c385),[_0x1b9c06+_0xdf85('0x86')]:_0x59c361['id']});if(_0x1b9c06!==_0xdf85('0x7e')){return;}return db[_0xdf85('0x99')][_0xdf85('0x63')]({'where':{'VoiceQueueId':_0x59c361['id'],'UserId':_0x48c385},'transaction':_0x3e380d});});return Promise[_0xdf85('0x95')](_0x96b74b);});});return Promise[_0xdf85('0x95')](_0xb76900);});});return Promise[_0xdf85('0x95')](_0x536f07)[_0xdf85('0x27')](function(){return _0x137423[_0xdf85('0x97')](_0x275d6b,{'transaction':_0x3e380d});})[_0xdf85('0x27')](function(){return db['TeamVoicePrefix'][_0xdf85('0x74')]({'where':{'teamId':_0x3c3db5}})['then'](function(_0x469661){if(_0x469661){var _0x237b62=_['map'](_0x275d6b,function(_0x311d2a){db['UserVoicePrefix'][_0xdf85('0x63')]({'where':{'UserId':_0x311d2a,'VoicePrefixId':_0x469661[_0xdf85('0x6c')]}});});return Promise['all'](_0x237b62);}});});});}})[_0xdf85('0x27')](respondWithStatusCode(_0x141506,null))[_0xdf85('0x47')](handleError(_0x141506,null));};exports[_0xdf85('0x9a')]=function(_0x4b0729,_0x338781,_0x2fa938){var _0x5ebc81={};var _0x5c93cf={};var _0x19964b;var _0x2e54e3;return db[_0xdf85('0x2b')]['findOne']({'where':{'id':_0x4b0729[_0xdf85('0x44')]['id']}})['then'](handleEntityNotFound(_0x338781,null))[_0xdf85('0x27')](function(_0x2a7654){if(_0x2a7654){_0x19964b=_0x2a7654;_0x5c93cf[_0xdf85('0x33')]=_[_0xdf85('0x30')](db[_0xdf85('0x89')][_0xdf85('0x2c')]);_0x5c93cf[_0xdf85('0x2f')]=_[_0xdf85('0x30')](_0x4b0729[_0xdf85('0x2f')]);_0x5c93cf[_0xdf85('0x31')]=_[_0xdf85('0x32')](_0x5c93cf['model'],_0x5c93cf[_0xdf85('0x2f')]);_0x5ebc81[_0xdf85('0x34')]=_[_0xdf85('0x32')](_0x5c93cf[_0xdf85('0x33')],qs[_0xdf85('0x45')](_0x4b0729[_0xdf85('0x2f')][_0xdf85('0x45')]));_0x5ebc81[_0xdf85('0x34')]=_0x5ebc81[_0xdf85('0x34')][_0xdf85('0x72')]?_0x5ebc81[_0xdf85('0x34')]:_0x5c93cf[_0xdf85('0x33')];_0x5ebc81[_0xdf85('0x38')]=qs[_0xdf85('0x39')](_0x4b0729[_0xdf85('0x2f')][_0xdf85('0x39')]);_0x5ebc81[_0xdf85('0x3a')]=qs[_0xdf85('0x31')](_[_0xdf85('0x3b')](_0x4b0729['query'],_0x5c93cf['filters']));if(_0x4b0729[_0xdf85('0x2f')][_0xdf85('0x3c')]){_0x5ebc81[_0xdf85('0x3a')]=_[_0xdf85('0x3d')](_0x5ebc81['where'],{'$or':_[_0xdf85('0x2a')](_0x5ebc81[_0xdf85('0x34')],function(_0x3f7c26){var _0x579ad8={};_0x579ad8[_0x3f7c26]={'$like':'%'+_0x4b0729[_0xdf85('0x2f')][_0xdf85('0x3c')]+'%'};return _0x579ad8;})});}_0x5ebc81=_[_0xdf85('0x3d')]({},_0x5ebc81,_0x4b0729['options']);return _0x19964b[_0xdf85('0x9a')](_0x5ebc81);}})['then'](function(_0x302bba){if(_0x302bba){_0x2e54e3=_0x302bba[_0xdf85('0x72')];if(!_0x4b0729[_0xdf85('0x2f')]['hasOwnProperty']('nolimit')){_0x5ebc81[_0xdf85('0x37')]=qs[_0xdf85('0x37')](_0x4b0729['query']['limit']);_0x5ebc81['offset']=qs[_0xdf85('0x21')](_0x4b0729[_0xdf85('0x2f')]['offset']);}return _0x19964b[_0xdf85('0x9a')](_0x5ebc81);}})['then'](function(_0x3b955c){if(_0x3b955c){return _0x3b955c?{'count':_0x2e54e3,'rows':_0x3b955c}:null;}})[_0xdf85('0x27')](respondWithResult(_0x338781,null))[_0xdf85('0x47')](handleError(_0x338781,null));};