88a46ef42d7f5cb624a232419bf21bb5c909184a
[motion2.git] / server / api / smsQueue / smsQueue.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 _0x20e8=['json','undefined','count','offset','limit','set','Content-Range','apply','reject','save','update','then','destroy','get','SmsQueues','UserProfileResource','error','name','send','index','map','SmsQueue','fieldName','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','type','options','includeAll','include','findAll','rows','catch','params','find','create','body','Unable\x20to\x20retrieve\x20the\x20current\x20user','user','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','describe','getMembers','findOne','UserSmsQueue','rawAttributes','findAndCountAll','UserId','agent','smsPause','updatedAt','format','%s/%s','SIP','createdAt','getTeams','Team','online','voicePause','flatMap','Agents','sequelize','transaction','addTeams','findOrCreate','forEach','emit','userSmsQueue:save','User','field','tq.TeamId','from','join','user_has_teams','clone','ut.UserId\x20=\x20?','push','toString','includes','all','union','compact','value','removeTeams','ids','userSmsQueue:remove','addAgents','omit','spread','removeAgents','isArray','getAgents','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','util','path','sox','to-csv','ejs','fs-extra','crypto','querystring','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','redis','localhost','socket.io-emitter','./smsQueue.socket','register','sendStatus','end','status'];(function(_0x422a06,_0x295e97){var _0x1c84be=function(_0x357a51){while(--_0x357a51){_0x422a06['push'](_0x422a06['shift']());}};_0x1c84be(++_0x295e97);}(_0x20e8,0x6b));var _0x820e=function(_0x181ec4,_0x5c01f1){_0x181ec4=_0x181ec4-0x0;var _0x2653d7=_0x20e8[_0x181ec4];return _0x2653d7;};'use strict';var emlformat=require(_0x820e('0x0'));var rimraf=require(_0x820e('0x1'));var zipdir=require(_0x820e('0x2'));var jsonpatch=require(_0x820e('0x3'));var rp=require(_0x820e('0x4'));var moment=require(_0x820e('0x5'));var BPromise=require('bluebird');var Mustache=require(_0x820e('0x6'));var util=require(_0x820e('0x7'));var path=require(_0x820e('0x8'));var sox=require(_0x820e('0x9'));var csv=require(_0x820e('0xa'));var ejs=require(_0x820e('0xb'));var fs=require('fs');var fs_extra=require(_0x820e('0xc'));var _=require('lodash');var squel=require('squel');var crypto=require(_0x820e('0xd'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0x820e('0xa'));var querystring=require(_0x820e('0xe'));var Papa=require(_0x820e('0xf'));var Redis=require(_0x820e('0x10'));var authService=require('../../components/auth/service');var qs=require(_0x820e('0x11'));var as=require(_0x820e('0x12'));var hardwareService=require(_0x820e('0x13'));var logger=require(_0x820e('0x14'))(_0x820e('0x15'));var utils=require(_0x820e('0x16'));var config=require(_0x820e('0x17'));var licenseUtil=require('../../config/license/util');var db=require(_0x820e('0x18'))['db'];config[_0x820e('0x19')]=_['defaults'](config[_0x820e('0x19')],{'host':_0x820e('0x1a'),'port':0x18eb});var socket=require(_0x820e('0x1b'))(new Redis(config['redis']));require(_0x820e('0x1c'))[_0x820e('0x1d')](socket);function respondWithStatusCode(_0xa9b981,_0x4760e8){_0x4760e8=_0x4760e8||0xcc;return function(_0x12333f){if(_0x12333f){return _0xa9b981[_0x820e('0x1e')](_0x4760e8);}return _0xa9b981['status'](_0x4760e8)[_0x820e('0x1f')]();};}function respondWithResult(_0x473e1e,_0x4fe4dd){_0x4fe4dd=_0x4fe4dd||0xc8;return function(_0x398898){if(_0x398898){return _0x473e1e[_0x820e('0x20')](_0x4fe4dd)[_0x820e('0x21')](_0x398898);}};}function respondWithFilteredResult(_0x33df0c,_0x51766b){return function(_0x42b4d9){if(_0x42b4d9){var _0x22c677=typeof _0x51766b['offset']===_0x820e('0x22')&&typeof _0x51766b['limit']===_0x820e('0x22');var _0x1c2794=_0x42b4d9[_0x820e('0x23')];var _0x33d4c3=_0x22c677?0x0:_0x51766b[_0x820e('0x24')];var _0x2a0acd=_0x22c677?_0x42b4d9['count']:_0x51766b[_0x820e('0x24')]+_0x51766b[_0x820e('0x25')];var _0x5c07a9;if(_0x2a0acd>=_0x1c2794){_0x2a0acd=_0x1c2794;_0x5c07a9=0xc8;}else{_0x5c07a9=0xce;}_0x33df0c[_0x820e('0x20')](_0x5c07a9);return _0x33df0c[_0x820e('0x26')](_0x820e('0x27'),_0x33d4c3+'-'+_0x2a0acd+'/'+_0x1c2794)['json'](_0x42b4d9);}return null;};}function patchUpdates(_0x1a316c){return function(_0x7a37a2){try{jsonpatch[_0x820e('0x28')](_0x7a37a2,_0x1a316c,!![]);}catch(_0x44bb2c){return BPromise[_0x820e('0x29')](_0x44bb2c);}return _0x7a37a2[_0x820e('0x2a')]();};}function saveUpdates(_0x4d212e,_0x3135b8){return function(_0x53135c){if(_0x53135c){return _0x53135c[_0x820e('0x2b')](_0x4d212e)[_0x820e('0x2c')](function(_0x5d79a3){return _0x5d79a3;});}return null;};}function removeEntity(_0x5cfbdb,_0x186342){return function(_0x264cdd){if(_0x264cdd){return _0x264cdd[_0x820e('0x2d')]()[_0x820e('0x2c')](function(){var _0x344b52=_0x264cdd[_0x820e('0x2e')]({'plain':!![]});var _0x273f6f=_0x820e('0x2f');return db[_0x820e('0x30')]['destroy']({'where':{'type':_0x273f6f,'resourceId':_0x344b52['id']}})[_0x820e('0x2c')](function(){return _0x264cdd;});})[_0x820e('0x2c')](function(){_0x5cfbdb[_0x820e('0x20')](0xcc)[_0x820e('0x1f')]();});}};}function handleEntityNotFound(_0x169e12,_0x44d394){return function(_0x4385d3){if(!_0x4385d3){_0x169e12[_0x820e('0x1e')](0x194);}return _0x4385d3;};}function handleError(_0x930703,_0x59a3ab){_0x59a3ab=_0x59a3ab||0x1f4;return function(_0x3b376d){logger[_0x820e('0x31')](_0x3b376d['stack']);if(_0x3b376d[_0x820e('0x32')]){delete _0x3b376d[_0x820e('0x32')];}_0x930703[_0x820e('0x20')](_0x59a3ab)[_0x820e('0x33')](_0x3b376d);};}exports[_0x820e('0x34')]=function(_0x3f1105,_0x3fdcb7){var _0x47ddb5={},_0x593ae8={},_0x3d7dd6={'count':0x0,'rows':[]};var _0x3488a1=_[_0x820e('0x35')](db[_0x820e('0x36')]['rawAttributes'],function(_0x1df22f){return{'name':_0x1df22f[_0x820e('0x37')],'type':_0x1df22f['type'][_0x820e('0x38')]};});_0x593ae8[_0x820e('0x39')]=_['map'](_0x3488a1,_0x820e('0x32'));_0x593ae8[_0x820e('0x3a')]=_[_0x820e('0x3b')](_0x3f1105['query']);_0x593ae8[_0x820e('0x3c')]=_[_0x820e('0x3d')](_0x593ae8[_0x820e('0x39')],_0x593ae8[_0x820e('0x3a')]);_0x47ddb5[_0x820e('0x3e')]=_[_0x820e('0x3d')](_0x593ae8[_0x820e('0x39')],qs[_0x820e('0x3f')](_0x3f1105[_0x820e('0x3a')]['fields']));_0x47ddb5[_0x820e('0x3e')]=_0x47ddb5[_0x820e('0x3e')][_0x820e('0x40')]?_0x47ddb5[_0x820e('0x3e')]:_0x593ae8['model'];if(!_0x3f1105[_0x820e('0x3a')][_0x820e('0x41')](_0x820e('0x42'))){_0x47ddb5[_0x820e('0x25')]=qs['limit'](_0x3f1105[_0x820e('0x3a')]['limit']);_0x47ddb5[_0x820e('0x24')]=qs[_0x820e('0x24')](_0x3f1105[_0x820e('0x3a')][_0x820e('0x24')]);}_0x47ddb5[_0x820e('0x43')]=qs['sort'](_0x3f1105['query'][_0x820e('0x44')]);_0x47ddb5[_0x820e('0x45')]=qs[_0x820e('0x3c')](_[_0x820e('0x46')](_0x3f1105['query'],_0x593ae8[_0x820e('0x3c')]),_0x3488a1);if(_0x3f1105[_0x820e('0x3a')][_0x820e('0x47')]){_0x47ddb5[_0x820e('0x45')]=_[_0x820e('0x48')](_0x47ddb5['where'],{'$or':_['map'](_0x3488a1,function(_0x21284a){if(_0x21284a[_0x820e('0x49')]!=='VIRTUAL'){var _0x24a9e2={};_0x24a9e2[_0x21284a[_0x820e('0x32')]]={'$like':'%'+_0x3f1105['query']['filter']+'%'};return _0x24a9e2;}})});}_0x47ddb5=_['merge']({},_0x47ddb5,_0x3f1105[_0x820e('0x4a')]);var _0x2fd5f7={'where':_0x47ddb5[_0x820e('0x45')]};return db[_0x820e('0x36')][_0x820e('0x23')](_0x2fd5f7)[_0x820e('0x2c')](function(_0x2b2cc9){_0x3d7dd6['count']=_0x2b2cc9;if(_0x3f1105[_0x820e('0x3a')][_0x820e('0x4b')]){_0x47ddb5[_0x820e('0x4c')]=[{'all':!![]}];}return db[_0x820e('0x36')][_0x820e('0x4d')](_0x47ddb5);})[_0x820e('0x2c')](function(_0x196f0a){_0x3d7dd6[_0x820e('0x4e')]=_0x196f0a;return _0x3d7dd6;})[_0x820e('0x2c')](respondWithFilteredResult(_0x3fdcb7,_0x47ddb5))[_0x820e('0x4f')](handleError(_0x3fdcb7,null));};exports['show']=function(_0x507440,_0x4772e4){var _0x3a97d5={'raw':!![],'where':{'id':_0x507440[_0x820e('0x50')]['id']}},_0x5a45cc={};_0x5a45cc[_0x820e('0x39')]=_[_0x820e('0x3b')](db[_0x820e('0x36')]['rawAttributes']);_0x5a45cc[_0x820e('0x3a')]=_['keys'](_0x507440[_0x820e('0x3a')]);_0x5a45cc[_0x820e('0x3c')]=_[_0x820e('0x3d')](_0x5a45cc[_0x820e('0x39')],_0x5a45cc[_0x820e('0x3a')]);_0x3a97d5[_0x820e('0x3e')]=_[_0x820e('0x3d')](_0x5a45cc[_0x820e('0x39')],qs['fields'](_0x507440[_0x820e('0x3a')]['fields']));_0x3a97d5['attributes']=_0x3a97d5['attributes'][_0x820e('0x40')]?_0x3a97d5[_0x820e('0x3e')]:_0x5a45cc['model'];if(_0x507440[_0x820e('0x3a')][_0x820e('0x4b')]){_0x3a97d5[_0x820e('0x4c')]=[{'all':!![]}];}_0x3a97d5=_[_0x820e('0x48')]({},_0x3a97d5,_0x507440['options']);return db[_0x820e('0x36')][_0x820e('0x51')](_0x3a97d5)['then'](handleEntityNotFound(_0x4772e4,null))[_0x820e('0x2c')](respondWithResult(_0x4772e4,null))['catch'](handleError(_0x4772e4,null));};exports[_0x820e('0x52')]=function(_0x5bbcb,_0x2e11fe){return db['SmsQueue']['create'](_0x5bbcb[_0x820e('0x53')],{})[_0x820e('0x2c')](function(_0x5ec1e7){var _0x223231=_0x5bbcb['user'][_0x820e('0x2e')]({'plain':!![]});if(!_0x223231)throw new Error(_0x820e('0x54'));if(_0x223231['role']===_0x820e('0x55')){var _0x7a7c82=_0x5ec1e7[_0x820e('0x2e')]({'plain':!![]});var _0x1922d1='SmsQueues';return db['UserProfileSection'][_0x820e('0x51')]({'where':{'name':_0x1922d1,'userProfileId':_0x223231[_0x820e('0x56')]},'raw':!![]})[_0x820e('0x2c')](function(_0x220e6a){if(_0x220e6a&&_0x220e6a[_0x820e('0x57')]===0x0){return db['UserProfileResource'][_0x820e('0x52')]({'name':_0x7a7c82[_0x820e('0x32')],'resourceId':_0x7a7c82['id'],'type':_0x220e6a[_0x820e('0x32')],'sectionId':_0x220e6a['id']},{})[_0x820e('0x2c')](function(){return _0x5ec1e7;});}else{return _0x5ec1e7;}})[_0x820e('0x4f')](function(_0xc30af4){logger[_0x820e('0x31')](_0x820e('0x58'),_0xc30af4);throw _0xc30af4;});}return _0x5ec1e7;})[_0x820e('0x2c')](respondWithResult(_0x2e11fe,0xc9))[_0x820e('0x4f')](handleError(_0x2e11fe,null));};exports[_0x820e('0x2b')]=function(_0x1cef00,_0x10b166){if(_0x1cef00[_0x820e('0x53')]['id']){delete _0x1cef00[_0x820e('0x53')]['id'];}return db['SmsQueue']['find']({'where':{'id':_0x1cef00['params']['id']}})[_0x820e('0x2c')](handleEntityNotFound(_0x10b166,null))[_0x820e('0x2c')](saveUpdates(_0x1cef00[_0x820e('0x53')],null))[_0x820e('0x2c')](respondWithResult(_0x10b166,null))[_0x820e('0x4f')](handleError(_0x10b166,null));};exports[_0x820e('0x2d')]=function(_0x118b1a,_0x3e9f0b){return db[_0x820e('0x36')][_0x820e('0x51')]({'where':{'id':_0x118b1a[_0x820e('0x50')]['id']}})['then'](handleEntityNotFound(_0x3e9f0b,null))[_0x820e('0x2c')](removeEntity(_0x3e9f0b,null))[_0x820e('0x4f')](handleError(_0x3e9f0b,null));};exports[_0x820e('0x59')]=function(_0x3d4811,_0x51d8a6){return db[_0x820e('0x36')][_0x820e('0x59')]()[_0x820e('0x2c')](respondWithResult(_0x51d8a6,null))[_0x820e('0x4f')](handleError(_0x51d8a6,null));};exports[_0x820e('0x5a')]=function(_0x28d98b,_0x204b1b,_0x3786ab){var _0x59f34a={'raw':!![],'where':{}},_0x4ebbc3={},_0x2edc37;return db[_0x820e('0x36')][_0x820e('0x5b')]({'where':{'id':_0x28d98b[_0x820e('0x50')]['id']}})[_0x820e('0x2c')](handleEntityNotFound(_0x204b1b,null))[_0x820e('0x2c')](function(_0x1c7a9f){if(_0x1c7a9f){_0x2edc37=_0x1c7a9f[_0x820e('0x2e')]({'plain':!![]});_0x4ebbc3[_0x820e('0x39')]=_[_0x820e('0x3b')](db[_0x820e('0x5c')][_0x820e('0x5d')]);_0x4ebbc3[_0x820e('0x3a')]=_[_0x820e('0x3b')](_0x28d98b[_0x820e('0x3a')]);_0x4ebbc3[_0x820e('0x3c')]=_[_0x820e('0x3d')](_0x4ebbc3['model'],_0x4ebbc3['query']);_0x59f34a[_0x820e('0x3e')]=_[_0x820e('0x3d')](_0x4ebbc3[_0x820e('0x39')],qs[_0x820e('0x3f')](_0x28d98b['query'][_0x820e('0x3f')]));_0x59f34a[_0x820e('0x3e')]=_0x59f34a['attributes'][_0x820e('0x40')]?_0x59f34a[_0x820e('0x3e')]:_0x4ebbc3[_0x820e('0x39')];if(!_0x28d98b[_0x820e('0x3a')][_0x820e('0x41')](_0x820e('0x42'))){_0x59f34a[_0x820e('0x25')]=qs['limit'](_0x28d98b[_0x820e('0x3a')]['limit']);_0x59f34a[_0x820e('0x24')]=qs[_0x820e('0x24')](_0x28d98b[_0x820e('0x3a')][_0x820e('0x24')]);}_0x59f34a[_0x820e('0x43')]=qs['sort'](_0x28d98b['query'][_0x820e('0x44')]);_0x59f34a['where']=qs[_0x820e('0x3c')](_[_0x820e('0x46')](_0x28d98b[_0x820e('0x3a')],_0x4ebbc3['filters']));_0x59f34a[_0x820e('0x45')]['SmsQueueId']=_0x1c7a9f['id'];if(_0x28d98b[_0x820e('0x3a')][_0x820e('0x47')]){_0x59f34a[_0x820e('0x45')]=_[_0x820e('0x48')](_0x59f34a['where'],{'$or':_[_0x820e('0x35')](_0x59f34a[_0x820e('0x3e')],function(_0x37d847){var _0x8bfc3c={};_0x8bfc3c[_0x37d847]={'$like':'%'+_0x28d98b[_0x820e('0x3a')][_0x820e('0x47')]+'%'};return _0x8bfc3c;})});}_0x59f34a=_[_0x820e('0x48')]({},_0x59f34a,_0x28d98b[_0x820e('0x4a')]);return db[_0x820e('0x5c')][_0x820e('0x4d')](_0x59f34a);}})['then'](function(_0x3961a9){if(_0x3961a9){return db['User'][_0x820e('0x5e')]({'where':{'id':_[_0x820e('0x35')](_0x3961a9,_0x820e('0x5f')),'role':_0x820e('0x60')},'attributes':['id',_0x820e('0x32'),_0x820e('0x61'),_0x820e('0x62'),'createdAt']});}})[_0x820e('0x2c')](function(_0x5780d5){if(_0x5780d5){return{'count':_0x5780d5[_0x820e('0x23')],'rows':_[_0x820e('0x35')](_0x5780d5['rows'],function(_0x47b65a){return{'membername':_0x47b65a[_0x820e('0x32')],'UserId':_0x47b65a['id'],'queue_name':_0x2edc37['name'],'SmsQueueId':_0x2edc37['id'],'interface':util[_0x820e('0x63')](_0x820e('0x64'),_0x820e('0x65'),_0x47b65a[_0x820e('0x32')]),'penalty':0x0,'paused':_0x47b65a[_0x820e('0x61')],'createdAt':_0x47b65a[_0x820e('0x66')],'updatedAt':_0x47b65a[_0x820e('0x62')]};})};}else{return{'count':0x0,'rows':[]};}})[_0x820e('0x2c')](respondWithFilteredResult(_0x204b1b,_0x59f34a))[_0x820e('0x4f')](handleError(_0x204b1b,null));};exports[_0x820e('0x67')]=function(_0x7e98e4,_0x492233,_0x1f5cce){var _0x264e9d={};var _0x13855e={};var _0x302428;var _0x4a38ee;return db[_0x820e('0x36')][_0x820e('0x5b')]({'where':{'id':_0x7e98e4['params']['id']}})[_0x820e('0x2c')](handleEntityNotFound(_0x492233,null))[_0x820e('0x2c')](function(_0x54fc1e){if(_0x54fc1e){_0x302428=_0x54fc1e;_0x13855e[_0x820e('0x39')]=_['keys'](db[_0x820e('0x68')][_0x820e('0x5d')]);_0x13855e[_0x820e('0x3a')]=_[_0x820e('0x3b')](_0x7e98e4[_0x820e('0x3a')]);_0x13855e[_0x820e('0x3c')]=_[_0x820e('0x3d')](_0x13855e['model'],_0x13855e[_0x820e('0x3a')]);_0x264e9d[_0x820e('0x3e')]=_['intersection'](_0x13855e[_0x820e('0x39')],qs[_0x820e('0x3f')](_0x7e98e4['query'][_0x820e('0x3f')]));_0x264e9d[_0x820e('0x3e')]=_0x264e9d[_0x820e('0x3e')][_0x820e('0x40')]?_0x264e9d[_0x820e('0x3e')]:_0x13855e[_0x820e('0x39')];_0x264e9d['order']=qs[_0x820e('0x44')](_0x7e98e4[_0x820e('0x3a')][_0x820e('0x44')]);_0x264e9d[_0x820e('0x45')]=qs['filters'](_['pick'](_0x7e98e4[_0x820e('0x3a')],_0x13855e[_0x820e('0x3c')]));if(_0x7e98e4[_0x820e('0x3a')]['filter']){_0x264e9d[_0x820e('0x45')]=_[_0x820e('0x48')](_0x264e9d[_0x820e('0x45')],{'$or':_[_0x820e('0x35')](_0x264e9d[_0x820e('0x3e')],function(_0x3511b1){var _0x1f83b6={};_0x1f83b6[_0x3511b1]={'$like':'%'+_0x7e98e4['query'][_0x820e('0x47')]+'%'};return _0x1f83b6;})});}_0x264e9d=_[_0x820e('0x48')]({},_0x264e9d,_0x7e98e4[_0x820e('0x4a')]);return _0x302428[_0x820e('0x67')](_0x264e9d);}})[_0x820e('0x2c')](function(_0x3757e9){if(_0x3757e9){_0x4a38ee=_0x3757e9[_0x820e('0x40')];if(!_0x7e98e4[_0x820e('0x3a')]['hasOwnProperty'](_0x820e('0x42'))){_0x264e9d['limit']=qs[_0x820e('0x25')](_0x7e98e4[_0x820e('0x3a')][_0x820e('0x25')]);_0x264e9d[_0x820e('0x24')]=qs[_0x820e('0x24')](_0x7e98e4[_0x820e('0x3a')][_0x820e('0x24')]);}return _0x302428[_0x820e('0x67')](_0x264e9d);}})['then'](function(_0x4072ea){if(_0x4072ea){return _0x4072ea?{'count':_0x4a38ee,'rows':_0x4072ea}:null;}})[_0x820e('0x2c')](respondWithResult(_0x492233,null))[_0x820e('0x4f')](handleError(_0x492233,null));};exports['addTeams']=function(_0x4588e8,_0x142162,_0x2e44b3){var _0x5d2ece=_0x4588e8[_0x820e('0x53')]['ids'];return db[_0x820e('0x68')][_0x820e('0x4d')]({'where':{'id':_0x5d2ece},'attributes':['id'],'include':[{'model':db['User'],'as':'Agents','attributes':['id',_0x820e('0x32'),_0x820e('0x69'),_0x820e('0x6a'),'interface'],'raw':!![]}]})['then'](function(_0x4f77c8){if(_0x4f77c8){var _0x3bc3ef=_[_0x820e('0x6b')](_0x4f77c8,function(_0x5b30cc){var _0x408a23=_0x5b30cc[_0x820e('0x2e')]({'plain':!![]});return _0x408a23[_0x820e('0x6c')];});return db[_0x820e('0x36')][_0x820e('0x51')]({'where':{'id':_0x4588e8[_0x820e('0x50')]['id']}})['then'](function(_0x5b746a){return db[_0x820e('0x6d')][_0x820e('0x6e')](function(_0x44098e){return _0x5b746a[_0x820e('0x6f')](_0x5d2ece,{'transaction':_0x44098e})[_0x820e('0x2c')](function(){return BPromise['each'](_0x3bc3ef,function(_0xfaaea){return db[_0x820e('0x5c')][_0x820e('0x70')]({'where':{'UserId':_0xfaaea['id'],'SmsQueueId':_0x4588e8['params']['id']},'transaction':_0x44098e});});})[_0x820e('0x2c')](function(){_0x3bc3ef[_0x820e('0x71')](function(_0x301756){socket[_0x820e('0x72')](_0x820e('0x73'),{'UserId':_0x301756['id'],'SmsQueueId':_0x5b746a['id']});});});});});}})[_0x820e('0x2c')](respondWithStatusCode(_0x142162,null))[_0x820e('0x4f')](handleError(_0x142162,null));};exports['removeTeams']=function(_0x447cf6,_0x5d9b8e,_0x101904){return db[_0x820e('0x68')][_0x820e('0x4d')]({'where':{'id':_0x447cf6['query']['ids']},'attributes':['id'],'include':[{'model':db[_0x820e('0x74')],'as':'Agents','attributes':['id'],'raw':!![]}]})[_0x820e('0x2c')](handleEntityNotFound(_0x5d9b8e,null))[_0x820e('0x2c')](function(_0x49753b){var _0x45d3a0=_[_0x820e('0x35')](_0x49753b,'id');var _0x58ccb8=[];var _0x5397f5=[];var _0x13e8da=squel['select']();_0x13e8da[_0x820e('0x75')](_0x820e('0x76'))[_0x820e('0x77')]('team_has_sms_queues','tq')[_0x820e('0x78')](_0x820e('0x79'),'ut','ut.TeamId\x20=\x20tq.TeamId')['where']('SmsQueueId\x20=\x20?',_0x447cf6[_0x820e('0x50')]['id']);for(var _0x43e5df=0x0;_0x43e5df<_0x49753b['length'];_0x43e5df+=0x1){let _0x1f85ed=_0x49753b[_0x43e5df];for(var _0x5cd632=0x0;_0x5cd632<_0x1f85ed[_0x820e('0x6c')][_0x820e('0x40')];_0x5cd632+=0x1){let _0x2500fb=_0x1f85ed[_0x820e('0x6c')][_0x5cd632];var _0x439ef0=_0x13e8da[_0x820e('0x7a')]();_0x439ef0[_0x820e('0x45')](_0x820e('0x7b'),_0x2500fb['id']);_0x5397f5[_0x820e('0x7c')](db[_0x820e('0x6d')][_0x820e('0x3a')](_0x439ef0[_0x820e('0x7d')](),{'type':db['sequelize']['QueryTypes']['SELECT']})[_0x820e('0x2c')](function(_0x42b681){if(_0x42b681[_0x820e('0x40')]===0x1){return _0x2500fb['id'];}else{var _0x2e6faa=_['every'](_[_0x820e('0x35')](_0x42b681,'TeamId'),function(_0x4db90f){return _[_0x820e('0x7e')](_0x45d3a0,_0x4db90f);});if(_0x2e6faa){return _0x2500fb['id'];}}}));}}return BPromise[_0x820e('0x7f')](_0x5397f5)['then'](function(_0x42d4a8){_0x58ccb8=_(_0x58ccb8)[_0x820e('0x80')](_0x42d4a8)[_0x820e('0x81')]()[_0x820e('0x82')]();return db[_0x820e('0x36')][_0x820e('0x51')]({'where':{'id':_0x447cf6['params']['id']}})[_0x820e('0x2c')](function(_0x4c27e1){return db['sequelize'][_0x820e('0x6e')](function(_0x45cb49){return _0x4c27e1[_0x820e('0x83')](_0x447cf6[_0x820e('0x3a')][_0x820e('0x84')],{'transaction':_0x45cb49})['then'](function(){if(!_['isEmpty'](_0x58ccb8)){return _0x4c27e1['removeAgents'](_0x58ccb8,{'transaction':_0x45cb49});}})['then'](function(){_0x58ccb8[_0x820e('0x71')](function(_0x20b5d1){socket[_0x820e('0x72')](_0x820e('0x85'),{'UserId':_0x20b5d1,'SmsQueueId':_0x4c27e1['id']});});});});});});})['then'](respondWithStatusCode(_0x5d9b8e,null))[_0x820e('0x4f')](handleError(_0x5d9b8e,null));};exports[_0x820e('0x86')]=function(_0xd9fd99,_0x58e098,_0x30eee2){return db['SmsQueue'][_0x820e('0x51')]({'where':{'id':_0xd9fd99[_0x820e('0x50')]['id']}})[_0x820e('0x2c')](handleEntityNotFound(_0x58e098,null))[_0x820e('0x2c')](function(_0xee92f2){if(_0xee92f2){return _0xee92f2[_0x820e('0x86')](_0xd9fd99['body']['ids'],_[_0x820e('0x87')](_0xd9fd99[_0x820e('0x53')],['ids','id'])||{})[_0x820e('0x88')](function(_0x1a1f3f){for(var _0xd08734=0x0;_0xd08734<_0xd9fd99['body']['ids'][_0x820e('0x40')];_0xd08734+=0x1){socket[_0x820e('0x72')](_0x820e('0x73'),{'UserId':Number(_0xd9fd99[_0x820e('0x53')][_0x820e('0x84')][_0xd08734]),'SmsQueueId':Number(_0xd9fd99[_0x820e('0x50')]['id'])});}return _0x1a1f3f;});}})[_0x820e('0x2c')](respondWithResult(_0x58e098,null))[_0x820e('0x4f')](handleError(_0x58e098,null));};exports[_0x820e('0x89')]=function(_0x523bed,_0x89162e,_0x34efc8){return db[_0x820e('0x36')][_0x820e('0x51')]({'where':{'id':_0x523bed[_0x820e('0x50')]['id']}})[_0x820e('0x2c')](handleEntityNotFound(_0x89162e,null))[_0x820e('0x2c')](function(_0x2ae7be){if(_0x2ae7be){return _0x2ae7be[_0x820e('0x89')](_0x523bed[_0x820e('0x3a')][_0x820e('0x84')])[_0x820e('0x2c')](function(){if(_[_0x820e('0x8a')](_0x523bed[_0x820e('0x3a')]['ids'])){for(var _0x2f4b7d=0x0;_0x2f4b7d<_0x523bed['query'][_0x820e('0x84')][_0x820e('0x40')];_0x2f4b7d+=0x1){socket['emit'](_0x820e('0x85'),{'UserId':Number(_0x523bed[_0x820e('0x3a')][_0x820e('0x84')][_0x2f4b7d]),'SmsQueueId':Number(_0x523bed[_0x820e('0x50')]['id'])});}}else{socket[_0x820e('0x72')](_0x820e('0x85'),{'UserId':Number(_0x523bed[_0x820e('0x3a')][_0x820e('0x84')]),'SmsQueueId':Number(_0x523bed[_0x820e('0x50')]['id'])});}});}})[_0x820e('0x2c')](respondWithStatusCode(_0x89162e,null))[_0x820e('0x4f')](handleError(_0x89162e,null));};exports['getAgents']=function(_0x1ce708,_0x5445e0,_0x1edc76){var _0x2a0eb7={};var _0x2eadc1={};var _0x4b1027;var _0x320f1c;return db[_0x820e('0x36')][_0x820e('0x5b')]({'where':{'id':_0x1ce708[_0x820e('0x50')]['id']}})[_0x820e('0x2c')](handleEntityNotFound(_0x5445e0,null))[_0x820e('0x2c')](function(_0x130698){if(_0x130698){_0x4b1027=_0x130698;_0x2eadc1[_0x820e('0x39')]=_[_0x820e('0x3b')](db[_0x820e('0x74')][_0x820e('0x5d')]);_0x2eadc1['query']=_['keys'](_0x1ce708['query']);_0x2eadc1[_0x820e('0x3c')]=_[_0x820e('0x3d')](_0x2eadc1['model'],_0x2eadc1[_0x820e('0x3a')]);_0x2a0eb7[_0x820e('0x3e')]=_[_0x820e('0x3d')](_0x2eadc1[_0x820e('0x39')],qs[_0x820e('0x3f')](_0x1ce708[_0x820e('0x3a')][_0x820e('0x3f')]));_0x2a0eb7[_0x820e('0x3e')]=_0x2a0eb7[_0x820e('0x3e')][_0x820e('0x40')]?_0x2a0eb7[_0x820e('0x3e')]:_0x2eadc1[_0x820e('0x39')];_0x2a0eb7[_0x820e('0x43')]=qs['sort'](_0x1ce708['query'][_0x820e('0x44')]);_0x2a0eb7[_0x820e('0x45')]=qs[_0x820e('0x3c')](_[_0x820e('0x46')](_0x1ce708[_0x820e('0x3a')],_0x2eadc1['filters']));if(_0x1ce708[_0x820e('0x3a')][_0x820e('0x47')]){_0x2a0eb7['where']=_['merge'](_0x2a0eb7[_0x820e('0x45')],{'$or':_[_0x820e('0x35')](_0x2a0eb7[_0x820e('0x3e')],function(_0x33861b){var _0x275869={};_0x275869[_0x33861b]={'$like':'%'+_0x1ce708[_0x820e('0x3a')][_0x820e('0x47')]+'%'};return _0x275869;})});}_0x2a0eb7=_[_0x820e('0x48')]({},_0x2a0eb7,_0x1ce708['options']);return _0x4b1027[_0x820e('0x8b')](_0x2a0eb7);}})[_0x820e('0x2c')](function(_0x557ad9){if(_0x557ad9){_0x320f1c=_0x557ad9[_0x820e('0x40')];if(!_0x1ce708[_0x820e('0x3a')][_0x820e('0x41')](_0x820e('0x42'))){_0x2a0eb7[_0x820e('0x25')]=qs[_0x820e('0x25')](_0x1ce708[_0x820e('0x3a')][_0x820e('0x25')]);_0x2a0eb7[_0x820e('0x24')]=qs[_0x820e('0x24')](_0x1ce708[_0x820e('0x3a')][_0x820e('0x24')]);}return _0x4b1027[_0x820e('0x8b')](_0x2a0eb7);}})['then'](function(_0x15618b){if(_0x15618b){return _0x15618b?{'count':_0x320f1c,'rows':_0x15618b}:null;}})[_0x820e('0x2c')](respondWithResult(_0x5445e0,null))['catch'](handleError(_0x5445e0,null));};