Built motion from commit 3c2ce842.|2.6.31
[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 _0x3cac=['flatMap','transaction','emit','userOpenchannelQueue:save','field','tq.TeamId','from','user_has_teams','ut.TeamId\x20=\x20tq.TeamId','OpenchannelQueueId\x20=\x20?','ut.UserId\x20=\x20?','push','sequelize','toString','QueryTypes','SELECT','every','TeamId','includes','all','union','compact','value','removeTeams','isEmpty','removeAgents','forEach','userOpenchannelQueue:remove','addAgents','omit','spread','isArray','getAgents','bluebird','util','lodash','squel','ioredis','../../components/parsers/qs','api','../../config/environment','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./openchannelQueue.socket','register','sendStatus','status','json','undefined','limit','count','offset','Content-Range','update','then','destroy','get','OpenchannelQueues','UserProfileResource','end','error','stack','name','map','OpenchannelQueue','rawAttributes','fieldName','key','getOptions','where','include','query','findAll','rows','catch','show','params','model','filters','intersection','attributes','fields','length','includeAll','merge','options','find','create','body','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','user','UserProfileSection','userProfileId','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','describe','getMembers','findOne','keys','hasOwnProperty','nolimit','order','sort','pick','OpenchannelQueueId','filter','UserOpenchannelQueue','User','findAndCountAll','agent','updatedAt','createdAt','format','%s/%s','SIP','openchannelPause','Team','getTeams','addTeams','ids','Agents','online','voicePause','interface'];(function(_0x37d16b,_0x3ef772){var _0x403643=function(_0x17e4db){while(--_0x17e4db){_0x37d16b['push'](_0x37d16b['shift']());}};_0x403643(++_0x3ef772);}(_0x3cac,0xa0));var _0xc3ca=function(_0x3b9e10,_0x2dc4aa){_0x3b9e10=_0x3b9e10-0x0;var _0x3a446b=_0x3cac[_0x3b9e10];return _0x3a446b;};'use strict';var BPromise=require(_0xc3ca('0x0'));var util=require(_0xc3ca('0x1'));var _=require(_0xc3ca('0x2'));var squel=require(_0xc3ca('0x3'));var Redis=require(_0xc3ca('0x4'));var qs=require(_0xc3ca('0x5'));var logger=require('../../config/logger')(_0xc3ca('0x6'));var config=require(_0xc3ca('0x7'));var db=require(_0xc3ca('0x8'))['db'];config[_0xc3ca('0x9')]=_[_0xc3ca('0xa')](config[_0xc3ca('0x9')],{'host':_0xc3ca('0xb'),'port':0x18eb});var socket=require(_0xc3ca('0xc'))(new Redis(config['redis']));require(_0xc3ca('0xd'))[_0xc3ca('0xe')](socket);function respondWithStatusCode(_0x23cd5b,_0x796fd5){_0x796fd5=_0x796fd5||0xcc;return function(_0x3f741a){if(_0x3f741a){return _0x23cd5b[_0xc3ca('0xf')](_0x796fd5);}return _0x23cd5b['status'](_0x796fd5)['end']();};}function respondWithResult(_0x51cc40,_0x510d9b){_0x510d9b=_0x510d9b||0xc8;return function(_0x426316){if(_0x426316){return _0x51cc40[_0xc3ca('0x10')](_0x510d9b)[_0xc3ca('0x11')](_0x426316);}};}function respondWithFilteredResult(_0x42dbbf,_0x255fb3){return function(_0x27fa84){if(_0x27fa84){var _0x41ac16=typeof _0x255fb3['offset']===_0xc3ca('0x12')&&typeof _0x255fb3[_0xc3ca('0x13')]==='undefined';var _0x256612=_0x27fa84[_0xc3ca('0x14')];var _0x109e53=_0x41ac16?0x0:_0x255fb3[_0xc3ca('0x15')];var _0x2034e3=_0x41ac16?_0x27fa84[_0xc3ca('0x14')]:_0x255fb3[_0xc3ca('0x15')]+_0x255fb3[_0xc3ca('0x13')];var _0x4d7194;if(_0x2034e3>=_0x256612){_0x2034e3=_0x256612;_0x4d7194=0xc8;}else{_0x4d7194=0xce;}_0x42dbbf[_0xc3ca('0x10')](_0x4d7194);return _0x42dbbf['set'](_0xc3ca('0x16'),_0x109e53+'-'+_0x2034e3+'/'+_0x256612)[_0xc3ca('0x11')](_0x27fa84);}return null;};}function saveUpdates(_0x139ee4){return function(_0x24af21){if(_0x24af21){return _0x24af21[_0xc3ca('0x17')](_0x139ee4)[_0xc3ca('0x18')](function(_0x22d644){return _0x22d644;});}return null;};}function removeEntity(_0x4b2a18){return function(_0x15d2c1){if(_0x15d2c1){return _0x15d2c1[_0xc3ca('0x19')]()['then'](function(){var _0x860f75=_0x15d2c1[_0xc3ca('0x1a')]({'plain':!![]});var _0x4dd3b1=_0xc3ca('0x1b');return db[_0xc3ca('0x1c')][_0xc3ca('0x19')]({'where':{'type':_0x4dd3b1,'resourceId':_0x860f75['id']}})['then'](function(){return _0x15d2c1;});})[_0xc3ca('0x18')](function(){_0x4b2a18[_0xc3ca('0x10')](0xcc)[_0xc3ca('0x1d')]();});}};}function handleEntityNotFound(_0x2eec5d){return function(_0x47ea80){if(!_0x47ea80){_0x2eec5d[_0xc3ca('0xf')](0x194);}return _0x47ea80;};}function handleError(_0x465deb,_0x37467f){_0x37467f=_0x37467f||0x1f4;return function(_0xe605ee){logger[_0xc3ca('0x1e')](_0xe605ee[_0xc3ca('0x1f')]);if(_0xe605ee[_0xc3ca('0x20')]){delete _0xe605ee[_0xc3ca('0x20')];}_0x465deb[_0xc3ca('0x10')](_0x37467f)['send'](_0xe605ee);};}exports['index']=function(_0x2eed34,_0x16f8a8){var _0x1a4011={};var _0x3b3312={'count':0x0,'rows':[]};var _0x45001b=_[_0xc3ca('0x21')](db[_0xc3ca('0x22')][_0xc3ca('0x23')],function(_0x2787e6){return{'name':_0x2787e6[_0xc3ca('0x24')],'type':_0x2787e6['type'][_0xc3ca('0x25')]};});_0x1a4011=qs[_0xc3ca('0x26')](_0x45001b,_0x2eed34);var _0x53643a={'where':_0x1a4011[_0xc3ca('0x27')]};return db['OpenchannelQueue'][_0xc3ca('0x14')](_0x53643a)[_0xc3ca('0x18')](function(_0x1a4976){_0x3b3312['count']=_0x1a4976;_0x1a4011['include']=qs[_0xc3ca('0x28')](_0x2eed34[_0xc3ca('0x29')]);return db[_0xc3ca('0x22')][_0xc3ca('0x2a')](_0x1a4011);})[_0xc3ca('0x18')](function(_0x77642a){_0x3b3312[_0xc3ca('0x2b')]=_0x77642a;return _0x3b3312;})[_0xc3ca('0x18')](respondWithFilteredResult(_0x16f8a8,_0x1a4011))[_0xc3ca('0x2c')](handleError(_0x16f8a8,null));};exports[_0xc3ca('0x2d')]=function(_0x1dd046,_0x234d15){var _0x4460a7={'raw':!![],'where':{'id':_0x1dd046[_0xc3ca('0x2e')]['id']}},_0x10265e={};_0x10265e[_0xc3ca('0x2f')]=_['keys'](db[_0xc3ca('0x22')][_0xc3ca('0x23')]);_0x10265e[_0xc3ca('0x29')]=_['keys'](_0x1dd046[_0xc3ca('0x29')]);_0x10265e[_0xc3ca('0x30')]=_[_0xc3ca('0x31')](_0x10265e['model'],_0x10265e[_0xc3ca('0x29')]);_0x4460a7[_0xc3ca('0x32')]=_['intersection'](_0x10265e['model'],qs['fields'](_0x1dd046[_0xc3ca('0x29')][_0xc3ca('0x33')]));_0x4460a7['attributes']=_0x4460a7['attributes'][_0xc3ca('0x34')]?_0x4460a7[_0xc3ca('0x32')]:_0x10265e[_0xc3ca('0x2f')];if(_0x1dd046[_0xc3ca('0x29')][_0xc3ca('0x35')]){_0x4460a7['include']=[{'all':!![]}];}_0x4460a7=_[_0xc3ca('0x36')]({},_0x4460a7,_0x1dd046[_0xc3ca('0x37')]);return db[_0xc3ca('0x22')][_0xc3ca('0x38')](_0x4460a7)['then'](handleEntityNotFound(_0x234d15,null))[_0xc3ca('0x18')](respondWithResult(_0x234d15,null))['catch'](handleError(_0x234d15,null));};exports[_0xc3ca('0x39')]=function(_0x4a6fd4,_0x2d1558){return db[_0xc3ca('0x22')][_0xc3ca('0x39')](_0x4a6fd4[_0xc3ca('0x3a')],{})['then'](function(_0x50f9f8){var _0x41ef54=_0x4a6fd4['user'][_0xc3ca('0x1a')]({'plain':!![]});if(!_0x41ef54)throw new Error(_0xc3ca('0x3b'));if(_0x41ef54[_0xc3ca('0x3c')]===_0xc3ca('0x3d')){var _0x4654ed=_0x50f9f8[_0xc3ca('0x1a')]({'plain':!![]});var _0x71d7a0=_0xc3ca('0x1b');return db[_0xc3ca('0x3e')][_0xc3ca('0x38')]({'where':{'name':_0x71d7a0,'userProfileId':_0x41ef54[_0xc3ca('0x3f')]},'raw':!![]})[_0xc3ca('0x18')](function(_0x4012bd){if(_0x4012bd&&_0x4012bd['autoAssociation']===0x0){return db[_0xc3ca('0x1c')]['create']({'name':_0x4654ed['name'],'resourceId':_0x4654ed['id'],'type':_0x4012bd[_0xc3ca('0x20')],'sectionId':_0x4012bd['id']},{})['then'](function(){return _0x50f9f8;});}else{return _0x50f9f8;}})[_0xc3ca('0x2c')](function(_0x30af24){logger[_0xc3ca('0x1e')](_0xc3ca('0x40'),_0x30af24);throw _0x30af24;});}return _0x50f9f8;})[_0xc3ca('0x18')](respondWithResult(_0x2d1558,0xc9))[_0xc3ca('0x2c')](handleError(_0x2d1558,null));};exports[_0xc3ca('0x17')]=function(_0x553d5c,_0x38020b){if(_0x553d5c[_0xc3ca('0x3a')]['id']){delete _0x553d5c[_0xc3ca('0x3a')]['id'];}return db[_0xc3ca('0x22')][_0xc3ca('0x38')]({'where':{'id':_0x553d5c[_0xc3ca('0x2e')]['id']}})[_0xc3ca('0x18')](handleEntityNotFound(_0x38020b,null))[_0xc3ca('0x18')](saveUpdates(_0x553d5c['body'],null))['then'](respondWithResult(_0x38020b,null))[_0xc3ca('0x2c')](handleError(_0x38020b,null));};exports[_0xc3ca('0x19')]=function(_0x1ee518,_0x5c43f1){return db['OpenchannelQueue'][_0xc3ca('0x38')]({'where':{'id':_0x1ee518[_0xc3ca('0x2e')]['id']}})[_0xc3ca('0x18')](handleEntityNotFound(_0x5c43f1,null))['then'](removeEntity(_0x5c43f1,null))[_0xc3ca('0x2c')](handleError(_0x5c43f1,null));};exports[_0xc3ca('0x41')]=function(_0x39c334,_0x27354c){return db[_0xc3ca('0x22')][_0xc3ca('0x41')]()[_0xc3ca('0x18')](respondWithResult(_0x27354c,null))[_0xc3ca('0x2c')](handleError(_0x27354c,null));};exports[_0xc3ca('0x42')]=function(_0x527a49,_0x5536b4){var _0x45ae16={'raw':!![],'where':{}},_0x2594cd={},_0x4edb19;return db['OpenchannelQueue'][_0xc3ca('0x43')]({'where':{'id':_0x527a49[_0xc3ca('0x2e')]['id']}})[_0xc3ca('0x18')](handleEntityNotFound(_0x5536b4,null))[_0xc3ca('0x18')](function(_0x56d8c3){if(_0x56d8c3){_0x4edb19=_0x56d8c3[_0xc3ca('0x1a')]({'plain':!![]});_0x2594cd['model']=_[_0xc3ca('0x44')](db['UserOpenchannelQueue'][_0xc3ca('0x23')]);_0x2594cd[_0xc3ca('0x29')]=_[_0xc3ca('0x44')](_0x527a49[_0xc3ca('0x29')]);_0x2594cd[_0xc3ca('0x30')]=_[_0xc3ca('0x31')](_0x2594cd[_0xc3ca('0x2f')],_0x2594cd['query']);_0x45ae16[_0xc3ca('0x32')]=_[_0xc3ca('0x31')](_0x2594cd['model'],qs['fields'](_0x527a49[_0xc3ca('0x29')][_0xc3ca('0x33')]));_0x45ae16[_0xc3ca('0x32')]=_0x45ae16[_0xc3ca('0x32')][_0xc3ca('0x34')]?_0x45ae16[_0xc3ca('0x32')]:_0x2594cd[_0xc3ca('0x2f')];if(!_0x527a49[_0xc3ca('0x29')][_0xc3ca('0x45')](_0xc3ca('0x46'))){_0x45ae16[_0xc3ca('0x13')]=qs['limit'](_0x527a49[_0xc3ca('0x29')][_0xc3ca('0x13')]);_0x45ae16[_0xc3ca('0x15')]=qs['offset'](_0x527a49[_0xc3ca('0x29')][_0xc3ca('0x15')]);}_0x45ae16[_0xc3ca('0x47')]=qs[_0xc3ca('0x48')](_0x527a49['query']['sort']);_0x45ae16[_0xc3ca('0x27')]=qs['filters'](_[_0xc3ca('0x49')](_0x527a49[_0xc3ca('0x29')],_0x2594cd[_0xc3ca('0x30')]));_0x45ae16['where'][_0xc3ca('0x4a')]=_0x56d8c3['id'];if(_0x527a49['query'][_0xc3ca('0x4b')]){_0x45ae16[_0xc3ca('0x27')]=_[_0xc3ca('0x36')](_0x45ae16[_0xc3ca('0x27')],{'$or':_[_0xc3ca('0x21')](_0x45ae16[_0xc3ca('0x32')],function(_0x493734){var _0x5c8ad0={};_0x5c8ad0[_0x493734]={'$like':'%'+_0x527a49[_0xc3ca('0x29')]['filter']+'%'};return _0x5c8ad0;})});}_0x45ae16=_[_0xc3ca('0x36')]({},_0x45ae16,_0x527a49[_0xc3ca('0x37')]);return db[_0xc3ca('0x4c')][_0xc3ca('0x2a')](_0x45ae16);}})[_0xc3ca('0x18')](function(_0x210166){if(_0x210166){return db[_0xc3ca('0x4d')][_0xc3ca('0x4e')]({'where':{'id':_[_0xc3ca('0x21')](_0x210166,'UserId'),'role':_0xc3ca('0x4f')},'attributes':['id',_0xc3ca('0x20'),'openchannelPause',_0xc3ca('0x50'),_0xc3ca('0x51')]});}})[_0xc3ca('0x18')](function(_0x4a2bd4){if(_0x4a2bd4){return{'count':_0x4a2bd4[_0xc3ca('0x14')],'rows':_['map'](_0x4a2bd4[_0xc3ca('0x2b')],function(_0x159c95){return{'membername':_0x159c95[_0xc3ca('0x20')],'UserId':_0x159c95['id'],'queue_name':_0x4edb19[_0xc3ca('0x20')],'OpenchannelQueueId':_0x4edb19['id'],'interface':util[_0xc3ca('0x52')](_0xc3ca('0x53'),_0xc3ca('0x54'),_0x159c95[_0xc3ca('0x20')]),'penalty':0x0,'paused':_0x159c95[_0xc3ca('0x55')],'createdAt':_0x159c95[_0xc3ca('0x51')],'updatedAt':_0x159c95[_0xc3ca('0x50')]};})};}else{return{'count':0x0,'rows':[]};}})[_0xc3ca('0x18')](respondWithFilteredResult(_0x5536b4,_0x45ae16))['catch'](handleError(_0x5536b4,null));};exports['getTeams']=function(_0x2a2a9e,_0x163de0){var _0x3e0791={};var _0x49ee24={};var _0xb3da99;var _0x66af8c;return db[_0xc3ca('0x22')]['findOne']({'where':{'id':_0x2a2a9e['params']['id']}})[_0xc3ca('0x18')](handleEntityNotFound(_0x163de0,null))[_0xc3ca('0x18')](function(_0x4b8981){if(_0x4b8981){_0xb3da99=_0x4b8981;_0x49ee24['model']=_[_0xc3ca('0x44')](db[_0xc3ca('0x56')][_0xc3ca('0x23')]);_0x49ee24[_0xc3ca('0x29')]=_[_0xc3ca('0x44')](_0x2a2a9e[_0xc3ca('0x29')]);_0x49ee24[_0xc3ca('0x30')]=_[_0xc3ca('0x31')](_0x49ee24[_0xc3ca('0x2f')],_0x49ee24[_0xc3ca('0x29')]);_0x3e0791['attributes']=_['intersection'](_0x49ee24['model'],qs[_0xc3ca('0x33')](_0x2a2a9e[_0xc3ca('0x29')][_0xc3ca('0x33')]));_0x3e0791['attributes']=_0x3e0791[_0xc3ca('0x32')][_0xc3ca('0x34')]?_0x3e0791['attributes']:_0x49ee24[_0xc3ca('0x2f')];_0x3e0791[_0xc3ca('0x47')]=qs['sort'](_0x2a2a9e[_0xc3ca('0x29')][_0xc3ca('0x48')]);_0x3e0791['where']=qs[_0xc3ca('0x30')](_[_0xc3ca('0x49')](_0x2a2a9e[_0xc3ca('0x29')],_0x49ee24[_0xc3ca('0x30')]));if(_0x2a2a9e[_0xc3ca('0x29')][_0xc3ca('0x4b')]){_0x3e0791[_0xc3ca('0x27')]=_['merge'](_0x3e0791[_0xc3ca('0x27')],{'$or':_[_0xc3ca('0x21')](_0x3e0791['attributes'],function(_0x3c7a9d){var _0x4d2f92={};_0x4d2f92[_0x3c7a9d]={'$like':'%'+_0x2a2a9e[_0xc3ca('0x29')][_0xc3ca('0x4b')]+'%'};return _0x4d2f92;})});}_0x3e0791=_[_0xc3ca('0x36')]({},_0x3e0791,_0x2a2a9e[_0xc3ca('0x37')]);return _0xb3da99[_0xc3ca('0x57')](_0x3e0791);}})[_0xc3ca('0x18')](function(_0x4e906c){if(_0x4e906c){_0x66af8c=_0x4e906c[_0xc3ca('0x34')];if(!_0x2a2a9e['query'][_0xc3ca('0x45')](_0xc3ca('0x46'))){_0x3e0791[_0xc3ca('0x13')]=qs[_0xc3ca('0x13')](_0x2a2a9e['query']['limit']);_0x3e0791[_0xc3ca('0x15')]=qs['offset'](_0x2a2a9e['query'][_0xc3ca('0x15')]);}return _0xb3da99[_0xc3ca('0x57')](_0x3e0791);}})[_0xc3ca('0x18')](function(_0x4c6b27){if(_0x4c6b27){return _0x4c6b27?{'count':_0x66af8c,'rows':_0x4c6b27}:null;}})['then'](respondWithResult(_0x163de0,null))['catch'](handleError(_0x163de0,null));};exports[_0xc3ca('0x58')]=function(_0x8a1f90,_0x569477){var _0x4758b8=_0x8a1f90[_0xc3ca('0x3a')][_0xc3ca('0x59')];return db[_0xc3ca('0x56')][_0xc3ca('0x2a')]({'where':{'id':_0x4758b8},'attributes':['id'],'include':[{'model':db[_0xc3ca('0x4d')],'as':_0xc3ca('0x5a'),'attributes':['id','name',_0xc3ca('0x5b'),_0xc3ca('0x5c'),_0xc3ca('0x5d')],'raw':!![]}]})[_0xc3ca('0x18')](function(_0x482ad7){if(_0x482ad7){var _0x22e2f6=_[_0xc3ca('0x5e')](_0x482ad7,function(_0x23f681){var _0x43f49f=_0x23f681[_0xc3ca('0x1a')]({'plain':!![]});return _0x43f49f[_0xc3ca('0x5a')];});return db[_0xc3ca('0x22')]['find']({'where':{'id':_0x8a1f90[_0xc3ca('0x2e')]['id']}})[_0xc3ca('0x18')](function(_0x164678){return db['sequelize'][_0xc3ca('0x5f')](function(_0x3a61e9){return _0x164678[_0xc3ca('0x58')](_0x4758b8,{'transaction':_0x3a61e9})[_0xc3ca('0x18')](function(){return BPromise['each'](_0x22e2f6,function(_0x921f71){return db[_0xc3ca('0x4c')]['findOrCreate']({'where':{'UserId':_0x921f71['id'],'OpenchannelQueueId':_0x8a1f90[_0xc3ca('0x2e')]['id']},'transaction':_0x3a61e9});});})[_0xc3ca('0x18')](function(){_0x22e2f6['forEach'](function(_0x122475){socket[_0xc3ca('0x60')](_0xc3ca('0x61'),{'UserId':_0x122475['id'],'OpenchannelQueueId':_0x164678['id']});});});});});}})[_0xc3ca('0x18')](respondWithStatusCode(_0x569477,null))['catch'](handleError(_0x569477,null));};exports['removeTeams']=function(_0x5e8524,_0x431800){return db[_0xc3ca('0x56')][_0xc3ca('0x2a')]({'where':{'id':_0x5e8524[_0xc3ca('0x29')][_0xc3ca('0x59')]},'attributes':['id'],'include':[{'model':db[_0xc3ca('0x4d')],'as':_0xc3ca('0x5a'),'attributes':['id'],'raw':!![]}]})[_0xc3ca('0x18')](handleEntityNotFound(_0x431800,null))[_0xc3ca('0x18')](function(_0x2452a9){var _0x46b92b=_['map'](_0x2452a9,'id');var _0x4f0553=[];var _0xa314f2=[];var _0x34c46c=squel['select']();_0x34c46c[_0xc3ca('0x62')](_0xc3ca('0x63'))[_0xc3ca('0x64')]('team_has_openchannel_queues','tq')['join'](_0xc3ca('0x65'),'ut',_0xc3ca('0x66'))[_0xc3ca('0x27')](_0xc3ca('0x67'),_0x5e8524[_0xc3ca('0x2e')]['id']);for(var _0x28d077=0x0;_0x28d077<_0x2452a9['length'];_0x28d077+=0x1){let _0x3c35ea=_0x2452a9[_0x28d077];for(var _0x254c07=0x0;_0x254c07<_0x3c35ea[_0xc3ca('0x5a')]['length'];_0x254c07+=0x1){let _0x1b6a2f=_0x3c35ea['Agents'][_0x254c07];var _0x1aaeed=_0x34c46c['clone']();_0x1aaeed['where'](_0xc3ca('0x68'),_0x1b6a2f['id']);_0xa314f2[_0xc3ca('0x69')](db[_0xc3ca('0x6a')][_0xc3ca('0x29')](_0x1aaeed[_0xc3ca('0x6b')](),{'type':db[_0xc3ca('0x6a')][_0xc3ca('0x6c')][_0xc3ca('0x6d')]})['then'](function(_0x40102f){if(_0x40102f[_0xc3ca('0x34')]===0x1){return _0x1b6a2f['id'];}else{var _0x2e014f=_[_0xc3ca('0x6e')](_[_0xc3ca('0x21')](_0x40102f,_0xc3ca('0x6f')),function(_0x9adbe9){return _[_0xc3ca('0x70')](_0x46b92b,_0x9adbe9);});if(_0x2e014f){return _0x1b6a2f['id'];}}}));}}return BPromise[_0xc3ca('0x71')](_0xa314f2)[_0xc3ca('0x18')](function(_0x4c6445){_0x4f0553=_(_0x4f0553)[_0xc3ca('0x72')](_0x4c6445)[_0xc3ca('0x73')]()[_0xc3ca('0x74')]();return db['OpenchannelQueue'][_0xc3ca('0x38')]({'where':{'id':_0x5e8524[_0xc3ca('0x2e')]['id']}})['then'](function(_0x2bd1a5){return db[_0xc3ca('0x6a')][_0xc3ca('0x5f')](function(_0x3ba11c){return _0x2bd1a5[_0xc3ca('0x75')](_0x5e8524[_0xc3ca('0x29')][_0xc3ca('0x59')],{'transaction':_0x3ba11c})[_0xc3ca('0x18')](function(){if(!_[_0xc3ca('0x76')](_0x4f0553)){return _0x2bd1a5[_0xc3ca('0x77')](_0x4f0553,{'transaction':_0x3ba11c});}})[_0xc3ca('0x18')](function(){_0x4f0553[_0xc3ca('0x78')](function(_0x332e78){socket['emit'](_0xc3ca('0x79'),{'UserId':_0x332e78,'OpenchannelQueueId':_0x2bd1a5['id']});});});});});});})[_0xc3ca('0x18')](respondWithStatusCode(_0x431800,null))[_0xc3ca('0x2c')](handleError(_0x431800,null));};exports[_0xc3ca('0x7a')]=function(_0xfdb757,_0x24e86e){return db[_0xc3ca('0x22')][_0xc3ca('0x38')]({'where':{'id':_0xfdb757['params']['id']}})['then'](handleEntityNotFound(_0x24e86e,null))[_0xc3ca('0x18')](function(_0x5c2fbc){if(_0x5c2fbc){return _0x5c2fbc[_0xc3ca('0x7a')](_0xfdb757['body'][_0xc3ca('0x59')],_[_0xc3ca('0x7b')](_0xfdb757[_0xc3ca('0x3a')],['ids','id'])||{})[_0xc3ca('0x7c')](function(_0x46d969){for(var _0x20de83=0x0;_0x20de83<_0xfdb757[_0xc3ca('0x3a')][_0xc3ca('0x59')][_0xc3ca('0x34')];_0x20de83+=0x1){socket[_0xc3ca('0x60')](_0xc3ca('0x61'),{'UserId':Number(_0xfdb757[_0xc3ca('0x3a')]['ids'][_0x20de83]),'OpenchannelQueueId':Number(_0xfdb757[_0xc3ca('0x2e')]['id'])});}return _0x46d969;});}})[_0xc3ca('0x18')](respondWithResult(_0x24e86e,null))[_0xc3ca('0x2c')](handleError(_0x24e86e,null));};exports[_0xc3ca('0x77')]=function(_0x4143c4,_0x1e2112){return db['OpenchannelQueue'][_0xc3ca('0x38')]({'where':{'id':_0x4143c4[_0xc3ca('0x2e')]['id']}})[_0xc3ca('0x18')](handleEntityNotFound(_0x1e2112,null))[_0xc3ca('0x18')](function(_0x4e0766){if(_0x4e0766){return _0x4e0766[_0xc3ca('0x77')](_0x4143c4[_0xc3ca('0x29')][_0xc3ca('0x59')])[_0xc3ca('0x18')](function(){if(_[_0xc3ca('0x7d')](_0x4143c4[_0xc3ca('0x29')][_0xc3ca('0x59')])){for(var _0x2dd180=0x0;_0x2dd180<_0x4143c4[_0xc3ca('0x29')][_0xc3ca('0x59')][_0xc3ca('0x34')];_0x2dd180+=0x1){socket[_0xc3ca('0x60')](_0xc3ca('0x79'),{'UserId':Number(_0x4143c4[_0xc3ca('0x29')]['ids'][_0x2dd180]),'OpenchannelQueueId':Number(_0x4143c4[_0xc3ca('0x2e')]['id'])});}}else{socket['emit'](_0xc3ca('0x79'),{'UserId':Number(_0x4143c4['query'][_0xc3ca('0x59')]),'OpenchannelQueueId':Number(_0x4143c4[_0xc3ca('0x2e')]['id'])});}});}})[_0xc3ca('0x18')](respondWithStatusCode(_0x1e2112,null))[_0xc3ca('0x2c')](handleError(_0x1e2112,null));};exports[_0xc3ca('0x7e')]=function(_0x1fdb4f,_0x55050e){var _0xa684b4={};var _0x2aa9a3={};var _0x2035ef;var _0x16269f;return db[_0xc3ca('0x22')][_0xc3ca('0x43')]({'where':{'id':_0x1fdb4f[_0xc3ca('0x2e')]['id']}})[_0xc3ca('0x18')](handleEntityNotFound(_0x55050e,null))[_0xc3ca('0x18')](function(_0x4771b1){if(_0x4771b1){_0x2035ef=_0x4771b1;_0x2aa9a3['model']=_['keys'](db['User'][_0xc3ca('0x23')]);_0x2aa9a3[_0xc3ca('0x29')]=_['keys'](_0x1fdb4f['query']);_0x2aa9a3[_0xc3ca('0x30')]=_[_0xc3ca('0x31')](_0x2aa9a3[_0xc3ca('0x2f')],_0x2aa9a3[_0xc3ca('0x29')]);_0xa684b4['attributes']=_['intersection'](_0x2aa9a3[_0xc3ca('0x2f')],qs['fields'](_0x1fdb4f[_0xc3ca('0x29')][_0xc3ca('0x33')]));_0xa684b4[_0xc3ca('0x32')]=_0xa684b4[_0xc3ca('0x32')]['length']?_0xa684b4[_0xc3ca('0x32')]:_0x2aa9a3['model'];_0xa684b4['order']=qs['sort'](_0x1fdb4f['query'][_0xc3ca('0x48')]);_0xa684b4[_0xc3ca('0x27')]=qs['filters'](_[_0xc3ca('0x49')](_0x1fdb4f[_0xc3ca('0x29')],_0x2aa9a3['filters']));if(_0x1fdb4f[_0xc3ca('0x29')]['filter']){_0xa684b4[_0xc3ca('0x27')]=_[_0xc3ca('0x36')](_0xa684b4['where'],{'$or':_[_0xc3ca('0x21')](_0xa684b4[_0xc3ca('0x32')],function(_0x2e4f14){var _0x55e58a={};_0x55e58a[_0x2e4f14]={'$like':'%'+_0x1fdb4f['query'][_0xc3ca('0x4b')]+'%'};return _0x55e58a;})});}_0xa684b4=_[_0xc3ca('0x36')]({},_0xa684b4,_0x1fdb4f[_0xc3ca('0x37')]);return _0x2035ef[_0xc3ca('0x7e')](_0xa684b4);}})[_0xc3ca('0x18')](function(_0xea9018){if(_0xea9018){_0x16269f=_0xea9018[_0xc3ca('0x34')];if(!_0x1fdb4f[_0xc3ca('0x29')][_0xc3ca('0x45')](_0xc3ca('0x46'))){_0xa684b4['limit']=qs['limit'](_0x1fdb4f[_0xc3ca('0x29')][_0xc3ca('0x13')]);_0xa684b4[_0xc3ca('0x15')]=qs[_0xc3ca('0x15')](_0x1fdb4f[_0xc3ca('0x29')][_0xc3ca('0x15')]);}return _0x2035ef[_0xc3ca('0x7e')](_0xa684b4);}})[_0xc3ca('0x18')](function(_0x2bf2f9){if(_0x2bf2f9){return _0x2bf2f9?{'count':_0x16269f,'rows':_0x2bf2f9}:null;}})['then'](respondWithResult(_0x55050e,null))[_0xc3ca('0x2c')](handleError(_0x55050e,null));};