208a54cfc9c3c1620986440e074cf737fffc959a
[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 _0x8473=['create','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','body','destroy','findOne','UserOpenchannelQueue','length','hasOwnProperty','nolimit','order','sort','pick','OpenchannelQueueId','filter','map','options','User','findAndCountAll','UserId','agent','updatedAt','createdAt','%s/%s','openchannelPause','Team','getTeams','addTeams','ids','Agents','online','voicePause','interface','flatMap','sequelize','transaction','each','findOrCreate','emit','userOpenchannelQueue:save','removeTeams','select','field','tq.TeamId','from','join','user_has_teams','ut.TeamId\x20=\x20tq.TeamId','clone','ut.UserId\x20=\x20?','push','toString','QueryTypes','every','TeamId','includes','all','union','compact','value','isEmpty','removeAgents','forEach','userOpenchannelQueue:remove','addAgents','omit','spread','isArray','getAgents','util','squel','ioredis','../../components/parsers/qs','../../config/logger','api','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./openchannelQueue.socket','sendStatus','status','end','undefined','limit','offset','count','set','Content-Range','json','then','get','OpenchannelQueues','stack','name','index','OpenchannelQueue','fieldName','type','getOptions','where','include','findAll','rows','catch','show','params','model','keys','rawAttributes','query','filters','intersection','attributes','fields','includeAll','merge','find'];(function(_0x1d4c3a,_0x5c4d28){var _0x111962=function(_0x5c2dab){while(--_0x5c2dab){_0x1d4c3a['push'](_0x1d4c3a['shift']());}};_0x111962(++_0x5c4d28);}(_0x8473,0x1ba));var _0x3847=function(_0x47e684,_0x1c3604){_0x47e684=_0x47e684-0x0;var _0x3b0505=_0x8473[_0x47e684];return _0x3b0505;};'use strict';var BPromise=require('bluebird');var util=require(_0x3847('0x0'));var _=require('lodash');var squel=require(_0x3847('0x1'));var Redis=require(_0x3847('0x2'));var qs=require(_0x3847('0x3'));var logger=require(_0x3847('0x4'))(_0x3847('0x5'));var config=require('../../config/environment');var db=require(_0x3847('0x6'))['db'];config[_0x3847('0x7')]=_[_0x3847('0x8')](config[_0x3847('0x7')],{'host':_0x3847('0x9'),'port':0x18eb});var socket=require(_0x3847('0xa'))(new Redis(config[_0x3847('0x7')]));require(_0x3847('0xb'))['register'](socket);function respondWithStatusCode(_0x12889e,_0x15813e){_0x15813e=_0x15813e||0xcc;return function(_0x5ddee3){if(_0x5ddee3){return _0x12889e[_0x3847('0xc')](_0x15813e);}return _0x12889e[_0x3847('0xd')](_0x15813e)[_0x3847('0xe')]();};}function respondWithResult(_0x371f66,_0x21d8ea){_0x21d8ea=_0x21d8ea||0xc8;return function(_0x37f2e1){if(_0x37f2e1){return _0x371f66['status'](_0x21d8ea)['json'](_0x37f2e1);}};}function respondWithFilteredResult(_0x3a7ec4,_0x22f303){return function(_0x10e996){if(_0x10e996){var _0x550a12=typeof _0x22f303['offset']===_0x3847('0xf')&&typeof _0x22f303[_0x3847('0x10')]===_0x3847('0xf');var _0x19fa53=_0x10e996['count'];var _0x5bc8f0=_0x550a12?0x0:_0x22f303[_0x3847('0x11')];var _0x45fefa=_0x550a12?_0x10e996[_0x3847('0x12')]:_0x22f303[_0x3847('0x11')]+_0x22f303[_0x3847('0x10')];var _0x305273;if(_0x45fefa>=_0x19fa53){_0x45fefa=_0x19fa53;_0x305273=0xc8;}else{_0x305273=0xce;}_0x3a7ec4[_0x3847('0xd')](_0x305273);return _0x3a7ec4[_0x3847('0x13')](_0x3847('0x14'),_0x5bc8f0+'-'+_0x45fefa+'/'+_0x19fa53)[_0x3847('0x15')](_0x10e996);}return null;};}function saveUpdates(_0x7969ee){return function(_0x29689c){if(_0x29689c){return _0x29689c['update'](_0x7969ee)[_0x3847('0x16')](function(_0x30e417){return _0x30e417;});}return null;};}function removeEntity(_0xdf23f){return function(_0x55951e){if(_0x55951e){return _0x55951e['destroy']()[_0x3847('0x16')](function(){var _0x4e36e2=_0x55951e[_0x3847('0x17')]({'plain':!![]});var _0x5212cd=_0x3847('0x18');return db['UserProfileResource']['destroy']({'where':{'type':_0x5212cd,'resourceId':_0x4e36e2['id']}})['then'](function(){return _0x55951e;});})[_0x3847('0x16')](function(){_0xdf23f[_0x3847('0xd')](0xcc)[_0x3847('0xe')]();});}};}function handleEntityNotFound(_0x523b5e){return function(_0x38719d){if(!_0x38719d){_0x523b5e[_0x3847('0xc')](0x194);}return _0x38719d;};}function handleError(_0x2eb275,_0x2dd867){_0x2dd867=_0x2dd867||0x1f4;return function(_0x5caf1d){logger['error'](_0x5caf1d[_0x3847('0x19')]);if(_0x5caf1d['name']){delete _0x5caf1d[_0x3847('0x1a')];}_0x2eb275['status'](_0x2dd867)['send'](_0x5caf1d);};}exports[_0x3847('0x1b')]=function(_0x631f16,_0x36f878){var _0xba0ec3={};var _0x443305={'count':0x0,'rows':[]};var _0x32cbf1=_['map'](db[_0x3847('0x1c')]['rawAttributes'],function(_0x4f5a59){return{'name':_0x4f5a59[_0x3847('0x1d')],'type':_0x4f5a59[_0x3847('0x1e')]['key']};});_0xba0ec3=qs[_0x3847('0x1f')](_0x32cbf1,_0x631f16);var _0x3a9b26={'where':_0xba0ec3[_0x3847('0x20')]};return db[_0x3847('0x1c')][_0x3847('0x12')](_0x3a9b26)[_0x3847('0x16')](function(_0x41d721){_0x443305[_0x3847('0x12')]=_0x41d721;_0xba0ec3[_0x3847('0x21')]=qs[_0x3847('0x21')](_0x631f16['query']);return db[_0x3847('0x1c')][_0x3847('0x22')](_0xba0ec3);})['then'](function(_0x418986){_0x443305[_0x3847('0x23')]=_0x418986;return _0x443305;})[_0x3847('0x16')](respondWithFilteredResult(_0x36f878,_0xba0ec3))[_0x3847('0x24')](handleError(_0x36f878,null));};exports[_0x3847('0x25')]=function(_0x2c35e3,_0xd5bb7c){var _0x468fb6={'raw':!![],'where':{'id':_0x2c35e3[_0x3847('0x26')]['id']}},_0x578ca4={};_0x578ca4[_0x3847('0x27')]=_[_0x3847('0x28')](db[_0x3847('0x1c')][_0x3847('0x29')]);_0x578ca4[_0x3847('0x2a')]=_[_0x3847('0x28')](_0x2c35e3[_0x3847('0x2a')]);_0x578ca4[_0x3847('0x2b')]=_[_0x3847('0x2c')](_0x578ca4['model'],_0x578ca4[_0x3847('0x2a')]);_0x468fb6[_0x3847('0x2d')]=_[_0x3847('0x2c')](_0x578ca4[_0x3847('0x27')],qs['fields'](_0x2c35e3[_0x3847('0x2a')][_0x3847('0x2e')]));_0x468fb6[_0x3847('0x2d')]=_0x468fb6[_0x3847('0x2d')]['length']?_0x468fb6[_0x3847('0x2d')]:_0x578ca4['model'];if(_0x2c35e3[_0x3847('0x2a')][_0x3847('0x2f')]){_0x468fb6[_0x3847('0x21')]=[{'all':!![]}];}_0x468fb6=_[_0x3847('0x30')]({},_0x468fb6,_0x2c35e3['options']);return db[_0x3847('0x1c')][_0x3847('0x31')](_0x468fb6)[_0x3847('0x16')](handleEntityNotFound(_0xd5bb7c,null))[_0x3847('0x16')](respondWithResult(_0xd5bb7c,null))[_0x3847('0x24')](handleError(_0xd5bb7c,null));};exports[_0x3847('0x32')]=function(_0x36bd2b,_0x67a9f1){return db[_0x3847('0x1c')][_0x3847('0x32')](_0x36bd2b['body'],{})[_0x3847('0x16')](function(_0x30af5d){var _0x13f9da=_0x36bd2b[_0x3847('0x33')][_0x3847('0x17')]({'plain':!![]});if(!_0x13f9da)throw new Error(_0x3847('0x34'));if(_0x13f9da[_0x3847('0x35')]===_0x3847('0x33')){var _0x1d6d6a=_0x30af5d[_0x3847('0x17')]({'plain':!![]});var _0x3aa63a=_0x3847('0x18');return db['UserProfileSection']['find']({'where':{'name':_0x3aa63a,'userProfileId':_0x13f9da[_0x3847('0x36')]},'raw':!![]})['then'](function(_0xf2fa2c){if(_0xf2fa2c&&_0xf2fa2c[_0x3847('0x37')]===0x0){return db['UserProfileResource']['create']({'name':_0x1d6d6a['name'],'resourceId':_0x1d6d6a['id'],'type':_0xf2fa2c[_0x3847('0x1a')],'sectionId':_0xf2fa2c['id']},{})['then'](function(){return _0x30af5d;});}else{return _0x30af5d;}})[_0x3847('0x24')](function(_0x1ad8e6){logger['error'](_0x3847('0x38'),_0x1ad8e6);throw _0x1ad8e6;});}return _0x30af5d;})[_0x3847('0x16')](respondWithResult(_0x67a9f1,0xc9))['catch'](handleError(_0x67a9f1,null));};exports['update']=function(_0x4cd6e3,_0x4eeae9){if(_0x4cd6e3[_0x3847('0x39')]['id']){delete _0x4cd6e3[_0x3847('0x39')]['id'];}return db['OpenchannelQueue']['find']({'where':{'id':_0x4cd6e3['params']['id']}})[_0x3847('0x16')](handleEntityNotFound(_0x4eeae9,null))[_0x3847('0x16')](saveUpdates(_0x4cd6e3[_0x3847('0x39')],null))[_0x3847('0x16')](respondWithResult(_0x4eeae9,null))[_0x3847('0x24')](handleError(_0x4eeae9,null));};exports[_0x3847('0x3a')]=function(_0x3cd479,_0x50a0c5){return db[_0x3847('0x1c')][_0x3847('0x31')]({'where':{'id':_0x3cd479[_0x3847('0x26')]['id']}})[_0x3847('0x16')](handleEntityNotFound(_0x50a0c5,null))[_0x3847('0x16')](removeEntity(_0x50a0c5,null))['catch'](handleError(_0x50a0c5,null));};exports['describe']=function(_0x1c6579,_0x52eaa1){return db['OpenchannelQueue']['describe']()[_0x3847('0x16')](respondWithResult(_0x52eaa1,null))[_0x3847('0x24')](handleError(_0x52eaa1,null));};exports['getMembers']=function(_0x16edee,_0x122961){var _0x21b37b={'raw':!![],'where':{}},_0x37a4a5={},_0x30ee45;return db[_0x3847('0x1c')][_0x3847('0x3b')]({'where':{'id':_0x16edee[_0x3847('0x26')]['id']}})[_0x3847('0x16')](handleEntityNotFound(_0x122961,null))[_0x3847('0x16')](function(_0x26195e){if(_0x26195e){_0x30ee45=_0x26195e[_0x3847('0x17')]({'plain':!![]});_0x37a4a5[_0x3847('0x27')]=_[_0x3847('0x28')](db[_0x3847('0x3c')][_0x3847('0x29')]);_0x37a4a5[_0x3847('0x2a')]=_['keys'](_0x16edee[_0x3847('0x2a')]);_0x37a4a5['filters']=_[_0x3847('0x2c')](_0x37a4a5['model'],_0x37a4a5[_0x3847('0x2a')]);_0x21b37b[_0x3847('0x2d')]=_[_0x3847('0x2c')](_0x37a4a5[_0x3847('0x27')],qs[_0x3847('0x2e')](_0x16edee[_0x3847('0x2a')][_0x3847('0x2e')]));_0x21b37b[_0x3847('0x2d')]=_0x21b37b['attributes'][_0x3847('0x3d')]?_0x21b37b[_0x3847('0x2d')]:_0x37a4a5[_0x3847('0x27')];if(!_0x16edee[_0x3847('0x2a')][_0x3847('0x3e')](_0x3847('0x3f'))){_0x21b37b['limit']=qs['limit'](_0x16edee[_0x3847('0x2a')]['limit']);_0x21b37b['offset']=qs[_0x3847('0x11')](_0x16edee[_0x3847('0x2a')][_0x3847('0x11')]);}_0x21b37b[_0x3847('0x40')]=qs['sort'](_0x16edee[_0x3847('0x2a')][_0x3847('0x41')]);_0x21b37b[_0x3847('0x20')]=qs[_0x3847('0x2b')](_[_0x3847('0x42')](_0x16edee[_0x3847('0x2a')],_0x37a4a5[_0x3847('0x2b')]));_0x21b37b[_0x3847('0x20')][_0x3847('0x43')]=_0x26195e['id'];if(_0x16edee[_0x3847('0x2a')][_0x3847('0x44')]){_0x21b37b[_0x3847('0x20')]=_['merge'](_0x21b37b[_0x3847('0x20')],{'$or':_[_0x3847('0x45')](_0x21b37b[_0x3847('0x2d')],function(_0x214a45){var _0x31e677={};_0x31e677[_0x214a45]={'$like':'%'+_0x16edee['query'][_0x3847('0x44')]+'%'};return _0x31e677;})});}_0x21b37b=_[_0x3847('0x30')]({},_0x21b37b,_0x16edee[_0x3847('0x46')]);return db[_0x3847('0x3c')][_0x3847('0x22')](_0x21b37b);}})[_0x3847('0x16')](function(_0x503115){if(_0x503115){return db[_0x3847('0x47')][_0x3847('0x48')]({'where':{'id':_[_0x3847('0x45')](_0x503115,_0x3847('0x49')),'role':_0x3847('0x4a')},'attributes':['id',_0x3847('0x1a'),'openchannelPause',_0x3847('0x4b'),_0x3847('0x4c')]});}})[_0x3847('0x16')](function(_0x317a2d){if(_0x317a2d){return{'count':_0x317a2d[_0x3847('0x12')],'rows':_['map'](_0x317a2d['rows'],function(_0x301d55){return{'membername':_0x301d55[_0x3847('0x1a')],'UserId':_0x301d55['id'],'queue_name':_0x30ee45[_0x3847('0x1a')],'OpenchannelQueueId':_0x30ee45['id'],'interface':util['format'](_0x3847('0x4d'),'SIP',_0x301d55[_0x3847('0x1a')]),'penalty':0x0,'paused':_0x301d55[_0x3847('0x4e')],'createdAt':_0x301d55[_0x3847('0x4c')],'updatedAt':_0x301d55[_0x3847('0x4b')]};})};}else{return{'count':0x0,'rows':[]};}})[_0x3847('0x16')](respondWithFilteredResult(_0x122961,_0x21b37b))[_0x3847('0x24')](handleError(_0x122961,null));};exports['getTeams']=function(_0x55db35,_0x111e6f){var _0x2f01dc={};var _0x5bbfa6={};var _0x270bfb;var _0x59194c;return db[_0x3847('0x1c')][_0x3847('0x3b')]({'where':{'id':_0x55db35[_0x3847('0x26')]['id']}})[_0x3847('0x16')](handleEntityNotFound(_0x111e6f,null))[_0x3847('0x16')](function(_0x44334c){if(_0x44334c){_0x270bfb=_0x44334c;_0x5bbfa6[_0x3847('0x27')]=_[_0x3847('0x28')](db[_0x3847('0x4f')][_0x3847('0x29')]);_0x5bbfa6[_0x3847('0x2a')]=_[_0x3847('0x28')](_0x55db35['query']);_0x5bbfa6['filters']=_[_0x3847('0x2c')](_0x5bbfa6[_0x3847('0x27')],_0x5bbfa6['query']);_0x2f01dc['attributes']=_[_0x3847('0x2c')](_0x5bbfa6[_0x3847('0x27')],qs['fields'](_0x55db35[_0x3847('0x2a')][_0x3847('0x2e')]));_0x2f01dc['attributes']=_0x2f01dc[_0x3847('0x2d')][_0x3847('0x3d')]?_0x2f01dc[_0x3847('0x2d')]:_0x5bbfa6[_0x3847('0x27')];_0x2f01dc[_0x3847('0x40')]=qs[_0x3847('0x41')](_0x55db35[_0x3847('0x2a')][_0x3847('0x41')]);_0x2f01dc[_0x3847('0x20')]=qs[_0x3847('0x2b')](_['pick'](_0x55db35[_0x3847('0x2a')],_0x5bbfa6[_0x3847('0x2b')]));if(_0x55db35[_0x3847('0x2a')][_0x3847('0x44')]){_0x2f01dc[_0x3847('0x20')]=_[_0x3847('0x30')](_0x2f01dc[_0x3847('0x20')],{'$or':_[_0x3847('0x45')](_0x2f01dc['attributes'],function(_0x21a362){var _0x4aea74={};_0x4aea74[_0x21a362]={'$like':'%'+_0x55db35[_0x3847('0x2a')][_0x3847('0x44')]+'%'};return _0x4aea74;})});}_0x2f01dc=_[_0x3847('0x30')]({},_0x2f01dc,_0x55db35[_0x3847('0x46')]);return _0x270bfb[_0x3847('0x50')](_0x2f01dc);}})['then'](function(_0x558a7d){if(_0x558a7d){_0x59194c=_0x558a7d[_0x3847('0x3d')];if(!_0x55db35['query'][_0x3847('0x3e')](_0x3847('0x3f'))){_0x2f01dc['limit']=qs[_0x3847('0x10')](_0x55db35['query'][_0x3847('0x10')]);_0x2f01dc[_0x3847('0x11')]=qs['offset'](_0x55db35[_0x3847('0x2a')][_0x3847('0x11')]);}return _0x270bfb['getTeams'](_0x2f01dc);}})[_0x3847('0x16')](function(_0x538d2a){if(_0x538d2a){return _0x538d2a?{'count':_0x59194c,'rows':_0x538d2a}:null;}})[_0x3847('0x16')](respondWithResult(_0x111e6f,null))[_0x3847('0x24')](handleError(_0x111e6f,null));};exports[_0x3847('0x51')]=function(_0xf28c0c,_0x3a305a){var _0x4a124b=_0xf28c0c[_0x3847('0x39')][_0x3847('0x52')];return db[_0x3847('0x4f')][_0x3847('0x22')]({'where':{'id':_0x4a124b},'attributes':['id'],'include':[{'model':db['User'],'as':_0x3847('0x53'),'attributes':['id',_0x3847('0x1a'),_0x3847('0x54'),_0x3847('0x55'),_0x3847('0x56')],'raw':!![]}]})[_0x3847('0x16')](function(_0xe6d18e){if(_0xe6d18e){var _0x4361a5=_[_0x3847('0x57')](_0xe6d18e,function(_0x435a5f){var _0xbe77b6=_0x435a5f['get']({'plain':!![]});return _0xbe77b6['Agents'];});return db['OpenchannelQueue'][_0x3847('0x31')]({'where':{'id':_0xf28c0c[_0x3847('0x26')]['id']}})['then'](function(_0xd10fa4){return db[_0x3847('0x58')][_0x3847('0x59')](function(_0x5b6333){return _0xd10fa4[_0x3847('0x51')](_0x4a124b,{'transaction':_0x5b6333})['then'](function(){return BPromise[_0x3847('0x5a')](_0x4361a5,function(_0x194f0f){return db[_0x3847('0x3c')][_0x3847('0x5b')]({'where':{'UserId':_0x194f0f['id'],'OpenchannelQueueId':_0xf28c0c[_0x3847('0x26')]['id']},'transaction':_0x5b6333});});})[_0x3847('0x16')](function(){_0x4361a5['forEach'](function(_0x465ec4){socket[_0x3847('0x5c')](_0x3847('0x5d'),{'UserId':_0x465ec4['id'],'OpenchannelQueueId':_0xd10fa4['id']});});});});});}})[_0x3847('0x16')](respondWithStatusCode(_0x3a305a,null))[_0x3847('0x24')](handleError(_0x3a305a,null));};exports[_0x3847('0x5e')]=function(_0x3a7a32,_0x2a7a4f){return db[_0x3847('0x4f')][_0x3847('0x22')]({'where':{'id':_0x3a7a32[_0x3847('0x2a')]['ids']},'attributes':['id'],'include':[{'model':db[_0x3847('0x47')],'as':_0x3847('0x53'),'attributes':['id'],'raw':!![]}]})['then'](handleEntityNotFound(_0x2a7a4f,null))[_0x3847('0x16')](function(_0x1dc3ec){var _0x45a432=_['map'](_0x1dc3ec,'id');var _0x3092cb=[];var _0x4ae76a=[];var _0x462d35=squel[_0x3847('0x5f')]();_0x462d35[_0x3847('0x60')](_0x3847('0x61'))[_0x3847('0x62')]('team_has_openchannel_queues','tq')[_0x3847('0x63')](_0x3847('0x64'),'ut',_0x3847('0x65'))[_0x3847('0x20')]('OpenchannelQueueId\x20=\x20?',_0x3a7a32[_0x3847('0x26')]['id']);for(var _0x1340ab=0x0;_0x1340ab<_0x1dc3ec[_0x3847('0x3d')];_0x1340ab+=0x1){let _0x573cc6=_0x1dc3ec[_0x1340ab];for(var _0x45289a=0x0;_0x45289a<_0x573cc6[_0x3847('0x53')]['length'];_0x45289a+=0x1){let _0x20d7f1=_0x573cc6[_0x3847('0x53')][_0x45289a];var _0x4ad823=_0x462d35[_0x3847('0x66')]();_0x4ad823[_0x3847('0x20')](_0x3847('0x67'),_0x20d7f1['id']);_0x4ae76a[_0x3847('0x68')](db[_0x3847('0x58')][_0x3847('0x2a')](_0x4ad823[_0x3847('0x69')](),{'type':db[_0x3847('0x58')][_0x3847('0x6a')]['SELECT']})[_0x3847('0x16')](function(_0x197363){if(_0x197363[_0x3847('0x3d')]===0x1){return _0x20d7f1['id'];}else{var _0x45d74a=_[_0x3847('0x6b')](_[_0x3847('0x45')](_0x197363,_0x3847('0x6c')),function(_0x23b70a){return _[_0x3847('0x6d')](_0x45a432,_0x23b70a);});if(_0x45d74a){return _0x20d7f1['id'];}}}));}}return BPromise[_0x3847('0x6e')](_0x4ae76a)[_0x3847('0x16')](function(_0x54224a){_0x3092cb=_(_0x3092cb)[_0x3847('0x6f')](_0x54224a)[_0x3847('0x70')]()[_0x3847('0x71')]();return db[_0x3847('0x1c')][_0x3847('0x31')]({'where':{'id':_0x3a7a32[_0x3847('0x26')]['id']}})[_0x3847('0x16')](function(_0x5b49f0){return db[_0x3847('0x58')][_0x3847('0x59')](function(_0x7563c5){return _0x5b49f0[_0x3847('0x5e')](_0x3a7a32[_0x3847('0x2a')][_0x3847('0x52')],{'transaction':_0x7563c5})[_0x3847('0x16')](function(){if(!_[_0x3847('0x72')](_0x3092cb)){return _0x5b49f0[_0x3847('0x73')](_0x3092cb,{'transaction':_0x7563c5});}})['then'](function(){_0x3092cb[_0x3847('0x74')](function(_0x40d41f){socket['emit'](_0x3847('0x75'),{'UserId':_0x40d41f,'OpenchannelQueueId':_0x5b49f0['id']});});});});});});})[_0x3847('0x16')](respondWithStatusCode(_0x2a7a4f,null))[_0x3847('0x24')](handleError(_0x2a7a4f,null));};exports['addAgents']=function(_0x6e10dc,_0x336f9b){return db['OpenchannelQueue']['find']({'where':{'id':_0x6e10dc[_0x3847('0x26')]['id']}})[_0x3847('0x16')](handleEntityNotFound(_0x336f9b,null))[_0x3847('0x16')](function(_0x880518){if(_0x880518){return _0x880518[_0x3847('0x76')](_0x6e10dc[_0x3847('0x39')]['ids'],_[_0x3847('0x77')](_0x6e10dc[_0x3847('0x39')],[_0x3847('0x52'),'id'])||{})[_0x3847('0x78')](function(_0x371403){for(var _0xd25953=0x0;_0xd25953<_0x6e10dc['body'][_0x3847('0x52')]['length'];_0xd25953+=0x1){socket[_0x3847('0x5c')](_0x3847('0x5d'),{'UserId':Number(_0x6e10dc[_0x3847('0x39')][_0x3847('0x52')][_0xd25953]),'OpenchannelQueueId':Number(_0x6e10dc['params']['id'])});}return _0x371403;});}})['then'](respondWithResult(_0x336f9b,null))[_0x3847('0x24')](handleError(_0x336f9b,null));};exports['removeAgents']=function(_0x553d8c,_0x4377b7){return db[_0x3847('0x1c')][_0x3847('0x31')]({'where':{'id':_0x553d8c['params']['id']}})['then'](handleEntityNotFound(_0x4377b7,null))[_0x3847('0x16')](function(_0x1a2d2a){if(_0x1a2d2a){return _0x1a2d2a[_0x3847('0x73')](_0x553d8c[_0x3847('0x2a')][_0x3847('0x52')])['then'](function(){if(_[_0x3847('0x79')](_0x553d8c[_0x3847('0x2a')][_0x3847('0x52')])){for(var _0x3f5e20=0x0;_0x3f5e20<_0x553d8c['query'][_0x3847('0x52')][_0x3847('0x3d')];_0x3f5e20+=0x1){socket[_0x3847('0x5c')](_0x3847('0x75'),{'UserId':Number(_0x553d8c[_0x3847('0x2a')]['ids'][_0x3f5e20]),'OpenchannelQueueId':Number(_0x553d8c[_0x3847('0x26')]['id'])});}}else{socket['emit'](_0x3847('0x75'),{'UserId':Number(_0x553d8c[_0x3847('0x2a')]['ids']),'OpenchannelQueueId':Number(_0x553d8c[_0x3847('0x26')]['id'])});}});}})[_0x3847('0x16')](respondWithStatusCode(_0x4377b7,null))[_0x3847('0x24')](handleError(_0x4377b7,null));};exports[_0x3847('0x7a')]=function(_0xafac66,_0x5460d2){var _0x70e8eb={};var _0x42d1fa={};var _0x233348;var _0x387ec9;return db[_0x3847('0x1c')][_0x3847('0x3b')]({'where':{'id':_0xafac66[_0x3847('0x26')]['id']}})[_0x3847('0x16')](handleEntityNotFound(_0x5460d2,null))['then'](function(_0x43e830){if(_0x43e830){_0x233348=_0x43e830;_0x42d1fa['model']=_[_0x3847('0x28')](db[_0x3847('0x47')][_0x3847('0x29')]);_0x42d1fa[_0x3847('0x2a')]=_['keys'](_0xafac66[_0x3847('0x2a')]);_0x42d1fa[_0x3847('0x2b')]=_['intersection'](_0x42d1fa['model'],_0x42d1fa[_0x3847('0x2a')]);_0x70e8eb[_0x3847('0x2d')]=_[_0x3847('0x2c')](_0x42d1fa[_0x3847('0x27')],qs[_0x3847('0x2e')](_0xafac66['query'][_0x3847('0x2e')]));_0x70e8eb['attributes']=_0x70e8eb[_0x3847('0x2d')]['length']?_0x70e8eb[_0x3847('0x2d')]:_0x42d1fa[_0x3847('0x27')];_0x70e8eb[_0x3847('0x40')]=qs['sort'](_0xafac66[_0x3847('0x2a')]['sort']);_0x70e8eb[_0x3847('0x20')]=qs[_0x3847('0x2b')](_[_0x3847('0x42')](_0xafac66['query'],_0x42d1fa['filters']));if(_0xafac66[_0x3847('0x2a')]['filter']){_0x70e8eb[_0x3847('0x20')]=_[_0x3847('0x30')](_0x70e8eb['where'],{'$or':_['map'](_0x70e8eb[_0x3847('0x2d')],function(_0x1f3c75){var _0x1a4281={};_0x1a4281[_0x1f3c75]={'$like':'%'+_0xafac66[_0x3847('0x2a')]['filter']+'%'};return _0x1a4281;})});}_0x70e8eb=_['merge']({},_0x70e8eb,_0xafac66['options']);return _0x233348[_0x3847('0x7a')](_0x70e8eb);}})['then'](function(_0x34ac90){if(_0x34ac90){_0x387ec9=_0x34ac90[_0x3847('0x3d')];if(!_0xafac66['query'][_0x3847('0x3e')](_0x3847('0x3f'))){_0x70e8eb[_0x3847('0x10')]=qs['limit'](_0xafac66[_0x3847('0x2a')][_0x3847('0x10')]);_0x70e8eb['offset']=qs['offset'](_0xafac66[_0x3847('0x2a')][_0x3847('0x11')]);}return _0x233348[_0x3847('0x7a')](_0x70e8eb);}})[_0x3847('0x16')](function(_0x14a7ce){if(_0x14a7ce){return _0x14a7ce?{'count':_0x387ec9,'rows':_0x14a7ce}:null;}})[_0x3847('0x16')](respondWithResult(_0x5460d2,null))[_0x3847('0x24')](handleError(_0x5460d2,null));};