245cbcc538f627c7a36227448fa7321ba62bae63
[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 _0x9e92=['openchannelPause','createdAt','format','%s/%s','SIP','updatedAt','Team','getTeams','addTeams','ids','online','voicePause','sequelize','transaction','each','findOrCreate','forEach','emit','userOpenchannelQueue:save','removeTeams','Agents','field','from','team_has_openchannel_queues','user_has_teams','OpenchannelQueueId\x20=\x20?','clone','ut.UserId\x20=\x20?','push','toString','SELECT','every','TeamId','includes','all','isEmpty','removeAgents','userOpenchannelQueue:remove','addAgents','omit','spread','isArray','getAgents','html-pdf','eml-format','rimraf','zip-dir','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/environment','redis','defaults','localhost','socket.io-emitter','./openchannelQueue.socket','register','status','end','offset','limit','set','Content-Range','json','reject','save','update','then','destroy','OpenchannelQueues','UserProfileResource','error','name','send','index','map','OpenchannelQueue','fieldName','type','query','filters','intersection','model','attributes','fields','hasOwnProperty','nolimit','sort','where','pick','filter','merge','VIRTUAL','count','findAll','rows','catch','show','params','keys','rawAttributes','length','includeAll','include','options','find','create','body','user','get','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','getMembers','findOne','UserOpenchannelQueue','order','OpenchannelQueueId','User','UserId','agent'];(function(_0x3ac1e4,_0x3664a2){var _0x5567b9=function(_0x445063){while(--_0x445063){_0x3ac1e4['push'](_0x3ac1e4['shift']());}};_0x5567b9(++_0x3664a2);}(_0x9e92,0xbb));var _0x29e9=function(_0x4e26da,_0x493d68){_0x4e26da=_0x4e26da-0x0;var _0x1635c2=_0x9e92[_0x4e26da];return _0x1635c2;};'use strict';var pdf=require(_0x29e9('0x0'));var emlformat=require(_0x29e9('0x1'));var rimraf=require(_0x29e9('0x2'));var zipdir=require(_0x29e9('0x3'));var jsonpatch=require('fast-json-patch');var rp=require(_0x29e9('0x4'));var moment=require(_0x29e9('0x5'));var BPromise=require(_0x29e9('0x6'));var Mustache=require(_0x29e9('0x7'));var util=require(_0x29e9('0x8'));var path=require(_0x29e9('0x9'));var sox=require(_0x29e9('0xa'));var csv=require(_0x29e9('0xb'));var ejs=require(_0x29e9('0xc'));var fs=require('fs');var _=require(_0x29e9('0xd'));var squel=require(_0x29e9('0xe'));var crypto=require(_0x29e9('0xf'));var jsforce=require(_0x29e9('0x10'));var deskjs=require(_0x29e9('0x11'));var toCsv=require(_0x29e9('0xb'));var querystring=require(_0x29e9('0x12'));var Papa=require(_0x29e9('0x13'));var Redis=require(_0x29e9('0x14'));var authService=require(_0x29e9('0x15'));var qs=require(_0x29e9('0x16'));var as=require(_0x29e9('0x17'));var hardwareService=require(_0x29e9('0x18'));var logger=require('../../config/logger')(_0x29e9('0x19'));var utils=require(_0x29e9('0x1a'));var config=require(_0x29e9('0x1b'));var db=require('../../mysqldb')['db'];config[_0x29e9('0x1c')]=_[_0x29e9('0x1d')](config[_0x29e9('0x1c')],{'host':_0x29e9('0x1e'),'port':0x18eb});var socket=require(_0x29e9('0x1f'))(new Redis(config[_0x29e9('0x1c')]));require(_0x29e9('0x20'))[_0x29e9('0x21')](socket);function respondWithStatusCode(_0x581e81,_0x2c69e3){_0x2c69e3=_0x2c69e3||0xcc;return function(_0x50d05e){if(_0x50d05e){return _0x581e81['sendStatus'](_0x2c69e3);}return _0x581e81[_0x29e9('0x22')](_0x2c69e3)[_0x29e9('0x23')]();};}function respondWithResult(_0x7bb70f,_0x46ed3c){_0x46ed3c=_0x46ed3c||0xc8;return function(_0x3ad70c){if(_0x3ad70c){return _0x7bb70f[_0x29e9('0x22')](_0x46ed3c)['json'](_0x3ad70c);}};}function respondWithFilteredResult(_0x18955d,_0x48dc04){return function(_0x2f5549){if(_0x2f5549){var _0xe86333=_0x2f5549['count'],_0x581fed=_0x48dc04[_0x29e9('0x24')],_0x556751=_0x48dc04[_0x29e9('0x24')]+_0x48dc04[_0x29e9('0x25')],_0x1c7993;if(_0x556751>=_0xe86333){_0x556751=_0xe86333;_0x1c7993=0xc8;}else{_0x1c7993=0xce;}_0x18955d[_0x29e9('0x22')](_0x1c7993);return _0x18955d[_0x29e9('0x26')](_0x29e9('0x27'),_0x581fed+'-'+_0x556751+'/'+_0xe86333)[_0x29e9('0x28')](_0x2f5549);}return null;};}function patchUpdates(_0x41369e){return function(_0x6c3098){try{jsonpatch['apply'](_0x6c3098,_0x41369e,!![]);}catch(_0x1ad939){return BPromise[_0x29e9('0x29')](_0x1ad939);}return _0x6c3098[_0x29e9('0x2a')]();};}function saveUpdates(_0x41213f,_0x5a0522){return function(_0x7ff397){if(_0x7ff397){return _0x7ff397[_0x29e9('0x2b')](_0x41213f)[_0x29e9('0x2c')](function(_0x5723df){return _0x5723df;});}return null;};}function removeEntity(_0x406fc8,_0x350145){return function(_0x4b5849){if(_0x4b5849){return _0x4b5849[_0x29e9('0x2d')]()['then'](function(){var _0x4545d1=_0x4b5849['get']({'plain':!![]});var _0x2e5b1e=_0x29e9('0x2e');return db[_0x29e9('0x2f')][_0x29e9('0x2d')]({'where':{'type':_0x2e5b1e,'resourceId':_0x4545d1['id']}})[_0x29e9('0x2c')](function(){return _0x4b5849;});})[_0x29e9('0x2c')](function(){_0x406fc8[_0x29e9('0x22')](0xcc)[_0x29e9('0x23')]();});}};}function handleEntityNotFound(_0x2fac06,_0x4dfa31){return function(_0x122001){if(!_0x122001){_0x2fac06['sendStatus'](0x194);}return _0x122001;};}function handleError(_0x5ad7f3,_0x49f3f8){_0x49f3f8=_0x49f3f8||0x1f4;return function(_0x22a40f){logger[_0x29e9('0x30')](_0x22a40f['stack']);if(_0x22a40f[_0x29e9('0x31')]){delete _0x22a40f[_0x29e9('0x31')];}_0x5ad7f3['status'](_0x49f3f8)[_0x29e9('0x32')](_0x22a40f);};}exports[_0x29e9('0x33')]=function(_0x485ea0,_0x25a1ae){var _0xfa3d66={},_0x445a2b={},_0x123502={'count':0x0,'rows':[]};var _0x57193a=_[_0x29e9('0x34')](db[_0x29e9('0x35')]['rawAttributes'],function(_0x32da5d){return{'name':_0x32da5d[_0x29e9('0x36')],'type':_0x32da5d[_0x29e9('0x37')]['key']};});_0x445a2b['model']=_[_0x29e9('0x34')](_0x57193a,'name');_0x445a2b[_0x29e9('0x38')]=_['keys'](_0x485ea0['query']);_0x445a2b[_0x29e9('0x39')]=_[_0x29e9('0x3a')](_0x445a2b[_0x29e9('0x3b')],_0x445a2b[_0x29e9('0x38')]);_0xfa3d66[_0x29e9('0x3c')]=_[_0x29e9('0x3a')](_0x445a2b[_0x29e9('0x3b')],qs[_0x29e9('0x3d')](_0x485ea0[_0x29e9('0x38')][_0x29e9('0x3d')]));_0xfa3d66[_0x29e9('0x3c')]=_0xfa3d66['attributes']['length']?_0xfa3d66[_0x29e9('0x3c')]:_0x445a2b['model'];if(!_0x485ea0[_0x29e9('0x38')][_0x29e9('0x3e')](_0x29e9('0x3f'))){_0xfa3d66['limit']=qs[_0x29e9('0x25')](_0x485ea0[_0x29e9('0x38')][_0x29e9('0x25')]);_0xfa3d66['offset']=qs[_0x29e9('0x24')](_0x485ea0['query'][_0x29e9('0x24')]);}_0xfa3d66['order']=qs[_0x29e9('0x40')](_0x485ea0[_0x29e9('0x38')][_0x29e9('0x40')]);_0xfa3d66[_0x29e9('0x41')]=qs[_0x29e9('0x39')](_[_0x29e9('0x42')](_0x485ea0[_0x29e9('0x38')],_0x445a2b[_0x29e9('0x39')]),_0x57193a);if(_0x485ea0[_0x29e9('0x38')][_0x29e9('0x43')]){_0xfa3d66['where']=_[_0x29e9('0x44')](_0xfa3d66[_0x29e9('0x41')],{'$or':_[_0x29e9('0x34')](_0x57193a,function(_0x5a69d7){if(_0x5a69d7['type']!==_0x29e9('0x45')){var _0x475c59={};_0x475c59[_0x5a69d7[_0x29e9('0x31')]]={'$like':'%'+_0x485ea0[_0x29e9('0x38')][_0x29e9('0x43')]+'%'};return _0x475c59;}})});}_0xfa3d66=_[_0x29e9('0x44')]({},_0xfa3d66,_0x485ea0['options']);var _0x2156f9={'where':_0xfa3d66[_0x29e9('0x41')]};return db[_0x29e9('0x35')][_0x29e9('0x46')](_0x2156f9)[_0x29e9('0x2c')](function(_0x2858f9){_0x123502[_0x29e9('0x46')]=_0x2858f9;if(_0x485ea0[_0x29e9('0x38')]['includeAll']){_0xfa3d66['include']=[{'all':!![]}];}return db[_0x29e9('0x35')][_0x29e9('0x47')](_0xfa3d66);})[_0x29e9('0x2c')](function(_0x411482){_0x123502[_0x29e9('0x48')]=_0x411482;return _0x123502;})[_0x29e9('0x2c')](respondWithFilteredResult(_0x25a1ae,_0xfa3d66))[_0x29e9('0x49')](handleError(_0x25a1ae,null));};exports[_0x29e9('0x4a')]=function(_0x49d14f,_0xc6f472){var _0x3f3d6e={'raw':!![],'where':{'id':_0x49d14f[_0x29e9('0x4b')]['id']}},_0xf28f07={};_0xf28f07[_0x29e9('0x3b')]=_[_0x29e9('0x4c')](db[_0x29e9('0x35')][_0x29e9('0x4d')]);_0xf28f07[_0x29e9('0x38')]=_[_0x29e9('0x4c')](_0x49d14f[_0x29e9('0x38')]);_0xf28f07['filters']=_['intersection'](_0xf28f07[_0x29e9('0x3b')],_0xf28f07[_0x29e9('0x38')]);_0x3f3d6e[_0x29e9('0x3c')]=_[_0x29e9('0x3a')](_0xf28f07['model'],qs[_0x29e9('0x3d')](_0x49d14f[_0x29e9('0x38')][_0x29e9('0x3d')]));_0x3f3d6e[_0x29e9('0x3c')]=_0x3f3d6e['attributes'][_0x29e9('0x4e')]?_0x3f3d6e['attributes']:_0xf28f07[_0x29e9('0x3b')];if(_0x49d14f[_0x29e9('0x38')][_0x29e9('0x4f')]){_0x3f3d6e[_0x29e9('0x50')]=[{'all':!![]}];}_0x3f3d6e=_[_0x29e9('0x44')]({},_0x3f3d6e,_0x49d14f[_0x29e9('0x51')]);return db[_0x29e9('0x35')][_0x29e9('0x52')](_0x3f3d6e)[_0x29e9('0x2c')](handleEntityNotFound(_0xc6f472,null))[_0x29e9('0x2c')](respondWithResult(_0xc6f472,null))[_0x29e9('0x49')](handleError(_0xc6f472,null));};exports[_0x29e9('0x53')]=function(_0x54a788,_0x556b8a){return db[_0x29e9('0x35')]['create'](_0x54a788[_0x29e9('0x54')],{})[_0x29e9('0x2c')](function(_0x1a1c28){var _0x1e60d7=_0x54a788[_0x29e9('0x55')][_0x29e9('0x56')]({'plain':!![]});if(!_0x1e60d7)throw new Error(_0x29e9('0x57'));if(_0x1e60d7[_0x29e9('0x58')]===_0x29e9('0x55')){var _0x4854bd=_0x1a1c28[_0x29e9('0x56')]({'plain':!![]});var _0x1ea269=_0x29e9('0x2e');return db[_0x29e9('0x59')][_0x29e9('0x52')]({'where':{'name':_0x1ea269,'userProfileId':_0x1e60d7[_0x29e9('0x5a')]},'raw':!![]})['then'](function(_0x119571){if(_0x119571&&_0x119571[_0x29e9('0x5b')]===0x0){return db[_0x29e9('0x2f')][_0x29e9('0x53')]({'name':_0x4854bd['name'],'resourceId':_0x4854bd['id'],'type':_0x119571[_0x29e9('0x31')],'sectionId':_0x119571['id']},{})[_0x29e9('0x2c')](function(){return _0x1a1c28;});}else{return _0x1a1c28;}})[_0x29e9('0x49')](function(_0x5ef5d6){logger[_0x29e9('0x30')](_0x29e9('0x5c'),_0x5ef5d6);throw _0x5ef5d6;});}return _0x1a1c28;})['then'](respondWithResult(_0x556b8a,0xc9))[_0x29e9('0x49')](handleError(_0x556b8a,null));};exports[_0x29e9('0x2b')]=function(_0x441385,_0x5337c5){if(_0x441385[_0x29e9('0x54')]['id']){delete _0x441385[_0x29e9('0x54')]['id'];}return db['OpenchannelQueue'][_0x29e9('0x52')]({'where':{'id':_0x441385[_0x29e9('0x4b')]['id']}})[_0x29e9('0x2c')](handleEntityNotFound(_0x5337c5,null))[_0x29e9('0x2c')](saveUpdates(_0x441385[_0x29e9('0x54')],null))[_0x29e9('0x2c')](respondWithResult(_0x5337c5,null))[_0x29e9('0x49')](handleError(_0x5337c5,null));};exports[_0x29e9('0x2d')]=function(_0x199f65,_0x2be916){return db['OpenchannelQueue'][_0x29e9('0x52')]({'where':{'id':_0x199f65['params']['id']}})['then'](handleEntityNotFound(_0x2be916,null))[_0x29e9('0x2c')](removeEntity(_0x2be916,null))['catch'](handleError(_0x2be916,null));};exports['describe']=function(_0x30abeb,_0x17cc8e){return db[_0x29e9('0x35')]['describe']()[_0x29e9('0x2c')](respondWithResult(_0x17cc8e,null))[_0x29e9('0x49')](handleError(_0x17cc8e,null));};exports[_0x29e9('0x5d')]=function(_0x394fe9,_0x15269c,_0x289edc){var _0x2a9f42={'raw':!![],'where':{}},_0x38f423={},_0x459bcd;return db['OpenchannelQueue'][_0x29e9('0x5e')]({'where':{'id':_0x394fe9[_0x29e9('0x4b')]['id']}})['then'](handleEntityNotFound(_0x15269c,null))[_0x29e9('0x2c')](function(_0x4f0825){if(_0x4f0825){_0x459bcd=_0x4f0825[_0x29e9('0x56')]({'plain':!![]});_0x38f423[_0x29e9('0x3b')]=_['keys'](db[_0x29e9('0x5f')][_0x29e9('0x4d')]);_0x38f423['query']=_[_0x29e9('0x4c')](_0x394fe9['query']);_0x38f423[_0x29e9('0x39')]=_[_0x29e9('0x3a')](_0x38f423['model'],_0x38f423[_0x29e9('0x38')]);_0x2a9f42['attributes']=_['intersection'](_0x38f423[_0x29e9('0x3b')],qs[_0x29e9('0x3d')](_0x394fe9[_0x29e9('0x38')][_0x29e9('0x3d')]));_0x2a9f42['attributes']=_0x2a9f42['attributes']['length']?_0x2a9f42[_0x29e9('0x3c')]:_0x38f423[_0x29e9('0x3b')];if(!_0x394fe9[_0x29e9('0x38')]['hasOwnProperty'](_0x29e9('0x3f'))){_0x2a9f42[_0x29e9('0x25')]=qs[_0x29e9('0x25')](_0x394fe9['query']['limit']);_0x2a9f42[_0x29e9('0x24')]=qs[_0x29e9('0x24')](_0x394fe9['query'][_0x29e9('0x24')]);}_0x2a9f42[_0x29e9('0x60')]=qs[_0x29e9('0x40')](_0x394fe9['query'][_0x29e9('0x40')]);_0x2a9f42['where']=qs[_0x29e9('0x39')](_[_0x29e9('0x42')](_0x394fe9[_0x29e9('0x38')],_0x38f423['filters']));_0x2a9f42['where'][_0x29e9('0x61')]=_0x4f0825['id'];if(_0x394fe9[_0x29e9('0x38')][_0x29e9('0x43')]){_0x2a9f42[_0x29e9('0x41')]=_['merge'](_0x2a9f42[_0x29e9('0x41')],{'$or':_[_0x29e9('0x34')](_0x2a9f42[_0x29e9('0x3c')],function(_0x160440){var _0x3d8170={};_0x3d8170[_0x160440]={'$like':'%'+_0x394fe9['query'][_0x29e9('0x43')]+'%'};return _0x3d8170;})});}_0x2a9f42=_['merge']({},_0x2a9f42,_0x394fe9['options']);return db[_0x29e9('0x5f')][_0x29e9('0x47')](_0x2a9f42);}})[_0x29e9('0x2c')](function(_0x1460ab){if(_0x1460ab){return db[_0x29e9('0x62')]['findAndCountAll']({'where':{'id':_[_0x29e9('0x34')](_0x1460ab,_0x29e9('0x63')),'role':_0x29e9('0x64')},'attributes':['id',_0x29e9('0x31'),_0x29e9('0x65'),'updatedAt',_0x29e9('0x66')]});}})[_0x29e9('0x2c')](function(_0x26caab){if(_0x26caab){return{'count':_0x26caab['count'],'rows':_[_0x29e9('0x34')](_0x26caab[_0x29e9('0x48')],function(_0x3f11cf){return{'membername':_0x3f11cf['name'],'UserId':_0x3f11cf['id'],'queue_name':_0x459bcd[_0x29e9('0x31')],'OpenchannelQueueId':_0x459bcd['id'],'interface':util[_0x29e9('0x67')](_0x29e9('0x68'),_0x29e9('0x69'),_0x3f11cf[_0x29e9('0x31')]),'penalty':0x0,'paused':_0x3f11cf[_0x29e9('0x65')],'createdAt':_0x3f11cf[_0x29e9('0x66')],'updatedAt':_0x3f11cf[_0x29e9('0x6a')]};})};}else{return{'count':0x0,'rows':[]};}})[_0x29e9('0x2c')](respondWithFilteredResult(_0x15269c,_0x2a9f42))['catch'](handleError(_0x15269c,null));};exports['getTeams']=function(_0xeaf4b7,_0x4f8686,_0x37c38c){var _0x39f8b9={};var _0x357ba8={};var _0x306076;var _0x4a3dc1;return db[_0x29e9('0x35')]['findOne']({'where':{'id':_0xeaf4b7[_0x29e9('0x4b')]['id']}})[_0x29e9('0x2c')](handleEntityNotFound(_0x4f8686,null))['then'](function(_0x40b82e){if(_0x40b82e){_0x306076=_0x40b82e;_0x357ba8[_0x29e9('0x3b')]=_[_0x29e9('0x4c')](db[_0x29e9('0x6b')]['rawAttributes']);_0x357ba8[_0x29e9('0x38')]=_[_0x29e9('0x4c')](_0xeaf4b7['query']);_0x357ba8[_0x29e9('0x39')]=_[_0x29e9('0x3a')](_0x357ba8['model'],_0x357ba8[_0x29e9('0x38')]);_0x39f8b9[_0x29e9('0x3c')]=_[_0x29e9('0x3a')](_0x357ba8[_0x29e9('0x3b')],qs['fields'](_0xeaf4b7[_0x29e9('0x38')][_0x29e9('0x3d')]));_0x39f8b9[_0x29e9('0x3c')]=_0x39f8b9[_0x29e9('0x3c')][_0x29e9('0x4e')]?_0x39f8b9[_0x29e9('0x3c')]:_0x357ba8[_0x29e9('0x3b')];_0x39f8b9['order']=qs[_0x29e9('0x40')](_0xeaf4b7[_0x29e9('0x38')]['sort']);_0x39f8b9[_0x29e9('0x41')]=qs['filters'](_[_0x29e9('0x42')](_0xeaf4b7['query'],_0x357ba8['filters']));if(_0xeaf4b7[_0x29e9('0x38')][_0x29e9('0x43')]){_0x39f8b9[_0x29e9('0x41')]=_[_0x29e9('0x44')](_0x39f8b9[_0x29e9('0x41')],{'$or':_[_0x29e9('0x34')](_0x39f8b9['attributes'],function(_0x31cfd2){var _0x2dd211={};_0x2dd211[_0x31cfd2]={'$like':'%'+_0xeaf4b7['query']['filter']+'%'};return _0x2dd211;})});}_0x39f8b9=_[_0x29e9('0x44')]({},_0x39f8b9,_0xeaf4b7[_0x29e9('0x51')]);return _0x306076[_0x29e9('0x6c')](_0x39f8b9);}})[_0x29e9('0x2c')](function(_0x109fb7){if(_0x109fb7){_0x4a3dc1=_0x109fb7['length'];if(!_0xeaf4b7[_0x29e9('0x38')][_0x29e9('0x3e')](_0x29e9('0x3f'))){_0x39f8b9['limit']=qs['limit'](_0xeaf4b7[_0x29e9('0x38')][_0x29e9('0x25')]);_0x39f8b9[_0x29e9('0x24')]=qs[_0x29e9('0x24')](_0xeaf4b7['query']['offset']);}return _0x306076[_0x29e9('0x6c')](_0x39f8b9);}})['then'](function(_0x59f705){if(_0x59f705){return _0x59f705?{'count':_0x4a3dc1,'rows':_0x59f705}:null;}})[_0x29e9('0x2c')](respondWithResult(_0x4f8686,null))['catch'](handleError(_0x4f8686,null));};exports[_0x29e9('0x6d')]=function(_0x21b9ad,_0xcf8dc4,_0x134b0a){var _0x490266=_0x21b9ad[_0x29e9('0x54')][_0x29e9('0x6e')];return db[_0x29e9('0x6b')][_0x29e9('0x47')]({'where':{'id':_0x490266},'attributes':['id'],'include':[{'model':db[_0x29e9('0x62')],'as':'Agents','attributes':['id','name',_0x29e9('0x6f'),_0x29e9('0x70'),'interface'],'raw':!![]}]})[_0x29e9('0x2c')](function(_0x55634e){if(_0x55634e){var _0x413d7e=_['flatMap'](_0x55634e,function(_0x351790){var _0x47f3c1=_0x351790[_0x29e9('0x56')]({'plain':!![]});return _0x47f3c1['Agents'];});return db['OpenchannelQueue'][_0x29e9('0x52')]({'where':{'id':_0x21b9ad[_0x29e9('0x4b')]['id']}})[_0x29e9('0x2c')](function(_0x68d7ac){return db[_0x29e9('0x71')][_0x29e9('0x72')](function(_0x5d7184){return _0x68d7ac[_0x29e9('0x6d')](_0x490266,{'transaction':_0x5d7184})[_0x29e9('0x2c')](function(){return BPromise[_0x29e9('0x73')](_0x413d7e,function(_0x182977){return db[_0x29e9('0x5f')][_0x29e9('0x74')]({'where':{'UserId':_0x182977['id'],'OpenchannelQueueId':_0x21b9ad[_0x29e9('0x4b')]['id']},'transaction':_0x5d7184});});})['then'](function(){_0x413d7e[_0x29e9('0x75')](function(_0x40bfc8){socket[_0x29e9('0x76')](_0x29e9('0x77'),{'UserId':_0x40bfc8['id'],'OpenchannelQueueId':_0x68d7ac['id']});});});});});}})[_0x29e9('0x2c')](respondWithStatusCode(_0xcf8dc4,null))['catch'](handleError(_0xcf8dc4,null));};exports[_0x29e9('0x78')]=function(_0x568945,_0x1f5cd3,_0x323cac){return db[_0x29e9('0x6b')][_0x29e9('0x47')]({'where':{'id':_0x568945[_0x29e9('0x38')]['ids']},'attributes':['id'],'include':[{'model':db['User'],'as':_0x29e9('0x79'),'attributes':['id'],'raw':!![]}]})[_0x29e9('0x2c')](handleEntityNotFound(_0x1f5cd3,null))[_0x29e9('0x2c')](function(_0x190438){var _0x33ec5c=_[_0x29e9('0x34')](_0x190438,'id');var _0x3fe8b6=[];var _0x351d6d=[];var _0xbdc658=squel['select']();_0xbdc658[_0x29e9('0x7a')]('tq.TeamId')[_0x29e9('0x7b')](_0x29e9('0x7c'),'tq')['join'](_0x29e9('0x7d'),'ut','ut.TeamId\x20=\x20tq.TeamId')['where'](_0x29e9('0x7e'),_0x568945[_0x29e9('0x4b')]['id']);for(var _0x2af32b=0x0;_0x2af32b<_0x190438[_0x29e9('0x4e')];_0x2af32b+=0x1){let _0x39fd2e=_0x190438[_0x2af32b];for(var _0x2bd68c=0x0;_0x2bd68c<_0x39fd2e['Agents']['length'];_0x2bd68c+=0x1){let _0x8fb7f5=_0x39fd2e[_0x29e9('0x79')][_0x2bd68c];var _0x11c078=_0xbdc658[_0x29e9('0x7f')]();_0x11c078['where'](_0x29e9('0x80'),_0x8fb7f5['id']);_0x351d6d[_0x29e9('0x81')](db['sequelize'][_0x29e9('0x38')](_0x11c078[_0x29e9('0x82')](),{'type':db[_0x29e9('0x71')]['QueryTypes'][_0x29e9('0x83')]})[_0x29e9('0x2c')](function(_0x57f27b){if(_0x57f27b[_0x29e9('0x4e')]===0x1){return _0x8fb7f5['id'];}else{var _0x1e893b=_[_0x29e9('0x84')](_[_0x29e9('0x34')](_0x57f27b,_0x29e9('0x85')),function(_0x11b126){return _[_0x29e9('0x86')](_0x33ec5c,_0x11b126);});if(_0x1e893b){return _0x8fb7f5['id'];}}}));}}return BPromise[_0x29e9('0x87')](_0x351d6d)[_0x29e9('0x2c')](function(_0x5646ca){_0x3fe8b6=_(_0x3fe8b6)['union'](_0x5646ca)['compact']()['value']();return db[_0x29e9('0x35')][_0x29e9('0x52')]({'where':{'id':_0x568945['params']['id']}})[_0x29e9('0x2c')](function(_0x119c90){return db[_0x29e9('0x71')][_0x29e9('0x72')](function(_0x356f24){return _0x119c90[_0x29e9('0x78')](_0x568945['query'][_0x29e9('0x6e')],{'transaction':_0x356f24})[_0x29e9('0x2c')](function(){if(!_[_0x29e9('0x88')](_0x3fe8b6)){return _0x119c90[_0x29e9('0x89')](_0x3fe8b6,{'transaction':_0x356f24});}})[_0x29e9('0x2c')](function(){_0x3fe8b6[_0x29e9('0x75')](function(_0x32d4c2){socket[_0x29e9('0x76')](_0x29e9('0x8a'),{'UserId':_0x32d4c2,'OpenchannelQueueId':_0x119c90['id']});});});});});});})[_0x29e9('0x2c')](respondWithStatusCode(_0x1f5cd3,null))[_0x29e9('0x49')](handleError(_0x1f5cd3,null));};exports[_0x29e9('0x8b')]=function(_0x253a26,_0x13423e,_0x2c9b9d){return db[_0x29e9('0x35')]['find']({'where':{'id':_0x253a26['params']['id']}})['then'](handleEntityNotFound(_0x13423e,null))[_0x29e9('0x2c')](function(_0x5a3370){if(_0x5a3370){return _0x5a3370[_0x29e9('0x8b')](_0x253a26['body']['ids'],_[_0x29e9('0x8c')](_0x253a26[_0x29e9('0x54')],[_0x29e9('0x6e'),'id'])||{})[_0x29e9('0x8d')](function(_0x1bbce1){for(var _0x5a84d3=0x0;_0x5a84d3<_0x253a26[_0x29e9('0x54')][_0x29e9('0x6e')][_0x29e9('0x4e')];_0x5a84d3+=0x1){socket[_0x29e9('0x76')](_0x29e9('0x77'),{'UserId':_0x253a26[_0x29e9('0x54')][_0x29e9('0x6e')][_0x5a84d3],'OpenchannelQueueId':_0x253a26['params']['id']});}return _0x1bbce1;});}})[_0x29e9('0x2c')](respondWithResult(_0x13423e,null))['catch'](handleError(_0x13423e,null));};exports['removeAgents']=function(_0x51f1cc,_0x4852a6,_0x28969f){return db[_0x29e9('0x35')][_0x29e9('0x52')]({'where':{'id':_0x51f1cc[_0x29e9('0x4b')]['id']}})['then'](handleEntityNotFound(_0x4852a6,null))[_0x29e9('0x2c')](function(_0xfba854){if(_0xfba854){return _0xfba854[_0x29e9('0x89')](_0x51f1cc[_0x29e9('0x38')][_0x29e9('0x6e')])[_0x29e9('0x2c')](function(){if(_[_0x29e9('0x8e')](_0x51f1cc['query'][_0x29e9('0x6e')])){for(var _0x5345bc=0x0;_0x5345bc<_0x51f1cc[_0x29e9('0x38')][_0x29e9('0x6e')][_0x29e9('0x4e')];_0x5345bc+=0x1){socket[_0x29e9('0x76')](_0x29e9('0x8a'),{'UserId':Number(_0x51f1cc[_0x29e9('0x38')][_0x29e9('0x6e')][_0x5345bc]),'OpenchannelQueueId':Number(_0x51f1cc['params']['id'])});}}else{socket[_0x29e9('0x76')](_0x29e9('0x8a'),{'UserId':Number(_0x51f1cc['query'][_0x29e9('0x6e')]),'OpenchannelQueueId':Number(_0x51f1cc[_0x29e9('0x4b')]['id'])});}});}})[_0x29e9('0x2c')](respondWithStatusCode(_0x4852a6,null))[_0x29e9('0x49')](handleError(_0x4852a6,null));};exports['getAgents']=function(_0x5d7c52,_0x3c8b5b,_0x56716d){var _0x17a606={};var _0x1a3d56={};var _0x4f21c0;var _0x4d0fa1;return db['OpenchannelQueue'][_0x29e9('0x5e')]({'where':{'id':_0x5d7c52[_0x29e9('0x4b')]['id']}})[_0x29e9('0x2c')](handleEntityNotFound(_0x3c8b5b,null))[_0x29e9('0x2c')](function(_0x25e4e4){if(_0x25e4e4){_0x4f21c0=_0x25e4e4;_0x1a3d56['model']=_['keys'](db[_0x29e9('0x62')][_0x29e9('0x4d')]);_0x1a3d56[_0x29e9('0x38')]=_['keys'](_0x5d7c52[_0x29e9('0x38')]);_0x1a3d56[_0x29e9('0x39')]=_[_0x29e9('0x3a')](_0x1a3d56[_0x29e9('0x3b')],_0x1a3d56[_0x29e9('0x38')]);_0x17a606[_0x29e9('0x3c')]=_[_0x29e9('0x3a')](_0x1a3d56['model'],qs[_0x29e9('0x3d')](_0x5d7c52[_0x29e9('0x38')]['fields']));_0x17a606[_0x29e9('0x3c')]=_0x17a606['attributes'][_0x29e9('0x4e')]?_0x17a606[_0x29e9('0x3c')]:_0x1a3d56[_0x29e9('0x3b')];_0x17a606[_0x29e9('0x60')]=qs['sort'](_0x5d7c52['query'][_0x29e9('0x40')]);_0x17a606['where']=qs[_0x29e9('0x39')](_['pick'](_0x5d7c52[_0x29e9('0x38')],_0x1a3d56[_0x29e9('0x39')]));if(_0x5d7c52[_0x29e9('0x38')][_0x29e9('0x43')]){_0x17a606[_0x29e9('0x41')]=_[_0x29e9('0x44')](_0x17a606[_0x29e9('0x41')],{'$or':_[_0x29e9('0x34')](_0x17a606[_0x29e9('0x3c')],function(_0x30b62a){var _0x14f0d9={};_0x14f0d9[_0x30b62a]={'$like':'%'+_0x5d7c52[_0x29e9('0x38')][_0x29e9('0x43')]+'%'};return _0x14f0d9;})});}_0x17a606=_['merge']({},_0x17a606,_0x5d7c52['options']);return _0x4f21c0[_0x29e9('0x8f')](_0x17a606);}})[_0x29e9('0x2c')](function(_0x43e281){if(_0x43e281){_0x4d0fa1=_0x43e281[_0x29e9('0x4e')];if(!_0x5d7c52[_0x29e9('0x38')]['hasOwnProperty'](_0x29e9('0x3f'))){_0x17a606[_0x29e9('0x25')]=qs['limit'](_0x5d7c52[_0x29e9('0x38')][_0x29e9('0x25')]);_0x17a606[_0x29e9('0x24')]=qs['offset'](_0x5d7c52[_0x29e9('0x38')][_0x29e9('0x24')]);}return _0x4f21c0[_0x29e9('0x8f')](_0x17a606);}})[_0x29e9('0x2c')](function(_0x4a77ac){if(_0x4a77ac){return _0x4a77ac?{'count':_0x4d0fa1,'rows':_0x4a77ac}:null;}})[_0x29e9('0x2c')](respondWithResult(_0x3c8b5b,null))[_0x29e9('0x49')](handleError(_0x3c8b5b,null));};