5e695737737f15bf8033876359e67386355e93d1
[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 _0xc581=['count','offset','set','Content-Range','then','destroy','get','OpenchannelQueues','error','stack','name','send','index','OpenchannelQueue','rawAttributes','type','key','getOptions','include','query','findAll','rows','show','params','model','keys','filters','intersection','fields','attributes','length','merge','options','catch','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','find','userProfileId','autoAssociation','UserProfileResource','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','update','describe','getMembers','findOne','UserOpenchannelQueue','hasOwnProperty','nolimit','sort','where','pick','OpenchannelQueueId','map','filter','User','findAndCountAll','UserId','agent','openchannelPause','format','%s/%s','SIP','createdAt','updatedAt','getTeams','Team','order','addTeams','Agents','voicePause','interface','flatMap','sequelize','transaction','each','findOrCreate','forEach','emit','userOpenchannelQueue:save','removeTeams','ids','select','field','from','join','user_has_teams','ut.TeamId\x20=\x20tq.TeamId','OpenchannelQueueId\x20=\x20?','clone','ut.UserId\x20=\x20?','push','QueryTypes','SELECT','every','includes','union','compact','value','removeAgents','userOpenchannelQueue:remove','addAgents','spread','isArray','getAgents','bluebird','lodash','squel','../../components/parsers/qs','../../config/logger','api','../../config/environment','../../mysqldb','redis','defaults','socket.io-emitter','./openchannelQueue.socket','register','sendStatus','status','json','limit','undefined'];(function(_0x110db1,_0x5d385c){var _0x4197ce=function(_0x3a485b){while(--_0x3a485b){_0x110db1['push'](_0x110db1['shift']());}};_0x4197ce(++_0x5d385c);}(_0xc581,0xea));var _0x1c58=function(_0x2ab46f,_0x414d01){_0x2ab46f=_0x2ab46f-0x0;var _0x585811=_0xc581[_0x2ab46f];return _0x585811;};'use strict';var BPromise=require(_0x1c58('0x0'));var util=require('util');var _=require(_0x1c58('0x1'));var squel=require(_0x1c58('0x2'));var Redis=require('ioredis');var qs=require(_0x1c58('0x3'));var logger=require(_0x1c58('0x4'))(_0x1c58('0x5'));var config=require(_0x1c58('0x6'));var db=require(_0x1c58('0x7'))['db'];config[_0x1c58('0x8')]=_[_0x1c58('0x9')](config[_0x1c58('0x8')],{'host':'localhost','port':0x18eb});var socket=require(_0x1c58('0xa'))(new Redis(config[_0x1c58('0x8')]));require(_0x1c58('0xb'))[_0x1c58('0xc')](socket);function respondWithStatusCode(_0x5d2b70,_0x55b5d0){_0x55b5d0=_0x55b5d0||0xcc;return function(_0x13b01f){if(_0x13b01f){return _0x5d2b70[_0x1c58('0xd')](_0x55b5d0);}return _0x5d2b70[_0x1c58('0xe')](_0x55b5d0)['end']();};}function respondWithResult(_0xffa6fa,_0x1d40d0){_0x1d40d0=_0x1d40d0||0xc8;return function(_0x2e0a0b){if(_0x2e0a0b){return _0xffa6fa[_0x1c58('0xe')](_0x1d40d0)[_0x1c58('0xf')](_0x2e0a0b);}};}function respondWithFilteredResult(_0x1b42b4,_0x40910a){return function(_0x1722d7){if(_0x1722d7){var _0x4b9c09=typeof _0x40910a['offset']==='undefined'&&typeof _0x40910a[_0x1c58('0x10')]===_0x1c58('0x11');var _0x2629c9=_0x1722d7[_0x1c58('0x12')];var _0x51dede=_0x4b9c09?0x0:_0x40910a[_0x1c58('0x13')];var _0x180a32=_0x4b9c09?_0x1722d7[_0x1c58('0x12')]:_0x40910a[_0x1c58('0x13')]+_0x40910a[_0x1c58('0x10')];var _0x52247e;if(_0x180a32>=_0x2629c9){_0x180a32=_0x2629c9;_0x52247e=0xc8;}else{_0x52247e=0xce;}_0x1b42b4[_0x1c58('0xe')](_0x52247e);return _0x1b42b4[_0x1c58('0x14')](_0x1c58('0x15'),_0x51dede+'-'+_0x180a32+'/'+_0x2629c9)['json'](_0x1722d7);}return null;};}function saveUpdates(_0x4f89b6){return function(_0x4f59d7){if(_0x4f59d7){return _0x4f59d7['update'](_0x4f89b6)[_0x1c58('0x16')](function(_0x1c4d2c){return _0x1c4d2c;});}return null;};}function removeEntity(_0x4b1eb3){return function(_0x23978d){if(_0x23978d){return _0x23978d[_0x1c58('0x17')]()[_0x1c58('0x16')](function(){var _0x190b5c=_0x23978d[_0x1c58('0x18')]({'plain':!![]});var _0x4d6ecd=_0x1c58('0x19');return db['UserProfileResource']['destroy']({'where':{'type':_0x4d6ecd,'resourceId':_0x190b5c['id']}})[_0x1c58('0x16')](function(){return _0x23978d;});})[_0x1c58('0x16')](function(){_0x4b1eb3[_0x1c58('0xe')](0xcc)['end']();});}};}function handleEntityNotFound(_0x47ad8b){return function(_0x2ccc11){if(!_0x2ccc11){_0x47ad8b['sendStatus'](0x194);}return _0x2ccc11;};}function handleError(_0x4e152d,_0x4d8494){_0x4d8494=_0x4d8494||0x1f4;return function(_0x26e072){logger[_0x1c58('0x1a')](_0x26e072[_0x1c58('0x1b')]);if(_0x26e072[_0x1c58('0x1c')]){delete _0x26e072[_0x1c58('0x1c')];}_0x4e152d[_0x1c58('0xe')](_0x4d8494)[_0x1c58('0x1d')](_0x26e072);};}exports[_0x1c58('0x1e')]=function(_0x202c10,_0x46fb0e){var _0x3e7273={};var _0x301a33={'count':0x0,'rows':[]};var _0x231b3f=_['map'](db[_0x1c58('0x1f')][_0x1c58('0x20')],function(_0x179012){return{'name':_0x179012['fieldName'],'type':_0x179012[_0x1c58('0x21')][_0x1c58('0x22')]};});_0x3e7273=qs[_0x1c58('0x23')](_0x231b3f,_0x202c10);var _0x5b830c={'where':_0x3e7273['where']};return db['OpenchannelQueue'][_0x1c58('0x12')](_0x5b830c)[_0x1c58('0x16')](function(_0x289a5b){_0x301a33[_0x1c58('0x12')]=_0x289a5b;_0x3e7273['include']=qs[_0x1c58('0x24')](_0x202c10[_0x1c58('0x25')]);return db['OpenchannelQueue'][_0x1c58('0x26')](_0x3e7273);})[_0x1c58('0x16')](function(_0x32b210){_0x301a33[_0x1c58('0x27')]=_0x32b210;return _0x301a33;})[_0x1c58('0x16')](respondWithFilteredResult(_0x46fb0e,_0x3e7273))['catch'](handleError(_0x46fb0e,null));};exports[_0x1c58('0x28')]=function(_0x1ae5e6,_0x529bef){var _0x4e8db6={'raw':!![],'where':{'id':_0x1ae5e6[_0x1c58('0x29')]['id']}},_0x3500a9={};_0x3500a9[_0x1c58('0x2a')]=_[_0x1c58('0x2b')](db['OpenchannelQueue'][_0x1c58('0x20')]);_0x3500a9['query']=_[_0x1c58('0x2b')](_0x1ae5e6[_0x1c58('0x25')]);_0x3500a9[_0x1c58('0x2c')]=_[_0x1c58('0x2d')](_0x3500a9['model'],_0x3500a9[_0x1c58('0x25')]);_0x4e8db6['attributes']=_[_0x1c58('0x2d')](_0x3500a9[_0x1c58('0x2a')],qs['fields'](_0x1ae5e6[_0x1c58('0x25')][_0x1c58('0x2e')]));_0x4e8db6[_0x1c58('0x2f')]=_0x4e8db6['attributes'][_0x1c58('0x30')]?_0x4e8db6[_0x1c58('0x2f')]:_0x3500a9[_0x1c58('0x2a')];if(_0x1ae5e6[_0x1c58('0x25')]['includeAll']){_0x4e8db6[_0x1c58('0x24')]=[{'all':!![]}];}_0x4e8db6=_[_0x1c58('0x31')]({},_0x4e8db6,_0x1ae5e6[_0x1c58('0x32')]);return db[_0x1c58('0x1f')]['find'](_0x4e8db6)['then'](handleEntityNotFound(_0x529bef,null))[_0x1c58('0x16')](respondWithResult(_0x529bef,null))[_0x1c58('0x33')](handleError(_0x529bef,null));};exports['create']=function(_0x2700f5,_0x5596d2){return db[_0x1c58('0x1f')][_0x1c58('0x34')](_0x2700f5[_0x1c58('0x35')],{})['then'](function(_0x21014f){var _0x24933c=_0x2700f5[_0x1c58('0x36')]['get']({'plain':!![]});if(!_0x24933c)throw new Error(_0x1c58('0x37'));if(_0x24933c[_0x1c58('0x38')]===_0x1c58('0x36')){var _0x36ce49=_0x21014f[_0x1c58('0x18')]({'plain':!![]});var _0x5ea41a=_0x1c58('0x19');return db[_0x1c58('0x39')][_0x1c58('0x3a')]({'where':{'name':_0x5ea41a,'userProfileId':_0x24933c[_0x1c58('0x3b')]},'raw':!![]})[_0x1c58('0x16')](function(_0x1235c1){if(_0x1235c1&&_0x1235c1[_0x1c58('0x3c')]===0x0){return db[_0x1c58('0x3d')][_0x1c58('0x34')]({'name':_0x36ce49[_0x1c58('0x1c')],'resourceId':_0x36ce49['id'],'type':_0x1235c1[_0x1c58('0x1c')],'sectionId':_0x1235c1['id']},{})['then'](function(){return _0x21014f;});}else{return _0x21014f;}})[_0x1c58('0x33')](function(_0x3cbaec){logger[_0x1c58('0x1a')](_0x1c58('0x3e'),_0x3cbaec);throw _0x3cbaec;});}return _0x21014f;})['then'](respondWithResult(_0x5596d2,0xc9))[_0x1c58('0x33')](handleError(_0x5596d2,null));};exports[_0x1c58('0x3f')]=function(_0x3cc685,_0x4a888f){if(_0x3cc685[_0x1c58('0x35')]['id']){delete _0x3cc685[_0x1c58('0x35')]['id'];}return db[_0x1c58('0x1f')]['find']({'where':{'id':_0x3cc685[_0x1c58('0x29')]['id']}})[_0x1c58('0x16')](handleEntityNotFound(_0x4a888f,null))[_0x1c58('0x16')](saveUpdates(_0x3cc685[_0x1c58('0x35')],null))[_0x1c58('0x16')](respondWithResult(_0x4a888f,null))[_0x1c58('0x33')](handleError(_0x4a888f,null));};exports[_0x1c58('0x17')]=function(_0x47d193,_0x4d7adc){return db[_0x1c58('0x1f')][_0x1c58('0x3a')]({'where':{'id':_0x47d193[_0x1c58('0x29')]['id']}})[_0x1c58('0x16')](handleEntityNotFound(_0x4d7adc,null))[_0x1c58('0x16')](removeEntity(_0x4d7adc,null))['catch'](handleError(_0x4d7adc,null));};exports['describe']=function(_0x42ed6c,_0xc6a284){return db[_0x1c58('0x1f')][_0x1c58('0x40')]()[_0x1c58('0x16')](respondWithResult(_0xc6a284,null))[_0x1c58('0x33')](handleError(_0xc6a284,null));};exports[_0x1c58('0x41')]=function(_0x3ff955,_0x53bc5f){var _0x474834={'raw':!![],'where':{}},_0x554c47={},_0xdbcf55;return db[_0x1c58('0x1f')][_0x1c58('0x42')]({'where':{'id':_0x3ff955[_0x1c58('0x29')]['id']}})[_0x1c58('0x16')](handleEntityNotFound(_0x53bc5f,null))['then'](function(_0x107787){if(_0x107787){_0xdbcf55=_0x107787[_0x1c58('0x18')]({'plain':!![]});_0x554c47[_0x1c58('0x2a')]=_['keys'](db[_0x1c58('0x43')][_0x1c58('0x20')]);_0x554c47[_0x1c58('0x25')]=_[_0x1c58('0x2b')](_0x3ff955[_0x1c58('0x25')]);_0x554c47[_0x1c58('0x2c')]=_[_0x1c58('0x2d')](_0x554c47['model'],_0x554c47[_0x1c58('0x25')]);_0x474834[_0x1c58('0x2f')]=_[_0x1c58('0x2d')](_0x554c47[_0x1c58('0x2a')],qs[_0x1c58('0x2e')](_0x3ff955[_0x1c58('0x25')][_0x1c58('0x2e')]));_0x474834[_0x1c58('0x2f')]=_0x474834[_0x1c58('0x2f')][_0x1c58('0x30')]?_0x474834['attributes']:_0x554c47[_0x1c58('0x2a')];if(!_0x3ff955[_0x1c58('0x25')][_0x1c58('0x44')](_0x1c58('0x45'))){_0x474834[_0x1c58('0x10')]=qs[_0x1c58('0x10')](_0x3ff955['query'][_0x1c58('0x10')]);_0x474834[_0x1c58('0x13')]=qs[_0x1c58('0x13')](_0x3ff955[_0x1c58('0x25')][_0x1c58('0x13')]);}_0x474834['order']=qs[_0x1c58('0x46')](_0x3ff955['query'][_0x1c58('0x46')]);_0x474834[_0x1c58('0x47')]=qs[_0x1c58('0x2c')](_[_0x1c58('0x48')](_0x3ff955['query'],_0x554c47[_0x1c58('0x2c')]));_0x474834[_0x1c58('0x47')][_0x1c58('0x49')]=_0x107787['id'];if(_0x3ff955[_0x1c58('0x25')]['filter']){_0x474834['where']=_[_0x1c58('0x31')](_0x474834['where'],{'$or':_[_0x1c58('0x4a')](_0x474834[_0x1c58('0x2f')],function(_0x3d1fd4){var _0x4d232e={};_0x4d232e[_0x3d1fd4]={'$like':'%'+_0x3ff955[_0x1c58('0x25')][_0x1c58('0x4b')]+'%'};return _0x4d232e;})});}_0x474834=_[_0x1c58('0x31')]({},_0x474834,_0x3ff955[_0x1c58('0x32')]);return db['UserOpenchannelQueue'][_0x1c58('0x26')](_0x474834);}})['then'](function(_0x10c027){if(_0x10c027){return db[_0x1c58('0x4c')][_0x1c58('0x4d')]({'where':{'id':_['map'](_0x10c027,_0x1c58('0x4e')),'role':_0x1c58('0x4f')},'attributes':['id','name',_0x1c58('0x50'),'updatedAt','createdAt']});}})[_0x1c58('0x16')](function(_0x396680){if(_0x396680){return{'count':_0x396680[_0x1c58('0x12')],'rows':_['map'](_0x396680[_0x1c58('0x27')],function(_0x13a1c2){return{'membername':_0x13a1c2[_0x1c58('0x1c')],'UserId':_0x13a1c2['id'],'queue_name':_0xdbcf55[_0x1c58('0x1c')],'OpenchannelQueueId':_0xdbcf55['id'],'interface':util[_0x1c58('0x51')](_0x1c58('0x52'),_0x1c58('0x53'),_0x13a1c2[_0x1c58('0x1c')]),'penalty':0x0,'paused':_0x13a1c2[_0x1c58('0x50')],'createdAt':_0x13a1c2[_0x1c58('0x54')],'updatedAt':_0x13a1c2[_0x1c58('0x55')]};})};}else{return{'count':0x0,'rows':[]};}})[_0x1c58('0x16')](respondWithFilteredResult(_0x53bc5f,_0x474834))[_0x1c58('0x33')](handleError(_0x53bc5f,null));};exports[_0x1c58('0x56')]=function(_0x343c50,_0x1a4996){var _0xac34ba={};var _0x436d4b={};var _0x513569;var _0x15c584;return db['OpenchannelQueue'][_0x1c58('0x42')]({'where':{'id':_0x343c50['params']['id']}})[_0x1c58('0x16')](handleEntityNotFound(_0x1a4996,null))[_0x1c58('0x16')](function(_0x4d51a9){if(_0x4d51a9){_0x513569=_0x4d51a9;_0x436d4b[_0x1c58('0x2a')]=_['keys'](db[_0x1c58('0x57')]['rawAttributes']);_0x436d4b[_0x1c58('0x25')]=_['keys'](_0x343c50[_0x1c58('0x25')]);_0x436d4b[_0x1c58('0x2c')]=_[_0x1c58('0x2d')](_0x436d4b[_0x1c58('0x2a')],_0x436d4b[_0x1c58('0x25')]);_0xac34ba[_0x1c58('0x2f')]=_[_0x1c58('0x2d')](_0x436d4b[_0x1c58('0x2a')],qs[_0x1c58('0x2e')](_0x343c50[_0x1c58('0x25')][_0x1c58('0x2e')]));_0xac34ba['attributes']=_0xac34ba[_0x1c58('0x2f')][_0x1c58('0x30')]?_0xac34ba[_0x1c58('0x2f')]:_0x436d4b[_0x1c58('0x2a')];_0xac34ba[_0x1c58('0x58')]=qs['sort'](_0x343c50[_0x1c58('0x25')][_0x1c58('0x46')]);_0xac34ba[_0x1c58('0x47')]=qs[_0x1c58('0x2c')](_[_0x1c58('0x48')](_0x343c50[_0x1c58('0x25')],_0x436d4b['filters']));if(_0x343c50[_0x1c58('0x25')][_0x1c58('0x4b')]){_0xac34ba[_0x1c58('0x47')]=_[_0x1c58('0x31')](_0xac34ba[_0x1c58('0x47')],{'$or':_['map'](_0xac34ba[_0x1c58('0x2f')],function(_0x34123){var _0x3bc79b={};_0x3bc79b[_0x34123]={'$like':'%'+_0x343c50['query'][_0x1c58('0x4b')]+'%'};return _0x3bc79b;})});}_0xac34ba=_[_0x1c58('0x31')]({},_0xac34ba,_0x343c50[_0x1c58('0x32')]);return _0x513569[_0x1c58('0x56')](_0xac34ba);}})[_0x1c58('0x16')](function(_0x4245e2){if(_0x4245e2){_0x15c584=_0x4245e2[_0x1c58('0x30')];if(!_0x343c50[_0x1c58('0x25')][_0x1c58('0x44')]('nolimit')){_0xac34ba[_0x1c58('0x10')]=qs[_0x1c58('0x10')](_0x343c50[_0x1c58('0x25')][_0x1c58('0x10')]);_0xac34ba[_0x1c58('0x13')]=qs['offset'](_0x343c50['query'][_0x1c58('0x13')]);}return _0x513569['getTeams'](_0xac34ba);}})[_0x1c58('0x16')](function(_0x5acfe2){if(_0x5acfe2){return _0x5acfe2?{'count':_0x15c584,'rows':_0x5acfe2}:null;}})[_0x1c58('0x16')](respondWithResult(_0x1a4996,null))[_0x1c58('0x33')](handleError(_0x1a4996,null));};exports[_0x1c58('0x59')]=function(_0x1bd821,_0x6b6dc0){var _0x48ac7d=_0x1bd821['body']['ids'];return db[_0x1c58('0x57')][_0x1c58('0x26')]({'where':{'id':_0x48ac7d},'attributes':['id'],'include':[{'model':db[_0x1c58('0x4c')],'as':_0x1c58('0x5a'),'attributes':['id',_0x1c58('0x1c'),'online',_0x1c58('0x5b'),_0x1c58('0x5c')],'raw':!![]}]})[_0x1c58('0x16')](function(_0x4bc9fd){if(_0x4bc9fd){var _0x3c45a3=_[_0x1c58('0x5d')](_0x4bc9fd,function(_0x3c4ab7){var _0x4a48dc=_0x3c4ab7[_0x1c58('0x18')]({'plain':!![]});return _0x4a48dc[_0x1c58('0x5a')];});return db['OpenchannelQueue'][_0x1c58('0x3a')]({'where':{'id':_0x1bd821[_0x1c58('0x29')]['id']}})[_0x1c58('0x16')](function(_0x260905){return db[_0x1c58('0x5e')][_0x1c58('0x5f')](function(_0x40ed16){return _0x260905['addTeams'](_0x48ac7d,{'transaction':_0x40ed16})[_0x1c58('0x16')](function(){return BPromise[_0x1c58('0x60')](_0x3c45a3,function(_0x430d5b){return db[_0x1c58('0x43')][_0x1c58('0x61')]({'where':{'UserId':_0x430d5b['id'],'OpenchannelQueueId':_0x1bd821[_0x1c58('0x29')]['id']},'transaction':_0x40ed16});});})[_0x1c58('0x16')](function(){_0x3c45a3[_0x1c58('0x62')](function(_0x410dda){socket[_0x1c58('0x63')](_0x1c58('0x64'),{'UserId':_0x410dda['id'],'OpenchannelQueueId':_0x260905['id']});});});});});}})['then'](respondWithStatusCode(_0x6b6dc0,null))['catch'](handleError(_0x6b6dc0,null));};exports[_0x1c58('0x65')]=function(_0xe82bdb,_0x533eca){return db[_0x1c58('0x57')][_0x1c58('0x26')]({'where':{'id':_0xe82bdb['query'][_0x1c58('0x66')]},'attributes':['id'],'include':[{'model':db[_0x1c58('0x4c')],'as':_0x1c58('0x5a'),'attributes':['id'],'raw':!![]}]})[_0x1c58('0x16')](handleEntityNotFound(_0x533eca,null))['then'](function(_0x813096){var _0x372245=_[_0x1c58('0x4a')](_0x813096,'id');var _0x16a52c=[];var _0x359df9=[];var _0x194f9f=squel[_0x1c58('0x67')]();_0x194f9f[_0x1c58('0x68')]('tq.TeamId')[_0x1c58('0x69')]('team_has_openchannel_queues','tq')[_0x1c58('0x6a')](_0x1c58('0x6b'),'ut',_0x1c58('0x6c'))['where'](_0x1c58('0x6d'),_0xe82bdb[_0x1c58('0x29')]['id']);for(var _0x2d5c3a=0x0;_0x2d5c3a<_0x813096[_0x1c58('0x30')];_0x2d5c3a+=0x1){let _0x3f0520=_0x813096[_0x2d5c3a];for(var _0x4da4b1=0x0;_0x4da4b1<_0x3f0520[_0x1c58('0x5a')][_0x1c58('0x30')];_0x4da4b1+=0x1){let _0x5efeaf=_0x3f0520['Agents'][_0x4da4b1];var _0x4d2f7a=_0x194f9f[_0x1c58('0x6e')]();_0x4d2f7a[_0x1c58('0x47')](_0x1c58('0x6f'),_0x5efeaf['id']);_0x359df9[_0x1c58('0x70')](db[_0x1c58('0x5e')]['query'](_0x4d2f7a['toString'](),{'type':db['sequelize'][_0x1c58('0x71')][_0x1c58('0x72')]})[_0x1c58('0x16')](function(_0xc91932){if(_0xc91932[_0x1c58('0x30')]===0x1){return _0x5efeaf['id'];}else{var _0x358030=_[_0x1c58('0x73')](_[_0x1c58('0x4a')](_0xc91932,'TeamId'),function(_0x3fb922){return _[_0x1c58('0x74')](_0x372245,_0x3fb922);});if(_0x358030){return _0x5efeaf['id'];}}}));}}return BPromise['all'](_0x359df9)['then'](function(_0x4eb618){_0x16a52c=_(_0x16a52c)[_0x1c58('0x75')](_0x4eb618)[_0x1c58('0x76')]()[_0x1c58('0x77')]();return db[_0x1c58('0x1f')][_0x1c58('0x3a')]({'where':{'id':_0xe82bdb[_0x1c58('0x29')]['id']}})[_0x1c58('0x16')](function(_0x34931f){return db[_0x1c58('0x5e')][_0x1c58('0x5f')](function(_0x4c64fe){return _0x34931f[_0x1c58('0x65')](_0xe82bdb[_0x1c58('0x25')][_0x1c58('0x66')],{'transaction':_0x4c64fe})[_0x1c58('0x16')](function(){if(!_['isEmpty'](_0x16a52c)){return _0x34931f[_0x1c58('0x78')](_0x16a52c,{'transaction':_0x4c64fe});}})[_0x1c58('0x16')](function(){_0x16a52c['forEach'](function(_0x284dfd){socket[_0x1c58('0x63')](_0x1c58('0x79'),{'UserId':_0x284dfd,'OpenchannelQueueId':_0x34931f['id']});});});});});});})[_0x1c58('0x16')](respondWithStatusCode(_0x533eca,null))['catch'](handleError(_0x533eca,null));};exports[_0x1c58('0x7a')]=function(_0x5c1ea0,_0x4d475c){return db['OpenchannelQueue'][_0x1c58('0x3a')]({'where':{'id':_0x5c1ea0['params']['id']}})[_0x1c58('0x16')](handleEntityNotFound(_0x4d475c,null))['then'](function(_0x5f43bd){if(_0x5f43bd){return _0x5f43bd[_0x1c58('0x7a')](_0x5c1ea0[_0x1c58('0x35')][_0x1c58('0x66')],_['omit'](_0x5c1ea0[_0x1c58('0x35')],[_0x1c58('0x66'),'id'])||{})[_0x1c58('0x7b')](function(_0x4a0a12){for(var _0xd3b9f1=0x0;_0xd3b9f1<_0x5c1ea0['body'][_0x1c58('0x66')]['length'];_0xd3b9f1+=0x1){socket[_0x1c58('0x63')](_0x1c58('0x64'),{'UserId':Number(_0x5c1ea0[_0x1c58('0x35')]['ids'][_0xd3b9f1]),'OpenchannelQueueId':Number(_0x5c1ea0['params']['id'])});}return _0x4a0a12;});}})[_0x1c58('0x16')](respondWithResult(_0x4d475c,null))[_0x1c58('0x33')](handleError(_0x4d475c,null));};exports[_0x1c58('0x78')]=function(_0x1615b2,_0x6d09ee){return db[_0x1c58('0x1f')][_0x1c58('0x3a')]({'where':{'id':_0x1615b2[_0x1c58('0x29')]['id']}})['then'](handleEntityNotFound(_0x6d09ee,null))[_0x1c58('0x16')](function(_0x5476ce){if(_0x5476ce){return _0x5476ce['removeAgents'](_0x1615b2['query'][_0x1c58('0x66')])[_0x1c58('0x16')](function(){if(_[_0x1c58('0x7c')](_0x1615b2[_0x1c58('0x25')][_0x1c58('0x66')])){for(var _0x315988=0x0;_0x315988<_0x1615b2['query'][_0x1c58('0x66')][_0x1c58('0x30')];_0x315988+=0x1){socket[_0x1c58('0x63')](_0x1c58('0x79'),{'UserId':Number(_0x1615b2[_0x1c58('0x25')][_0x1c58('0x66')][_0x315988]),'OpenchannelQueueId':Number(_0x1615b2[_0x1c58('0x29')]['id'])});}}else{socket[_0x1c58('0x63')](_0x1c58('0x79'),{'UserId':Number(_0x1615b2[_0x1c58('0x25')]['ids']),'OpenchannelQueueId':Number(_0x1615b2[_0x1c58('0x29')]['id'])});}});}})['then'](respondWithStatusCode(_0x6d09ee,null))[_0x1c58('0x33')](handleError(_0x6d09ee,null));};exports[_0x1c58('0x7d')]=function(_0xaebf71,_0x370c65){var _0x3923c7={};var _0x1dc2d7={};var _0x2b4181;var _0x1f168d;return db[_0x1c58('0x1f')]['findOne']({'where':{'id':_0xaebf71[_0x1c58('0x29')]['id']}})[_0x1c58('0x16')](handleEntityNotFound(_0x370c65,null))['then'](function(_0x2c8b6a){if(_0x2c8b6a){_0x2b4181=_0x2c8b6a;_0x1dc2d7[_0x1c58('0x2a')]=_[_0x1c58('0x2b')](db[_0x1c58('0x4c')][_0x1c58('0x20')]);_0x1dc2d7[_0x1c58('0x25')]=_['keys'](_0xaebf71[_0x1c58('0x25')]);_0x1dc2d7['filters']=_[_0x1c58('0x2d')](_0x1dc2d7[_0x1c58('0x2a')],_0x1dc2d7[_0x1c58('0x25')]);_0x3923c7[_0x1c58('0x2f')]=_['intersection'](_0x1dc2d7[_0x1c58('0x2a')],qs[_0x1c58('0x2e')](_0xaebf71[_0x1c58('0x25')][_0x1c58('0x2e')]));_0x3923c7[_0x1c58('0x2f')]=_0x3923c7[_0x1c58('0x2f')]['length']?_0x3923c7['attributes']:_0x1dc2d7[_0x1c58('0x2a')];_0x3923c7[_0x1c58('0x58')]=qs[_0x1c58('0x46')](_0xaebf71[_0x1c58('0x25')][_0x1c58('0x46')]);_0x3923c7['where']=qs[_0x1c58('0x2c')](_[_0x1c58('0x48')](_0xaebf71[_0x1c58('0x25')],_0x1dc2d7[_0x1c58('0x2c')]));if(_0xaebf71['query'][_0x1c58('0x4b')]){_0x3923c7[_0x1c58('0x47')]=_[_0x1c58('0x31')](_0x3923c7[_0x1c58('0x47')],{'$or':_[_0x1c58('0x4a')](_0x3923c7[_0x1c58('0x2f')],function(_0x3da426){var _0x50d748={};_0x50d748[_0x3da426]={'$like':'%'+_0xaebf71[_0x1c58('0x25')][_0x1c58('0x4b')]+'%'};return _0x50d748;})});}_0x3923c7=_[_0x1c58('0x31')]({},_0x3923c7,_0xaebf71['options']);return _0x2b4181[_0x1c58('0x7d')](_0x3923c7);}})['then'](function(_0x1f1545){if(_0x1f1545){_0x1f168d=_0x1f1545[_0x1c58('0x30')];if(!_0xaebf71['query'][_0x1c58('0x44')](_0x1c58('0x45'))){_0x3923c7[_0x1c58('0x10')]=qs[_0x1c58('0x10')](_0xaebf71['query'][_0x1c58('0x10')]);_0x3923c7[_0x1c58('0x13')]=qs[_0x1c58('0x13')](_0xaebf71[_0x1c58('0x25')]['offset']);}return _0x2b4181[_0x1c58('0x7d')](_0x3923c7);}})[_0x1c58('0x16')](function(_0x4f4e19){if(_0x4f4e19){return _0x4f4e19?{'count':_0x1f168d,'rows':_0x4f4e19}:null;}})[_0x1c58('0x16')](respondWithResult(_0x370c65,null))['catch'](handleError(_0x370c65,null));};