20f46e21e3339f1453f81d75417d318b9959b0b3
[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 _0x49df=['SIP','getTeams','findOne','addTeams','ids','Team','Agents','interface','sequelize','each','forEach','userOpenchannelQueue:save','removeTeams','select','field','tq.TeamId','join','OpenchannelQueueId\x20=\x20?','clone','push','QueryTypes','every','TeamId','includes','all','union','compact','value','transaction','removeAgents','userOpenchannelQueue:remove','addAgents','omit','spread','emit','getAgents','order','pick','eml-format','rimraf','zip-dir','moment','bluebird','mustache','to-csv','lodash','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/license/util','../../mysqldb','redis','defaults','socket.io-emitter','./openchannelQueue.socket','register','sendStatus','status','end','offset','undefined','count','limit','set','Content-Range','json','apply','reject','save','then','destroy','get','UserProfileResource','error','stack','name','index','map','OpenchannelQueue','rawAttributes','fieldName','type','key','model','keys','query','filters','intersection','attributes','length','hasOwnProperty','nolimit','sort','where','filter','merge','VIRTUAL','options','includeAll','include','findAll','rows','catch','show','params','fields','find','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','OpenchannelQueues','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','update','describe','getMembers','UserOpenchannelQueue','User','UserId','agent','openchannelPause','updatedAt','createdAt','format','%s/%s'];(function(_0x351b46,_0x26b265){var _0x1515df=function(_0x22896a){while(--_0x22896a){_0x351b46['push'](_0x351b46['shift']());}};_0x1515df(++_0x26b265);}(_0x49df,0x136));var _0xf49d=function(_0x3452a8,_0x4bfaa4){_0x3452a8=_0x3452a8-0x0;var _0x233814=_0x49df[_0x3452a8];return _0x233814;};'use strict';var emlformat=require(_0xf49d('0x0'));var rimraf=require(_0xf49d('0x1'));var zipdir=require(_0xf49d('0x2'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0xf49d('0x3'));var BPromise=require(_0xf49d('0x4'));var Mustache=require(_0xf49d('0x5'));var util=require('util');var path=require('path');var sox=require('sox');var csv=require(_0xf49d('0x6'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xf49d('0x7'));var squel=require('squel');var crypto=require(_0xf49d('0x8'));var jsforce=require(_0xf49d('0x9'));var deskjs=require(_0xf49d('0xa'));var toCsv=require('to-csv');var querystring=require(_0xf49d('0xb'));var Papa=require(_0xf49d('0xc'));var Redis=require(_0xf49d('0xd'));var authService=require(_0xf49d('0xe'));var qs=require('../../components/parsers/qs');var as=require(_0xf49d('0xf'));var hardwareService=require(_0xf49d('0x10'));var logger=require('../../config/logger')(_0xf49d('0x11'));var utils=require('../../config/utils');var config=require('../../config/environment');var licenseUtil=require(_0xf49d('0x12'));var db=require(_0xf49d('0x13'))['db'];config[_0xf49d('0x14')]=_[_0xf49d('0x15')](config[_0xf49d('0x14')],{'host':'localhost','port':0x18eb});var socket=require(_0xf49d('0x16'))(new Redis(config[_0xf49d('0x14')]));require(_0xf49d('0x17'))[_0xf49d('0x18')](socket);function respondWithStatusCode(_0xd5db16,_0x5bb8a5){_0x5bb8a5=_0x5bb8a5||0xcc;return function(_0x530815){if(_0x530815){return _0xd5db16[_0xf49d('0x19')](_0x5bb8a5);}return _0xd5db16[_0xf49d('0x1a')](_0x5bb8a5)[_0xf49d('0x1b')]();};}function respondWithResult(_0x409bf4,_0xfbaa1f){_0xfbaa1f=_0xfbaa1f||0xc8;return function(_0x1d8492){if(_0x1d8492){return _0x409bf4[_0xf49d('0x1a')](_0xfbaa1f)['json'](_0x1d8492);}};}function respondWithFilteredResult(_0x5f2ae7,_0x2a94be){return function(_0x479c92){if(_0x479c92){var _0x582d63=typeof _0x2a94be[_0xf49d('0x1c')]==='undefined'&&typeof _0x2a94be['limit']===_0xf49d('0x1d');var _0x5df937=_0x479c92['count'];var _0x5ab048=_0x582d63?0x0:_0x2a94be[_0xf49d('0x1c')];var _0x1774fd=_0x582d63?_0x479c92[_0xf49d('0x1e')]:_0x2a94be['offset']+_0x2a94be[_0xf49d('0x1f')];var _0x351ac3;if(_0x1774fd>=_0x5df937){_0x1774fd=_0x5df937;_0x351ac3=0xc8;}else{_0x351ac3=0xce;}_0x5f2ae7['status'](_0x351ac3);return _0x5f2ae7[_0xf49d('0x20')](_0xf49d('0x21'),_0x5ab048+'-'+_0x1774fd+'/'+_0x5df937)[_0xf49d('0x22')](_0x479c92);}return null;};}function patchUpdates(_0x1be19d){return function(_0x5bf7b3){try{jsonpatch[_0xf49d('0x23')](_0x5bf7b3,_0x1be19d,!![]);}catch(_0x51af53){return BPromise[_0xf49d('0x24')](_0x51af53);}return _0x5bf7b3[_0xf49d('0x25')]();};}function saveUpdates(_0x3e9c61,_0x4f9f9d){return function(_0x3e2b6f){if(_0x3e2b6f){return _0x3e2b6f['update'](_0x3e9c61)[_0xf49d('0x26')](function(_0x2dabfc){return _0x2dabfc;});}return null;};}function removeEntity(_0x145915,_0x53ab9b){return function(_0x33d781){if(_0x33d781){return _0x33d781[_0xf49d('0x27')]()['then'](function(){var _0x54ba29=_0x33d781[_0xf49d('0x28')]({'plain':!![]});var _0x23008b='OpenchannelQueues';return db[_0xf49d('0x29')][_0xf49d('0x27')]({'where':{'type':_0x23008b,'resourceId':_0x54ba29['id']}})[_0xf49d('0x26')](function(){return _0x33d781;});})[_0xf49d('0x26')](function(){_0x145915['status'](0xcc)[_0xf49d('0x1b')]();});}};}function handleEntityNotFound(_0x5a4716,_0x4ed8cb){return function(_0x4845f5){if(!_0x4845f5){_0x5a4716[_0xf49d('0x19')](0x194);}return _0x4845f5;};}function handleError(_0x14acf0,_0x2e691a){_0x2e691a=_0x2e691a||0x1f4;return function(_0x2a8ab1){logger[_0xf49d('0x2a')](_0x2a8ab1[_0xf49d('0x2b')]);if(_0x2a8ab1[_0xf49d('0x2c')]){delete _0x2a8ab1['name'];}_0x14acf0['status'](_0x2e691a)['send'](_0x2a8ab1);};}exports[_0xf49d('0x2d')]=function(_0xc2bc83,_0x1b46df){var _0x104cbe={},_0x801df={},_0x3f9161={'count':0x0,'rows':[]};var _0x225863=_[_0xf49d('0x2e')](db[_0xf49d('0x2f')][_0xf49d('0x30')],function(_0x137550){return{'name':_0x137550[_0xf49d('0x31')],'type':_0x137550[_0xf49d('0x32')][_0xf49d('0x33')]};});_0x801df[_0xf49d('0x34')]=_['map'](_0x225863,_0xf49d('0x2c'));_0x801df['query']=_[_0xf49d('0x35')](_0xc2bc83[_0xf49d('0x36')]);_0x801df[_0xf49d('0x37')]=_[_0xf49d('0x38')](_0x801df[_0xf49d('0x34')],_0x801df[_0xf49d('0x36')]);_0x104cbe['attributes']=_[_0xf49d('0x38')](_0x801df[_0xf49d('0x34')],qs['fields'](_0xc2bc83[_0xf49d('0x36')]['fields']));_0x104cbe[_0xf49d('0x39')]=_0x104cbe[_0xf49d('0x39')][_0xf49d('0x3a')]?_0x104cbe[_0xf49d('0x39')]:_0x801df[_0xf49d('0x34')];if(!_0xc2bc83[_0xf49d('0x36')][_0xf49d('0x3b')](_0xf49d('0x3c'))){_0x104cbe['limit']=qs[_0xf49d('0x1f')](_0xc2bc83[_0xf49d('0x36')][_0xf49d('0x1f')]);_0x104cbe['offset']=qs[_0xf49d('0x1c')](_0xc2bc83[_0xf49d('0x36')][_0xf49d('0x1c')]);}_0x104cbe['order']=qs[_0xf49d('0x3d')](_0xc2bc83[_0xf49d('0x36')][_0xf49d('0x3d')]);_0x104cbe[_0xf49d('0x3e')]=qs[_0xf49d('0x37')](_['pick'](_0xc2bc83[_0xf49d('0x36')],_0x801df['filters']),_0x225863);if(_0xc2bc83[_0xf49d('0x36')][_0xf49d('0x3f')]){_0x104cbe[_0xf49d('0x3e')]=_[_0xf49d('0x40')](_0x104cbe[_0xf49d('0x3e')],{'$or':_[_0xf49d('0x2e')](_0x225863,function(_0x23eb74){if(_0x23eb74[_0xf49d('0x32')]!==_0xf49d('0x41')){var _0x2c1e73={};_0x2c1e73[_0x23eb74[_0xf49d('0x2c')]]={'$like':'%'+_0xc2bc83[_0xf49d('0x36')]['filter']+'%'};return _0x2c1e73;}})});}_0x104cbe=_[_0xf49d('0x40')]({},_0x104cbe,_0xc2bc83[_0xf49d('0x42')]);var _0x47dccc={'where':_0x104cbe[_0xf49d('0x3e')]};return db[_0xf49d('0x2f')][_0xf49d('0x1e')](_0x47dccc)[_0xf49d('0x26')](function(_0x1eda00){_0x3f9161[_0xf49d('0x1e')]=_0x1eda00;if(_0xc2bc83['query'][_0xf49d('0x43')]){_0x104cbe[_0xf49d('0x44')]=[{'all':!![]}];}return db[_0xf49d('0x2f')][_0xf49d('0x45')](_0x104cbe);})[_0xf49d('0x26')](function(_0x53d87b){_0x3f9161[_0xf49d('0x46')]=_0x53d87b;return _0x3f9161;})['then'](respondWithFilteredResult(_0x1b46df,_0x104cbe))[_0xf49d('0x47')](handleError(_0x1b46df,null));};exports[_0xf49d('0x48')]=function(_0x31feed,_0x31d1cf){var _0x4f7e18={'raw':!![],'where':{'id':_0x31feed[_0xf49d('0x49')]['id']}},_0x1971e0={};_0x1971e0[_0xf49d('0x34')]=_[_0xf49d('0x35')](db[_0xf49d('0x2f')][_0xf49d('0x30')]);_0x1971e0[_0xf49d('0x36')]=_[_0xf49d('0x35')](_0x31feed[_0xf49d('0x36')]);_0x1971e0[_0xf49d('0x37')]=_[_0xf49d('0x38')](_0x1971e0[_0xf49d('0x34')],_0x1971e0[_0xf49d('0x36')]);_0x4f7e18[_0xf49d('0x39')]=_[_0xf49d('0x38')](_0x1971e0[_0xf49d('0x34')],qs['fields'](_0x31feed['query'][_0xf49d('0x4a')]));_0x4f7e18[_0xf49d('0x39')]=_0x4f7e18[_0xf49d('0x39')][_0xf49d('0x3a')]?_0x4f7e18[_0xf49d('0x39')]:_0x1971e0[_0xf49d('0x34')];if(_0x31feed[_0xf49d('0x36')][_0xf49d('0x43')]){_0x4f7e18['include']=[{'all':!![]}];}_0x4f7e18=_[_0xf49d('0x40')]({},_0x4f7e18,_0x31feed['options']);return db[_0xf49d('0x2f')][_0xf49d('0x4b')](_0x4f7e18)[_0xf49d('0x26')](handleEntityNotFound(_0x31d1cf,null))[_0xf49d('0x26')](respondWithResult(_0x31d1cf,null))[_0xf49d('0x47')](handleError(_0x31d1cf,null));};exports[_0xf49d('0x4c')]=function(_0x52d881,_0x3ed15c){return db['OpenchannelQueue'][_0xf49d('0x4c')](_0x52d881[_0xf49d('0x4d')],{})['then'](function(_0x55f41c){var _0x47dc15=_0x52d881[_0xf49d('0x4e')][_0xf49d('0x28')]({'plain':!![]});if(!_0x47dc15)throw new Error(_0xf49d('0x4f'));if(_0x47dc15[_0xf49d('0x50')]===_0xf49d('0x4e')){var _0x498387=_0x55f41c[_0xf49d('0x28')]({'plain':!![]});var _0x3b61ef=_0xf49d('0x51');return db[_0xf49d('0x52')][_0xf49d('0x4b')]({'where':{'name':_0x3b61ef,'userProfileId':_0x47dc15[_0xf49d('0x53')]},'raw':!![]})[_0xf49d('0x26')](function(_0x26d4e2){if(_0x26d4e2&&_0x26d4e2[_0xf49d('0x54')]===0x0){return db[_0xf49d('0x29')][_0xf49d('0x4c')]({'name':_0x498387[_0xf49d('0x2c')],'resourceId':_0x498387['id'],'type':_0x26d4e2['name'],'sectionId':_0x26d4e2['id']},{})[_0xf49d('0x26')](function(){return _0x55f41c;});}else{return _0x55f41c;}})[_0xf49d('0x47')](function(_0x4b6177){logger[_0xf49d('0x2a')](_0xf49d('0x55'),_0x4b6177);throw _0x4b6177;});}return _0x55f41c;})[_0xf49d('0x26')](respondWithResult(_0x3ed15c,0xc9))[_0xf49d('0x47')](handleError(_0x3ed15c,null));};exports[_0xf49d('0x56')]=function(_0xe77470,_0x13a035){if(_0xe77470['body']['id']){delete _0xe77470['body']['id'];}return db[_0xf49d('0x2f')][_0xf49d('0x4b')]({'where':{'id':_0xe77470[_0xf49d('0x49')]['id']}})[_0xf49d('0x26')](handleEntityNotFound(_0x13a035,null))[_0xf49d('0x26')](saveUpdates(_0xe77470['body'],null))[_0xf49d('0x26')](respondWithResult(_0x13a035,null))['catch'](handleError(_0x13a035,null));};exports[_0xf49d('0x27')]=function(_0x1e4ccc,_0xa8b435){return db['OpenchannelQueue']['find']({'where':{'id':_0x1e4ccc['params']['id']}})[_0xf49d('0x26')](handleEntityNotFound(_0xa8b435,null))['then'](removeEntity(_0xa8b435,null))[_0xf49d('0x47')](handleError(_0xa8b435,null));};exports[_0xf49d('0x57')]=function(_0x2d4439,_0x5dc565){return db[_0xf49d('0x2f')]['describe']()[_0xf49d('0x26')](respondWithResult(_0x5dc565,null))['catch'](handleError(_0x5dc565,null));};exports[_0xf49d('0x58')]=function(_0x5115de,_0x2d3b53,_0x463bb9){var _0x378fa7={'raw':!![],'where':{}},_0x23e978={},_0x41292b;return db[_0xf49d('0x2f')]['findOne']({'where':{'id':_0x5115de['params']['id']}})['then'](handleEntityNotFound(_0x2d3b53,null))[_0xf49d('0x26')](function(_0x2d5e9e){if(_0x2d5e9e){_0x41292b=_0x2d5e9e[_0xf49d('0x28')]({'plain':!![]});_0x23e978[_0xf49d('0x34')]=_[_0xf49d('0x35')](db[_0xf49d('0x59')][_0xf49d('0x30')]);_0x23e978[_0xf49d('0x36')]=_[_0xf49d('0x35')](_0x5115de[_0xf49d('0x36')]);_0x23e978['filters']=_['intersection'](_0x23e978[_0xf49d('0x34')],_0x23e978[_0xf49d('0x36')]);_0x378fa7['attributes']=_[_0xf49d('0x38')](_0x23e978[_0xf49d('0x34')],qs[_0xf49d('0x4a')](_0x5115de['query'][_0xf49d('0x4a')]));_0x378fa7[_0xf49d('0x39')]=_0x378fa7['attributes'][_0xf49d('0x3a')]?_0x378fa7[_0xf49d('0x39')]:_0x23e978[_0xf49d('0x34')];if(!_0x5115de[_0xf49d('0x36')]['hasOwnProperty'](_0xf49d('0x3c'))){_0x378fa7['limit']=qs[_0xf49d('0x1f')](_0x5115de[_0xf49d('0x36')][_0xf49d('0x1f')]);_0x378fa7[_0xf49d('0x1c')]=qs[_0xf49d('0x1c')](_0x5115de[_0xf49d('0x36')][_0xf49d('0x1c')]);}_0x378fa7['order']=qs[_0xf49d('0x3d')](_0x5115de['query'][_0xf49d('0x3d')]);_0x378fa7['where']=qs[_0xf49d('0x37')](_['pick'](_0x5115de[_0xf49d('0x36')],_0x23e978[_0xf49d('0x37')]));_0x378fa7['where']['OpenchannelQueueId']=_0x2d5e9e['id'];if(_0x5115de['query']['filter']){_0x378fa7['where']=_['merge'](_0x378fa7['where'],{'$or':_[_0xf49d('0x2e')](_0x378fa7['attributes'],function(_0x2b6563){var _0x1e2522={};_0x1e2522[_0x2b6563]={'$like':'%'+_0x5115de[_0xf49d('0x36')]['filter']+'%'};return _0x1e2522;})});}_0x378fa7=_['merge']({},_0x378fa7,_0x5115de[_0xf49d('0x42')]);return db[_0xf49d('0x59')][_0xf49d('0x45')](_0x378fa7);}})[_0xf49d('0x26')](function(_0x1dba09){if(_0x1dba09){return db[_0xf49d('0x5a')]['findAndCountAll']({'where':{'id':_[_0xf49d('0x2e')](_0x1dba09,_0xf49d('0x5b')),'role':_0xf49d('0x5c')},'attributes':['id','name',_0xf49d('0x5d'),_0xf49d('0x5e'),_0xf49d('0x5f')]});}})[_0xf49d('0x26')](function(_0x386d3a){if(_0x386d3a){return{'count':_0x386d3a[_0xf49d('0x1e')],'rows':_[_0xf49d('0x2e')](_0x386d3a[_0xf49d('0x46')],function(_0x4812bb){return{'membername':_0x4812bb[_0xf49d('0x2c')],'UserId':_0x4812bb['id'],'queue_name':_0x41292b[_0xf49d('0x2c')],'OpenchannelQueueId':_0x41292b['id'],'interface':util[_0xf49d('0x60')](_0xf49d('0x61'),_0xf49d('0x62'),_0x4812bb[_0xf49d('0x2c')]),'penalty':0x0,'paused':_0x4812bb[_0xf49d('0x5d')],'createdAt':_0x4812bb[_0xf49d('0x5f')],'updatedAt':_0x4812bb[_0xf49d('0x5e')]};})};}else{return{'count':0x0,'rows':[]};}})[_0xf49d('0x26')](respondWithFilteredResult(_0x2d3b53,_0x378fa7))['catch'](handleError(_0x2d3b53,null));};exports[_0xf49d('0x63')]=function(_0x290e57,_0x41e890,_0x2900e0){var _0x366734={};var _0x5864c7={};var _0x43d1ce;var _0x22bd16;return db['OpenchannelQueue'][_0xf49d('0x64')]({'where':{'id':_0x290e57['params']['id']}})[_0xf49d('0x26')](handleEntityNotFound(_0x41e890,null))[_0xf49d('0x26')](function(_0x4c771d){if(_0x4c771d){_0x43d1ce=_0x4c771d;_0x5864c7[_0xf49d('0x34')]=_[_0xf49d('0x35')](db['Team'][_0xf49d('0x30')]);_0x5864c7['query']=_[_0xf49d('0x35')](_0x290e57[_0xf49d('0x36')]);_0x5864c7[_0xf49d('0x37')]=_[_0xf49d('0x38')](_0x5864c7[_0xf49d('0x34')],_0x5864c7['query']);_0x366734[_0xf49d('0x39')]=_['intersection'](_0x5864c7[_0xf49d('0x34')],qs[_0xf49d('0x4a')](_0x290e57['query'][_0xf49d('0x4a')]));_0x366734[_0xf49d('0x39')]=_0x366734['attributes'][_0xf49d('0x3a')]?_0x366734[_0xf49d('0x39')]:_0x5864c7[_0xf49d('0x34')];_0x366734['order']=qs[_0xf49d('0x3d')](_0x290e57[_0xf49d('0x36')][_0xf49d('0x3d')]);_0x366734['where']=qs[_0xf49d('0x37')](_['pick'](_0x290e57[_0xf49d('0x36')],_0x5864c7[_0xf49d('0x37')]));if(_0x290e57['query']['filter']){_0x366734[_0xf49d('0x3e')]=_[_0xf49d('0x40')](_0x366734[_0xf49d('0x3e')],{'$or':_[_0xf49d('0x2e')](_0x366734[_0xf49d('0x39')],function(_0x353e62){var _0x376e5f={};_0x376e5f[_0x353e62]={'$like':'%'+_0x290e57[_0xf49d('0x36')][_0xf49d('0x3f')]+'%'};return _0x376e5f;})});}_0x366734=_[_0xf49d('0x40')]({},_0x366734,_0x290e57[_0xf49d('0x42')]);return _0x43d1ce[_0xf49d('0x63')](_0x366734);}})[_0xf49d('0x26')](function(_0x7df6a5){if(_0x7df6a5){_0x22bd16=_0x7df6a5[_0xf49d('0x3a')];if(!_0x290e57[_0xf49d('0x36')][_0xf49d('0x3b')]('nolimit')){_0x366734[_0xf49d('0x1f')]=qs[_0xf49d('0x1f')](_0x290e57[_0xf49d('0x36')][_0xf49d('0x1f')]);_0x366734[_0xf49d('0x1c')]=qs[_0xf49d('0x1c')](_0x290e57[_0xf49d('0x36')]['offset']);}return _0x43d1ce[_0xf49d('0x63')](_0x366734);}})['then'](function(_0x117eab){if(_0x117eab){return _0x117eab?{'count':_0x22bd16,'rows':_0x117eab}:null;}})[_0xf49d('0x26')](respondWithResult(_0x41e890,null))[_0xf49d('0x47')](handleError(_0x41e890,null));};exports[_0xf49d('0x65')]=function(_0x5672fd,_0x139fff,_0x3b695f){var _0x1ac857=_0x5672fd['body'][_0xf49d('0x66')];return db[_0xf49d('0x67')][_0xf49d('0x45')]({'where':{'id':_0x1ac857},'attributes':['id'],'include':[{'model':db[_0xf49d('0x5a')],'as':_0xf49d('0x68'),'attributes':['id','name','online','voicePause',_0xf49d('0x69')],'raw':!![]}]})[_0xf49d('0x26')](function(_0x27f99c){if(_0x27f99c){var _0x3c3aaa=_['flatMap'](_0x27f99c,function(_0x2340aa){var _0x3c4a74=_0x2340aa['get']({'plain':!![]});return _0x3c4a74['Agents'];});return db['OpenchannelQueue'][_0xf49d('0x4b')]({'where':{'id':_0x5672fd[_0xf49d('0x49')]['id']}})[_0xf49d('0x26')](function(_0x5834b8){return db[_0xf49d('0x6a')]['transaction'](function(_0x2c2d2d){return _0x5834b8['addTeams'](_0x1ac857,{'transaction':_0x2c2d2d})['then'](function(){return BPromise[_0xf49d('0x6b')](_0x3c3aaa,function(_0x1f379d){return db[_0xf49d('0x59')]['findOrCreate']({'where':{'UserId':_0x1f379d['id'],'OpenchannelQueueId':_0x5672fd[_0xf49d('0x49')]['id']},'transaction':_0x2c2d2d});});})[_0xf49d('0x26')](function(){_0x3c3aaa[_0xf49d('0x6c')](function(_0x5eb36f){socket['emit'](_0xf49d('0x6d'),{'UserId':_0x5eb36f['id'],'OpenchannelQueueId':_0x5834b8['id']});});});});});}})[_0xf49d('0x26')](respondWithStatusCode(_0x139fff,null))[_0xf49d('0x47')](handleError(_0x139fff,null));};exports[_0xf49d('0x6e')]=function(_0x5b2de1,_0x3c75c7,_0x400247){return db['Team'][_0xf49d('0x45')]({'where':{'id':_0x5b2de1['query']['ids']},'attributes':['id'],'include':[{'model':db[_0xf49d('0x5a')],'as':'Agents','attributes':['id'],'raw':!![]}]})[_0xf49d('0x26')](handleEntityNotFound(_0x3c75c7,null))[_0xf49d('0x26')](function(_0x48efca){var _0x13795e=_['map'](_0x48efca,'id');var _0x4ccd5e=[];var _0x33ca09=[];var _0x2a5400=squel[_0xf49d('0x6f')]();_0x2a5400[_0xf49d('0x70')](_0xf49d('0x71'))['from']('team_has_openchannel_queues','tq')[_0xf49d('0x72')]('user_has_teams','ut','ut.TeamId\x20=\x20tq.TeamId')[_0xf49d('0x3e')](_0xf49d('0x73'),_0x5b2de1['params']['id']);for(var _0x3abcba=0x0;_0x3abcba<_0x48efca['length'];_0x3abcba+=0x1){let _0x253b9a=_0x48efca[_0x3abcba];for(var _0x504a68=0x0;_0x504a68<_0x253b9a[_0xf49d('0x68')][_0xf49d('0x3a')];_0x504a68+=0x1){let _0x1f5232=_0x253b9a['Agents'][_0x504a68];var _0x2db991=_0x2a5400[_0xf49d('0x74')]();_0x2db991[_0xf49d('0x3e')]('ut.UserId\x20=\x20?',_0x1f5232['id']);_0x33ca09[_0xf49d('0x75')](db[_0xf49d('0x6a')][_0xf49d('0x36')](_0x2db991['toString'](),{'type':db[_0xf49d('0x6a')][_0xf49d('0x76')]['SELECT']})[_0xf49d('0x26')](function(_0x6bc8eb){if(_0x6bc8eb[_0xf49d('0x3a')]===0x1){return _0x1f5232['id'];}else{var _0x465b63=_[_0xf49d('0x77')](_[_0xf49d('0x2e')](_0x6bc8eb,_0xf49d('0x78')),function(_0x4fea01){return _[_0xf49d('0x79')](_0x13795e,_0x4fea01);});if(_0x465b63){return _0x1f5232['id'];}}}));}}return BPromise[_0xf49d('0x7a')](_0x33ca09)[_0xf49d('0x26')](function(_0x3fd4fc){_0x4ccd5e=_(_0x4ccd5e)[_0xf49d('0x7b')](_0x3fd4fc)[_0xf49d('0x7c')]()[_0xf49d('0x7d')]();return db[_0xf49d('0x2f')][_0xf49d('0x4b')]({'where':{'id':_0x5b2de1['params']['id']}})['then'](function(_0x57a1b2){return db['sequelize'][_0xf49d('0x7e')](function(_0x2d941d){return _0x57a1b2[_0xf49d('0x6e')](_0x5b2de1[_0xf49d('0x36')][_0xf49d('0x66')],{'transaction':_0x2d941d})[_0xf49d('0x26')](function(){if(!_['isEmpty'](_0x4ccd5e)){return _0x57a1b2[_0xf49d('0x7f')](_0x4ccd5e,{'transaction':_0x2d941d});}})[_0xf49d('0x26')](function(){_0x4ccd5e[_0xf49d('0x6c')](function(_0x40e510){socket['emit'](_0xf49d('0x80'),{'UserId':_0x40e510,'OpenchannelQueueId':_0x57a1b2['id']});});});});});});})[_0xf49d('0x26')](respondWithStatusCode(_0x3c75c7,null))['catch'](handleError(_0x3c75c7,null));};exports['addAgents']=function(_0x4ce937,_0x5ead1c,_0x53be1a){return db[_0xf49d('0x2f')][_0xf49d('0x4b')]({'where':{'id':_0x4ce937[_0xf49d('0x49')]['id']}})[_0xf49d('0x26')](handleEntityNotFound(_0x5ead1c,null))[_0xf49d('0x26')](function(_0x2f0acd){if(_0x2f0acd){return _0x2f0acd[_0xf49d('0x81')](_0x4ce937[_0xf49d('0x4d')][_0xf49d('0x66')],_[_0xf49d('0x82')](_0x4ce937[_0xf49d('0x4d')],[_0xf49d('0x66'),'id'])||{})[_0xf49d('0x83')](function(_0x3a220b){for(var _0x5b8d31=0x0;_0x5b8d31<_0x4ce937[_0xf49d('0x4d')][_0xf49d('0x66')]['length'];_0x5b8d31+=0x1){socket[_0xf49d('0x84')](_0xf49d('0x6d'),{'UserId':Number(_0x4ce937['body'][_0xf49d('0x66')][_0x5b8d31]),'OpenchannelQueueId':Number(_0x4ce937[_0xf49d('0x49')]['id'])});}return _0x3a220b;});}})['then'](respondWithResult(_0x5ead1c,null))['catch'](handleError(_0x5ead1c,null));};exports['removeAgents']=function(_0x4a8a09,_0x5dd298,_0x4dbe76){return db['OpenchannelQueue'][_0xf49d('0x4b')]({'where':{'id':_0x4a8a09['params']['id']}})[_0xf49d('0x26')](handleEntityNotFound(_0x5dd298,null))['then'](function(_0x1360f5){if(_0x1360f5){return _0x1360f5[_0xf49d('0x7f')](_0x4a8a09[_0xf49d('0x36')]['ids'])[_0xf49d('0x26')](function(){if(_['isArray'](_0x4a8a09[_0xf49d('0x36')]['ids'])){for(var _0x412072=0x0;_0x412072<_0x4a8a09[_0xf49d('0x36')][_0xf49d('0x66')][_0xf49d('0x3a')];_0x412072+=0x1){socket[_0xf49d('0x84')](_0xf49d('0x80'),{'UserId':Number(_0x4a8a09[_0xf49d('0x36')]['ids'][_0x412072]),'OpenchannelQueueId':Number(_0x4a8a09[_0xf49d('0x49')]['id'])});}}else{socket[_0xf49d('0x84')](_0xf49d('0x80'),{'UserId':Number(_0x4a8a09['query'][_0xf49d('0x66')]),'OpenchannelQueueId':Number(_0x4a8a09['params']['id'])});}});}})['then'](respondWithStatusCode(_0x5dd298,null))['catch'](handleError(_0x5dd298,null));};exports[_0xf49d('0x85')]=function(_0x4955d4,_0x4c5a24,_0x3c0702){var _0x440f1a={};var _0xcab26={};var _0x204de3;var _0x5cea24;return db[_0xf49d('0x2f')]['findOne']({'where':{'id':_0x4955d4[_0xf49d('0x49')]['id']}})[_0xf49d('0x26')](handleEntityNotFound(_0x4c5a24,null))[_0xf49d('0x26')](function(_0x2116dc){if(_0x2116dc){_0x204de3=_0x2116dc;_0xcab26[_0xf49d('0x34')]=_[_0xf49d('0x35')](db[_0xf49d('0x5a')]['rawAttributes']);_0xcab26[_0xf49d('0x36')]=_[_0xf49d('0x35')](_0x4955d4[_0xf49d('0x36')]);_0xcab26[_0xf49d('0x37')]=_[_0xf49d('0x38')](_0xcab26[_0xf49d('0x34')],_0xcab26[_0xf49d('0x36')]);_0x440f1a[_0xf49d('0x39')]=_[_0xf49d('0x38')](_0xcab26[_0xf49d('0x34')],qs['fields'](_0x4955d4[_0xf49d('0x36')][_0xf49d('0x4a')]));_0x440f1a['attributes']=_0x440f1a[_0xf49d('0x39')][_0xf49d('0x3a')]?_0x440f1a[_0xf49d('0x39')]:_0xcab26[_0xf49d('0x34')];_0x440f1a[_0xf49d('0x86')]=qs['sort'](_0x4955d4['query']['sort']);_0x440f1a[_0xf49d('0x3e')]=qs['filters'](_[_0xf49d('0x87')](_0x4955d4[_0xf49d('0x36')],_0xcab26[_0xf49d('0x37')]));if(_0x4955d4[_0xf49d('0x36')][_0xf49d('0x3f')]){_0x440f1a[_0xf49d('0x3e')]=_[_0xf49d('0x40')](_0x440f1a[_0xf49d('0x3e')],{'$or':_[_0xf49d('0x2e')](_0x440f1a[_0xf49d('0x39')],function(_0x790767){var _0x53dd2e={};_0x53dd2e[_0x790767]={'$like':'%'+_0x4955d4[_0xf49d('0x36')][_0xf49d('0x3f')]+'%'};return _0x53dd2e;})});}_0x440f1a=_[_0xf49d('0x40')]({},_0x440f1a,_0x4955d4['options']);return _0x204de3[_0xf49d('0x85')](_0x440f1a);}})['then'](function(_0x3e1a61){if(_0x3e1a61){_0x5cea24=_0x3e1a61[_0xf49d('0x3a')];if(!_0x4955d4[_0xf49d('0x36')]['hasOwnProperty'](_0xf49d('0x3c'))){_0x440f1a[_0xf49d('0x1f')]=qs[_0xf49d('0x1f')](_0x4955d4['query']['limit']);_0x440f1a[_0xf49d('0x1c')]=qs[_0xf49d('0x1c')](_0x4955d4['query'][_0xf49d('0x1c')]);}return _0x204de3[_0xf49d('0x85')](_0x440f1a);}})[_0xf49d('0x26')](function(_0x36eae1){if(_0x36eae1){return _0x36eae1?{'count':_0x5cea24,'rows':_0x36eae1}:null;}})[_0xf49d('0x26')](respondWithResult(_0x4c5a24,null))[_0xf49d('0x47')](handleError(_0x4c5a24,null));};