cf2f3504114024ea3fc2a6c6fdaddd0a0c69e2a0
[motion2.git] / server / api / openchannelQueue / openchannelQueue.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 _0x4e79=['body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','destroy','describe','getMembers','OpenchannelQueueId','UserOpenchannelQueue','User','findAndCountAll','UserId','agent','openchannelPause','updatedAt','createdAt','rows','format','%s/%s','SIP','getTeams','Team','Agents','online','voicePause','flatMap','sequelize','transaction','addTeams','findOrCreate','emit','userOpenchannelQueue:save','ids','select','field','tq.TeamId','join','user_has_teams','ut.UserId\x20=\x20?','push','toString','QueryTypes','SELECT','includes','all','union','compact','value','removeTeams','isEmpty','removeAgents','userOpenchannelQueue:remove','addAgents','omit','spread','isArray','getAgents','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','defaults','redis','localhost','socket.io-emitter','./openchannelQueue.socket','register','status','end','json','limit','undefined','count','offset','Content-Range','reject','save','update','then','get','OpenchannelQueues','UserProfileResource','error','name','map','rawAttributes','fieldName','type','key','model','query','filters','intersection','attributes','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','options','OpenchannelQueue','include','findAll','catch','show','params','keys','fields','includeAll','find','create'];(function(_0x368416,_0x2ba4cd){var _0x4a2131=function(_0x33c4b4){while(--_0x33c4b4){_0x368416['push'](_0x368416['shift']());}};_0x4a2131(++_0x2ba4cd);}(_0x4e79,0xcd));var _0x94e7=function(_0x321bb2,_0x202794){_0x321bb2=_0x321bb2-0x0;var _0x9c12ed=_0x4e79[_0x321bb2];return _0x9c12ed;};'use strict';var emlformat=require(_0x94e7('0x0'));var rimraf=require(_0x94e7('0x1'));var zipdir=require(_0x94e7('0x2'));var jsonpatch=require(_0x94e7('0x3'));var rp=require(_0x94e7('0x4'));var moment=require(_0x94e7('0x5'));var BPromise=require(_0x94e7('0x6'));var Mustache=require(_0x94e7('0x7'));var util=require(_0x94e7('0x8'));var path=require(_0x94e7('0x9'));var sox=require('sox');var csv=require(_0x94e7('0xa'));var ejs=require(_0x94e7('0xb'));var fs=require('fs');var fs_extra=require(_0x94e7('0xc'));var _=require(_0x94e7('0xd'));var squel=require(_0x94e7('0xe'));var crypto=require(_0x94e7('0xf'));var jsforce=require(_0x94e7('0x10'));var deskjs=require(_0x94e7('0x11'));var toCsv=require(_0x94e7('0xa'));var querystring=require(_0x94e7('0x12'));var Papa=require(_0x94e7('0x13'));var Redis=require('ioredis');var authService=require(_0x94e7('0x14'));var qs=require(_0x94e7('0x15'));var as=require(_0x94e7('0x16'));var hardwareService=require(_0x94e7('0x17'));var logger=require(_0x94e7('0x18'))('api');var utils=require(_0x94e7('0x19'));var config=require(_0x94e7('0x1a'));var licenseUtil=require(_0x94e7('0x1b'));var db=require(_0x94e7('0x1c'))['db'];config['redis']=_[_0x94e7('0x1d')](config[_0x94e7('0x1e')],{'host':_0x94e7('0x1f'),'port':0x18eb});var socket=require(_0x94e7('0x20'))(new Redis(config[_0x94e7('0x1e')]));require(_0x94e7('0x21'))[_0x94e7('0x22')](socket);function respondWithStatusCode(_0xb6c7aa,_0x1e7046){_0x1e7046=_0x1e7046||0xcc;return function(_0x331343){if(_0x331343){return _0xb6c7aa['sendStatus'](_0x1e7046);}return _0xb6c7aa[_0x94e7('0x23')](_0x1e7046)[_0x94e7('0x24')]();};}function respondWithResult(_0xa8a453,_0x283370){_0x283370=_0x283370||0xc8;return function(_0x1e006b){if(_0x1e006b){return _0xa8a453[_0x94e7('0x23')](_0x283370)[_0x94e7('0x25')](_0x1e006b);}};}function respondWithFilteredResult(_0x557e87,_0x222a75){return function(_0x48233f){if(_0x48233f){var _0xf2297f=typeof _0x222a75['offset']==='undefined'&&typeof _0x222a75[_0x94e7('0x26')]===_0x94e7('0x27');var _0x193296=_0x48233f[_0x94e7('0x28')];var _0x34f9e5=_0xf2297f?0x0:_0x222a75[_0x94e7('0x29')];var _0x1f01b1=_0xf2297f?_0x48233f[_0x94e7('0x28')]:_0x222a75[_0x94e7('0x29')]+_0x222a75[_0x94e7('0x26')];var _0x232991;if(_0x1f01b1>=_0x193296){_0x1f01b1=_0x193296;_0x232991=0xc8;}else{_0x232991=0xce;}_0x557e87[_0x94e7('0x23')](_0x232991);return _0x557e87['set'](_0x94e7('0x2a'),_0x34f9e5+'-'+_0x1f01b1+'/'+_0x193296)['json'](_0x48233f);}return null;};}function patchUpdates(_0x2617e1){return function(_0x18a26a){try{jsonpatch['apply'](_0x18a26a,_0x2617e1,!![]);}catch(_0x3200d5){return BPromise[_0x94e7('0x2b')](_0x3200d5);}return _0x18a26a[_0x94e7('0x2c')]();};}function saveUpdates(_0x3dfc07,_0x1dec2c){return function(_0x280c71){if(_0x280c71){return _0x280c71[_0x94e7('0x2d')](_0x3dfc07)[_0x94e7('0x2e')](function(_0x34c328){return _0x34c328;});}return null;};}function removeEntity(_0x5b7eef,_0x505bff){return function(_0x2def0f){if(_0x2def0f){return _0x2def0f['destroy']()[_0x94e7('0x2e')](function(){var _0x46c265=_0x2def0f[_0x94e7('0x2f')]({'plain':!![]});var _0x4892f5=_0x94e7('0x30');return db[_0x94e7('0x31')]['destroy']({'where':{'type':_0x4892f5,'resourceId':_0x46c265['id']}})[_0x94e7('0x2e')](function(){return _0x2def0f;});})[_0x94e7('0x2e')](function(){_0x5b7eef['status'](0xcc)[_0x94e7('0x24')]();});}};}function handleEntityNotFound(_0x3e1c92,_0x74a537){return function(_0x21a7dc){if(!_0x21a7dc){_0x3e1c92['sendStatus'](0x194);}return _0x21a7dc;};}function handleError(_0x322a77,_0x21293c){_0x21293c=_0x21293c||0x1f4;return function(_0x1c7c14){logger[_0x94e7('0x32')](_0x1c7c14['stack']);if(_0x1c7c14[_0x94e7('0x33')]){delete _0x1c7c14['name'];}_0x322a77[_0x94e7('0x23')](_0x21293c)['send'](_0x1c7c14);};}exports['index']=function(_0x205129,_0x59bb74){var _0x5d91a6={},_0x4d4029={},_0x19fb66={'count':0x0,'rows':[]};var _0x75b603=_[_0x94e7('0x34')](db['OpenchannelQueue'][_0x94e7('0x35')],function(_0x3f6849){return{'name':_0x3f6849[_0x94e7('0x36')],'type':_0x3f6849[_0x94e7('0x37')][_0x94e7('0x38')]};});_0x4d4029[_0x94e7('0x39')]=_[_0x94e7('0x34')](_0x75b603,_0x94e7('0x33'));_0x4d4029[_0x94e7('0x3a')]=_['keys'](_0x205129[_0x94e7('0x3a')]);_0x4d4029[_0x94e7('0x3b')]=_[_0x94e7('0x3c')](_0x4d4029[_0x94e7('0x39')],_0x4d4029[_0x94e7('0x3a')]);_0x5d91a6[_0x94e7('0x3d')]=_[_0x94e7('0x3c')](_0x4d4029[_0x94e7('0x39')],qs['fields'](_0x205129['query']['fields']));_0x5d91a6[_0x94e7('0x3d')]=_0x5d91a6[_0x94e7('0x3d')][_0x94e7('0x3e')]?_0x5d91a6[_0x94e7('0x3d')]:_0x4d4029['model'];if(!_0x205129[_0x94e7('0x3a')][_0x94e7('0x3f')](_0x94e7('0x40'))){_0x5d91a6[_0x94e7('0x26')]=qs[_0x94e7('0x26')](_0x205129[_0x94e7('0x3a')][_0x94e7('0x26')]);_0x5d91a6[_0x94e7('0x29')]=qs['offset'](_0x205129[_0x94e7('0x3a')][_0x94e7('0x29')]);}_0x5d91a6[_0x94e7('0x41')]=qs[_0x94e7('0x42')](_0x205129[_0x94e7('0x3a')][_0x94e7('0x42')]);_0x5d91a6[_0x94e7('0x43')]=qs[_0x94e7('0x3b')](_[_0x94e7('0x44')](_0x205129[_0x94e7('0x3a')],_0x4d4029['filters']),_0x75b603);if(_0x205129['query'][_0x94e7('0x45')]){_0x5d91a6[_0x94e7('0x43')]=_['merge'](_0x5d91a6[_0x94e7('0x43')],{'$or':_[_0x94e7('0x34')](_0x75b603,function(_0x271636){if(_0x271636[_0x94e7('0x37')]!=='VIRTUAL'){var _0x2af913={};_0x2af913[_0x271636[_0x94e7('0x33')]]={'$like':'%'+_0x205129['query'][_0x94e7('0x45')]+'%'};return _0x2af913;}})});}_0x5d91a6=_[_0x94e7('0x46')]({},_0x5d91a6,_0x205129[_0x94e7('0x47')]);var _0xfc890a={'where':_0x5d91a6[_0x94e7('0x43')]};return db[_0x94e7('0x48')][_0x94e7('0x28')](_0xfc890a)[_0x94e7('0x2e')](function(_0x22f642){_0x19fb66[_0x94e7('0x28')]=_0x22f642;if(_0x205129[_0x94e7('0x3a')]['includeAll']){_0x5d91a6[_0x94e7('0x49')]=[{'all':!![]}];}return db[_0x94e7('0x48')][_0x94e7('0x4a')](_0x5d91a6);})['then'](function(_0x48eb91){_0x19fb66['rows']=_0x48eb91;return _0x19fb66;})[_0x94e7('0x2e')](respondWithFilteredResult(_0x59bb74,_0x5d91a6))[_0x94e7('0x4b')](handleError(_0x59bb74,null));};exports[_0x94e7('0x4c')]=function(_0x1fed0f,_0x4305a5){var _0x301ce2={'raw':!![],'where':{'id':_0x1fed0f[_0x94e7('0x4d')]['id']}},_0x1f9c27={};_0x1f9c27['model']=_[_0x94e7('0x4e')](db['OpenchannelQueue'][_0x94e7('0x35')]);_0x1f9c27[_0x94e7('0x3a')]=_[_0x94e7('0x4e')](_0x1fed0f[_0x94e7('0x3a')]);_0x1f9c27[_0x94e7('0x3b')]=_[_0x94e7('0x3c')](_0x1f9c27[_0x94e7('0x39')],_0x1f9c27[_0x94e7('0x3a')]);_0x301ce2[_0x94e7('0x3d')]=_[_0x94e7('0x3c')](_0x1f9c27[_0x94e7('0x39')],qs[_0x94e7('0x4f')](_0x1fed0f['query'][_0x94e7('0x4f')]));_0x301ce2[_0x94e7('0x3d')]=_0x301ce2['attributes'][_0x94e7('0x3e')]?_0x301ce2[_0x94e7('0x3d')]:_0x1f9c27['model'];if(_0x1fed0f[_0x94e7('0x3a')][_0x94e7('0x50')]){_0x301ce2[_0x94e7('0x49')]=[{'all':!![]}];}_0x301ce2=_[_0x94e7('0x46')]({},_0x301ce2,_0x1fed0f['options']);return db['OpenchannelQueue'][_0x94e7('0x51')](_0x301ce2)[_0x94e7('0x2e')](handleEntityNotFound(_0x4305a5,null))[_0x94e7('0x2e')](respondWithResult(_0x4305a5,null))['catch'](handleError(_0x4305a5,null));};exports['create']=function(_0x43e0cf,_0x2544dd){return db[_0x94e7('0x48')][_0x94e7('0x52')](_0x43e0cf[_0x94e7('0x53')],{})[_0x94e7('0x2e')](function(_0x1ee800){var _0x229e8c=_0x43e0cf[_0x94e7('0x54')][_0x94e7('0x2f')]({'plain':!![]});if(!_0x229e8c)throw new Error(_0x94e7('0x55'));if(_0x229e8c[_0x94e7('0x56')]===_0x94e7('0x54')){var _0x4e0229=_0x1ee800[_0x94e7('0x2f')]({'plain':!![]});var _0xf71bc3='OpenchannelQueues';return db[_0x94e7('0x57')]['find']({'where':{'name':_0xf71bc3,'userProfileId':_0x229e8c[_0x94e7('0x58')]},'raw':!![]})[_0x94e7('0x2e')](function(_0x181e34){if(_0x181e34&&_0x181e34[_0x94e7('0x59')]===0x0){return db[_0x94e7('0x31')][_0x94e7('0x52')]({'name':_0x4e0229[_0x94e7('0x33')],'resourceId':_0x4e0229['id'],'type':_0x181e34[_0x94e7('0x33')],'sectionId':_0x181e34['id']},{})[_0x94e7('0x2e')](function(){return _0x1ee800;});}else{return _0x1ee800;}})[_0x94e7('0x4b')](function(_0x49db24){logger[_0x94e7('0x32')](_0x94e7('0x5a'),_0x49db24);throw _0x49db24;});}return _0x1ee800;})[_0x94e7('0x2e')](respondWithResult(_0x2544dd,0xc9))[_0x94e7('0x4b')](handleError(_0x2544dd,null));};exports[_0x94e7('0x2d')]=function(_0x186046,_0x404fa7){if(_0x186046[_0x94e7('0x53')]['id']){delete _0x186046[_0x94e7('0x53')]['id'];}return db[_0x94e7('0x48')]['find']({'where':{'id':_0x186046[_0x94e7('0x4d')]['id']}})[_0x94e7('0x2e')](handleEntityNotFound(_0x404fa7,null))[_0x94e7('0x2e')](saveUpdates(_0x186046[_0x94e7('0x53')],null))[_0x94e7('0x2e')](respondWithResult(_0x404fa7,null))[_0x94e7('0x4b')](handleError(_0x404fa7,null));};exports[_0x94e7('0x5b')]=function(_0xebd409,_0x8a6686){return db['OpenchannelQueue'][_0x94e7('0x51')]({'where':{'id':_0xebd409['params']['id']}})['then'](handleEntityNotFound(_0x8a6686,null))['then'](removeEntity(_0x8a6686,null))[_0x94e7('0x4b')](handleError(_0x8a6686,null));};exports['describe']=function(_0x5e7661,_0x35e98b){return db['OpenchannelQueue'][_0x94e7('0x5c')]()[_0x94e7('0x2e')](respondWithResult(_0x35e98b,null))[_0x94e7('0x4b')](handleError(_0x35e98b,null));};exports[_0x94e7('0x5d')]=function(_0x2ad8d1,_0x3e8a82,_0x52f379){var _0x2206f6={'raw':!![],'where':{}},_0x273a37={},_0x1fe320;return db[_0x94e7('0x48')]['findOne']({'where':{'id':_0x2ad8d1[_0x94e7('0x4d')]['id']}})['then'](handleEntityNotFound(_0x3e8a82,null))['then'](function(_0x8b8bef){if(_0x8b8bef){_0x1fe320=_0x8b8bef[_0x94e7('0x2f')]({'plain':!![]});_0x273a37[_0x94e7('0x39')]=_[_0x94e7('0x4e')](db['UserOpenchannelQueue'][_0x94e7('0x35')]);_0x273a37['query']=_['keys'](_0x2ad8d1[_0x94e7('0x3a')]);_0x273a37[_0x94e7('0x3b')]=_['intersection'](_0x273a37[_0x94e7('0x39')],_0x273a37[_0x94e7('0x3a')]);_0x2206f6['attributes']=_['intersection'](_0x273a37['model'],qs[_0x94e7('0x4f')](_0x2ad8d1[_0x94e7('0x3a')][_0x94e7('0x4f')]));_0x2206f6[_0x94e7('0x3d')]=_0x2206f6[_0x94e7('0x3d')]['length']?_0x2206f6[_0x94e7('0x3d')]:_0x273a37[_0x94e7('0x39')];if(!_0x2ad8d1[_0x94e7('0x3a')][_0x94e7('0x3f')]('nolimit')){_0x2206f6['limit']=qs[_0x94e7('0x26')](_0x2ad8d1[_0x94e7('0x3a')]['limit']);_0x2206f6[_0x94e7('0x29')]=qs[_0x94e7('0x29')](_0x2ad8d1['query'][_0x94e7('0x29')]);}_0x2206f6[_0x94e7('0x41')]=qs[_0x94e7('0x42')](_0x2ad8d1[_0x94e7('0x3a')]['sort']);_0x2206f6[_0x94e7('0x43')]=qs[_0x94e7('0x3b')](_[_0x94e7('0x44')](_0x2ad8d1[_0x94e7('0x3a')],_0x273a37[_0x94e7('0x3b')]));_0x2206f6['where'][_0x94e7('0x5e')]=_0x8b8bef['id'];if(_0x2ad8d1[_0x94e7('0x3a')]['filter']){_0x2206f6[_0x94e7('0x43')]=_[_0x94e7('0x46')](_0x2206f6[_0x94e7('0x43')],{'$or':_[_0x94e7('0x34')](_0x2206f6[_0x94e7('0x3d')],function(_0x25249a){var _0xa4c0b9={};_0xa4c0b9[_0x25249a]={'$like':'%'+_0x2ad8d1['query'][_0x94e7('0x45')]+'%'};return _0xa4c0b9;})});}_0x2206f6=_[_0x94e7('0x46')]({},_0x2206f6,_0x2ad8d1[_0x94e7('0x47')]);return db[_0x94e7('0x5f')][_0x94e7('0x4a')](_0x2206f6);}})[_0x94e7('0x2e')](function(_0x279515){if(_0x279515){return db[_0x94e7('0x60')][_0x94e7('0x61')]({'where':{'id':_[_0x94e7('0x34')](_0x279515,_0x94e7('0x62')),'role':_0x94e7('0x63')},'attributes':['id',_0x94e7('0x33'),_0x94e7('0x64'),_0x94e7('0x65'),_0x94e7('0x66')]});}})['then'](function(_0x2e43be){if(_0x2e43be){return{'count':_0x2e43be[_0x94e7('0x28')],'rows':_[_0x94e7('0x34')](_0x2e43be[_0x94e7('0x67')],function(_0xe3f815){return{'membername':_0xe3f815['name'],'UserId':_0xe3f815['id'],'queue_name':_0x1fe320[_0x94e7('0x33')],'OpenchannelQueueId':_0x1fe320['id'],'interface':util[_0x94e7('0x68')](_0x94e7('0x69'),_0x94e7('0x6a'),_0xe3f815[_0x94e7('0x33')]),'penalty':0x0,'paused':_0xe3f815['openchannelPause'],'createdAt':_0xe3f815['createdAt'],'updatedAt':_0xe3f815[_0x94e7('0x65')]};})};}else{return{'count':0x0,'rows':[]};}})[_0x94e7('0x2e')](respondWithFilteredResult(_0x3e8a82,_0x2206f6))[_0x94e7('0x4b')](handleError(_0x3e8a82,null));};exports[_0x94e7('0x6b')]=function(_0x59048b,_0x25a02b,_0x4ab345){var _0x58b355={};var _0x373bda={};var _0x26b5f2;var _0xabe5a8;return db[_0x94e7('0x48')]['findOne']({'where':{'id':_0x59048b[_0x94e7('0x4d')]['id']}})[_0x94e7('0x2e')](handleEntityNotFound(_0x25a02b,null))[_0x94e7('0x2e')](function(_0x574f1e){if(_0x574f1e){_0x26b5f2=_0x574f1e;_0x373bda[_0x94e7('0x39')]=_['keys'](db[_0x94e7('0x6c')][_0x94e7('0x35')]);_0x373bda[_0x94e7('0x3a')]=_[_0x94e7('0x4e')](_0x59048b[_0x94e7('0x3a')]);_0x373bda[_0x94e7('0x3b')]=_['intersection'](_0x373bda['model'],_0x373bda[_0x94e7('0x3a')]);_0x58b355[_0x94e7('0x3d')]=_[_0x94e7('0x3c')](_0x373bda['model'],qs[_0x94e7('0x4f')](_0x59048b[_0x94e7('0x3a')][_0x94e7('0x4f')]));_0x58b355[_0x94e7('0x3d')]=_0x58b355[_0x94e7('0x3d')][_0x94e7('0x3e')]?_0x58b355[_0x94e7('0x3d')]:_0x373bda[_0x94e7('0x39')];_0x58b355[_0x94e7('0x41')]=qs['sort'](_0x59048b[_0x94e7('0x3a')][_0x94e7('0x42')]);_0x58b355[_0x94e7('0x43')]=qs[_0x94e7('0x3b')](_[_0x94e7('0x44')](_0x59048b[_0x94e7('0x3a')],_0x373bda['filters']));if(_0x59048b[_0x94e7('0x3a')][_0x94e7('0x45')]){_0x58b355[_0x94e7('0x43')]=_[_0x94e7('0x46')](_0x58b355['where'],{'$or':_[_0x94e7('0x34')](_0x58b355[_0x94e7('0x3d')],function(_0x2d46bc){var _0x2b05a4={};_0x2b05a4[_0x2d46bc]={'$like':'%'+_0x59048b['query'][_0x94e7('0x45')]+'%'};return _0x2b05a4;})});}_0x58b355=_[_0x94e7('0x46')]({},_0x58b355,_0x59048b['options']);return _0x26b5f2[_0x94e7('0x6b')](_0x58b355);}})[_0x94e7('0x2e')](function(_0x29b24e){if(_0x29b24e){_0xabe5a8=_0x29b24e['length'];if(!_0x59048b[_0x94e7('0x3a')][_0x94e7('0x3f')](_0x94e7('0x40'))){_0x58b355[_0x94e7('0x26')]=qs[_0x94e7('0x26')](_0x59048b['query'][_0x94e7('0x26')]);_0x58b355[_0x94e7('0x29')]=qs['offset'](_0x59048b['query'][_0x94e7('0x29')]);}return _0x26b5f2[_0x94e7('0x6b')](_0x58b355);}})[_0x94e7('0x2e')](function(_0x4bdc0c){if(_0x4bdc0c){return _0x4bdc0c?{'count':_0xabe5a8,'rows':_0x4bdc0c}:null;}})[_0x94e7('0x2e')](respondWithResult(_0x25a02b,null))[_0x94e7('0x4b')](handleError(_0x25a02b,null));};exports['addTeams']=function(_0x4084e4,_0x209f27,_0x22b8cb){var _0x48f9c4=_0x4084e4[_0x94e7('0x53')]['ids'];return db[_0x94e7('0x6c')][_0x94e7('0x4a')]({'where':{'id':_0x48f9c4},'attributes':['id'],'include':[{'model':db['User'],'as':_0x94e7('0x6d'),'attributes':['id',_0x94e7('0x33'),_0x94e7('0x6e'),_0x94e7('0x6f'),'interface'],'raw':!![]}]})[_0x94e7('0x2e')](function(_0x2acc86){if(_0x2acc86){var _0xd653e1=_[_0x94e7('0x70')](_0x2acc86,function(_0x28f9b1){var _0x4f168d=_0x28f9b1['get']({'plain':!![]});return _0x4f168d[_0x94e7('0x6d')];});return db['OpenchannelQueue'][_0x94e7('0x51')]({'where':{'id':_0x4084e4[_0x94e7('0x4d')]['id']}})[_0x94e7('0x2e')](function(_0x4747dd){return db[_0x94e7('0x71')][_0x94e7('0x72')](function(_0x2876c1){return _0x4747dd[_0x94e7('0x73')](_0x48f9c4,{'transaction':_0x2876c1})[_0x94e7('0x2e')](function(){return BPromise['each'](_0xd653e1,function(_0x4c4c41){return db['UserOpenchannelQueue'][_0x94e7('0x74')]({'where':{'UserId':_0x4c4c41['id'],'OpenchannelQueueId':_0x4084e4[_0x94e7('0x4d')]['id']},'transaction':_0x2876c1});});})['then'](function(){_0xd653e1['forEach'](function(_0x2a2e8a){socket[_0x94e7('0x75')](_0x94e7('0x76'),{'UserId':_0x2a2e8a['id'],'OpenchannelQueueId':_0x4747dd['id']});});});});});}})[_0x94e7('0x2e')](respondWithStatusCode(_0x209f27,null))[_0x94e7('0x4b')](handleError(_0x209f27,null));};exports['removeTeams']=function(_0x5d731e,_0x117613,_0xf029a){return db[_0x94e7('0x6c')]['findAll']({'where':{'id':_0x5d731e[_0x94e7('0x3a')][_0x94e7('0x77')]},'attributes':['id'],'include':[{'model':db[_0x94e7('0x60')],'as':_0x94e7('0x6d'),'attributes':['id'],'raw':!![]}]})['then'](handleEntityNotFound(_0x117613,null))['then'](function(_0x41cd98){var _0x32b597=_[_0x94e7('0x34')](_0x41cd98,'id');var _0x2c4310=[];var _0x4c7a5a=[];var _0x298413=squel[_0x94e7('0x78')]();_0x298413[_0x94e7('0x79')](_0x94e7('0x7a'))['from']('team_has_openchannel_queues','tq')[_0x94e7('0x7b')](_0x94e7('0x7c'),'ut','ut.TeamId\x20=\x20tq.TeamId')[_0x94e7('0x43')]('OpenchannelQueueId\x20=\x20?',_0x5d731e[_0x94e7('0x4d')]['id']);for(var _0x5b82e1=0x0;_0x5b82e1<_0x41cd98[_0x94e7('0x3e')];_0x5b82e1+=0x1){let _0x48b175=_0x41cd98[_0x5b82e1];for(var _0x50080c=0x0;_0x50080c<_0x48b175['Agents'][_0x94e7('0x3e')];_0x50080c+=0x1){let _0x49a896=_0x48b175[_0x94e7('0x6d')][_0x50080c];var _0x596410=_0x298413['clone']();_0x596410[_0x94e7('0x43')](_0x94e7('0x7d'),_0x49a896['id']);_0x4c7a5a[_0x94e7('0x7e')](db[_0x94e7('0x71')][_0x94e7('0x3a')](_0x596410[_0x94e7('0x7f')](),{'type':db[_0x94e7('0x71')][_0x94e7('0x80')][_0x94e7('0x81')]})['then'](function(_0x5d8a93){if(_0x5d8a93[_0x94e7('0x3e')]===0x1){return _0x49a896['id'];}else{var _0x52280c=_['every'](_[_0x94e7('0x34')](_0x5d8a93,'TeamId'),function(_0x2abd25){return _[_0x94e7('0x82')](_0x32b597,_0x2abd25);});if(_0x52280c){return _0x49a896['id'];}}}));}}return BPromise[_0x94e7('0x83')](_0x4c7a5a)['then'](function(_0x5709fd){_0x2c4310=_(_0x2c4310)[_0x94e7('0x84')](_0x5709fd)[_0x94e7('0x85')]()[_0x94e7('0x86')]();return db[_0x94e7('0x48')][_0x94e7('0x51')]({'where':{'id':_0x5d731e['params']['id']}})['then'](function(_0x2c84bc){return db[_0x94e7('0x71')]['transaction'](function(_0x3aac96){return _0x2c84bc[_0x94e7('0x87')](_0x5d731e['query'][_0x94e7('0x77')],{'transaction':_0x3aac96})[_0x94e7('0x2e')](function(){if(!_[_0x94e7('0x88')](_0x2c4310)){return _0x2c84bc[_0x94e7('0x89')](_0x2c4310,{'transaction':_0x3aac96});}})[_0x94e7('0x2e')](function(){_0x2c4310['forEach'](function(_0x9a9a6f){socket[_0x94e7('0x75')](_0x94e7('0x8a'),{'UserId':_0x9a9a6f,'OpenchannelQueueId':_0x2c84bc['id']});});});});});});})[_0x94e7('0x2e')](respondWithStatusCode(_0x117613,null))['catch'](handleError(_0x117613,null));};exports[_0x94e7('0x8b')]=function(_0x4683e9,_0x457e7c,_0x1af0ed){return db[_0x94e7('0x48')][_0x94e7('0x51')]({'where':{'id':_0x4683e9[_0x94e7('0x4d')]['id']}})[_0x94e7('0x2e')](handleEntityNotFound(_0x457e7c,null))[_0x94e7('0x2e')](function(_0x3bd1ec){if(_0x3bd1ec){return _0x3bd1ec[_0x94e7('0x8b')](_0x4683e9[_0x94e7('0x53')][_0x94e7('0x77')],_[_0x94e7('0x8c')](_0x4683e9[_0x94e7('0x53')],[_0x94e7('0x77'),'id'])||{})[_0x94e7('0x8d')](function(_0x3475a9){for(var _0x344607=0x0;_0x344607<_0x4683e9[_0x94e7('0x53')]['ids'][_0x94e7('0x3e')];_0x344607+=0x1){socket[_0x94e7('0x75')](_0x94e7('0x76'),{'UserId':Number(_0x4683e9[_0x94e7('0x53')][_0x94e7('0x77')][_0x344607]),'OpenchannelQueueId':Number(_0x4683e9[_0x94e7('0x4d')]['id'])});}return _0x3475a9;});}})[_0x94e7('0x2e')](respondWithResult(_0x457e7c,null))['catch'](handleError(_0x457e7c,null));};exports[_0x94e7('0x89')]=function(_0x4de6a5,_0x1653c1,_0x5df908){return db['OpenchannelQueue'][_0x94e7('0x51')]({'where':{'id':_0x4de6a5[_0x94e7('0x4d')]['id']}})[_0x94e7('0x2e')](handleEntityNotFound(_0x1653c1,null))[_0x94e7('0x2e')](function(_0x32f6a6){if(_0x32f6a6){return _0x32f6a6[_0x94e7('0x89')](_0x4de6a5['query']['ids'])[_0x94e7('0x2e')](function(){if(_[_0x94e7('0x8e')](_0x4de6a5['query'][_0x94e7('0x77')])){for(var _0x48f02c=0x0;_0x48f02c<_0x4de6a5['query']['ids'][_0x94e7('0x3e')];_0x48f02c+=0x1){socket[_0x94e7('0x75')](_0x94e7('0x8a'),{'UserId':Number(_0x4de6a5[_0x94e7('0x3a')][_0x94e7('0x77')][_0x48f02c]),'OpenchannelQueueId':Number(_0x4de6a5['params']['id'])});}}else{socket[_0x94e7('0x75')](_0x94e7('0x8a'),{'UserId':Number(_0x4de6a5['query']['ids']),'OpenchannelQueueId':Number(_0x4de6a5[_0x94e7('0x4d')]['id'])});}});}})[_0x94e7('0x2e')](respondWithStatusCode(_0x1653c1,null))[_0x94e7('0x4b')](handleError(_0x1653c1,null));};exports[_0x94e7('0x8f')]=function(_0x38b2cb,_0x3e1608,_0x30e50e){var _0x1f7265={};var _0x4c32fa={};var _0xb1096f;var _0xe422d;return db['OpenchannelQueue']['findOne']({'where':{'id':_0x38b2cb[_0x94e7('0x4d')]['id']}})[_0x94e7('0x2e')](handleEntityNotFound(_0x3e1608,null))[_0x94e7('0x2e')](function(_0x21d509){if(_0x21d509){_0xb1096f=_0x21d509;_0x4c32fa[_0x94e7('0x39')]=_['keys'](db[_0x94e7('0x60')][_0x94e7('0x35')]);_0x4c32fa[_0x94e7('0x3a')]=_[_0x94e7('0x4e')](_0x38b2cb[_0x94e7('0x3a')]);_0x4c32fa['filters']=_[_0x94e7('0x3c')](_0x4c32fa['model'],_0x4c32fa[_0x94e7('0x3a')]);_0x1f7265['attributes']=_[_0x94e7('0x3c')](_0x4c32fa[_0x94e7('0x39')],qs[_0x94e7('0x4f')](_0x38b2cb[_0x94e7('0x3a')]['fields']));_0x1f7265['attributes']=_0x1f7265[_0x94e7('0x3d')][_0x94e7('0x3e')]?_0x1f7265[_0x94e7('0x3d')]:_0x4c32fa[_0x94e7('0x39')];_0x1f7265[_0x94e7('0x41')]=qs[_0x94e7('0x42')](_0x38b2cb[_0x94e7('0x3a')][_0x94e7('0x42')]);_0x1f7265[_0x94e7('0x43')]=qs[_0x94e7('0x3b')](_['pick'](_0x38b2cb['query'],_0x4c32fa[_0x94e7('0x3b')]));if(_0x38b2cb[_0x94e7('0x3a')]['filter']){_0x1f7265['where']=_[_0x94e7('0x46')](_0x1f7265[_0x94e7('0x43')],{'$or':_[_0x94e7('0x34')](_0x1f7265[_0x94e7('0x3d')],function(_0x1d51a2){var _0x31a097={};_0x31a097[_0x1d51a2]={'$like':'%'+_0x38b2cb['query'][_0x94e7('0x45')]+'%'};return _0x31a097;})});}_0x1f7265=_[_0x94e7('0x46')]({},_0x1f7265,_0x38b2cb['options']);return _0xb1096f[_0x94e7('0x8f')](_0x1f7265);}})[_0x94e7('0x2e')](function(_0x359477){if(_0x359477){_0xe422d=_0x359477[_0x94e7('0x3e')];if(!_0x38b2cb[_0x94e7('0x3a')][_0x94e7('0x3f')](_0x94e7('0x40'))){_0x1f7265[_0x94e7('0x26')]=qs[_0x94e7('0x26')](_0x38b2cb[_0x94e7('0x3a')][_0x94e7('0x26')]);_0x1f7265[_0x94e7('0x29')]=qs[_0x94e7('0x29')](_0x38b2cb[_0x94e7('0x3a')][_0x94e7('0x29')]);}return _0xb1096f[_0x94e7('0x8f')](_0x1f7265);}})[_0x94e7('0x2e')](function(_0x1aa68a){if(_0x1aa68a){return _0x1aa68a?{'count':_0xe422d,'rows':_0x1aa68a}:null;}})['then'](respondWithResult(_0x3e1608,null))[_0x94e7('0x4b')](handleError(_0x3e1608,null));};