Built motion from commit 9d7072cc.|2.5.39
[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 _0x151b=['autoAssociation','getMembers','findOne','UserSmsQueue','findAndCountAll','UserId','agent','smsPause','updatedAt','format','SIP','createdAt','Team','pick','getTeams','addTeams','ids','Agents','online','interface','sequelize','transaction','each','findOrCreate','forEach','emit','userSmsQueue:save','removeTeams','User','select','field','tq.TeamId','team_has_sms_queues','join','user_has_teams','ut.TeamId\x20=\x20tq.TeamId','SmsQueueId\x20=\x20?','clone','ut.UserId\x20=\x20?','push','toString','QueryTypes','every','TeamId','includes','all','union','compact','value','userSmsQueue:remove','addAgents','omit','spread','removeAgents','isArray','getAgents','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','path','sox','to-csv','fs-extra','lodash','crypto','jsforce','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','defaults','redis','socket.io-emitter','./smsQueue.socket','sendStatus','status','end','json','undefined','limit','count','offset','Content-Range','apply','save','update','then','destroy','get','UserProfileResource','error','name','send','map','SmsQueue','rawAttributes','fieldName','type','model','query','keys','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','filters','filter','merge','VIRTUAL','options','includeAll','include','findAll','rows','catch','show','params','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','SmsQueues','UserProfileSection','find'];(function(_0x5f2036,_0x58b611){var _0x53f7ca=function(_0x1c9c7b){while(--_0x1c9c7b){_0x5f2036['push'](_0x5f2036['shift']());}};_0x53f7ca(++_0x58b611);}(_0x151b,0x152));var _0xb151=function(_0x5bd2f1,_0x5ed067){_0x5bd2f1=_0x5bd2f1-0x0;var _0x4209bd=_0x151b[_0x5bd2f1];return _0x4209bd;};'use strict';var emlformat=require(_0xb151('0x0'));var rimraf=require(_0xb151('0x1'));var zipdir=require(_0xb151('0x2'));var jsonpatch=require(_0xb151('0x3'));var rp=require(_0xb151('0x4'));var moment=require(_0xb151('0x5'));var BPromise=require('bluebird');var Mustache=require(_0xb151('0x6'));var util=require('util');var path=require(_0xb151('0x7'));var sox=require(_0xb151('0x8'));var csv=require(_0xb151('0x9'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xb151('0xa'));var _=require(_0xb151('0xb'));var squel=require('squel');var crypto=require(_0xb151('0xc'));var jsforce=require(_0xb151('0xd'));var deskjs=require('desk.js');var toCsv=require(_0xb151('0x9'));var querystring=require(_0xb151('0xe'));var Papa=require('papaparse');var Redis=require(_0xb151('0xf'));var authService=require(_0xb151('0x10'));var qs=require(_0xb151('0x11'));var as=require(_0xb151('0x12'));var hardwareService=require(_0xb151('0x13'));var logger=require('../../config/logger')(_0xb151('0x14'));var utils=require(_0xb151('0x15'));var config=require(_0xb151('0x16'));var licenseUtil=require(_0xb151('0x17'));var db=require(_0xb151('0x18'))['db'];config['redis']=_[_0xb151('0x19')](config[_0xb151('0x1a')],{'host':'localhost','port':0x18eb});var socket=require(_0xb151('0x1b'))(new Redis(config[_0xb151('0x1a')]));require(_0xb151('0x1c'))['register'](socket);function respondWithStatusCode(_0x4b5bde,_0x5a1387){_0x5a1387=_0x5a1387||0xcc;return function(_0x503616){if(_0x503616){return _0x4b5bde[_0xb151('0x1d')](_0x5a1387);}return _0x4b5bde[_0xb151('0x1e')](_0x5a1387)[_0xb151('0x1f')]();};}function respondWithResult(_0x4e8f88,_0x24006d){_0x24006d=_0x24006d||0xc8;return function(_0x479522){if(_0x479522){return _0x4e8f88[_0xb151('0x1e')](_0x24006d)[_0xb151('0x20')](_0x479522);}};}function respondWithFilteredResult(_0x25243a,_0x18c022){return function(_0x1c057d){if(_0x1c057d){var _0x2209fd=typeof _0x18c022['offset']===_0xb151('0x21')&&typeof _0x18c022[_0xb151('0x22')]==='undefined';var _0x265b69=_0x1c057d[_0xb151('0x23')];var _0x49d160=_0x2209fd?0x0:_0x18c022[_0xb151('0x24')];var _0x1bd7db=_0x2209fd?_0x1c057d[_0xb151('0x23')]:_0x18c022[_0xb151('0x24')]+_0x18c022[_0xb151('0x22')];var _0x3392cb;if(_0x1bd7db>=_0x265b69){_0x1bd7db=_0x265b69;_0x3392cb=0xc8;}else{_0x3392cb=0xce;}_0x25243a[_0xb151('0x1e')](_0x3392cb);return _0x25243a['set'](_0xb151('0x25'),_0x49d160+'-'+_0x1bd7db+'/'+_0x265b69)[_0xb151('0x20')](_0x1c057d);}return null;};}function patchUpdates(_0x57647b){return function(_0x50eb11){try{jsonpatch[_0xb151('0x26')](_0x50eb11,_0x57647b,!![]);}catch(_0x2dee53){return BPromise['reject'](_0x2dee53);}return _0x50eb11[_0xb151('0x27')]();};}function saveUpdates(_0x392607,_0x40d4a1){return function(_0x4d93b6){if(_0x4d93b6){return _0x4d93b6[_0xb151('0x28')](_0x392607)[_0xb151('0x29')](function(_0x418000){return _0x418000;});}return null;};}function removeEntity(_0x23e6e9,_0x3283f9){return function(_0xaaf5c9){if(_0xaaf5c9){return _0xaaf5c9[_0xb151('0x2a')]()[_0xb151('0x29')](function(){var _0x3dac64=_0xaaf5c9[_0xb151('0x2b')]({'plain':!![]});var _0x563dc1='SmsQueues';return db[_0xb151('0x2c')][_0xb151('0x2a')]({'where':{'type':_0x563dc1,'resourceId':_0x3dac64['id']}})['then'](function(){return _0xaaf5c9;});})[_0xb151('0x29')](function(){_0x23e6e9['status'](0xcc)[_0xb151('0x1f')]();});}};}function handleEntityNotFound(_0x49d2d1,_0xa177ba){return function(_0x13b48c){if(!_0x13b48c){_0x49d2d1['sendStatus'](0x194);}return _0x13b48c;};}function handleError(_0x2aacc8,_0x505f6a){_0x505f6a=_0x505f6a||0x1f4;return function(_0x322a2e){logger[_0xb151('0x2d')](_0x322a2e['stack']);if(_0x322a2e[_0xb151('0x2e')]){delete _0x322a2e[_0xb151('0x2e')];}_0x2aacc8[_0xb151('0x1e')](_0x505f6a)[_0xb151('0x2f')](_0x322a2e);};}exports['index']=function(_0x386006,_0x403f9d){var _0x1b1d34={},_0x2e2487={},_0x12739f={'count':0x0,'rows':[]};var _0x3b6a53=_[_0xb151('0x30')](db[_0xb151('0x31')][_0xb151('0x32')],function(_0x4de404){return{'name':_0x4de404[_0xb151('0x33')],'type':_0x4de404[_0xb151('0x34')]['key']};});_0x2e2487[_0xb151('0x35')]=_['map'](_0x3b6a53,_0xb151('0x2e'));_0x2e2487[_0xb151('0x36')]=_[_0xb151('0x37')](_0x386006[_0xb151('0x36')]);_0x2e2487['filters']=_[_0xb151('0x38')](_0x2e2487[_0xb151('0x35')],_0x2e2487['query']);_0x1b1d34[_0xb151('0x39')]=_['intersection'](_0x2e2487[_0xb151('0x35')],qs['fields'](_0x386006[_0xb151('0x36')][_0xb151('0x3a')]));_0x1b1d34[_0xb151('0x39')]=_0x1b1d34[_0xb151('0x39')][_0xb151('0x3b')]?_0x1b1d34[_0xb151('0x39')]:_0x2e2487[_0xb151('0x35')];if(!_0x386006['query'][_0xb151('0x3c')](_0xb151('0x3d'))){_0x1b1d34[_0xb151('0x22')]=qs['limit'](_0x386006[_0xb151('0x36')]['limit']);_0x1b1d34[_0xb151('0x24')]=qs[_0xb151('0x24')](_0x386006['query'][_0xb151('0x24')]);}_0x1b1d34[_0xb151('0x3e')]=qs[_0xb151('0x3f')](_0x386006[_0xb151('0x36')]['sort']);_0x1b1d34[_0xb151('0x40')]=qs['filters'](_['pick'](_0x386006[_0xb151('0x36')],_0x2e2487[_0xb151('0x41')]),_0x3b6a53);if(_0x386006[_0xb151('0x36')][_0xb151('0x42')]){_0x1b1d34['where']=_[_0xb151('0x43')](_0x1b1d34[_0xb151('0x40')],{'$or':_[_0xb151('0x30')](_0x3b6a53,function(_0x44ce04){if(_0x44ce04[_0xb151('0x34')]!==_0xb151('0x44')){var _0xc49e4d={};_0xc49e4d[_0x44ce04[_0xb151('0x2e')]]={'$like':'%'+_0x386006[_0xb151('0x36')][_0xb151('0x42')]+'%'};return _0xc49e4d;}})});}_0x1b1d34=_[_0xb151('0x43')]({},_0x1b1d34,_0x386006[_0xb151('0x45')]);var _0x49e9df={'where':_0x1b1d34['where']};return db['SmsQueue'][_0xb151('0x23')](_0x49e9df)[_0xb151('0x29')](function(_0x32484f){_0x12739f[_0xb151('0x23')]=_0x32484f;if(_0x386006[_0xb151('0x36')][_0xb151('0x46')]){_0x1b1d34[_0xb151('0x47')]=[{'all':!![]}];}return db[_0xb151('0x31')][_0xb151('0x48')](_0x1b1d34);})[_0xb151('0x29')](function(_0x5e53f2){_0x12739f[_0xb151('0x49')]=_0x5e53f2;return _0x12739f;})[_0xb151('0x29')](respondWithFilteredResult(_0x403f9d,_0x1b1d34))[_0xb151('0x4a')](handleError(_0x403f9d,null));};exports[_0xb151('0x4b')]=function(_0x7364b8,_0x386d5a){var _0x38a800={'raw':!![],'where':{'id':_0x7364b8[_0xb151('0x4c')]['id']}},_0x599d04={};_0x599d04[_0xb151('0x35')]=_['keys'](db[_0xb151('0x31')][_0xb151('0x32')]);_0x599d04[_0xb151('0x36')]=_[_0xb151('0x37')](_0x7364b8[_0xb151('0x36')]);_0x599d04[_0xb151('0x41')]=_['intersection'](_0x599d04[_0xb151('0x35')],_0x599d04[_0xb151('0x36')]);_0x38a800[_0xb151('0x39')]=_[_0xb151('0x38')](_0x599d04[_0xb151('0x35')],qs['fields'](_0x7364b8[_0xb151('0x36')][_0xb151('0x3a')]));_0x38a800['attributes']=_0x38a800[_0xb151('0x39')][_0xb151('0x3b')]?_0x38a800[_0xb151('0x39')]:_0x599d04[_0xb151('0x35')];if(_0x7364b8[_0xb151('0x36')][_0xb151('0x46')]){_0x38a800[_0xb151('0x47')]=[{'all':!![]}];}_0x38a800=_[_0xb151('0x43')]({},_0x38a800,_0x7364b8[_0xb151('0x45')]);return db[_0xb151('0x31')]['find'](_0x38a800)[_0xb151('0x29')](handleEntityNotFound(_0x386d5a,null))[_0xb151('0x29')](respondWithResult(_0x386d5a,null))[_0xb151('0x4a')](handleError(_0x386d5a,null));};exports[_0xb151('0x4d')]=function(_0x1c9cd1,_0x2c4468){return db[_0xb151('0x31')][_0xb151('0x4d')](_0x1c9cd1[_0xb151('0x4e')],{})[_0xb151('0x29')](function(_0x2c92ea){var _0x2a887d=_0x1c9cd1[_0xb151('0x4f')][_0xb151('0x2b')]({'plain':!![]});if(!_0x2a887d)throw new Error(_0xb151('0x50'));if(_0x2a887d[_0xb151('0x51')]===_0xb151('0x4f')){var _0x3be19a=_0x2c92ea[_0xb151('0x2b')]({'plain':!![]});var _0x406249=_0xb151('0x52');return db[_0xb151('0x53')][_0xb151('0x54')]({'where':{'name':_0x406249,'userProfileId':_0x2a887d['userProfileId']},'raw':!![]})['then'](function(_0x56f599){if(_0x56f599&&_0x56f599[_0xb151('0x55')]===0x0){return db[_0xb151('0x2c')][_0xb151('0x4d')]({'name':_0x3be19a[_0xb151('0x2e')],'resourceId':_0x3be19a['id'],'type':_0x56f599[_0xb151('0x2e')],'sectionId':_0x56f599['id']},{})['then'](function(){return _0x2c92ea;});}else{return _0x2c92ea;}})[_0xb151('0x4a')](function(_0x5c4dd0){logger[_0xb151('0x2d')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x5c4dd0);throw _0x5c4dd0;});}return _0x2c92ea;})['then'](respondWithResult(_0x2c4468,0xc9))[_0xb151('0x4a')](handleError(_0x2c4468,null));};exports[_0xb151('0x28')]=function(_0x4759bd,_0x224b55){if(_0x4759bd[_0xb151('0x4e')]['id']){delete _0x4759bd['body']['id'];}return db[_0xb151('0x31')][_0xb151('0x54')]({'where':{'id':_0x4759bd[_0xb151('0x4c')]['id']}})[_0xb151('0x29')](handleEntityNotFound(_0x224b55,null))['then'](saveUpdates(_0x4759bd[_0xb151('0x4e')],null))[_0xb151('0x29')](respondWithResult(_0x224b55,null))[_0xb151('0x4a')](handleError(_0x224b55,null));};exports['destroy']=function(_0x11b77b,_0x1b22b1){return db[_0xb151('0x31')][_0xb151('0x54')]({'where':{'id':_0x11b77b[_0xb151('0x4c')]['id']}})[_0xb151('0x29')](handleEntityNotFound(_0x1b22b1,null))[_0xb151('0x29')](removeEntity(_0x1b22b1,null))[_0xb151('0x4a')](handleError(_0x1b22b1,null));};exports['describe']=function(_0x363120,_0x49a422){return db['SmsQueue']['describe']()[_0xb151('0x29')](respondWithResult(_0x49a422,null))['catch'](handleError(_0x49a422,null));};exports[_0xb151('0x56')]=function(_0x3cb5f0,_0x4de05b,_0x449506){var _0x3a6d2e={'raw':!![],'where':{}},_0x2135bf={},_0x2577e8;return db[_0xb151('0x31')][_0xb151('0x57')]({'where':{'id':_0x3cb5f0[_0xb151('0x4c')]['id']}})['then'](handleEntityNotFound(_0x4de05b,null))[_0xb151('0x29')](function(_0x38b2fc){if(_0x38b2fc){_0x2577e8=_0x38b2fc[_0xb151('0x2b')]({'plain':!![]});_0x2135bf[_0xb151('0x35')]=_[_0xb151('0x37')](db[_0xb151('0x58')]['rawAttributes']);_0x2135bf[_0xb151('0x36')]=_[_0xb151('0x37')](_0x3cb5f0['query']);_0x2135bf[_0xb151('0x41')]=_[_0xb151('0x38')](_0x2135bf[_0xb151('0x35')],_0x2135bf['query']);_0x3a6d2e['attributes']=_[_0xb151('0x38')](_0x2135bf[_0xb151('0x35')],qs[_0xb151('0x3a')](_0x3cb5f0[_0xb151('0x36')][_0xb151('0x3a')]));_0x3a6d2e['attributes']=_0x3a6d2e[_0xb151('0x39')][_0xb151('0x3b')]?_0x3a6d2e[_0xb151('0x39')]:_0x2135bf[_0xb151('0x35')];if(!_0x3cb5f0['query']['hasOwnProperty']('nolimit')){_0x3a6d2e['limit']=qs[_0xb151('0x22')](_0x3cb5f0['query'][_0xb151('0x22')]);_0x3a6d2e['offset']=qs['offset'](_0x3cb5f0[_0xb151('0x36')][_0xb151('0x24')]);}_0x3a6d2e[_0xb151('0x3e')]=qs['sort'](_0x3cb5f0[_0xb151('0x36')][_0xb151('0x3f')]);_0x3a6d2e[_0xb151('0x40')]=qs[_0xb151('0x41')](_['pick'](_0x3cb5f0[_0xb151('0x36')],_0x2135bf[_0xb151('0x41')]));_0x3a6d2e[_0xb151('0x40')]['SmsQueueId']=_0x38b2fc['id'];if(_0x3cb5f0[_0xb151('0x36')][_0xb151('0x42')]){_0x3a6d2e[_0xb151('0x40')]=_[_0xb151('0x43')](_0x3a6d2e[_0xb151('0x40')],{'$or':_[_0xb151('0x30')](_0x3a6d2e[_0xb151('0x39')],function(_0x812030){var _0x5b079f={};_0x5b079f[_0x812030]={'$like':'%'+_0x3cb5f0[_0xb151('0x36')][_0xb151('0x42')]+'%'};return _0x5b079f;})});}_0x3a6d2e=_['merge']({},_0x3a6d2e,_0x3cb5f0[_0xb151('0x45')]);return db[_0xb151('0x58')][_0xb151('0x48')](_0x3a6d2e);}})[_0xb151('0x29')](function(_0x131de4){if(_0x131de4){return db['User'][_0xb151('0x59')]({'where':{'id':_[_0xb151('0x30')](_0x131de4,_0xb151('0x5a')),'role':_0xb151('0x5b')},'attributes':['id',_0xb151('0x2e'),_0xb151('0x5c'),_0xb151('0x5d'),'createdAt']});}})[_0xb151('0x29')](function(_0x1783a9){if(_0x1783a9){return{'count':_0x1783a9[_0xb151('0x23')],'rows':_[_0xb151('0x30')](_0x1783a9[_0xb151('0x49')],function(_0x23f325){return{'membername':_0x23f325[_0xb151('0x2e')],'UserId':_0x23f325['id'],'queue_name':_0x2577e8[_0xb151('0x2e')],'SmsQueueId':_0x2577e8['id'],'interface':util[_0xb151('0x5e')]('%s/%s',_0xb151('0x5f'),_0x23f325['name']),'penalty':0x0,'paused':_0x23f325['smsPause'],'createdAt':_0x23f325[_0xb151('0x60')],'updatedAt':_0x23f325['updatedAt']};})};}else{return{'count':0x0,'rows':[]};}})[_0xb151('0x29')](respondWithFilteredResult(_0x4de05b,_0x3a6d2e))['catch'](handleError(_0x4de05b,null));};exports['getTeams']=function(_0x137c8e,_0x18900b,_0x1ecb18){var _0x1c8365={};var _0x403975={};var _0x531595;var _0x138f24;return db[_0xb151('0x31')][_0xb151('0x57')]({'where':{'id':_0x137c8e['params']['id']}})[_0xb151('0x29')](handleEntityNotFound(_0x18900b,null))[_0xb151('0x29')](function(_0x5a6d5e){if(_0x5a6d5e){_0x531595=_0x5a6d5e;_0x403975[_0xb151('0x35')]=_['keys'](db[_0xb151('0x61')][_0xb151('0x32')]);_0x403975[_0xb151('0x36')]=_[_0xb151('0x37')](_0x137c8e[_0xb151('0x36')]);_0x403975['filters']=_['intersection'](_0x403975[_0xb151('0x35')],_0x403975['query']);_0x1c8365[_0xb151('0x39')]=_[_0xb151('0x38')](_0x403975[_0xb151('0x35')],qs[_0xb151('0x3a')](_0x137c8e[_0xb151('0x36')]['fields']));_0x1c8365[_0xb151('0x39')]=_0x1c8365[_0xb151('0x39')][_0xb151('0x3b')]?_0x1c8365[_0xb151('0x39')]:_0x403975[_0xb151('0x35')];_0x1c8365['order']=qs[_0xb151('0x3f')](_0x137c8e[_0xb151('0x36')][_0xb151('0x3f')]);_0x1c8365[_0xb151('0x40')]=qs[_0xb151('0x41')](_[_0xb151('0x62')](_0x137c8e[_0xb151('0x36')],_0x403975['filters']));if(_0x137c8e[_0xb151('0x36')][_0xb151('0x42')]){_0x1c8365[_0xb151('0x40')]=_[_0xb151('0x43')](_0x1c8365[_0xb151('0x40')],{'$or':_['map'](_0x1c8365['attributes'],function(_0x3af3bf){var _0x8b0d55={};_0x8b0d55[_0x3af3bf]={'$like':'%'+_0x137c8e[_0xb151('0x36')][_0xb151('0x42')]+'%'};return _0x8b0d55;})});}_0x1c8365=_[_0xb151('0x43')]({},_0x1c8365,_0x137c8e[_0xb151('0x45')]);return _0x531595[_0xb151('0x63')](_0x1c8365);}})[_0xb151('0x29')](function(_0x2c53e1){if(_0x2c53e1){_0x138f24=_0x2c53e1[_0xb151('0x3b')];if(!_0x137c8e[_0xb151('0x36')]['hasOwnProperty']('nolimit')){_0x1c8365['limit']=qs['limit'](_0x137c8e[_0xb151('0x36')][_0xb151('0x22')]);_0x1c8365[_0xb151('0x24')]=qs['offset'](_0x137c8e[_0xb151('0x36')][_0xb151('0x24')]);}return _0x531595[_0xb151('0x63')](_0x1c8365);}})[_0xb151('0x29')](function(_0x326b3d){if(_0x326b3d){return _0x326b3d?{'count':_0x138f24,'rows':_0x326b3d}:null;}})['then'](respondWithResult(_0x18900b,null))['catch'](handleError(_0x18900b,null));};exports[_0xb151('0x64')]=function(_0x364e33,_0x470c8f,_0x3b739c){var _0x3a0367=_0x364e33[_0xb151('0x4e')][_0xb151('0x65')];return db[_0xb151('0x61')][_0xb151('0x48')]({'where':{'id':_0x3a0367},'attributes':['id'],'include':[{'model':db['User'],'as':_0xb151('0x66'),'attributes':['id',_0xb151('0x2e'),_0xb151('0x67'),'voicePause',_0xb151('0x68')],'raw':!![]}]})[_0xb151('0x29')](function(_0x3cc3ed){if(_0x3cc3ed){var _0x3fa208=_['flatMap'](_0x3cc3ed,function(_0x2f1d54){var _0x3e93ff=_0x2f1d54[_0xb151('0x2b')]({'plain':!![]});return _0x3e93ff[_0xb151('0x66')];});return db[_0xb151('0x31')][_0xb151('0x54')]({'where':{'id':_0x364e33[_0xb151('0x4c')]['id']}})[_0xb151('0x29')](function(_0x1db0de){return db[_0xb151('0x69')][_0xb151('0x6a')](function(_0x314af1){return _0x1db0de[_0xb151('0x64')](_0x3a0367,{'transaction':_0x314af1})[_0xb151('0x29')](function(){return BPromise[_0xb151('0x6b')](_0x3fa208,function(_0x50bf0c){return db[_0xb151('0x58')][_0xb151('0x6c')]({'where':{'UserId':_0x50bf0c['id'],'SmsQueueId':_0x364e33[_0xb151('0x4c')]['id']},'transaction':_0x314af1});});})[_0xb151('0x29')](function(){_0x3fa208[_0xb151('0x6d')](function(_0x31898c){socket[_0xb151('0x6e')](_0xb151('0x6f'),{'UserId':_0x31898c['id'],'SmsQueueId':_0x1db0de['id']});});});});});}})[_0xb151('0x29')](respondWithStatusCode(_0x470c8f,null))[_0xb151('0x4a')](handleError(_0x470c8f,null));};exports[_0xb151('0x70')]=function(_0xd45d46,_0xb80774,_0x37e2fe){return db[_0xb151('0x61')][_0xb151('0x48')]({'where':{'id':_0xd45d46[_0xb151('0x36')][_0xb151('0x65')]},'attributes':['id'],'include':[{'model':db[_0xb151('0x71')],'as':_0xb151('0x66'),'attributes':['id'],'raw':!![]}]})[_0xb151('0x29')](handleEntityNotFound(_0xb80774,null))[_0xb151('0x29')](function(_0x292705){var _0x5717b9=_[_0xb151('0x30')](_0x292705,'id');var _0x425c54=[];var _0x3b83b5=[];var _0x1a12a4=squel[_0xb151('0x72')]();_0x1a12a4[_0xb151('0x73')](_0xb151('0x74'))['from'](_0xb151('0x75'),'tq')[_0xb151('0x76')](_0xb151('0x77'),'ut',_0xb151('0x78'))[_0xb151('0x40')](_0xb151('0x79'),_0xd45d46[_0xb151('0x4c')]['id']);for(var _0x182211=0x0;_0x182211<_0x292705[_0xb151('0x3b')];_0x182211+=0x1){let _0x7bddcf=_0x292705[_0x182211];for(var _0x24a254=0x0;_0x24a254<_0x7bddcf[_0xb151('0x66')][_0xb151('0x3b')];_0x24a254+=0x1){let _0x2d4fcb=_0x7bddcf['Agents'][_0x24a254];var _0x1530d5=_0x1a12a4[_0xb151('0x7a')]();_0x1530d5[_0xb151('0x40')](_0xb151('0x7b'),_0x2d4fcb['id']);_0x3b83b5[_0xb151('0x7c')](db[_0xb151('0x69')]['query'](_0x1530d5[_0xb151('0x7d')](),{'type':db['sequelize'][_0xb151('0x7e')]['SELECT']})[_0xb151('0x29')](function(_0x1b95d5){if(_0x1b95d5[_0xb151('0x3b')]===0x1){return _0x2d4fcb['id'];}else{var _0x4dc13b=_[_0xb151('0x7f')](_[_0xb151('0x30')](_0x1b95d5,_0xb151('0x80')),function(_0x2e0733){return _[_0xb151('0x81')](_0x5717b9,_0x2e0733);});if(_0x4dc13b){return _0x2d4fcb['id'];}}}));}}return BPromise[_0xb151('0x82')](_0x3b83b5)[_0xb151('0x29')](function(_0xb9acd5){_0x425c54=_(_0x425c54)[_0xb151('0x83')](_0xb9acd5)[_0xb151('0x84')]()[_0xb151('0x85')]();return db[_0xb151('0x31')][_0xb151('0x54')]({'where':{'id':_0xd45d46[_0xb151('0x4c')]['id']}})['then'](function(_0x53d802){return db['sequelize']['transaction'](function(_0x57b285){return _0x53d802[_0xb151('0x70')](_0xd45d46[_0xb151('0x36')][_0xb151('0x65')],{'transaction':_0x57b285})[_0xb151('0x29')](function(){if(!_['isEmpty'](_0x425c54)){return _0x53d802['removeAgents'](_0x425c54,{'transaction':_0x57b285});}})['then'](function(){_0x425c54[_0xb151('0x6d')](function(_0x41f735){socket['emit'](_0xb151('0x86'),{'UserId':_0x41f735,'SmsQueueId':_0x53d802['id']});});});});});});})[_0xb151('0x29')](respondWithStatusCode(_0xb80774,null))[_0xb151('0x4a')](handleError(_0xb80774,null));};exports[_0xb151('0x87')]=function(_0x486798,_0x5ca620,_0x2c28ce){return db[_0xb151('0x31')][_0xb151('0x54')]({'where':{'id':_0x486798['params']['id']}})[_0xb151('0x29')](handleEntityNotFound(_0x5ca620,null))['then'](function(_0x20be85){if(_0x20be85){return _0x20be85[_0xb151('0x87')](_0x486798[_0xb151('0x4e')]['ids'],_[_0xb151('0x88')](_0x486798['body'],[_0xb151('0x65'),'id'])||{})[_0xb151('0x89')](function(_0x2d6029){for(var _0x247ee3=0x0;_0x247ee3<_0x486798[_0xb151('0x4e')][_0xb151('0x65')]['length'];_0x247ee3+=0x1){socket[_0xb151('0x6e')]('userSmsQueue:save',{'UserId':Number(_0x486798[_0xb151('0x4e')][_0xb151('0x65')][_0x247ee3]),'SmsQueueId':Number(_0x486798['params']['id'])});}return _0x2d6029;});}})['then'](respondWithResult(_0x5ca620,null))[_0xb151('0x4a')](handleError(_0x5ca620,null));};exports[_0xb151('0x8a')]=function(_0x3e3f82,_0x31b03b,_0x4bbd62){return db[_0xb151('0x31')][_0xb151('0x54')]({'where':{'id':_0x3e3f82['params']['id']}})[_0xb151('0x29')](handleEntityNotFound(_0x31b03b,null))[_0xb151('0x29')](function(_0x45cba3){if(_0x45cba3){return _0x45cba3[_0xb151('0x8a')](_0x3e3f82[_0xb151('0x36')][_0xb151('0x65')])[_0xb151('0x29')](function(){if(_[_0xb151('0x8b')](_0x3e3f82[_0xb151('0x36')][_0xb151('0x65')])){for(var _0x338236=0x0;_0x338236<_0x3e3f82[_0xb151('0x36')]['ids'][_0xb151('0x3b')];_0x338236+=0x1){socket[_0xb151('0x6e')](_0xb151('0x86'),{'UserId':Number(_0x3e3f82[_0xb151('0x36')][_0xb151('0x65')][_0x338236]),'SmsQueueId':Number(_0x3e3f82[_0xb151('0x4c')]['id'])});}}else{socket[_0xb151('0x6e')](_0xb151('0x86'),{'UserId':Number(_0x3e3f82[_0xb151('0x36')][_0xb151('0x65')]),'SmsQueueId':Number(_0x3e3f82[_0xb151('0x4c')]['id'])});}});}})[_0xb151('0x29')](respondWithStatusCode(_0x31b03b,null))[_0xb151('0x4a')](handleError(_0x31b03b,null));};exports['getAgents']=function(_0x10b3b1,_0x5c3fbf,_0x2012ad){var _0x46b196={};var _0x5bbf7b={};var _0xa92709;var _0x422237;return db['SmsQueue'][_0xb151('0x57')]({'where':{'id':_0x10b3b1[_0xb151('0x4c')]['id']}})[_0xb151('0x29')](handleEntityNotFound(_0x5c3fbf,null))['then'](function(_0x57ad08){if(_0x57ad08){_0xa92709=_0x57ad08;_0x5bbf7b[_0xb151('0x35')]=_[_0xb151('0x37')](db[_0xb151('0x71')][_0xb151('0x32')]);_0x5bbf7b[_0xb151('0x36')]=_[_0xb151('0x37')](_0x10b3b1['query']);_0x5bbf7b[_0xb151('0x41')]=_['intersection'](_0x5bbf7b[_0xb151('0x35')],_0x5bbf7b[_0xb151('0x36')]);_0x46b196[_0xb151('0x39')]=_['intersection'](_0x5bbf7b[_0xb151('0x35')],qs['fields'](_0x10b3b1['query'][_0xb151('0x3a')]));_0x46b196[_0xb151('0x39')]=_0x46b196['attributes'][_0xb151('0x3b')]?_0x46b196['attributes']:_0x5bbf7b[_0xb151('0x35')];_0x46b196[_0xb151('0x3e')]=qs[_0xb151('0x3f')](_0x10b3b1[_0xb151('0x36')]['sort']);_0x46b196[_0xb151('0x40')]=qs[_0xb151('0x41')](_[_0xb151('0x62')](_0x10b3b1[_0xb151('0x36')],_0x5bbf7b['filters']));if(_0x10b3b1[_0xb151('0x36')]['filter']){_0x46b196[_0xb151('0x40')]=_['merge'](_0x46b196['where'],{'$or':_[_0xb151('0x30')](_0x46b196['attributes'],function(_0x289ca5){var _0x352720={};_0x352720[_0x289ca5]={'$like':'%'+_0x10b3b1[_0xb151('0x36')][_0xb151('0x42')]+'%'};return _0x352720;})});}_0x46b196=_['merge']({},_0x46b196,_0x10b3b1[_0xb151('0x45')]);return _0xa92709[_0xb151('0x8c')](_0x46b196);}})[_0xb151('0x29')](function(_0x51dd2c){if(_0x51dd2c){_0x422237=_0x51dd2c[_0xb151('0x3b')];if(!_0x10b3b1[_0xb151('0x36')][_0xb151('0x3c')](_0xb151('0x3d'))){_0x46b196[_0xb151('0x22')]=qs[_0xb151('0x22')](_0x10b3b1[_0xb151('0x36')][_0xb151('0x22')]);_0x46b196['offset']=qs[_0xb151('0x24')](_0x10b3b1[_0xb151('0x36')][_0xb151('0x24')]);}return _0xa92709[_0xb151('0x8c')](_0x46b196);}})[_0xb151('0x29')](function(_0x5293bb){if(_0x5293bb){return _0x5293bb?{'count':_0x422237,'rows':_0x5293bb}:null;}})[_0xb151('0x29')](respondWithResult(_0x5c3fbf,null))[_0xb151('0x4a')](handleError(_0x5c3fbf,null));};