963613929e1c2f2b18ec18189e26211d33dba7f6
[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 _0x0cf3=['TeamId','includes','all','union','value','isEmpty','removeAgents','userSmsQueue:remove','addAgents','omit','isArray','getAgents','html-pdf','fast-json-patch','request-promise','moment','bluebird','mustache','path','sox','ejs','squel','crypto','jsforce','desk.js','to-csv','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./smsQueue.socket','register','sendStatus','status','end','json','count','offset','set','apply','update','then','destroy','get','UserProfileResource','error','stack','name','map','SmsQueue','rawAttributes','fieldName','type','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','limit','order','sort','pick','merge','where','includeAll','findAll','rows','show','params','filtears','include','options','find','catch','create','body','user','role','SmsQueues','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','describe','findOne','SmsQueueId','filter','UserId','agent','updatedAt','createdAt','%s/%s','SIP','Team','getTeams','addTeams','User','Agents','voicePause','interface','flatMap','sequelize','transaction','each','UserSmsQueue','findOrCreate','forEach','emit','removeTeams','ids','select','field','tq.TeamId','team_has_sms_queues','join','ut.TeamId\x20=\x20tq.TeamId','SmsQueueId\x20=\x20?','clone','ut.UserId\x20=\x20?','push','toString','QueryTypes','SELECT'];(function(_0x36f271,_0x2bbe64){var _0x2de58b=function(_0x1371f1){while(--_0x1371f1){_0x36f271['push'](_0x36f271['shift']());}};_0x2de58b(++_0x2bbe64);}(_0x0cf3,0x95));var _0x30cf=function(_0x4b5d37,_0x579c92){_0x4b5d37=_0x4b5d37-0x0;var _0x3fb945=_0x0cf3[_0x4b5d37];return _0x3fb945;};'use strict';var pdf=require(_0x30cf('0x0'));var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require(_0x30cf('0x1'));var rp=require(_0x30cf('0x2'));var moment=require(_0x30cf('0x3'));var BPromise=require(_0x30cf('0x4'));var Mustache=require(_0x30cf('0x5'));var util=require('util');var path=require(_0x30cf('0x6'));var sox=require(_0x30cf('0x7'));var csv=require('to-csv');var ejs=require(_0x30cf('0x8'));var fs=require('fs');var _=require('lodash');var squel=require(_0x30cf('0x9'));var crypto=require(_0x30cf('0xa'));var jsforce=require(_0x30cf('0xb'));var deskjs=require(_0x30cf('0xc'));var toCsv=require(_0x30cf('0xd'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0x30cf('0xe'));var qs=require(_0x30cf('0xf'));var as=require(_0x30cf('0x10'));var hardwareService=require(_0x30cf('0x11'));var logger=require(_0x30cf('0x12'))(_0x30cf('0x13'));var utils=require(_0x30cf('0x14'));var config=require(_0x30cf('0x15'));var licenseUtil=require('../../config/license/util');var db=require(_0x30cf('0x16'))['db'];config[_0x30cf('0x17')]=_[_0x30cf('0x18')](config[_0x30cf('0x17')],{'host':_0x30cf('0x19'),'port':0x18eb});var socket=require(_0x30cf('0x1a'))(new Redis(config['redis']));require(_0x30cf('0x1b'))[_0x30cf('0x1c')](socket);function respondWithStatusCode(_0x4b3b6f,_0x157fc4){_0x157fc4=_0x157fc4||0xcc;return function(_0x48cf0c){if(_0x48cf0c){return _0x4b3b6f[_0x30cf('0x1d')](_0x157fc4);}return _0x4b3b6f[_0x30cf('0x1e')](_0x157fc4)[_0x30cf('0x1f')]();};}function respondWithResult(_0x27e0ab,_0x3013ea){_0x3013ea=_0x3013ea||0xc8;return function(_0x38836d){if(_0x38836d){return _0x27e0ab[_0x30cf('0x1e')](_0x3013ea)[_0x30cf('0x20')](_0x38836d);}};}function respondWithFilteredResult(_0x2325c1,_0x329c55){return function(_0xfc3987){if(_0xfc3987){var _0x4a458=_0xfc3987[_0x30cf('0x21')],_0x384c75=_0x329c55[_0x30cf('0x22')],_0x3a9fbe=_0x329c55['offset']+_0x329c55['limit'],_0x1a8f19;if(_0x3a9fbe>=_0x4a458){_0x3a9fbe=_0x4a458;_0x1a8f19=0xc8;}else{_0x1a8f19=0xce;}_0x2325c1[_0x30cf('0x1e')](_0x1a8f19);return _0x2325c1[_0x30cf('0x23')]('Content-Range',_0x384c75+'-'+_0x3a9fbe+'/'+_0x4a458)[_0x30cf('0x20')](_0xfc3987);}return null;};}function patchUpdates(_0x234fce){return function(_0x749ba){try{jsonpatch[_0x30cf('0x24')](_0x749ba,_0x234fce,!![]);}catch(_0x39475a){return BPromise['reject'](_0x39475a);}return _0x749ba['save']();};}function saveUpdates(_0x51c996,_0x592062){return function(_0x42cc8a){if(_0x42cc8a){return _0x42cc8a[_0x30cf('0x25')](_0x51c996)[_0x30cf('0x26')](function(_0x3dc24f){return _0x3dc24f;});}return null;};}function removeEntity(_0x36c6bb,_0x582880){return function(_0x166f75){if(_0x166f75){return _0x166f75[_0x30cf('0x27')]()[_0x30cf('0x26')](function(){var _0x43dc37=_0x166f75[_0x30cf('0x28')]({'plain':!![]});var _0x5d9403='SmsQueues';return db[_0x30cf('0x29')][_0x30cf('0x27')]({'where':{'type':_0x5d9403,'resourceId':_0x43dc37['id']}})[_0x30cf('0x26')](function(){return _0x166f75;});})[_0x30cf('0x26')](function(){_0x36c6bb[_0x30cf('0x1e')](0xcc)[_0x30cf('0x1f')]();});}};}function handleEntityNotFound(_0x4105a9,_0x2b0c2e){return function(_0x420800){if(!_0x420800){_0x4105a9[_0x30cf('0x1d')](0x194);}return _0x420800;};}function handleError(_0x1b5619,_0x2629e4){_0x2629e4=_0x2629e4||0x1f4;return function(_0x427e6a){logger[_0x30cf('0x2a')](_0x427e6a[_0x30cf('0x2b')]);if(_0x427e6a['name']){delete _0x427e6a[_0x30cf('0x2c')];}_0x1b5619[_0x30cf('0x1e')](_0x2629e4)['send'](_0x427e6a);};}exports['index']=function(_0x32315f,_0x58320e){var _0x32da8d={},_0x67d2cf={},_0x29d570={'count':0x0,'rows':[]};var _0x58395b=_[_0x30cf('0x2d')](db[_0x30cf('0x2e')][_0x30cf('0x2f')],function(_0x37a5cd){return{'name':_0x37a5cd[_0x30cf('0x30')],'type':_0x37a5cd[_0x30cf('0x31')]['key']};});_0x67d2cf[_0x30cf('0x32')]=_[_0x30cf('0x2d')](_0x58395b,_0x30cf('0x2c'));_0x67d2cf[_0x30cf('0x33')]=_[_0x30cf('0x34')](_0x32315f[_0x30cf('0x33')]);_0x67d2cf[_0x30cf('0x35')]=_[_0x30cf('0x36')](_0x67d2cf['model'],_0x67d2cf[_0x30cf('0x33')]);_0x32da8d[_0x30cf('0x37')]=_[_0x30cf('0x36')](_0x67d2cf[_0x30cf('0x32')],qs[_0x30cf('0x38')](_0x32315f[_0x30cf('0x33')][_0x30cf('0x38')]));_0x32da8d[_0x30cf('0x37')]=_0x32da8d['attributes'][_0x30cf('0x39')]?_0x32da8d[_0x30cf('0x37')]:_0x67d2cf[_0x30cf('0x32')];if(!_0x32315f[_0x30cf('0x33')][_0x30cf('0x3a')](_0x30cf('0x3b'))){_0x32da8d[_0x30cf('0x3c')]=qs[_0x30cf('0x3c')](_0x32315f[_0x30cf('0x33')][_0x30cf('0x3c')]);_0x32da8d[_0x30cf('0x22')]=qs[_0x30cf('0x22')](_0x32315f[_0x30cf('0x33')][_0x30cf('0x22')]);}_0x32da8d[_0x30cf('0x3d')]=qs[_0x30cf('0x3e')](_0x32315f[_0x30cf('0x33')][_0x30cf('0x3e')]);_0x32da8d['where']=qs[_0x30cf('0x35')](_[_0x30cf('0x3f')](_0x32315f[_0x30cf('0x33')],_0x67d2cf[_0x30cf('0x35')]),_0x58395b);if(_0x32315f[_0x30cf('0x33')]['filter']){_0x32da8d['where']=_[_0x30cf('0x40')](_0x32da8d[_0x30cf('0x41')],{'$or':_[_0x30cf('0x2d')](_0x58395b,function(_0x3f53dc){if(_0x3f53dc['type']!=='VIRTUAL'){var _0xea772b={};_0xea772b[_0x3f53dc[_0x30cf('0x2c')]]={'$like':'%'+_0x32315f[_0x30cf('0x33')]['filter']+'%'};return _0xea772b;}})});}_0x32da8d=_[_0x30cf('0x40')]({},_0x32da8d,_0x32315f['options']);var _0x2f1e0c={'where':_0x32da8d[_0x30cf('0x41')]};return db['SmsQueue'][_0x30cf('0x21')](_0x2f1e0c)['then'](function(_0x34b8b6){_0x29d570['count']=_0x34b8b6;if(_0x32315f[_0x30cf('0x33')][_0x30cf('0x42')]){_0x32da8d['include']=[{'all':!![]}];}return db[_0x30cf('0x2e')][_0x30cf('0x43')](_0x32da8d);})[_0x30cf('0x26')](function(_0x27adc6){_0x29d570[_0x30cf('0x44')]=_0x27adc6;return _0x29d570;})['then'](respondWithFilteredResult(_0x58320e,_0x32da8d))['catch'](handleError(_0x58320e,null));};exports[_0x30cf('0x45')]=function(_0x790321,_0x1fcbdb){var _0x23c289={'raw':!![],'where':{'id':_0x790321[_0x30cf('0x46')]['id']}},_0x2cb31b={};_0x2cb31b[_0x30cf('0x32')]=_[_0x30cf('0x34')](db['SmsQueue']['rawAttributes']);_0x2cb31b[_0x30cf('0x33')]=_['keys'](_0x790321[_0x30cf('0x33')]);_0x2cb31b[_0x30cf('0x47')]=_[_0x30cf('0x36')](_0x2cb31b[_0x30cf('0x32')],_0x2cb31b[_0x30cf('0x33')]);_0x23c289[_0x30cf('0x37')]=_[_0x30cf('0x36')](_0x2cb31b['model'],qs[_0x30cf('0x38')](_0x790321['query']['fields']));_0x23c289[_0x30cf('0x37')]=_0x23c289['attributes']['length']?_0x23c289[_0x30cf('0x37')]:_0x2cb31b[_0x30cf('0x32')];if(_0x790321[_0x30cf('0x33')][_0x30cf('0x42')]){_0x23c289[_0x30cf('0x48')]=[{'all':!![]}];}_0x23c289=_[_0x30cf('0x40')]({},_0x23c289,_0x790321[_0x30cf('0x49')]);return db[_0x30cf('0x2e')][_0x30cf('0x4a')](_0x23c289)[_0x30cf('0x26')](handleEntityNotFound(_0x1fcbdb,null))[_0x30cf('0x26')](respondWithResult(_0x1fcbdb,null))[_0x30cf('0x4b')](handleError(_0x1fcbdb,null));};exports['create']=function(_0x4aadcd,_0x54fcc1){return db[_0x30cf('0x2e')][_0x30cf('0x4c')](_0x4aadcd[_0x30cf('0x4d')],{})['then'](function(_0x523c47){var _0x5fdf3d=_0x4aadcd[_0x30cf('0x4e')][_0x30cf('0x28')]({'plain':!![]});if(!_0x5fdf3d)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x5fdf3d[_0x30cf('0x4f')]===_0x30cf('0x4e')){var _0x1c097e=_0x523c47[_0x30cf('0x28')]({'plain':!![]});var _0x2d11ae=_0x30cf('0x50');return db[_0x30cf('0x51')][_0x30cf('0x4a')]({'where':{'name':_0x2d11ae,'userProfileId':_0x5fdf3d[_0x30cf('0x52')]},'raw':!![]})['then'](function(_0x10ab00){if(_0x10ab00&&_0x10ab00[_0x30cf('0x53')]===0x0){return db[_0x30cf('0x29')][_0x30cf('0x4c')]({'name':_0x1c097e[_0x30cf('0x2c')],'resourceId':_0x1c097e['id'],'type':_0x10ab00[_0x30cf('0x2c')],'sectionId':_0x10ab00['id']},{})[_0x30cf('0x26')](function(){return _0x523c47;});}else{return _0x523c47;}})[_0x30cf('0x4b')](function(_0x3e9ebc){logger[_0x30cf('0x2a')](_0x30cf('0x54'),_0x3e9ebc);throw _0x3e9ebc;});}return _0x523c47;})['then'](respondWithResult(_0x54fcc1,0xc9))[_0x30cf('0x4b')](handleError(_0x54fcc1,null));};exports['update']=function(_0x3e7b26,_0x399cd1){if(_0x3e7b26['body']['id']){delete _0x3e7b26[_0x30cf('0x4d')]['id'];}return db[_0x30cf('0x2e')]['find']({'where':{'id':_0x3e7b26[_0x30cf('0x46')]['id']}})[_0x30cf('0x26')](handleEntityNotFound(_0x399cd1,null))[_0x30cf('0x26')](saveUpdates(_0x3e7b26['body'],null))[_0x30cf('0x26')](respondWithResult(_0x399cd1,null))[_0x30cf('0x4b')](handleError(_0x399cd1,null));};exports[_0x30cf('0x27')]=function(_0x4360d2,_0x10f174){return db[_0x30cf('0x2e')]['find']({'where':{'id':_0x4360d2[_0x30cf('0x46')]['id']}})[_0x30cf('0x26')](handleEntityNotFound(_0x10f174,null))['then'](removeEntity(_0x10f174,null))[_0x30cf('0x4b')](handleError(_0x10f174,null));};exports['describe']=function(_0x2c3001,_0x420cb0){return db['SmsQueue'][_0x30cf('0x55')]()[_0x30cf('0x26')](respondWithResult(_0x420cb0,null))[_0x30cf('0x4b')](handleError(_0x420cb0,null));};exports['getMembers']=function(_0x301c36,_0x4583d3,_0x215bfb){var _0x5bbb4b={'raw':!![],'where':{}},_0x38e3d8={},_0x27eb19;return db['SmsQueue'][_0x30cf('0x56')]({'where':{'id':_0x301c36[_0x30cf('0x46')]['id']}})[_0x30cf('0x26')](handleEntityNotFound(_0x4583d3,null))['then'](function(_0x2c7196){if(_0x2c7196){_0x27eb19=_0x2c7196[_0x30cf('0x28')]({'plain':!![]});_0x38e3d8[_0x30cf('0x32')]=_[_0x30cf('0x34')](db['UserSmsQueue'][_0x30cf('0x2f')]);_0x38e3d8['query']=_['keys'](_0x301c36[_0x30cf('0x33')]);_0x38e3d8[_0x30cf('0x35')]=_['intersection'](_0x38e3d8[_0x30cf('0x32')],_0x38e3d8[_0x30cf('0x33')]);_0x5bbb4b[_0x30cf('0x37')]=_[_0x30cf('0x36')](_0x38e3d8[_0x30cf('0x32')],qs[_0x30cf('0x38')](_0x301c36['query']['fields']));_0x5bbb4b[_0x30cf('0x37')]=_0x5bbb4b[_0x30cf('0x37')][_0x30cf('0x39')]?_0x5bbb4b[_0x30cf('0x37')]:_0x38e3d8[_0x30cf('0x32')];if(!_0x301c36['query']['hasOwnProperty'](_0x30cf('0x3b'))){_0x5bbb4b[_0x30cf('0x3c')]=qs['limit'](_0x301c36['query'][_0x30cf('0x3c')]);_0x5bbb4b[_0x30cf('0x22')]=qs[_0x30cf('0x22')](_0x301c36['query']['offset']);}_0x5bbb4b[_0x30cf('0x3d')]=qs[_0x30cf('0x3e')](_0x301c36[_0x30cf('0x33')][_0x30cf('0x3e')]);_0x5bbb4b[_0x30cf('0x41')]=qs[_0x30cf('0x35')](_['pick'](_0x301c36[_0x30cf('0x33')],_0x38e3d8['filters']));_0x5bbb4b[_0x30cf('0x41')][_0x30cf('0x57')]=_0x2c7196['id'];if(_0x301c36[_0x30cf('0x33')][_0x30cf('0x58')]){_0x5bbb4b['where']=_[_0x30cf('0x40')](_0x5bbb4b[_0x30cf('0x41')],{'$or':_[_0x30cf('0x2d')](_0x5bbb4b[_0x30cf('0x37')],function(_0x50d55d){var _0x5386fa={};_0x5386fa[_0x50d55d]={'$like':'%'+_0x301c36[_0x30cf('0x33')][_0x30cf('0x58')]+'%'};return _0x5386fa;})});}_0x5bbb4b=_[_0x30cf('0x40')]({},_0x5bbb4b,_0x301c36[_0x30cf('0x49')]);return db['UserSmsQueue'][_0x30cf('0x43')](_0x5bbb4b);}})[_0x30cf('0x26')](function(_0x4296b9){if(_0x4296b9){return db['User']['findAndCountAll']({'where':{'id':_[_0x30cf('0x2d')](_0x4296b9,_0x30cf('0x59')),'role':_0x30cf('0x5a')},'attributes':['id',_0x30cf('0x2c'),'smsPause',_0x30cf('0x5b'),_0x30cf('0x5c')]});}})[_0x30cf('0x26')](function(_0x15c255){if(_0x15c255){return{'count':_0x15c255['count'],'rows':_[_0x30cf('0x2d')](_0x15c255[_0x30cf('0x44')],function(_0x27e9ad){return{'membername':_0x27e9ad[_0x30cf('0x2c')],'UserId':_0x27e9ad['id'],'queue_name':_0x27eb19[_0x30cf('0x2c')],'SmsQueueId':_0x27eb19['id'],'interface':util['format'](_0x30cf('0x5d'),_0x30cf('0x5e'),_0x27e9ad[_0x30cf('0x2c')]),'penalty':0x0,'paused':_0x27e9ad['smsPause'],'createdAt':_0x27e9ad[_0x30cf('0x5c')],'updatedAt':_0x27e9ad[_0x30cf('0x5b')]};})};}else{return{'count':0x0,'rows':[]};}})['then'](respondWithFilteredResult(_0x4583d3,_0x5bbb4b))[_0x30cf('0x4b')](handleError(_0x4583d3,null));};exports['getTeams']=function(_0x44d688,_0x3e4240,_0xe52f34){var _0x50f991={};var _0x2b91c0={};var _0x2741a0;var _0x241178;return db[_0x30cf('0x2e')]['findOne']({'where':{'id':_0x44d688[_0x30cf('0x46')]['id']}})['then'](handleEntityNotFound(_0x3e4240,null))['then'](function(_0x3bcbf0){if(_0x3bcbf0){_0x2741a0=_0x3bcbf0;_0x2b91c0[_0x30cf('0x32')]=_[_0x30cf('0x34')](db[_0x30cf('0x5f')][_0x30cf('0x2f')]);_0x2b91c0[_0x30cf('0x33')]=_[_0x30cf('0x34')](_0x44d688['query']);_0x2b91c0[_0x30cf('0x35')]=_[_0x30cf('0x36')](_0x2b91c0[_0x30cf('0x32')],_0x2b91c0[_0x30cf('0x33')]);_0x50f991['attributes']=_[_0x30cf('0x36')](_0x2b91c0['model'],qs[_0x30cf('0x38')](_0x44d688[_0x30cf('0x33')]['fields']));_0x50f991['attributes']=_0x50f991[_0x30cf('0x37')][_0x30cf('0x39')]?_0x50f991[_0x30cf('0x37')]:_0x2b91c0[_0x30cf('0x32')];_0x50f991[_0x30cf('0x3d')]=qs[_0x30cf('0x3e')](_0x44d688['query'][_0x30cf('0x3e')]);_0x50f991['where']=qs['filters'](_['pick'](_0x44d688[_0x30cf('0x33')],_0x2b91c0[_0x30cf('0x35')]));if(_0x44d688[_0x30cf('0x33')][_0x30cf('0x58')]){_0x50f991['where']=_['merge'](_0x50f991[_0x30cf('0x41')],{'$or':_[_0x30cf('0x2d')](_0x50f991[_0x30cf('0x37')],function(_0x879a66){var _0x3ca261={};_0x3ca261[_0x879a66]={'$like':'%'+_0x44d688[_0x30cf('0x33')][_0x30cf('0x58')]+'%'};return _0x3ca261;})});}_0x50f991=_[_0x30cf('0x40')]({},_0x50f991,_0x44d688[_0x30cf('0x49')]);return _0x2741a0[_0x30cf('0x60')](_0x50f991);}})[_0x30cf('0x26')](function(_0x2887bf){if(_0x2887bf){_0x241178=_0x2887bf[_0x30cf('0x39')];if(!_0x44d688[_0x30cf('0x33')][_0x30cf('0x3a')](_0x30cf('0x3b'))){_0x50f991[_0x30cf('0x3c')]=qs[_0x30cf('0x3c')](_0x44d688['query'][_0x30cf('0x3c')]);_0x50f991[_0x30cf('0x22')]=qs[_0x30cf('0x22')](_0x44d688[_0x30cf('0x33')][_0x30cf('0x22')]);}return _0x2741a0[_0x30cf('0x60')](_0x50f991);}})[_0x30cf('0x26')](function(_0x1cb62d){if(_0x1cb62d){return _0x1cb62d?{'count':_0x241178,'rows':_0x1cb62d}:null;}})[_0x30cf('0x26')](respondWithResult(_0x3e4240,null))[_0x30cf('0x4b')](handleError(_0x3e4240,null));};exports[_0x30cf('0x61')]=function(_0x228fe6,_0x1628ab,_0x138c74){var _0x4780de=_0x228fe6['body']['ids'];return db[_0x30cf('0x5f')][_0x30cf('0x43')]({'where':{'id':_0x4780de},'attributes':['id'],'include':[{'model':db[_0x30cf('0x62')],'as':_0x30cf('0x63'),'attributes':['id',_0x30cf('0x2c'),'online',_0x30cf('0x64'),_0x30cf('0x65')],'raw':!![]}]})[_0x30cf('0x26')](function(_0x6d0c5c){if(_0x6d0c5c){var _0x4c4841=_[_0x30cf('0x66')](_0x6d0c5c,function(_0x546b86){var _0x1febea=_0x546b86['get']({'plain':!![]});return _0x1febea['Agents'];});return db['SmsQueue'][_0x30cf('0x4a')]({'where':{'id':_0x228fe6[_0x30cf('0x46')]['id']}})[_0x30cf('0x26')](function(_0x278e33){return db[_0x30cf('0x67')][_0x30cf('0x68')](function(_0x4b0473){return _0x278e33[_0x30cf('0x61')](_0x4780de,{'transaction':_0x4b0473})[_0x30cf('0x26')](function(){return BPromise[_0x30cf('0x69')](_0x4c4841,function(_0x173c80){return db[_0x30cf('0x6a')][_0x30cf('0x6b')]({'where':{'UserId':_0x173c80['id'],'SmsQueueId':_0x228fe6[_0x30cf('0x46')]['id']},'transaction':_0x4b0473});});})['then'](function(){_0x4c4841[_0x30cf('0x6c')](function(_0x41c46f){socket[_0x30cf('0x6d')]('userSmsQueue:save',{'UserId':_0x41c46f['id'],'SmsQueueId':_0x278e33['id']});});});});});}})['then'](respondWithStatusCode(_0x1628ab,null))[_0x30cf('0x4b')](handleError(_0x1628ab,null));};exports[_0x30cf('0x6e')]=function(_0x124e42,_0x11f4f0,_0x82faaa){return db[_0x30cf('0x5f')]['findAll']({'where':{'id':_0x124e42[_0x30cf('0x33')][_0x30cf('0x6f')]},'attributes':['id'],'include':[{'model':db[_0x30cf('0x62')],'as':_0x30cf('0x63'),'attributes':['id'],'raw':!![]}]})[_0x30cf('0x26')](handleEntityNotFound(_0x11f4f0,null))['then'](function(_0x4d6e36){var _0x3b935f=_[_0x30cf('0x2d')](_0x4d6e36,'id');var _0x571123=[];var _0x5cf10a=[];var _0x41d85c=squel[_0x30cf('0x70')]();_0x41d85c[_0x30cf('0x71')](_0x30cf('0x72'))['from'](_0x30cf('0x73'),'tq')[_0x30cf('0x74')]('user_has_teams','ut',_0x30cf('0x75'))['where'](_0x30cf('0x76'),_0x124e42[_0x30cf('0x46')]['id']);for(var _0x2a8155=0x0;_0x2a8155<_0x4d6e36[_0x30cf('0x39')];_0x2a8155+=0x1){let _0x37980b=_0x4d6e36[_0x2a8155];for(var _0x5745d8=0x0;_0x5745d8<_0x37980b[_0x30cf('0x63')][_0x30cf('0x39')];_0x5745d8+=0x1){let _0x55ad05=_0x37980b['Agents'][_0x5745d8];var _0x3ea389=_0x41d85c[_0x30cf('0x77')]();_0x3ea389[_0x30cf('0x41')](_0x30cf('0x78'),_0x55ad05['id']);_0x5cf10a[_0x30cf('0x79')](db['sequelize'][_0x30cf('0x33')](_0x3ea389[_0x30cf('0x7a')](),{'type':db[_0x30cf('0x67')][_0x30cf('0x7b')][_0x30cf('0x7c')]})[_0x30cf('0x26')](function(_0x1ce05e){if(_0x1ce05e[_0x30cf('0x39')]===0x1){return _0x55ad05['id'];}else{var _0x2f1127=_['every'](_[_0x30cf('0x2d')](_0x1ce05e,_0x30cf('0x7d')),function(_0x4848d0){return _[_0x30cf('0x7e')](_0x3b935f,_0x4848d0);});if(_0x2f1127){return _0x55ad05['id'];}}}));}}return BPromise[_0x30cf('0x7f')](_0x5cf10a)[_0x30cf('0x26')](function(_0x2d1635){_0x571123=_(_0x571123)[_0x30cf('0x80')](_0x2d1635)['compact']()[_0x30cf('0x81')]();return db['SmsQueue'][_0x30cf('0x4a')]({'where':{'id':_0x124e42[_0x30cf('0x46')]['id']}})[_0x30cf('0x26')](function(_0x1e9b04){return db[_0x30cf('0x67')]['transaction'](function(_0x4b9eb7){return _0x1e9b04[_0x30cf('0x6e')](_0x124e42[_0x30cf('0x33')]['ids'],{'transaction':_0x4b9eb7})[_0x30cf('0x26')](function(){if(!_[_0x30cf('0x82')](_0x571123)){return _0x1e9b04[_0x30cf('0x83')](_0x571123,{'transaction':_0x4b9eb7});}})[_0x30cf('0x26')](function(){_0x571123[_0x30cf('0x6c')](function(_0x3b675e){socket[_0x30cf('0x6d')](_0x30cf('0x84'),{'UserId':_0x3b675e,'SmsQueueId':_0x1e9b04['id']});});});});});});})[_0x30cf('0x26')](respondWithStatusCode(_0x11f4f0,null))['catch'](handleError(_0x11f4f0,null));};exports['addAgents']=function(_0x310469,_0x19f800,_0x4358cb){return db['SmsQueue']['find']({'where':{'id':_0x310469[_0x30cf('0x46')]['id']}})['then'](handleEntityNotFound(_0x19f800,null))[_0x30cf('0x26')](function(_0xfe1849){if(_0xfe1849){return _0xfe1849[_0x30cf('0x85')](_0x310469['body'][_0x30cf('0x6f')],_[_0x30cf('0x86')](_0x310469[_0x30cf('0x4d')],[_0x30cf('0x6f'),'id'])||{})['spread'](function(_0xbe4ac4){for(var _0x586cd3=0x0;_0x586cd3<_0x310469[_0x30cf('0x4d')][_0x30cf('0x6f')][_0x30cf('0x39')];_0x586cd3+=0x1){socket['emit']('userSmsQueue:save',{'UserId':_0x310469[_0x30cf('0x4d')][_0x30cf('0x6f')][_0x586cd3],'SmsQueueId':_0x310469['params']['id']});}return _0xbe4ac4;});}})[_0x30cf('0x26')](respondWithResult(_0x19f800,null))['catch'](handleError(_0x19f800,null));};exports[_0x30cf('0x83')]=function(_0x185eab,_0x3c7d79,_0x8d8329){return db[_0x30cf('0x2e')][_0x30cf('0x4a')]({'where':{'id':_0x185eab['params']['id']}})['then'](handleEntityNotFound(_0x3c7d79,null))[_0x30cf('0x26')](function(_0x49e4fd){if(_0x49e4fd){return _0x49e4fd['removeAgents'](_0x185eab[_0x30cf('0x33')][_0x30cf('0x6f')])[_0x30cf('0x26')](function(){if(_[_0x30cf('0x87')](_0x185eab['query']['ids'])){for(var _0x1bc87f=0x0;_0x1bc87f<_0x185eab[_0x30cf('0x33')][_0x30cf('0x6f')]['length'];_0x1bc87f+=0x1){socket[_0x30cf('0x6d')](_0x30cf('0x84'),{'UserId':Number(_0x185eab[_0x30cf('0x33')][_0x30cf('0x6f')][_0x1bc87f]),'SmsQueueId':Number(_0x185eab[_0x30cf('0x46')]['id'])});}}else{socket[_0x30cf('0x6d')](_0x30cf('0x84'),{'UserId':Number(_0x185eab['query']['ids']),'SmsQueueId':Number(_0x185eab[_0x30cf('0x46')]['id'])});}});}})[_0x30cf('0x26')](respondWithStatusCode(_0x3c7d79,null))[_0x30cf('0x4b')](handleError(_0x3c7d79,null));};exports[_0x30cf('0x88')]=function(_0x264d0e,_0xd3a059,_0x48e9f9){var _0x2818fb={};var _0x5a6f89={};var _0x3c95a8;var _0x49f519;return db[_0x30cf('0x2e')][_0x30cf('0x56')]({'where':{'id':_0x264d0e[_0x30cf('0x46')]['id']}})['then'](handleEntityNotFound(_0xd3a059,null))['then'](function(_0x4342b6){if(_0x4342b6){_0x3c95a8=_0x4342b6;_0x5a6f89[_0x30cf('0x32')]=_[_0x30cf('0x34')](db[_0x30cf('0x62')]['rawAttributes']);_0x5a6f89[_0x30cf('0x33')]=_[_0x30cf('0x34')](_0x264d0e[_0x30cf('0x33')]);_0x5a6f89[_0x30cf('0x35')]=_[_0x30cf('0x36')](_0x5a6f89[_0x30cf('0x32')],_0x5a6f89[_0x30cf('0x33')]);_0x2818fb[_0x30cf('0x37')]=_['intersection'](_0x5a6f89[_0x30cf('0x32')],qs[_0x30cf('0x38')](_0x264d0e[_0x30cf('0x33')]['fields']));_0x2818fb['attributes']=_0x2818fb[_0x30cf('0x37')][_0x30cf('0x39')]?_0x2818fb[_0x30cf('0x37')]:_0x5a6f89[_0x30cf('0x32')];_0x2818fb[_0x30cf('0x3d')]=qs[_0x30cf('0x3e')](_0x264d0e[_0x30cf('0x33')][_0x30cf('0x3e')]);_0x2818fb[_0x30cf('0x41')]=qs[_0x30cf('0x35')](_[_0x30cf('0x3f')](_0x264d0e['query'],_0x5a6f89[_0x30cf('0x35')]));if(_0x264d0e[_0x30cf('0x33')][_0x30cf('0x58')]){_0x2818fb['where']=_[_0x30cf('0x40')](_0x2818fb['where'],{'$or':_[_0x30cf('0x2d')](_0x2818fb[_0x30cf('0x37')],function(_0x273304){var _0x23fb98={};_0x23fb98[_0x273304]={'$like':'%'+_0x264d0e[_0x30cf('0x33')][_0x30cf('0x58')]+'%'};return _0x23fb98;})});}_0x2818fb=_[_0x30cf('0x40')]({},_0x2818fb,_0x264d0e[_0x30cf('0x49')]);return _0x3c95a8[_0x30cf('0x88')](_0x2818fb);}})['then'](function(_0x58694a){if(_0x58694a){_0x49f519=_0x58694a['length'];if(!_0x264d0e[_0x30cf('0x33')]['hasOwnProperty'](_0x30cf('0x3b'))){_0x2818fb[_0x30cf('0x3c')]=qs[_0x30cf('0x3c')](_0x264d0e[_0x30cf('0x33')][_0x30cf('0x3c')]);_0x2818fb[_0x30cf('0x22')]=qs[_0x30cf('0x22')](_0x264d0e['query'][_0x30cf('0x22')]);}return _0x3c95a8[_0x30cf('0x88')](_0x2818fb);}})[_0x30cf('0x26')](function(_0x55ee1a){if(_0x55ee1a){return _0x55ee1a?{'count':_0x49f519,'rows':_0x55ee1a}:null;}})['then'](respondWithResult(_0xd3a059,null))[_0x30cf('0x4b')](handleError(_0xd3a059,null));};