Built motion from commit (unavailable).|2.5.30
[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 _0x90db=['body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','UserProfileSection','userProfileId','autoAssociation','params','getQueues','findOne','channel','isValidChannel','Sequelize','ValidationError','Unknown\x20channel','capitalize','toLowerCase','Queue','Queues','addQueues','ids','removeQueues','remove','Voice','Sms','Openchannel','Whatsapp','sequelize','through','penalty','QueueId','TeamVoiceQueue','User','findOrCreate','emit','Queue:save','online','voicePause','UserVoiceQueueRt','isNil','interface','format','SIP/%s','all','addAgents','removeAgents','Mail','Fax','transaction','parse','Queue:remove','nolimit','getAgents','rimraf','zip-dir','fast-json-patch','path','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','defaults','redis','localhost','socket.io-emitter','./team.socket','register','sendStatus','status','json','undefined','count','offset','limit','set','Content-Range','apply','reject','save','update','destroy','then','get','Teams','UserProfileResource','end','stack','name','send','index','map','Team','rawAttributes','fieldName','type','key','model','keys','query','filters','intersection','attributes','fields','length','hasOwnProperty','order','sort','where','pick','filter','merge','VIRTUAL','options','includeAll','include','find','catch','create'];(function(_0x20a558,_0x160e0e){var _0x53d3f7=function(_0x259bd8){while(--_0x259bd8){_0x20a558['push'](_0x20a558['shift']());}};_0x53d3f7(++_0x160e0e);}(_0x90db,0x1c0));var _0xb90d=function(_0x1facfa,_0x1acf7d){_0x1facfa=_0x1facfa-0x0;var _0x9ec701=_0x90db[_0x1facfa];return _0x9ec701;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0xb90d('0x0'));var zipdir=require(_0xb90d('0x1'));var jsonpatch=require(_0xb90d('0x2'));var rp=require('request-promise');var moment=require('moment');var BPromise=require('bluebird');var Mustache=require('mustache');var util=require('util');var path=require(_0xb90d('0x3'));var sox=require(_0xb90d('0x4'));var csv=require(_0xb90d('0x5'));var ejs=require(_0xb90d('0x6'));var fs=require('fs');var fs_extra=require(_0xb90d('0x7'));var _=require(_0xb90d('0x8'));var squel=require(_0xb90d('0x9'));var crypto=require(_0xb90d('0xa'));var jsforce=require(_0xb90d('0xb'));var deskjs=require(_0xb90d('0xc'));var toCsv=require(_0xb90d('0x5'));var querystring=require(_0xb90d('0xd'));var Papa=require('papaparse');var Redis=require(_0xb90d('0xe'));var authService=require(_0xb90d('0xf'));var qs=require(_0xb90d('0x10'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xb90d('0x11'));var logger=require(_0xb90d('0x12'))(_0xb90d('0x13'));var utils=require(_0xb90d('0x14'));var config=require(_0xb90d('0x15'));var licenseUtil=require('../../config/license/util');var db=require(_0xb90d('0x16'))['db'];config['redis']=_[_0xb90d('0x17')](config[_0xb90d('0x18')],{'host':_0xb90d('0x19'),'port':0x18eb});var socket=require(_0xb90d('0x1a'))(new Redis(config[_0xb90d('0x18')]));require(_0xb90d('0x1b'))[_0xb90d('0x1c')](socket);function respondWithStatusCode(_0x56c67c,_0x129115){_0x129115=_0x129115||0xcc;return function(_0x51c291){if(_0x51c291){return _0x56c67c[_0xb90d('0x1d')](_0x129115);}return _0x56c67c[_0xb90d('0x1e')](_0x129115)['end']();};}function respondWithResult(_0x1b2324,_0x5a4d4d){_0x5a4d4d=_0x5a4d4d||0xc8;return function(_0x28912e){if(_0x28912e){return _0x1b2324[_0xb90d('0x1e')](_0x5a4d4d)[_0xb90d('0x1f')](_0x28912e);}};}function respondWithFilteredResult(_0x23c136,_0x1a7b11){return function(_0x47ee5d){if(_0x47ee5d){var _0x135bf2=typeof _0x1a7b11['offset']===_0xb90d('0x20')&&typeof _0x1a7b11['limit']==='undefined';var _0x73eae9=_0x47ee5d[_0xb90d('0x21')];var _0x4598c2=_0x135bf2?0x0:_0x1a7b11[_0xb90d('0x22')];var _0x2521f7=_0x135bf2?_0x47ee5d[_0xb90d('0x21')]:_0x1a7b11['offset']+_0x1a7b11[_0xb90d('0x23')];var _0x14958c;if(_0x2521f7>=_0x73eae9){_0x2521f7=_0x73eae9;_0x14958c=0xc8;}else{_0x14958c=0xce;}_0x23c136['status'](_0x14958c);return _0x23c136[_0xb90d('0x24')](_0xb90d('0x25'),_0x4598c2+'-'+_0x2521f7+'/'+_0x73eae9)[_0xb90d('0x1f')](_0x47ee5d);}return null;};}function patchUpdates(_0x39dcc4){return function(_0x44d229){try{jsonpatch[_0xb90d('0x26')](_0x44d229,_0x39dcc4,!![]);}catch(_0x818e68){return BPromise[_0xb90d('0x27')](_0x818e68);}return _0x44d229[_0xb90d('0x28')]();};}function saveUpdates(_0x1cf8cc,_0x1581d3){return function(_0x97e1e9){if(_0x97e1e9){return _0x97e1e9[_0xb90d('0x29')](_0x1cf8cc)['then'](function(_0x280ec3){return _0x280ec3;});}return null;};}function removeEntity(_0x54827c,_0x130cc8){return function(_0x34c9c9){if(_0x34c9c9){return _0x34c9c9[_0xb90d('0x2a')]()[_0xb90d('0x2b')](function(){var _0x31aee9=_0x34c9c9[_0xb90d('0x2c')]({'plain':!![]});var _0x1149e5=_0xb90d('0x2d');return db[_0xb90d('0x2e')][_0xb90d('0x2a')]({'where':{'type':_0x1149e5,'resourceId':_0x31aee9['id']}})['then'](function(){return _0x34c9c9;});})[_0xb90d('0x2b')](function(){_0x54827c[_0xb90d('0x1e')](0xcc)[_0xb90d('0x2f')]();});}};}function handleEntityNotFound(_0x112370,_0x1f9151){return function(_0x21fcea){if(!_0x21fcea){_0x112370['sendStatus'](0x194);}return _0x21fcea;};}function handleError(_0x5f0de5,_0x4fee37){_0x4fee37=_0x4fee37||0x1f4;return function(_0x40386e){logger['error'](_0x40386e[_0xb90d('0x30')]);if(_0x40386e[_0xb90d('0x31')]){delete _0x40386e['name'];}_0x5f0de5[_0xb90d('0x1e')](_0x4fee37)[_0xb90d('0x32')](_0x40386e);};}exports[_0xb90d('0x33')]=function(_0x1a424f,_0x3a47e6){var _0xaa0ea={},_0x4539cb={},_0x133773={'count':0x0,'rows':[]};var _0x1e1b9c=_[_0xb90d('0x34')](db[_0xb90d('0x35')][_0xb90d('0x36')],function(_0x43b1da){return{'name':_0x43b1da[_0xb90d('0x37')],'type':_0x43b1da[_0xb90d('0x38')][_0xb90d('0x39')]};});_0x4539cb[_0xb90d('0x3a')]=_[_0xb90d('0x34')](_0x1e1b9c,'name');_0x4539cb['query']=_[_0xb90d('0x3b')](_0x1a424f[_0xb90d('0x3c')]);_0x4539cb[_0xb90d('0x3d')]=_[_0xb90d('0x3e')](_0x4539cb[_0xb90d('0x3a')],_0x4539cb[_0xb90d('0x3c')]);_0xaa0ea[_0xb90d('0x3f')]=_['intersection'](_0x4539cb[_0xb90d('0x3a')],qs['fields'](_0x1a424f[_0xb90d('0x3c')][_0xb90d('0x40')]));_0xaa0ea[_0xb90d('0x3f')]=_0xaa0ea[_0xb90d('0x3f')][_0xb90d('0x41')]?_0xaa0ea[_0xb90d('0x3f')]:_0x4539cb[_0xb90d('0x3a')];if(!_0x1a424f[_0xb90d('0x3c')][_0xb90d('0x42')]('nolimit')){_0xaa0ea[_0xb90d('0x23')]=qs[_0xb90d('0x23')](_0x1a424f[_0xb90d('0x3c')][_0xb90d('0x23')]);_0xaa0ea['offset']=qs[_0xb90d('0x22')](_0x1a424f[_0xb90d('0x3c')][_0xb90d('0x22')]);}_0xaa0ea[_0xb90d('0x43')]=qs[_0xb90d('0x44')](_0x1a424f['query'][_0xb90d('0x44')]);_0xaa0ea[_0xb90d('0x45')]=qs[_0xb90d('0x3d')](_[_0xb90d('0x46')](_0x1a424f['query'],_0x4539cb[_0xb90d('0x3d')]),_0x1e1b9c);if(_0x1a424f[_0xb90d('0x3c')][_0xb90d('0x47')]){_0xaa0ea[_0xb90d('0x45')]=_[_0xb90d('0x48')](_0xaa0ea[_0xb90d('0x45')],{'$or':_[_0xb90d('0x34')](_0x1e1b9c,function(_0x1e7252){if(_0x1e7252[_0xb90d('0x38')]!==_0xb90d('0x49')){var _0x216fa5={};_0x216fa5[_0x1e7252[_0xb90d('0x31')]]={'$like':'%'+_0x1a424f[_0xb90d('0x3c')][_0xb90d('0x47')]+'%'};return _0x216fa5;}})});}_0xaa0ea=_[_0xb90d('0x48')]({},_0xaa0ea,_0x1a424f[_0xb90d('0x4a')]);var _0x16974c={'where':_0xaa0ea['where']};return db[_0xb90d('0x35')]['count'](_0x16974c)[_0xb90d('0x2b')](function(_0x53ad19){_0x133773[_0xb90d('0x21')]=_0x53ad19;if(_0x1a424f[_0xb90d('0x3c')][_0xb90d('0x4b')]){_0xaa0ea[_0xb90d('0x4c')]=[{'all':!![]}];}return db[_0xb90d('0x35')]['findAll'](_0xaa0ea);})[_0xb90d('0x2b')](function(_0x37d283){_0x133773['rows']=_0x37d283;return _0x133773;})['then'](respondWithFilteredResult(_0x3a47e6,_0xaa0ea))['catch'](handleError(_0x3a47e6,null));};exports['show']=function(_0x41d001,_0x1bfdb4){var _0x5cd4bb={'raw':![],'where':{'id':_0x41d001['params']['id']}},_0x3cb4e3={};_0x3cb4e3[_0xb90d('0x3a')]=_['keys'](db['Team'][_0xb90d('0x36')]);_0x3cb4e3[_0xb90d('0x3c')]=_[_0xb90d('0x3b')](_0x41d001[_0xb90d('0x3c')]);_0x3cb4e3[_0xb90d('0x3d')]=_['intersection'](_0x3cb4e3[_0xb90d('0x3a')],_0x3cb4e3[_0xb90d('0x3c')]);_0x5cd4bb[_0xb90d('0x3f')]=_[_0xb90d('0x3e')](_0x3cb4e3[_0xb90d('0x3a')],qs[_0xb90d('0x40')](_0x41d001[_0xb90d('0x3c')]['fields']));_0x5cd4bb[_0xb90d('0x3f')]=_0x5cd4bb[_0xb90d('0x3f')][_0xb90d('0x41')]?_0x5cd4bb['attributes']:_0x3cb4e3[_0xb90d('0x3a')];if(_0x41d001[_0xb90d('0x3c')][_0xb90d('0x4b')]){_0x5cd4bb['include']=[{'all':!![]}];}_0x5cd4bb=_['merge']({},_0x5cd4bb,_0x41d001[_0xb90d('0x4a')]);return db[_0xb90d('0x35')][_0xb90d('0x4d')](_0x5cd4bb)[_0xb90d('0x2b')](handleEntityNotFound(_0x1bfdb4,null))[_0xb90d('0x2b')](respondWithResult(_0x1bfdb4,null))[_0xb90d('0x4e')](handleError(_0x1bfdb4,null));};exports[_0xb90d('0x4f')]=function(_0x2c53b1,_0x36abb0){return db[_0xb90d('0x35')][_0xb90d('0x4f')](_0x2c53b1[_0xb90d('0x50')],{})[_0xb90d('0x2b')](function(_0x45821a){var _0x4882ac=_0x2c53b1[_0xb90d('0x51')][_0xb90d('0x2c')]({'plain':!![]});if(!_0x4882ac)throw new Error(_0xb90d('0x52'));if(_0x4882ac['role']==='user'){var _0x577628=_0x45821a[_0xb90d('0x2c')]({'plain':!![]});var _0x3d681d=_0xb90d('0x2d');return db[_0xb90d('0x53')]['find']({'where':{'name':_0x3d681d,'userProfileId':_0x4882ac[_0xb90d('0x54')]},'raw':!![]})[_0xb90d('0x2b')](function(_0x3e11ed){if(_0x3e11ed&&_0x3e11ed[_0xb90d('0x55')]===0x0){return db[_0xb90d('0x2e')][_0xb90d('0x4f')]({'name':_0x577628[_0xb90d('0x31')],'resourceId':_0x577628['id'],'type':_0x3e11ed[_0xb90d('0x31')],'sectionId':_0x3e11ed['id']},{})['then'](function(){return _0x45821a;});}else{return _0x45821a;}})[_0xb90d('0x4e')](function(_0x307a7a){logger['error']('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x307a7a);throw _0x307a7a;});}return _0x45821a;})['then'](respondWithResult(_0x36abb0,0xc9))[_0xb90d('0x4e')](handleError(_0x36abb0,null));};exports[_0xb90d('0x29')]=function(_0xa90b07,_0x27d008){if(_0xa90b07['body']['id']){delete _0xa90b07[_0xb90d('0x50')]['id'];}return db['Team'][_0xb90d('0x4d')]({'where':{'id':_0xa90b07[_0xb90d('0x56')]['id']}})[_0xb90d('0x2b')](handleEntityNotFound(_0x27d008,null))[_0xb90d('0x2b')](saveUpdates(_0xa90b07[_0xb90d('0x50')],null))['then'](respondWithResult(_0x27d008,null))['catch'](handleError(_0x27d008,null));};exports[_0xb90d('0x2a')]=function(_0xebd291,_0x3cc495){return db['Team']['find']({'where':{'id':_0xebd291[_0xb90d('0x56')]['id']}})[_0xb90d('0x2b')](handleEntityNotFound(_0x3cc495,null))[_0xb90d('0x2b')](removeEntity(_0x3cc495,null))['catch'](handleError(_0x3cc495,null));};exports[_0xb90d('0x57')]=function(_0x4cf93e,_0x3a04b7,_0x4516d2){return db[_0xb90d('0x35')][_0xb90d('0x58')]({'where':{'id':_0x4cf93e['params']['id']}})['then'](handleEntityNotFound(_0x3a04b7,null))[_0xb90d('0x2b')](function(_0x46d0f8){if(!_0x4cf93e['query'][_0xb90d('0x59')]||!utils[_0xb90d('0x5a')](_0x4cf93e[_0xb90d('0x3c')][_0xb90d('0x59')])){throw new db[(_0xb90d('0x5b'))][(_0xb90d('0x5c'))](_0xb90d('0x5d'));}var _0x42c877={};var _0x2a8078={};_0x2a8078['model']=_[_0xb90d('0x3b')](db[_[_0xb90d('0x5e')](_0x4cf93e['query'][_0xb90d('0x59')][_0xb90d('0x5f')]())+_0xb90d('0x60')]['rawAttributes']);_0x2a8078[_0xb90d('0x3c')]=_[_0xb90d('0x3b')](_0x4cf93e['query']);_0x2a8078[_0xb90d('0x3d')]=_[_0xb90d('0x3e')](_0x2a8078['model'],_0x2a8078[_0xb90d('0x3c')]);_0x42c877[_0xb90d('0x3f')]=_[_0xb90d('0x3e')](_0x2a8078[_0xb90d('0x3a')],qs['fields'](_0x4cf93e['query'][_0xb90d('0x40')]));_0x42c877[_0xb90d('0x3f')]=_0x42c877[_0xb90d('0x3f')][_0xb90d('0x41')]?_0x42c877[_0xb90d('0x3f')]:_0x2a8078[_0xb90d('0x3a')];_0x42c877[_0xb90d('0x23')]=qs[_0xb90d('0x23')](_0x4cf93e[_0xb90d('0x3c')][_0xb90d('0x23')]);_0x42c877[_0xb90d('0x22')]=qs[_0xb90d('0x22')](_0x4cf93e[_0xb90d('0x3c')][_0xb90d('0x22')]);_0x42c877[_0xb90d('0x43')]=qs[_0xb90d('0x44')](_0x4cf93e[_0xb90d('0x3c')][_0xb90d('0x44')]);_0x42c877[_0xb90d('0x45')]=qs[_0xb90d('0x3d')](_[_0xb90d('0x46')](_0x4cf93e[_0xb90d('0x3c')],_0x2a8078[_0xb90d('0x3d')]));_0x42c877=_[_0xb90d('0x48')]({},_0x42c877,_0x4cf93e[_0xb90d('0x4a')]);return _0x46d0f8['get'+_['capitalize'](_0x4cf93e[_0xb90d('0x3c')]['channel'][_0xb90d('0x5f')]())+_0xb90d('0x61')](_0x42c877);})[_0xb90d('0x2b')](respondWithResult(_0x3a04b7,null))[_0xb90d('0x4e')](handleError(_0x3a04b7,null));};exports[_0xb90d('0x62')]=function(_0x32ffa5,_0x5018e9,_0x553db8){return db['Team']['findOne']({'where':{'id':_0x32ffa5[_0xb90d('0x56')]['id']}})[_0xb90d('0x2b')](function(_0x554058){if(_0x554058){if(!_0x32ffa5['body'][_0xb90d('0x59')]||!utils[_0xb90d('0x5a')](_0x32ffa5[_0xb90d('0x50')][_0xb90d('0x59')])){throw new db[(_0xb90d('0x5b'))]['ValidationError'](_0xb90d('0x5d'));}return _0x554058['add'+_['capitalize'](_0x32ffa5[_0xb90d('0x50')]['channel'][_0xb90d('0x5f')]())+_0xb90d('0x61')](_0x32ffa5['body'][_0xb90d('0x63')]);}return null;})[_0xb90d('0x2b')](handleEntityNotFound(_0x5018e9,null))[_0xb90d('0x2b')](respondWithStatusCode(_0x5018e9,null))['catch'](handleError(_0x5018e9,null));};exports[_0xb90d('0x64')]=function(_0x2e5fde,_0xfbb98a,_0x1f51df){return db[_0xb90d('0x35')]['findOne']({'where':{'id':_0x2e5fde[_0xb90d('0x56')]['id']}})[_0xb90d('0x2b')](function(_0xd16bf6){if(_0xd16bf6){if(!_0x2e5fde['query'][_0xb90d('0x59')]||!utils[_0xb90d('0x5a')](_0x2e5fde['query'][_0xb90d('0x59')])){throw new db[(_0xb90d('0x5b'))][(_0xb90d('0x5c'))](_0xb90d('0x5d'));}return _0xd16bf6[_0xb90d('0x65')+_[_0xb90d('0x5e')](_0x2e5fde[_0xb90d('0x3c')][_0xb90d('0x59')]['toLowerCase']())+_0xb90d('0x61')](_0x2e5fde[_0xb90d('0x3c')][_0xb90d('0x63')]);}return null;})[_0xb90d('0x2b')](handleEntityNotFound(_0xfbb98a,null))['then'](respondWithStatusCode(_0xfbb98a,null))[_0xb90d('0x4e')](handleError(_0xfbb98a,null));};exports['addAgents']=function(_0x1d9a8c,_0x3f09e6){return db[_0xb90d('0x35')][_0xb90d('0x4d')]({'where':{'id':_0x1d9a8c[_0xb90d('0x56')]['id']}})['then'](handleEntityNotFound(_0x3f09e6,null))[_0xb90d('0x2b')](function(_0x4d3beb){if(_0x4d3beb){var _0x3569aa=[_0xb90d('0x66'),'Chat','Mail',_0xb90d('0x67'),'Fax',_0xb90d('0x68'),_0xb90d('0x69')];return db[_0xb90d('0x6a')]['transaction'](function(_0x1270c9){var _0x52b876=_['map'](_0x3569aa,function(_0x149d84){var _0x182437={'attributes':['id',_0xb90d('0x31')]};if(_0x149d84===_0xb90d('0x66')){_0x182437[_0xb90d('0x6b')]={'attributes':[_0xb90d('0x6c')]};}return _0x4d3beb[_0xb90d('0x2c')+_0x149d84+_0xb90d('0x61')](_0x182437)[_0xb90d('0x2b')](function(_0x459ae7){var _0x9d4590=_[_0xb90d('0x34')](_0x459ae7,function(_0x4a3c0e){var _0x52ec7a=_[_0xb90d('0x34')](_0x1d9a8c[_0xb90d('0x50')][_0xb90d('0x63')],function(_0x4314f2){var _0x32278e={'where':{'UserId':_0x4314f2,[_0x149d84+_0xb90d('0x6d')]:_0x4a3c0e['id']},'transaction':_0x1270c9};if(_0x149d84===_0xb90d('0x66')){_0x32278e['defaults']={'penalty':_0x4a3c0e[_0xb90d('0x6e')][_0xb90d('0x6c')]};}return db[_0xb90d('0x6f')+_0x149d84+_0xb90d('0x60')][_0xb90d('0x70')](_0x32278e)[_0xb90d('0x2b')](function(){socket[_0xb90d('0x71')](_0xb90d('0x51')+_0x149d84+_0xb90d('0x72'),{'UserId':_0x4314f2,[_0x149d84+_0xb90d('0x6d')]:_0x4a3c0e['id']});if(_0x149d84!==_0xb90d('0x66'))return;return db[_0xb90d('0x6f')]['findAll']({'where':{'id':_0x1d9a8c[_0xb90d('0x50')][_0xb90d('0x63')],'online':0x1},'attributes':['id',_0xb90d('0x31'),_0xb90d('0x73'),_0xb90d('0x74'),'interface'],'raw':!![]})[_0xb90d('0x2b')](function(_0x283cad){var _0x33c735=_[_0xb90d('0x34')](_0x283cad,function(_0x4ce09e){return db[_0xb90d('0x75')]['upsert']({'membername':_0x4ce09e[_0xb90d('0x31')],'UserId':_0x4ce09e['id'],'queue_name':_0x4a3c0e['name'],'VoiceQueueId':_0x4a3c0e['id'],'interface':_[_0xb90d('0x76')](_0x4ce09e[_0xb90d('0x77')])?util[_0xb90d('0x78')](_0xb90d('0x79'),_0x4ce09e['name']):_0x4ce09e['interface'],'paused':_0x4ce09e[_0xb90d('0x74')]||![],'penalty':_0x4a3c0e[_0xb90d('0x6e')][_0xb90d('0x6c')]},{'transaction':_0x1270c9});});return Promise['all'](_0x33c735);});});});return Promise[_0xb90d('0x7a')](_0x52ec7a);});return Promise[_0xb90d('0x7a')](_0x9d4590);});});return Promise['all'](_0x52b876)[_0xb90d('0x2b')](function(){return _0x4d3beb[_0xb90d('0x7b')](_0x1d9a8c['body'][_0xb90d('0x63')],{'transaction':_0x1270c9})['spread'](function(_0x11d040){return _0x11d040;});});});}})[_0xb90d('0x2b')](respondWithResult(_0x3f09e6,null))[_0xb90d('0x4e')](handleError(_0x3f09e6,null));};exports[_0xb90d('0x7c')]=function(_0x13aa35,_0x3c113a){return db[_0xb90d('0x35')][_0xb90d('0x4d')]({'where':{'id':_0x13aa35[_0xb90d('0x56')]['id']}})[_0xb90d('0x2b')](handleEntityNotFound(_0x3c113a,null))[_0xb90d('0x2b')](function(_0xd9f482){if(_0xd9f482){var _0xff533f=[_0xb90d('0x66'),'Chat',_0xb90d('0x7d'),_0xb90d('0x67'),_0xb90d('0x7e'),_0xb90d('0x68'),_0xb90d('0x69')];return db[_0xb90d('0x6a')][_0xb90d('0x7f')](function(_0x2414f1){var _0x3f25cc=_[_0xb90d('0x34')](_0xff533f,function(_0x367d6f){var _0x4bb2e5={'attributes':['id',_0xb90d('0x31')]};return _0xd9f482[_0xb90d('0x2c')+_0x367d6f+_0xb90d('0x61')](_0x4bb2e5)[_0xb90d('0x2b')](function(_0x3c0f57){var _0x1bfe9e=_[_0xb90d('0x34')](_0x3c0f57,function(_0x8c9e94){return _0x8c9e94['removeAgents'](_0x13aa35[_0xb90d('0x3c')][_0xb90d('0x63')],{'transaction':_0x2414f1})[_0xb90d('0x2b')](function(){var _0x25bc50=JSON[_0xb90d('0x80')]('['+_0x13aa35['query'][_0xb90d('0x63')]+']');var _0x29901b=_[_0xb90d('0x34')](_0x25bc50,function(_0x490b06){socket[_0xb90d('0x71')](_0xb90d('0x51')+_0x367d6f+_0xb90d('0x81'),{'UserId':Number(_0x490b06),[_0x367d6f+'QueueId']:_0x8c9e94['id']});if(_0x367d6f!=='Voice')return;return db['UserVoiceQueueRt']['destroy']({'where':{'VoiceQueueId':_0x8c9e94['id'],'UserId':_0x490b06},'transaction':_0x2414f1});});return Promise[_0xb90d('0x7a')](_0x29901b);});});return Promise['all'](_0x1bfe9e);});});return Promise[_0xb90d('0x7a')](_0x3f25cc)[_0xb90d('0x2b')](function(){return _0xd9f482[_0xb90d('0x7c')](_0x13aa35[_0xb90d('0x3c')][_0xb90d('0x63')],{'transaction':_0x2414f1});});});}})[_0xb90d('0x2b')](respondWithStatusCode(_0x3c113a,null))[_0xb90d('0x4e')](handleError(_0x3c113a,null));};exports['getAgents']=function(_0x3c8172,_0x2d3290,_0x59f95c){var _0x42f0c8={};var _0x791a29={};var _0x4e448e;var _0x21fb3e;return db[_0xb90d('0x35')][_0xb90d('0x58')]({'where':{'id':_0x3c8172[_0xb90d('0x56')]['id']}})[_0xb90d('0x2b')](handleEntityNotFound(_0x2d3290,null))[_0xb90d('0x2b')](function(_0x2cd31d){if(_0x2cd31d){_0x4e448e=_0x2cd31d;_0x791a29[_0xb90d('0x3a')]=_['keys'](db[_0xb90d('0x6f')][_0xb90d('0x36')]);_0x791a29[_0xb90d('0x3c')]=_[_0xb90d('0x3b')](_0x3c8172[_0xb90d('0x3c')]);_0x791a29[_0xb90d('0x3d')]=_[_0xb90d('0x3e')](_0x791a29[_0xb90d('0x3a')],_0x791a29['query']);_0x42f0c8[_0xb90d('0x3f')]=_[_0xb90d('0x3e')](_0x791a29['model'],qs[_0xb90d('0x40')](_0x3c8172[_0xb90d('0x3c')][_0xb90d('0x40')]));_0x42f0c8[_0xb90d('0x3f')]=_0x42f0c8['attributes'][_0xb90d('0x41')]?_0x42f0c8['attributes']:_0x791a29[_0xb90d('0x3a')];_0x42f0c8['order']=qs[_0xb90d('0x44')](_0x3c8172[_0xb90d('0x3c')][_0xb90d('0x44')]);_0x42f0c8[_0xb90d('0x45')]=qs[_0xb90d('0x3d')](_[_0xb90d('0x46')](_0x3c8172[_0xb90d('0x3c')],_0x791a29[_0xb90d('0x3d')]));if(_0x3c8172['query']['filter']){_0x42f0c8['where']=_[_0xb90d('0x48')](_0x42f0c8[_0xb90d('0x45')],{'$or':_[_0xb90d('0x34')](_0x42f0c8['attributes'],function(_0x4238e6){var _0x32d87b={};_0x32d87b[_0x4238e6]={'$like':'%'+_0x3c8172[_0xb90d('0x3c')][_0xb90d('0x47')]+'%'};return _0x32d87b;})});}_0x42f0c8=_[_0xb90d('0x48')]({},_0x42f0c8,_0x3c8172['options']);return _0x4e448e['getAgents'](_0x42f0c8);}})['then'](function(_0x48da77){if(_0x48da77){_0x21fb3e=_0x48da77[_0xb90d('0x41')];if(!_0x3c8172[_0xb90d('0x3c')][_0xb90d('0x42')](_0xb90d('0x82'))){_0x42f0c8[_0xb90d('0x23')]=qs[_0xb90d('0x23')](_0x3c8172[_0xb90d('0x3c')]['limit']);_0x42f0c8['offset']=qs[_0xb90d('0x22')](_0x3c8172[_0xb90d('0x3c')][_0xb90d('0x22')]);}return _0x4e448e[_0xb90d('0x83')](_0x42f0c8);}})[_0xb90d('0x2b')](function(_0x2f3d3f){if(_0x2f3d3f){return _0x2f3d3f?{'count':_0x21fb3e,'rows':_0x2f3d3f}:null;}})[_0xb90d('0x2b')](respondWithResult(_0x2d3290,null))[_0xb90d('0x4e')](handleError(_0x2d3290,null));};