Built motion from commit d1eab355.|2.6.28
[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 _0xc888=['team_has_openchannel_queues','join','user_has_teams','ut.TeamId\x20=\x20tq.TeamId','clone','push','QueryTypes','SELECT','every','includes','all','union','compact','value','removeAgents','userOpenchannelQueue:remove','addAgents','omit','spread','getAgents','bluebird','lodash','ioredis','../../components/parsers/qs','../../config/logger','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./openchannelQueue.socket','register','sendStatus','status','end','offset','undefined','limit','count','set','json','then','UserProfileResource','destroy','error','stack','name','send','map','OpenchannelQueue','rawAttributes','fieldName','type','key','where','include','rows','catch','show','model','query','keys','filters','intersection','attributes','fields','length','includeAll','merge','options','find','create','user','get','OpenchannelQueues','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','update','body','describe','getMembers','findOne','params','hasOwnProperty','nolimit','order','sort','pick','filter','UserOpenchannelQueue','findAll','User','UserId','agent','openchannelPause','updatedAt','SIP','createdAt','getTeams','Team','addTeams','ids','Agents','online','voicePause','interface','flatMap','sequelize','transaction','each','findOrCreate','emit','userOpenchannelQueue:save','removeTeams','select'];(function(_0x85bc6f,_0x1f9c85){var _0x489e1e=function(_0x3253fa){while(--_0x3253fa){_0x85bc6f['push'](_0x85bc6f['shift']());}};_0x489e1e(++_0x1f9c85);}(_0xc888,0x89));var _0x8c88=function(_0x3a852a,_0xf3f1d3){_0x3a852a=_0x3a852a-0x0;var _0x48c902=_0xc888[_0x3a852a];return _0x48c902;};'use strict';var BPromise=require(_0x8c88('0x0'));var util=require('util');var _=require(_0x8c88('0x1'));var squel=require('squel');var Redis=require(_0x8c88('0x2'));var qs=require(_0x8c88('0x3'));var logger=require(_0x8c88('0x4'))('api');var config=require('../../config/environment');var db=require(_0x8c88('0x5'))['db'];config[_0x8c88('0x6')]=_[_0x8c88('0x7')](config['redis'],{'host':_0x8c88('0x8'),'port':0x18eb});var socket=require(_0x8c88('0x9'))(new Redis(config[_0x8c88('0x6')]));require(_0x8c88('0xa'))[_0x8c88('0xb')](socket);function respondWithStatusCode(_0x4b9d41,_0x133636){_0x133636=_0x133636||0xcc;return function(_0x5a351d){if(_0x5a351d){return _0x4b9d41[_0x8c88('0xc')](_0x133636);}return _0x4b9d41[_0x8c88('0xd')](_0x133636)[_0x8c88('0xe')]();};}function respondWithResult(_0x592f3c,_0x4949fb){_0x4949fb=_0x4949fb||0xc8;return function(_0x356474){if(_0x356474){return _0x592f3c[_0x8c88('0xd')](_0x4949fb)['json'](_0x356474);}};}function respondWithFilteredResult(_0x5239d5,_0x367400){return function(_0x31d9cd){if(_0x31d9cd){var _0x3ff85c=typeof _0x367400[_0x8c88('0xf')]===_0x8c88('0x10')&&typeof _0x367400[_0x8c88('0x11')]==='undefined';var _0x15e079=_0x31d9cd[_0x8c88('0x12')];var _0x4aa72e=_0x3ff85c?0x0:_0x367400[_0x8c88('0xf')];var _0x31e738=_0x3ff85c?_0x31d9cd[_0x8c88('0x12')]:_0x367400[_0x8c88('0xf')]+_0x367400[_0x8c88('0x11')];var _0x6a7a68;if(_0x31e738>=_0x15e079){_0x31e738=_0x15e079;_0x6a7a68=0xc8;}else{_0x6a7a68=0xce;}_0x5239d5[_0x8c88('0xd')](_0x6a7a68);return _0x5239d5[_0x8c88('0x13')]('Content-Range',_0x4aa72e+'-'+_0x31e738+'/'+_0x15e079)[_0x8c88('0x14')](_0x31d9cd);}return null;};}function saveUpdates(_0x4b8760){return function(_0x2b736a){if(_0x2b736a){return _0x2b736a['update'](_0x4b8760)[_0x8c88('0x15')](function(_0x30cf0f){return _0x30cf0f;});}return null;};}function removeEntity(_0x2ad754){return function(_0x4797f4){if(_0x4797f4){return _0x4797f4['destroy']()[_0x8c88('0x15')](function(){var _0xa6fb11=_0x4797f4['get']({'plain':!![]});var _0x314085='OpenchannelQueues';return db[_0x8c88('0x16')][_0x8c88('0x17')]({'where':{'type':_0x314085,'resourceId':_0xa6fb11['id']}})[_0x8c88('0x15')](function(){return _0x4797f4;});})['then'](function(){_0x2ad754[_0x8c88('0xd')](0xcc)[_0x8c88('0xe')]();});}};}function handleEntityNotFound(_0x57798d){return function(_0x2f2ef6){if(!_0x2f2ef6){_0x57798d[_0x8c88('0xc')](0x194);}return _0x2f2ef6;};}function handleError(_0xfb72f5,_0x2c6384){_0x2c6384=_0x2c6384||0x1f4;return function(_0x405af6){logger[_0x8c88('0x18')](_0x405af6[_0x8c88('0x19')]);if(_0x405af6[_0x8c88('0x1a')]){delete _0x405af6[_0x8c88('0x1a')];}_0xfb72f5['status'](_0x2c6384)[_0x8c88('0x1b')](_0x405af6);};}exports['index']=function(_0x3420f3,_0x4413e4){var _0x2a6cba={};var _0x3e9d9d={'count':0x0,'rows':[]};var _0xfb1c12=_[_0x8c88('0x1c')](db[_0x8c88('0x1d')][_0x8c88('0x1e')],function(_0xcc6f99){return{'name':_0xcc6f99[_0x8c88('0x1f')],'type':_0xcc6f99[_0x8c88('0x20')][_0x8c88('0x21')]};});_0x2a6cba=qs['getOptions'](_0xfb1c12,_0x3420f3);var _0x598ed9={'where':_0x2a6cba[_0x8c88('0x22')]};return db[_0x8c88('0x1d')][_0x8c88('0x12')](_0x598ed9)[_0x8c88('0x15')](function(_0x7c6c4e){_0x3e9d9d[_0x8c88('0x12')]=_0x7c6c4e;_0x2a6cba[_0x8c88('0x23')]=qs[_0x8c88('0x23')](_0x3420f3['query']);return db['OpenchannelQueue']['findAll'](_0x2a6cba);})[_0x8c88('0x15')](function(_0x2e2aa4){_0x3e9d9d[_0x8c88('0x24')]=_0x2e2aa4;return _0x3e9d9d;})[_0x8c88('0x15')](respondWithFilteredResult(_0x4413e4,_0x2a6cba))[_0x8c88('0x25')](handleError(_0x4413e4,null));};exports[_0x8c88('0x26')]=function(_0x3457d5,_0x5c0d17){var _0x3d7096={'raw':!![],'where':{'id':_0x3457d5['params']['id']}},_0x2fd4b0={};_0x2fd4b0[_0x8c88('0x27')]=_['keys'](db[_0x8c88('0x1d')][_0x8c88('0x1e')]);_0x2fd4b0[_0x8c88('0x28')]=_[_0x8c88('0x29')](_0x3457d5[_0x8c88('0x28')]);_0x2fd4b0[_0x8c88('0x2a')]=_[_0x8c88('0x2b')](_0x2fd4b0[_0x8c88('0x27')],_0x2fd4b0[_0x8c88('0x28')]);_0x3d7096[_0x8c88('0x2c')]=_['intersection'](_0x2fd4b0[_0x8c88('0x27')],qs[_0x8c88('0x2d')](_0x3457d5['query']['fields']));_0x3d7096[_0x8c88('0x2c')]=_0x3d7096[_0x8c88('0x2c')][_0x8c88('0x2e')]?_0x3d7096[_0x8c88('0x2c')]:_0x2fd4b0[_0x8c88('0x27')];if(_0x3457d5[_0x8c88('0x28')][_0x8c88('0x2f')]){_0x3d7096['include']=[{'all':!![]}];}_0x3d7096=_[_0x8c88('0x30')]({},_0x3d7096,_0x3457d5[_0x8c88('0x31')]);return db[_0x8c88('0x1d')][_0x8c88('0x32')](_0x3d7096)[_0x8c88('0x15')](handleEntityNotFound(_0x5c0d17,null))[_0x8c88('0x15')](respondWithResult(_0x5c0d17,null))[_0x8c88('0x25')](handleError(_0x5c0d17,null));};exports[_0x8c88('0x33')]=function(_0x240c6,_0xe0807f){return db[_0x8c88('0x1d')][_0x8c88('0x33')](_0x240c6['body'],{})[_0x8c88('0x15')](function(_0x3693a5){var _0x58c204=_0x240c6[_0x8c88('0x34')][_0x8c88('0x35')]({'plain':!![]});if(!_0x58c204)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x58c204['role']===_0x8c88('0x34')){var _0x5bc1a0=_0x3693a5[_0x8c88('0x35')]({'plain':!![]});var _0x3afeda=_0x8c88('0x36');return db[_0x8c88('0x37')][_0x8c88('0x32')]({'where':{'name':_0x3afeda,'userProfileId':_0x58c204[_0x8c88('0x38')]},'raw':!![]})['then'](function(_0xdfc06f){if(_0xdfc06f&&_0xdfc06f[_0x8c88('0x39')]===0x0){return db[_0x8c88('0x16')][_0x8c88('0x33')]({'name':_0x5bc1a0[_0x8c88('0x1a')],'resourceId':_0x5bc1a0['id'],'type':_0xdfc06f[_0x8c88('0x1a')],'sectionId':_0xdfc06f['id']},{})['then'](function(){return _0x3693a5;});}else{return _0x3693a5;}})[_0x8c88('0x25')](function(_0x7db439){logger[_0x8c88('0x18')](_0x8c88('0x3a'),_0x7db439);throw _0x7db439;});}return _0x3693a5;})[_0x8c88('0x15')](respondWithResult(_0xe0807f,0xc9))[_0x8c88('0x25')](handleError(_0xe0807f,null));};exports[_0x8c88('0x3b')]=function(_0x4466de,_0x58339d){if(_0x4466de['body']['id']){delete _0x4466de[_0x8c88('0x3c')]['id'];}return db[_0x8c88('0x1d')][_0x8c88('0x32')]({'where':{'id':_0x4466de['params']['id']}})[_0x8c88('0x15')](handleEntityNotFound(_0x58339d,null))[_0x8c88('0x15')](saveUpdates(_0x4466de[_0x8c88('0x3c')],null))[_0x8c88('0x15')](respondWithResult(_0x58339d,null))['catch'](handleError(_0x58339d,null));};exports['destroy']=function(_0x4a1b5b,_0x4a666d){return db[_0x8c88('0x1d')][_0x8c88('0x32')]({'where':{'id':_0x4a1b5b['params']['id']}})[_0x8c88('0x15')](handleEntityNotFound(_0x4a666d,null))[_0x8c88('0x15')](removeEntity(_0x4a666d,null))[_0x8c88('0x25')](handleError(_0x4a666d,null));};exports[_0x8c88('0x3d')]=function(_0xade38f,_0x1c0e04){return db[_0x8c88('0x1d')][_0x8c88('0x3d')]()[_0x8c88('0x15')](respondWithResult(_0x1c0e04,null))[_0x8c88('0x25')](handleError(_0x1c0e04,null));};exports[_0x8c88('0x3e')]=function(_0x2faaab,_0x51e656){var _0x114c17={'raw':!![],'where':{}},_0x5dcc1e={},_0x384069;return db['OpenchannelQueue'][_0x8c88('0x3f')]({'where':{'id':_0x2faaab[_0x8c88('0x40')]['id']}})[_0x8c88('0x15')](handleEntityNotFound(_0x51e656,null))[_0x8c88('0x15')](function(_0x51ca55){if(_0x51ca55){_0x384069=_0x51ca55[_0x8c88('0x35')]({'plain':!![]});_0x5dcc1e[_0x8c88('0x27')]=_['keys'](db['UserOpenchannelQueue'][_0x8c88('0x1e')]);_0x5dcc1e[_0x8c88('0x28')]=_[_0x8c88('0x29')](_0x2faaab[_0x8c88('0x28')]);_0x5dcc1e[_0x8c88('0x2a')]=_[_0x8c88('0x2b')](_0x5dcc1e[_0x8c88('0x27')],_0x5dcc1e[_0x8c88('0x28')]);_0x114c17['attributes']=_[_0x8c88('0x2b')](_0x5dcc1e['model'],qs[_0x8c88('0x2d')](_0x2faaab['query'][_0x8c88('0x2d')]));_0x114c17[_0x8c88('0x2c')]=_0x114c17['attributes'][_0x8c88('0x2e')]?_0x114c17[_0x8c88('0x2c')]:_0x5dcc1e[_0x8c88('0x27')];if(!_0x2faaab[_0x8c88('0x28')][_0x8c88('0x41')](_0x8c88('0x42'))){_0x114c17[_0x8c88('0x11')]=qs[_0x8c88('0x11')](_0x2faaab[_0x8c88('0x28')][_0x8c88('0x11')]);_0x114c17[_0x8c88('0xf')]=qs['offset'](_0x2faaab[_0x8c88('0x28')]['offset']);}_0x114c17[_0x8c88('0x43')]=qs[_0x8c88('0x44')](_0x2faaab[_0x8c88('0x28')][_0x8c88('0x44')]);_0x114c17[_0x8c88('0x22')]=qs[_0x8c88('0x2a')](_[_0x8c88('0x45')](_0x2faaab[_0x8c88('0x28')],_0x5dcc1e[_0x8c88('0x2a')]));_0x114c17['where']['OpenchannelQueueId']=_0x51ca55['id'];if(_0x2faaab[_0x8c88('0x28')][_0x8c88('0x46')]){_0x114c17[_0x8c88('0x22')]=_[_0x8c88('0x30')](_0x114c17[_0x8c88('0x22')],{'$or':_[_0x8c88('0x1c')](_0x114c17[_0x8c88('0x2c')],function(_0x13f4c1){var _0xf24da5={};_0xf24da5[_0x13f4c1]={'$like':'%'+_0x2faaab[_0x8c88('0x28')][_0x8c88('0x46')]+'%'};return _0xf24da5;})});}_0x114c17=_[_0x8c88('0x30')]({},_0x114c17,_0x2faaab[_0x8c88('0x31')]);return db[_0x8c88('0x47')][_0x8c88('0x48')](_0x114c17);}})['then'](function(_0x5b2764){if(_0x5b2764){return db[_0x8c88('0x49')]['findAndCountAll']({'where':{'id':_['map'](_0x5b2764,_0x8c88('0x4a')),'role':_0x8c88('0x4b')},'attributes':['id',_0x8c88('0x1a'),_0x8c88('0x4c'),_0x8c88('0x4d'),'createdAt']});}})[_0x8c88('0x15')](function(_0x453561){if(_0x453561){return{'count':_0x453561[_0x8c88('0x12')],'rows':_['map'](_0x453561[_0x8c88('0x24')],function(_0xd28b79){return{'membername':_0xd28b79[_0x8c88('0x1a')],'UserId':_0xd28b79['id'],'queue_name':_0x384069[_0x8c88('0x1a')],'OpenchannelQueueId':_0x384069['id'],'interface':util['format']('%s/%s',_0x8c88('0x4e'),_0xd28b79[_0x8c88('0x1a')]),'penalty':0x0,'paused':_0xd28b79[_0x8c88('0x4c')],'createdAt':_0xd28b79[_0x8c88('0x4f')],'updatedAt':_0xd28b79[_0x8c88('0x4d')]};})};}else{return{'count':0x0,'rows':[]};}})[_0x8c88('0x15')](respondWithFilteredResult(_0x51e656,_0x114c17))['catch'](handleError(_0x51e656,null));};exports[_0x8c88('0x50')]=function(_0x5a3554,_0x57a5aa){var _0x204259={};var _0x47a446={};var _0x293821;var _0x464562;return db[_0x8c88('0x1d')][_0x8c88('0x3f')]({'where':{'id':_0x5a3554[_0x8c88('0x40')]['id']}})[_0x8c88('0x15')](handleEntityNotFound(_0x57a5aa,null))[_0x8c88('0x15')](function(_0x497788){if(_0x497788){_0x293821=_0x497788;_0x47a446['model']=_['keys'](db[_0x8c88('0x51')][_0x8c88('0x1e')]);_0x47a446[_0x8c88('0x28')]=_[_0x8c88('0x29')](_0x5a3554['query']);_0x47a446['filters']=_['intersection'](_0x47a446[_0x8c88('0x27')],_0x47a446['query']);_0x204259[_0x8c88('0x2c')]=_[_0x8c88('0x2b')](_0x47a446[_0x8c88('0x27')],qs[_0x8c88('0x2d')](_0x5a3554[_0x8c88('0x28')]['fields']));_0x204259['attributes']=_0x204259[_0x8c88('0x2c')][_0x8c88('0x2e')]?_0x204259[_0x8c88('0x2c')]:_0x47a446['model'];_0x204259['order']=qs['sort'](_0x5a3554[_0x8c88('0x28')][_0x8c88('0x44')]);_0x204259['where']=qs[_0x8c88('0x2a')](_[_0x8c88('0x45')](_0x5a3554[_0x8c88('0x28')],_0x47a446[_0x8c88('0x2a')]));if(_0x5a3554[_0x8c88('0x28')][_0x8c88('0x46')]){_0x204259['where']=_['merge'](_0x204259[_0x8c88('0x22')],{'$or':_['map'](_0x204259[_0x8c88('0x2c')],function(_0x46ca39){var _0x2f804c={};_0x2f804c[_0x46ca39]={'$like':'%'+_0x5a3554[_0x8c88('0x28')][_0x8c88('0x46')]+'%'};return _0x2f804c;})});}_0x204259=_[_0x8c88('0x30')]({},_0x204259,_0x5a3554[_0x8c88('0x31')]);return _0x293821[_0x8c88('0x50')](_0x204259);}})['then'](function(_0x2fd705){if(_0x2fd705){_0x464562=_0x2fd705[_0x8c88('0x2e')];if(!_0x5a3554[_0x8c88('0x28')][_0x8c88('0x41')](_0x8c88('0x42'))){_0x204259[_0x8c88('0x11')]=qs[_0x8c88('0x11')](_0x5a3554['query']['limit']);_0x204259['offset']=qs[_0x8c88('0xf')](_0x5a3554['query'][_0x8c88('0xf')]);}return _0x293821[_0x8c88('0x50')](_0x204259);}})['then'](function(_0x38bc21){if(_0x38bc21){return _0x38bc21?{'count':_0x464562,'rows':_0x38bc21}:null;}})['then'](respondWithResult(_0x57a5aa,null))['catch'](handleError(_0x57a5aa,null));};exports[_0x8c88('0x52')]=function(_0x92dc22,_0xe56104){var _0x510e21=_0x92dc22[_0x8c88('0x3c')][_0x8c88('0x53')];return db[_0x8c88('0x51')][_0x8c88('0x48')]({'where':{'id':_0x510e21},'attributes':['id'],'include':[{'model':db[_0x8c88('0x49')],'as':_0x8c88('0x54'),'attributes':['id','name',_0x8c88('0x55'),_0x8c88('0x56'),_0x8c88('0x57')],'raw':!![]}]})['then'](function(_0x20b639){if(_0x20b639){var _0x10e373=_[_0x8c88('0x58')](_0x20b639,function(_0x387fee){var _0x116b0f=_0x387fee[_0x8c88('0x35')]({'plain':!![]});return _0x116b0f[_0x8c88('0x54')];});return db[_0x8c88('0x1d')][_0x8c88('0x32')]({'where':{'id':_0x92dc22[_0x8c88('0x40')]['id']}})['then'](function(_0x4c3d1c){return db[_0x8c88('0x59')][_0x8c88('0x5a')](function(_0x30e686){return _0x4c3d1c[_0x8c88('0x52')](_0x510e21,{'transaction':_0x30e686})['then'](function(){return BPromise[_0x8c88('0x5b')](_0x10e373,function(_0x2c1c26){return db[_0x8c88('0x47')][_0x8c88('0x5c')]({'where':{'UserId':_0x2c1c26['id'],'OpenchannelQueueId':_0x92dc22[_0x8c88('0x40')]['id']},'transaction':_0x30e686});});})[_0x8c88('0x15')](function(){_0x10e373['forEach'](function(_0x9e316a){socket[_0x8c88('0x5d')](_0x8c88('0x5e'),{'UserId':_0x9e316a['id'],'OpenchannelQueueId':_0x4c3d1c['id']});});});});});}})[_0x8c88('0x15')](respondWithStatusCode(_0xe56104,null))['catch'](handleError(_0xe56104,null));};exports[_0x8c88('0x5f')]=function(_0x22816f,_0x49ee4c){return db[_0x8c88('0x51')][_0x8c88('0x48')]({'where':{'id':_0x22816f[_0x8c88('0x28')][_0x8c88('0x53')]},'attributes':['id'],'include':[{'model':db[_0x8c88('0x49')],'as':_0x8c88('0x54'),'attributes':['id'],'raw':!![]}]})[_0x8c88('0x15')](handleEntityNotFound(_0x49ee4c,null))['then'](function(_0x598dfc){var _0x247245=_['map'](_0x598dfc,'id');var _0x511e75=[];var _0x1702b8=[];var _0x5667f6=squel[_0x8c88('0x60')]();_0x5667f6['field']('tq.TeamId')['from'](_0x8c88('0x61'),'tq')[_0x8c88('0x62')](_0x8c88('0x63'),'ut',_0x8c88('0x64'))[_0x8c88('0x22')]('OpenchannelQueueId\x20=\x20?',_0x22816f['params']['id']);for(var _0x14173b=0x0;_0x14173b<_0x598dfc[_0x8c88('0x2e')];_0x14173b+=0x1){let _0x1bcaa7=_0x598dfc[_0x14173b];for(var _0x3acf9c=0x0;_0x3acf9c<_0x1bcaa7['Agents']['length'];_0x3acf9c+=0x1){let _0x503f6c=_0x1bcaa7[_0x8c88('0x54')][_0x3acf9c];var _0x18d52d=_0x5667f6[_0x8c88('0x65')]();_0x18d52d['where']('ut.UserId\x20=\x20?',_0x503f6c['id']);_0x1702b8[_0x8c88('0x66')](db['sequelize'][_0x8c88('0x28')](_0x18d52d['toString'](),{'type':db['sequelize'][_0x8c88('0x67')][_0x8c88('0x68')]})[_0x8c88('0x15')](function(_0x1a8dff){if(_0x1a8dff[_0x8c88('0x2e')]===0x1){return _0x503f6c['id'];}else{var _0x38f44c=_[_0x8c88('0x69')](_[_0x8c88('0x1c')](_0x1a8dff,'TeamId'),function(_0x5af992){return _[_0x8c88('0x6a')](_0x247245,_0x5af992);});if(_0x38f44c){return _0x503f6c['id'];}}}));}}return BPromise[_0x8c88('0x6b')](_0x1702b8)['then'](function(_0x4dae2f){_0x511e75=_(_0x511e75)[_0x8c88('0x6c')](_0x4dae2f)[_0x8c88('0x6d')]()[_0x8c88('0x6e')]();return db[_0x8c88('0x1d')][_0x8c88('0x32')]({'where':{'id':_0x22816f['params']['id']}})[_0x8c88('0x15')](function(_0x47c88a){return db[_0x8c88('0x59')][_0x8c88('0x5a')](function(_0x1494fe){return _0x47c88a[_0x8c88('0x5f')](_0x22816f[_0x8c88('0x28')][_0x8c88('0x53')],{'transaction':_0x1494fe})['then'](function(){if(!_['isEmpty'](_0x511e75)){return _0x47c88a[_0x8c88('0x6f')](_0x511e75,{'transaction':_0x1494fe});}})['then'](function(){_0x511e75['forEach'](function(_0x4743d7){socket['emit'](_0x8c88('0x70'),{'UserId':_0x4743d7,'OpenchannelQueueId':_0x47c88a['id']});});});});});});})[_0x8c88('0x15')](respondWithStatusCode(_0x49ee4c,null))[_0x8c88('0x25')](handleError(_0x49ee4c,null));};exports[_0x8c88('0x71')]=function(_0x4ebd93,_0x152e07){return db[_0x8c88('0x1d')][_0x8c88('0x32')]({'where':{'id':_0x4ebd93[_0x8c88('0x40')]['id']}})[_0x8c88('0x15')](handleEntityNotFound(_0x152e07,null))[_0x8c88('0x15')](function(_0x4e728f){if(_0x4e728f){return _0x4e728f[_0x8c88('0x71')](_0x4ebd93['body']['ids'],_[_0x8c88('0x72')](_0x4ebd93['body'],[_0x8c88('0x53'),'id'])||{})[_0x8c88('0x73')](function(_0x5707c8){for(var _0x5790a8=0x0;_0x5790a8<_0x4ebd93[_0x8c88('0x3c')]['ids']['length'];_0x5790a8+=0x1){socket[_0x8c88('0x5d')](_0x8c88('0x5e'),{'UserId':Number(_0x4ebd93[_0x8c88('0x3c')][_0x8c88('0x53')][_0x5790a8]),'OpenchannelQueueId':Number(_0x4ebd93['params']['id'])});}return _0x5707c8;});}})[_0x8c88('0x15')](respondWithResult(_0x152e07,null))[_0x8c88('0x25')](handleError(_0x152e07,null));};exports[_0x8c88('0x6f')]=function(_0xf10901,_0x19a31e){return db[_0x8c88('0x1d')][_0x8c88('0x32')]({'where':{'id':_0xf10901[_0x8c88('0x40')]['id']}})['then'](handleEntityNotFound(_0x19a31e,null))[_0x8c88('0x15')](function(_0x46dd32){if(_0x46dd32){return _0x46dd32[_0x8c88('0x6f')](_0xf10901[_0x8c88('0x28')][_0x8c88('0x53')])[_0x8c88('0x15')](function(){if(_['isArray'](_0xf10901['query'][_0x8c88('0x53')])){for(var _0x2d66cc=0x0;_0x2d66cc<_0xf10901[_0x8c88('0x28')][_0x8c88('0x53')][_0x8c88('0x2e')];_0x2d66cc+=0x1){socket['emit'](_0x8c88('0x70'),{'UserId':Number(_0xf10901['query'][_0x8c88('0x53')][_0x2d66cc]),'OpenchannelQueueId':Number(_0xf10901[_0x8c88('0x40')]['id'])});}}else{socket[_0x8c88('0x5d')]('userOpenchannelQueue:remove',{'UserId':Number(_0xf10901[_0x8c88('0x28')][_0x8c88('0x53')]),'OpenchannelQueueId':Number(_0xf10901['params']['id'])});}});}})[_0x8c88('0x15')](respondWithStatusCode(_0x19a31e,null))['catch'](handleError(_0x19a31e,null));};exports[_0x8c88('0x74')]=function(_0x17dd54,_0x508818){var _0x4c7c85={};var _0x44ecea={};var _0x52d72e;var _0x2e8f70;return db[_0x8c88('0x1d')]['findOne']({'where':{'id':_0x17dd54[_0x8c88('0x40')]['id']}})[_0x8c88('0x15')](handleEntityNotFound(_0x508818,null))[_0x8c88('0x15')](function(_0x48804d){if(_0x48804d){_0x52d72e=_0x48804d;_0x44ecea[_0x8c88('0x27')]=_[_0x8c88('0x29')](db['User']['rawAttributes']);_0x44ecea[_0x8c88('0x28')]=_[_0x8c88('0x29')](_0x17dd54[_0x8c88('0x28')]);_0x44ecea[_0x8c88('0x2a')]=_['intersection'](_0x44ecea[_0x8c88('0x27')],_0x44ecea[_0x8c88('0x28')]);_0x4c7c85[_0x8c88('0x2c')]=_[_0x8c88('0x2b')](_0x44ecea[_0x8c88('0x27')],qs[_0x8c88('0x2d')](_0x17dd54[_0x8c88('0x28')][_0x8c88('0x2d')]));_0x4c7c85[_0x8c88('0x2c')]=_0x4c7c85[_0x8c88('0x2c')][_0x8c88('0x2e')]?_0x4c7c85[_0x8c88('0x2c')]:_0x44ecea[_0x8c88('0x27')];_0x4c7c85[_0x8c88('0x43')]=qs[_0x8c88('0x44')](_0x17dd54[_0x8c88('0x28')][_0x8c88('0x44')]);_0x4c7c85[_0x8c88('0x22')]=qs[_0x8c88('0x2a')](_[_0x8c88('0x45')](_0x17dd54['query'],_0x44ecea[_0x8c88('0x2a')]));if(_0x17dd54['query'][_0x8c88('0x46')]){_0x4c7c85[_0x8c88('0x22')]=_[_0x8c88('0x30')](_0x4c7c85['where'],{'$or':_[_0x8c88('0x1c')](_0x4c7c85[_0x8c88('0x2c')],function(_0x2e4fea){var _0x1bc864={};_0x1bc864[_0x2e4fea]={'$like':'%'+_0x17dd54[_0x8c88('0x28')][_0x8c88('0x46')]+'%'};return _0x1bc864;})});}_0x4c7c85=_[_0x8c88('0x30')]({},_0x4c7c85,_0x17dd54['options']);return _0x52d72e[_0x8c88('0x74')](_0x4c7c85);}})[_0x8c88('0x15')](function(_0x5d8793){if(_0x5d8793){_0x2e8f70=_0x5d8793[_0x8c88('0x2e')];if(!_0x17dd54[_0x8c88('0x28')][_0x8c88('0x41')]('nolimit')){_0x4c7c85[_0x8c88('0x11')]=qs['limit'](_0x17dd54[_0x8c88('0x28')][_0x8c88('0x11')]);_0x4c7c85[_0x8c88('0xf')]=qs[_0x8c88('0xf')](_0x17dd54['query']['offset']);}return _0x52d72e['getAgents'](_0x4c7c85);}})['then'](function(_0x42ac68){if(_0x42ac68){return _0x42ac68?{'count':_0x2e8f70,'rows':_0x42ac68}:null;}})[_0x8c88('0x15')](respondWithResult(_0x508818,null))['catch'](handleError(_0x508818,null));};