Built motion from commit (unavailable).|2.5.29
[motion2.git] / server / api / team / team.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 _0x1020=['Queue','capitalize','addQueues','Sequelize','Queues','ids','removeQueues','findOne','addAgents','Mail','Sms','Fax','sequelize','transaction','Voice','penalty','QueueId','TeamVoiceQueue','User','findOrCreate','emit','online','voicePause','interface','isNil','format','SIP/%s','all','spread','removeAgents','Chat','Openchannel','Whatsapp','Queue:remove','UserVoiceQueueRt','getAgents','eml-format','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','fs-extra','squel','crypto','jsforce','querystring','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','localhost','socket.io-emitter','register','sendStatus','status','end','offset','undefined','limit','count','set','json','apply','save','update','then','destroy','get','Teams','UserProfileResource','error','stack','name','map','Team','rawAttributes','fieldName','type','key','model','keys','query','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','VIRTUAL','merge','options','includeAll','include','catch','show','params','find','create','body','user','UserProfileSection','autoAssociation','getQueues','channel','isValidChannel','ValidationError','Unknown\x20channel','toLowerCase'];(function(_0x581fa7,_0x9ce527){var _0x151fa1=function(_0x119702){while(--_0x119702){_0x581fa7['push'](_0x581fa7['shift']());}};_0x151fa1(++_0x9ce527);}(_0x1020,0x1a4));var _0x0102=function(_0x1c289a,_0x277fe7){_0x1c289a=_0x1c289a-0x0;var _0x28d68e=_0x1020[_0x1c289a];return _0x28d68e;};'use strict';var emlformat=require(_0x0102('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x0102('0x1'));var jsonpatch=require(_0x0102('0x2'));var rp=require(_0x0102('0x3'));var moment=require(_0x0102('0x4'));var BPromise=require(_0x0102('0x5'));var Mustache=require(_0x0102('0x6'));var util=require(_0x0102('0x7'));var path=require(_0x0102('0x8'));var sox=require(_0x0102('0x9'));var csv=require(_0x0102('0xa'));var ejs=require(_0x0102('0xb'));var fs=require('fs');var fs_extra=require(_0x0102('0xc'));var _=require('lodash');var squel=require(_0x0102('0xd'));var crypto=require(_0x0102('0xe'));var jsforce=require(_0x0102('0xf'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require(_0x0102('0x10'));var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0x0102('0x11'));var qs=require(_0x0102('0x12'));var as=require(_0x0102('0x13'));var hardwareService=require(_0x0102('0x14'));var logger=require(_0x0102('0x15'))('api');var utils=require(_0x0102('0x16'));var config=require(_0x0102('0x17'));var licenseUtil=require(_0x0102('0x18'));var db=require(_0x0102('0x19'))['db'];config[_0x0102('0x1a')]=_[_0x0102('0x1b')](config[_0x0102('0x1a')],{'host':_0x0102('0x1c'),'port':0x18eb});var socket=require(_0x0102('0x1d'))(new Redis(config['redis']));require('./team.socket')[_0x0102('0x1e')](socket);function respondWithStatusCode(_0x20f557,_0x3d0f4b){_0x3d0f4b=_0x3d0f4b||0xcc;return function(_0x21d392){if(_0x21d392){return _0x20f557[_0x0102('0x1f')](_0x3d0f4b);}return _0x20f557[_0x0102('0x20')](_0x3d0f4b)[_0x0102('0x21')]();};}function respondWithResult(_0x2e0c35,_0x3b7253){_0x3b7253=_0x3b7253||0xc8;return function(_0x2493fe){if(_0x2493fe){return _0x2e0c35[_0x0102('0x20')](_0x3b7253)['json'](_0x2493fe);}};}function respondWithFilteredResult(_0x2ca87b,_0x560b74){return function(_0x58ba05){if(_0x58ba05){var _0x4f3266=typeof _0x560b74[_0x0102('0x22')]===_0x0102('0x23')&&typeof _0x560b74[_0x0102('0x24')]===_0x0102('0x23');var _0x1da56c=_0x58ba05[_0x0102('0x25')];var _0x74533b=_0x4f3266?0x0:_0x560b74[_0x0102('0x22')];var _0x3da475=_0x4f3266?_0x58ba05[_0x0102('0x25')]:_0x560b74[_0x0102('0x22')]+_0x560b74[_0x0102('0x24')];var _0x1cc7bb;if(_0x3da475>=_0x1da56c){_0x3da475=_0x1da56c;_0x1cc7bb=0xc8;}else{_0x1cc7bb=0xce;}_0x2ca87b[_0x0102('0x20')](_0x1cc7bb);return _0x2ca87b[_0x0102('0x26')]('Content-Range',_0x74533b+'-'+_0x3da475+'/'+_0x1da56c)[_0x0102('0x27')](_0x58ba05);}return null;};}function patchUpdates(_0x2dc5f5){return function(_0x34cb74){try{jsonpatch[_0x0102('0x28')](_0x34cb74,_0x2dc5f5,!![]);}catch(_0x2787aa){return BPromise['reject'](_0x2787aa);}return _0x34cb74[_0x0102('0x29')]();};}function saveUpdates(_0x3d0fa7,_0x3d33db){return function(_0x11d9f4){if(_0x11d9f4){return _0x11d9f4[_0x0102('0x2a')](_0x3d0fa7)[_0x0102('0x2b')](function(_0x5ea683){return _0x5ea683;});}return null;};}function removeEntity(_0x6938fc,_0x42e908){return function(_0x462eb2){if(_0x462eb2){return _0x462eb2[_0x0102('0x2c')]()['then'](function(){var _0x2013c=_0x462eb2[_0x0102('0x2d')]({'plain':!![]});var _0xe613b5=_0x0102('0x2e');return db[_0x0102('0x2f')]['destroy']({'where':{'type':_0xe613b5,'resourceId':_0x2013c['id']}})[_0x0102('0x2b')](function(){return _0x462eb2;});})[_0x0102('0x2b')](function(){_0x6938fc[_0x0102('0x20')](0xcc)[_0x0102('0x21')]();});}};}function handleEntityNotFound(_0x5944de,_0x3e5d95){return function(_0x28ddb5){if(!_0x28ddb5){_0x5944de[_0x0102('0x1f')](0x194);}return _0x28ddb5;};}function handleError(_0x5116bb,_0x51ee86){_0x51ee86=_0x51ee86||0x1f4;return function(_0x4fbc76){logger[_0x0102('0x30')](_0x4fbc76[_0x0102('0x31')]);if(_0x4fbc76['name']){delete _0x4fbc76[_0x0102('0x32')];}_0x5116bb[_0x0102('0x20')](_0x51ee86)['send'](_0x4fbc76);};}exports['index']=function(_0x4ec0a1,_0xaeae20){var _0x15aba7={},_0x5c854b={},_0x3fb9df={'count':0x0,'rows':[]};var _0x37620b=_[_0x0102('0x33')](db[_0x0102('0x34')][_0x0102('0x35')],function(_0x38def2){return{'name':_0x38def2[_0x0102('0x36')],'type':_0x38def2[_0x0102('0x37')][_0x0102('0x38')]};});_0x5c854b[_0x0102('0x39')]=_[_0x0102('0x33')](_0x37620b,'name');_0x5c854b['query']=_[_0x0102('0x3a')](_0x4ec0a1[_0x0102('0x3b')]);_0x5c854b[_0x0102('0x3c')]=_[_0x0102('0x3d')](_0x5c854b[_0x0102('0x39')],_0x5c854b['query']);_0x15aba7[_0x0102('0x3e')]=_[_0x0102('0x3d')](_0x5c854b[_0x0102('0x39')],qs['fields'](_0x4ec0a1[_0x0102('0x3b')][_0x0102('0x3f')]));_0x15aba7[_0x0102('0x3e')]=_0x15aba7[_0x0102('0x3e')][_0x0102('0x40')]?_0x15aba7[_0x0102('0x3e')]:_0x5c854b[_0x0102('0x39')];if(!_0x4ec0a1[_0x0102('0x3b')][_0x0102('0x41')](_0x0102('0x42'))){_0x15aba7[_0x0102('0x24')]=qs[_0x0102('0x24')](_0x4ec0a1[_0x0102('0x3b')]['limit']);_0x15aba7[_0x0102('0x22')]=qs[_0x0102('0x22')](_0x4ec0a1[_0x0102('0x3b')][_0x0102('0x22')]);}_0x15aba7[_0x0102('0x43')]=qs['sort'](_0x4ec0a1[_0x0102('0x3b')][_0x0102('0x44')]);_0x15aba7[_0x0102('0x45')]=qs['filters'](_[_0x0102('0x46')](_0x4ec0a1[_0x0102('0x3b')],_0x5c854b[_0x0102('0x3c')]),_0x37620b);if(_0x4ec0a1[_0x0102('0x3b')][_0x0102('0x47')]){_0x15aba7[_0x0102('0x45')]=_['merge'](_0x15aba7['where'],{'$or':_[_0x0102('0x33')](_0x37620b,function(_0x39ba70){if(_0x39ba70['type']!==_0x0102('0x48')){var _0x2cf876={};_0x2cf876[_0x39ba70[_0x0102('0x32')]]={'$like':'%'+_0x4ec0a1[_0x0102('0x3b')][_0x0102('0x47')]+'%'};return _0x2cf876;}})});}_0x15aba7=_[_0x0102('0x49')]({},_0x15aba7,_0x4ec0a1[_0x0102('0x4a')]);var _0x3b0171={'where':_0x15aba7[_0x0102('0x45')]};return db[_0x0102('0x34')][_0x0102('0x25')](_0x3b0171)['then'](function(_0x2743e4){_0x3fb9df['count']=_0x2743e4;if(_0x4ec0a1[_0x0102('0x3b')][_0x0102('0x4b')]){_0x15aba7[_0x0102('0x4c')]=[{'all':!![]}];}return db[_0x0102('0x34')]['findAll'](_0x15aba7);})[_0x0102('0x2b')](function(_0x3607a6){_0x3fb9df['rows']=_0x3607a6;return _0x3fb9df;})[_0x0102('0x2b')](respondWithFilteredResult(_0xaeae20,_0x15aba7))[_0x0102('0x4d')](handleError(_0xaeae20,null));};exports[_0x0102('0x4e')]=function(_0x35040a,_0xb78550){var _0x5cbd34={'raw':![],'where':{'id':_0x35040a[_0x0102('0x4f')]['id']}},_0x230005={};_0x230005[_0x0102('0x39')]=_[_0x0102('0x3a')](db[_0x0102('0x34')]['rawAttributes']);_0x230005[_0x0102('0x3b')]=_['keys'](_0x35040a['query']);_0x230005[_0x0102('0x3c')]=_[_0x0102('0x3d')](_0x230005['model'],_0x230005[_0x0102('0x3b')]);_0x5cbd34[_0x0102('0x3e')]=_[_0x0102('0x3d')](_0x230005[_0x0102('0x39')],qs[_0x0102('0x3f')](_0x35040a['query'][_0x0102('0x3f')]));_0x5cbd34[_0x0102('0x3e')]=_0x5cbd34[_0x0102('0x3e')][_0x0102('0x40')]?_0x5cbd34['attributes']:_0x230005[_0x0102('0x39')];if(_0x35040a[_0x0102('0x3b')][_0x0102('0x4b')]){_0x5cbd34[_0x0102('0x4c')]=[{'all':!![]}];}_0x5cbd34=_[_0x0102('0x49')]({},_0x5cbd34,_0x35040a[_0x0102('0x4a')]);return db[_0x0102('0x34')][_0x0102('0x50')](_0x5cbd34)[_0x0102('0x2b')](handleEntityNotFound(_0xb78550,null))[_0x0102('0x2b')](respondWithResult(_0xb78550,null))[_0x0102('0x4d')](handleError(_0xb78550,null));};exports[_0x0102('0x51')]=function(_0x575862,_0x4ee019){return db[_0x0102('0x34')][_0x0102('0x51')](_0x575862[_0x0102('0x52')],{})['then'](function(_0x14c812){var _0x5b43f7=_0x575862['user'][_0x0102('0x2d')]({'plain':!![]});if(!_0x5b43f7)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x5b43f7['role']===_0x0102('0x53')){var _0x33cf95=_0x14c812[_0x0102('0x2d')]({'plain':!![]});var _0xf3e903=_0x0102('0x2e');return db[_0x0102('0x54')][_0x0102('0x50')]({'where':{'name':_0xf3e903,'userProfileId':_0x5b43f7['userProfileId']},'raw':!![]})['then'](function(_0x17bb0b){if(_0x17bb0b&&_0x17bb0b[_0x0102('0x55')]===0x0){return db[_0x0102('0x2f')][_0x0102('0x51')]({'name':_0x33cf95[_0x0102('0x32')],'resourceId':_0x33cf95['id'],'type':_0x17bb0b[_0x0102('0x32')],'sectionId':_0x17bb0b['id']},{})[_0x0102('0x2b')](function(){return _0x14c812;});}else{return _0x14c812;}})[_0x0102('0x4d')](function(_0x393a1f){logger[_0x0102('0x30')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x393a1f);throw _0x393a1f;});}return _0x14c812;})[_0x0102('0x2b')](respondWithResult(_0x4ee019,0xc9))['catch'](handleError(_0x4ee019,null));};exports[_0x0102('0x2a')]=function(_0x8af559,_0x3c9001){if(_0x8af559['body']['id']){delete _0x8af559[_0x0102('0x52')]['id'];}return db[_0x0102('0x34')]['find']({'where':{'id':_0x8af559[_0x0102('0x4f')]['id']}})[_0x0102('0x2b')](handleEntityNotFound(_0x3c9001,null))[_0x0102('0x2b')](saveUpdates(_0x8af559[_0x0102('0x52')],null))[_0x0102('0x2b')](respondWithResult(_0x3c9001,null))[_0x0102('0x4d')](handleError(_0x3c9001,null));};exports['destroy']=function(_0x3a35b3,_0x46f204){return db[_0x0102('0x34')][_0x0102('0x50')]({'where':{'id':_0x3a35b3[_0x0102('0x4f')]['id']}})[_0x0102('0x2b')](handleEntityNotFound(_0x46f204,null))[_0x0102('0x2b')](removeEntity(_0x46f204,null))[_0x0102('0x4d')](handleError(_0x46f204,null));};exports[_0x0102('0x56')]=function(_0x4b3571,_0x4cfc09,_0x55e8c0){return db[_0x0102('0x34')]['findOne']({'where':{'id':_0x4b3571[_0x0102('0x4f')]['id']}})['then'](handleEntityNotFound(_0x4cfc09,null))[_0x0102('0x2b')](function(_0x22b2bd){if(!_0x4b3571[_0x0102('0x3b')][_0x0102('0x57')]||!utils[_0x0102('0x58')](_0x4b3571[_0x0102('0x3b')]['channel'])){throw new db['Sequelize'][(_0x0102('0x59'))](_0x0102('0x5a'));}var _0x20f068={};var _0xa60117={};_0xa60117[_0x0102('0x39')]=_[_0x0102('0x3a')](db[_['capitalize'](_0x4b3571['query']['channel'][_0x0102('0x5b')]())+_0x0102('0x5c')][_0x0102('0x35')]);_0xa60117['query']=_['keys'](_0x4b3571[_0x0102('0x3b')]);_0xa60117[_0x0102('0x3c')]=_['intersection'](_0xa60117[_0x0102('0x39')],_0xa60117[_0x0102('0x3b')]);_0x20f068[_0x0102('0x3e')]=_[_0x0102('0x3d')](_0xa60117[_0x0102('0x39')],qs['fields'](_0x4b3571[_0x0102('0x3b')][_0x0102('0x3f')]));_0x20f068[_0x0102('0x3e')]=_0x20f068['attributes'][_0x0102('0x40')]?_0x20f068[_0x0102('0x3e')]:_0xa60117[_0x0102('0x39')];_0x20f068[_0x0102('0x24')]=qs[_0x0102('0x24')](_0x4b3571['query'][_0x0102('0x24')]);_0x20f068[_0x0102('0x22')]=qs['offset'](_0x4b3571[_0x0102('0x3b')]['offset']);_0x20f068[_0x0102('0x43')]=qs['sort'](_0x4b3571['query']['sort']);_0x20f068[_0x0102('0x45')]=qs[_0x0102('0x3c')](_['pick'](_0x4b3571[_0x0102('0x3b')],_0xa60117[_0x0102('0x3c')]));_0x20f068=_[_0x0102('0x49')]({},_0x20f068,_0x4b3571[_0x0102('0x4a')]);return _0x22b2bd[_0x0102('0x2d')+_[_0x0102('0x5d')](_0x4b3571[_0x0102('0x3b')][_0x0102('0x57')][_0x0102('0x5b')]())+'Queues'](_0x20f068);})[_0x0102('0x2b')](respondWithResult(_0x4cfc09,null))[_0x0102('0x4d')](handleError(_0x4cfc09,null));};exports[_0x0102('0x5e')]=function(_0xfdb1e4,_0x20ec50,_0x24dfdb){return db[_0x0102('0x34')]['findOne']({'where':{'id':_0xfdb1e4['params']['id']}})[_0x0102('0x2b')](function(_0x29b26a){if(_0x29b26a){if(!_0xfdb1e4[_0x0102('0x52')][_0x0102('0x57')]||!utils[_0x0102('0x58')](_0xfdb1e4['body'][_0x0102('0x57')])){throw new db[(_0x0102('0x5f'))][(_0x0102('0x59'))]('Unknown\x20channel');}return _0x29b26a['add'+_['capitalize'](_0xfdb1e4[_0x0102('0x52')][_0x0102('0x57')][_0x0102('0x5b')]())+_0x0102('0x60')](_0xfdb1e4[_0x0102('0x52')][_0x0102('0x61')]);}return null;})[_0x0102('0x2b')](handleEntityNotFound(_0x20ec50,null))[_0x0102('0x2b')](respondWithStatusCode(_0x20ec50,null))[_0x0102('0x4d')](handleError(_0x20ec50,null));};exports[_0x0102('0x62')]=function(_0xd869b9,_0x5c6814,_0x48b920){return db[_0x0102('0x34')][_0x0102('0x63')]({'where':{'id':_0xd869b9['params']['id']}})[_0x0102('0x2b')](function(_0x211bf7){if(_0x211bf7){if(!_0xd869b9[_0x0102('0x3b')][_0x0102('0x57')]||!utils[_0x0102('0x58')](_0xd869b9[_0x0102('0x3b')][_0x0102('0x57')])){throw new db[(_0x0102('0x5f'))]['ValidationError']('Unknown\x20channel');}return _0x211bf7['remove'+_[_0x0102('0x5d')](_0xd869b9['query']['channel'][_0x0102('0x5b')]())+_0x0102('0x60')](_0xd869b9[_0x0102('0x3b')][_0x0102('0x61')]);}return null;})['then'](handleEntityNotFound(_0x5c6814,null))[_0x0102('0x2b')](respondWithStatusCode(_0x5c6814,null))[_0x0102('0x4d')](handleError(_0x5c6814,null));};exports[_0x0102('0x64')]=function(_0x2f68d1,_0x4fbd28){return db[_0x0102('0x34')]['find']({'where':{'id':_0x2f68d1[_0x0102('0x4f')]['id']}})['then'](handleEntityNotFound(_0x4fbd28,null))[_0x0102('0x2b')](function(_0x334f9c){if(_0x334f9c){var _0x2b27b7=['Voice','Chat',_0x0102('0x65'),_0x0102('0x66'),_0x0102('0x67'),'Openchannel','Whatsapp'];return db[_0x0102('0x68')][_0x0102('0x69')](function(_0x597743){var _0x24d969=_[_0x0102('0x33')](_0x2b27b7,function(_0xe6e097){var _0x4863c0={'attributes':['id',_0x0102('0x32')]};if(_0xe6e097===_0x0102('0x6a')){_0x4863c0['through']={'attributes':[_0x0102('0x6b')]};}return _0x334f9c[_0x0102('0x2d')+_0xe6e097+'Queues'](_0x4863c0)[_0x0102('0x2b')](function(_0x208f90){var _0x526808=_[_0x0102('0x33')](_0x208f90,function(_0x1de614){var _0x55dbba=_[_0x0102('0x33')](_0x2f68d1['body']['ids'],function(_0x1836c7){var _0x16efaf={'where':{'UserId':_0x1836c7,[_0xe6e097+_0x0102('0x6c')]:_0x1de614['id']},'transaction':_0x597743};if(_0xe6e097===_0x0102('0x6a')){_0x16efaf[_0x0102('0x1b')]={'penalty':_0x1de614[_0x0102('0x6d')]['penalty']};}return db[_0x0102('0x6e')+_0xe6e097+_0x0102('0x5c')][_0x0102('0x6f')](_0x16efaf)['then'](function(){socket[_0x0102('0x70')](_0x0102('0x53')+_0xe6e097+'Queue:save',{'UserId':_0x1836c7,[_0xe6e097+_0x0102('0x6c')]:_0x1de614['id']});if(_0xe6e097!==_0x0102('0x6a'))return;return db[_0x0102('0x6e')]['findAll']({'where':{'id':_0x2f68d1['body'][_0x0102('0x61')],'online':0x1},'attributes':['id','name',_0x0102('0x71'),_0x0102('0x72'),_0x0102('0x73')],'raw':!![]})['then'](function(_0x214ba3){var _0x11962a=_[_0x0102('0x33')](_0x214ba3,function(_0x4cbffe){return db['UserVoiceQueueRt']['upsert']({'membername':_0x4cbffe[_0x0102('0x32')],'UserId':_0x4cbffe['id'],'queue_name':_0x1de614[_0x0102('0x32')],'VoiceQueueId':_0x1de614['id'],'interface':_[_0x0102('0x74')](_0x4cbffe['interface'])?util[_0x0102('0x75')](_0x0102('0x76'),_0x4cbffe['name']):_0x4cbffe[_0x0102('0x73')],'paused':_0x4cbffe[_0x0102('0x72')]||![],'penalty':_0x1de614[_0x0102('0x6d')][_0x0102('0x6b')]},{'transaction':_0x597743});});return Promise[_0x0102('0x77')](_0x11962a);});});});return Promise[_0x0102('0x77')](_0x55dbba);});return Promise[_0x0102('0x77')](_0x526808);});});return Promise[_0x0102('0x77')](_0x24d969)['then'](function(){return _0x334f9c['addAgents'](_0x2f68d1[_0x0102('0x52')]['ids'],{'transaction':_0x597743})[_0x0102('0x78')](function(_0x2b209c){return _0x2b209c;});});});}})[_0x0102('0x2b')](respondWithResult(_0x4fbd28,null))[_0x0102('0x4d')](handleError(_0x4fbd28,null));};exports[_0x0102('0x79')]=function(_0x34ae9e,_0x4e08e7){return db[_0x0102('0x34')][_0x0102('0x50')]({'where':{'id':_0x34ae9e[_0x0102('0x4f')]['id']}})[_0x0102('0x2b')](handleEntityNotFound(_0x4e08e7,null))[_0x0102('0x2b')](function(_0x5b392c){if(_0x5b392c){var _0xc6f67f=[_0x0102('0x6a'),_0x0102('0x7a'),_0x0102('0x65'),_0x0102('0x66'),_0x0102('0x67'),_0x0102('0x7b'),_0x0102('0x7c')];return db[_0x0102('0x68')][_0x0102('0x69')](function(_0x3c1c38){var _0x595076=_[_0x0102('0x33')](_0xc6f67f,function(_0x17f78c){var _0xbf910f={'attributes':['id',_0x0102('0x32')]};return _0x5b392c[_0x0102('0x2d')+_0x17f78c+'Queues'](_0xbf910f)[_0x0102('0x2b')](function(_0x2f9ff3){var _0x28fabe=_['map'](_0x2f9ff3,function(_0x1ff669){return _0x1ff669[_0x0102('0x79')](_0x34ae9e[_0x0102('0x3b')][_0x0102('0x61')],{'transaction':_0x3c1c38})[_0x0102('0x2b')](function(){var _0x3aab78=JSON['parse']('['+_0x34ae9e[_0x0102('0x3b')][_0x0102('0x61')]+']');var _0x7abb3c=_[_0x0102('0x33')](_0x3aab78,function(_0x2bc2fd){socket[_0x0102('0x70')]('user'+_0x17f78c+_0x0102('0x7d'),{'UserId':Number(_0x2bc2fd),[_0x17f78c+'QueueId']:_0x1ff669['id']});if(_0x17f78c!==_0x0102('0x6a'))return;return db[_0x0102('0x7e')][_0x0102('0x2c')]({'where':{'VoiceQueueId':_0x1ff669['id'],'UserId':_0x2bc2fd},'transaction':_0x3c1c38});});return Promise[_0x0102('0x77')](_0x7abb3c);});});return Promise[_0x0102('0x77')](_0x28fabe);});});return Promise['all'](_0x595076)[_0x0102('0x2b')](function(){return _0x5b392c['removeAgents'](_0x34ae9e[_0x0102('0x3b')]['ids'],{'transaction':_0x3c1c38});});});}})['then'](respondWithStatusCode(_0x4e08e7,null))[_0x0102('0x4d')](handleError(_0x4e08e7,null));};exports[_0x0102('0x7f')]=function(_0x4afaa0,_0x2144f4,_0x4b8b8a){var _0x355bb8={};var _0x36bec5={};var _0xd80198;var _0x405b26;return db[_0x0102('0x34')][_0x0102('0x63')]({'where':{'id':_0x4afaa0[_0x0102('0x4f')]['id']}})[_0x0102('0x2b')](handleEntityNotFound(_0x2144f4,null))[_0x0102('0x2b')](function(_0x51a07b){if(_0x51a07b){_0xd80198=_0x51a07b;_0x36bec5[_0x0102('0x39')]=_[_0x0102('0x3a')](db['User'][_0x0102('0x35')]);_0x36bec5[_0x0102('0x3b')]=_[_0x0102('0x3a')](_0x4afaa0[_0x0102('0x3b')]);_0x36bec5[_0x0102('0x3c')]=_[_0x0102('0x3d')](_0x36bec5['model'],_0x36bec5[_0x0102('0x3b')]);_0x355bb8[_0x0102('0x3e')]=_[_0x0102('0x3d')](_0x36bec5[_0x0102('0x39')],qs['fields'](_0x4afaa0[_0x0102('0x3b')]['fields']));_0x355bb8[_0x0102('0x3e')]=_0x355bb8['attributes'][_0x0102('0x40')]?_0x355bb8[_0x0102('0x3e')]:_0x36bec5[_0x0102('0x39')];_0x355bb8['order']=qs[_0x0102('0x44')](_0x4afaa0['query']['sort']);_0x355bb8[_0x0102('0x45')]=qs['filters'](_[_0x0102('0x46')](_0x4afaa0['query'],_0x36bec5[_0x0102('0x3c')]));if(_0x4afaa0[_0x0102('0x3b')]['filter']){_0x355bb8[_0x0102('0x45')]=_[_0x0102('0x49')](_0x355bb8[_0x0102('0x45')],{'$or':_[_0x0102('0x33')](_0x355bb8[_0x0102('0x3e')],function(_0x35df7d){var _0x5ba6ee={};_0x5ba6ee[_0x35df7d]={'$like':'%'+_0x4afaa0[_0x0102('0x3b')][_0x0102('0x47')]+'%'};return _0x5ba6ee;})});}_0x355bb8=_[_0x0102('0x49')]({},_0x355bb8,_0x4afaa0[_0x0102('0x4a')]);return _0xd80198[_0x0102('0x7f')](_0x355bb8);}})[_0x0102('0x2b')](function(_0x27a0fb){if(_0x27a0fb){_0x405b26=_0x27a0fb[_0x0102('0x40')];if(!_0x4afaa0[_0x0102('0x3b')][_0x0102('0x41')](_0x0102('0x42'))){_0x355bb8[_0x0102('0x24')]=qs[_0x0102('0x24')](_0x4afaa0[_0x0102('0x3b')][_0x0102('0x24')]);_0x355bb8[_0x0102('0x22')]=qs[_0x0102('0x22')](_0x4afaa0[_0x0102('0x3b')][_0x0102('0x22')]);}return _0xd80198['getAgents'](_0x355bb8);}})[_0x0102('0x2b')](function(_0x1ad36e){if(_0x1ad36e){return _0x1ad36e?{'count':_0x405b26,'rows':_0x1ad36e}:null;}})['then'](respondWithResult(_0x2144f4,null))[_0x0102('0x4d')](handleError(_0x2144f4,null));};