Built motion from commit 598073ad.|2.5.44
[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 _0x6fba=['join','user_has_teams','SmsQueueId\x20=\x20?','clone','ut.UserId\x20=\x20?','push','toString','QueryTypes','SELECT','every','TeamId','compact','value','removeTeams','isEmpty','emit','userSmsQueue:remove','addAgents','omit','userSmsQueue:save','removeAgents','getAgents','moment','bluebird','mustache','util','to-csv','ejs','fs-extra','lodash','squel','crypto','desk.js','querystring','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/license/util','defaults','redis','socket.io-emitter','./smsQueue.socket','register','sendStatus','status','end','json','offset','undefined','limit','count','Content-Range','apply','reject','destroy','then','SmsQueues','UserProfileResource','error','stack','name','index','SmsQueue','fieldName','type','key','keys','query','filters','intersection','model','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','merge','map','VIRTUAL','filter','options','include','findAll','params','find','catch','create','body','get','role','user','autoAssociation','update','describe','getMembers','findOne','UserSmsQueue','SmsQueueId','User','findAndCountAll','UserId','agent','smsPause','updatedAt','createdAt','rows','%s/%s','getTeams','rawAttributes','addTeams','ids','Agents','online','interface','sequelize','transaction','each','forEach','select','field','from','team_has_sms_queues'];(function(_0x47b58b,_0x41a189){var _0x46bebe=function(_0x22bbfa){while(--_0x22bbfa){_0x47b58b['push'](_0x47b58b['shift']());}};_0x46bebe(++_0x41a189);}(_0x6fba,0x97));var _0xa6fb=function(_0x207c23,_0x50ce5d){_0x207c23=_0x207c23-0x0;var _0x438a20=_0x6fba[_0x207c23];return _0x438a20;};'use strict';var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0xa6fb('0x0'));var BPromise=require(_0xa6fb('0x1'));var Mustache=require(_0xa6fb('0x2'));var util=require(_0xa6fb('0x3'));var path=require('path');var sox=require('sox');var csv=require(_0xa6fb('0x4'));var ejs=require(_0xa6fb('0x5'));var fs=require('fs');var fs_extra=require(_0xa6fb('0x6'));var _=require(_0xa6fb('0x7'));var squel=require(_0xa6fb('0x8'));var crypto=require(_0xa6fb('0x9'));var jsforce=require('jsforce');var deskjs=require(_0xa6fb('0xa'));var toCsv=require(_0xa6fb('0x4'));var querystring=require(_0xa6fb('0xb'));var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0xa6fb('0xc'));var qs=require('../../components/parsers/qs');var as=require(_0xa6fb('0xd'));var hardwareService=require(_0xa6fb('0xe'));var logger=require(_0xa6fb('0xf'))(_0xa6fb('0x10'));var utils=require(_0xa6fb('0x11'));var config=require('../../config/environment');var licenseUtil=require(_0xa6fb('0x12'));var db=require('../../mysqldb')['db'];config['redis']=_[_0xa6fb('0x13')](config[_0xa6fb('0x14')],{'host':'localhost','port':0x18eb});var socket=require(_0xa6fb('0x15'))(new Redis(config[_0xa6fb('0x14')]));require(_0xa6fb('0x16'))[_0xa6fb('0x17')](socket);function respondWithStatusCode(_0x3396ef,_0xac7d7f){_0xac7d7f=_0xac7d7f||0xcc;return function(_0x56ef8d){if(_0x56ef8d){return _0x3396ef[_0xa6fb('0x18')](_0xac7d7f);}return _0x3396ef[_0xa6fb('0x19')](_0xac7d7f)[_0xa6fb('0x1a')]();};}function respondWithResult(_0x26a6d1,_0x38c946){_0x38c946=_0x38c946||0xc8;return function(_0x211d31){if(_0x211d31){return _0x26a6d1[_0xa6fb('0x19')](_0x38c946)[_0xa6fb('0x1b')](_0x211d31);}};}function respondWithFilteredResult(_0x173498,_0x5de719){return function(_0x4fa149){if(_0x4fa149){var _0xe21734=typeof _0x5de719[_0xa6fb('0x1c')]===_0xa6fb('0x1d')&&typeof _0x5de719[_0xa6fb('0x1e')]===_0xa6fb('0x1d');var _0x4c37dd=_0x4fa149[_0xa6fb('0x1f')];var _0x301da0=_0xe21734?0x0:_0x5de719[_0xa6fb('0x1c')];var _0x2de351=_0xe21734?_0x4fa149['count']:_0x5de719[_0xa6fb('0x1c')]+_0x5de719[_0xa6fb('0x1e')];var _0x276fa4;if(_0x2de351>=_0x4c37dd){_0x2de351=_0x4c37dd;_0x276fa4=0xc8;}else{_0x276fa4=0xce;}_0x173498[_0xa6fb('0x19')](_0x276fa4);return _0x173498['set'](_0xa6fb('0x20'),_0x301da0+'-'+_0x2de351+'/'+_0x4c37dd)[_0xa6fb('0x1b')](_0x4fa149);}return null;};}function patchUpdates(_0x7a324d){return function(_0x5d26d1){try{jsonpatch[_0xa6fb('0x21')](_0x5d26d1,_0x7a324d,!![]);}catch(_0xf331b6){return BPromise[_0xa6fb('0x22')](_0xf331b6);}return _0x5d26d1['save']();};}function saveUpdates(_0x4be3e9,_0x5ae81a){return function(_0x174717){if(_0x174717){return _0x174717['update'](_0x4be3e9)['then'](function(_0x26be24){return _0x26be24;});}return null;};}function removeEntity(_0x35aef6,_0x5bbb08){return function(_0x422801){if(_0x422801){return _0x422801[_0xa6fb('0x23')]()[_0xa6fb('0x24')](function(){var _0x1414b6=_0x422801['get']({'plain':!![]});var _0x272e01=_0xa6fb('0x25');return db[_0xa6fb('0x26')][_0xa6fb('0x23')]({'where':{'type':_0x272e01,'resourceId':_0x1414b6['id']}})[_0xa6fb('0x24')](function(){return _0x422801;});})['then'](function(){_0x35aef6[_0xa6fb('0x19')](0xcc)['end']();});}};}function handleEntityNotFound(_0x18d8f8,_0x178ec6){return function(_0x131ea5){if(!_0x131ea5){_0x18d8f8[_0xa6fb('0x18')](0x194);}return _0x131ea5;};}function handleError(_0x2198d6,_0x5e111f){_0x5e111f=_0x5e111f||0x1f4;return function(_0x57b270){logger[_0xa6fb('0x27')](_0x57b270[_0xa6fb('0x28')]);if(_0x57b270[_0xa6fb('0x29')]){delete _0x57b270['name'];}_0x2198d6[_0xa6fb('0x19')](_0x5e111f)['send'](_0x57b270);};}exports[_0xa6fb('0x2a')]=function(_0x14d297,_0x4828d7){var _0x576d32={},_0x58d244={},_0x347ee5={'count':0x0,'rows':[]};var _0x3498b4=_['map'](db[_0xa6fb('0x2b')]['rawAttributes'],function(_0x37a7a9){return{'name':_0x37a7a9[_0xa6fb('0x2c')],'type':_0x37a7a9[_0xa6fb('0x2d')][_0xa6fb('0x2e')]};});_0x58d244['model']=_['map'](_0x3498b4,_0xa6fb('0x29'));_0x58d244['query']=_[_0xa6fb('0x2f')](_0x14d297[_0xa6fb('0x30')]);_0x58d244[_0xa6fb('0x31')]=_[_0xa6fb('0x32')](_0x58d244[_0xa6fb('0x33')],_0x58d244['query']);_0x576d32[_0xa6fb('0x34')]=_[_0xa6fb('0x32')](_0x58d244[_0xa6fb('0x33')],qs[_0xa6fb('0x35')](_0x14d297[_0xa6fb('0x30')][_0xa6fb('0x35')]));_0x576d32['attributes']=_0x576d32['attributes'][_0xa6fb('0x36')]?_0x576d32['attributes']:_0x58d244['model'];if(!_0x14d297[_0xa6fb('0x30')][_0xa6fb('0x37')](_0xa6fb('0x38'))){_0x576d32[_0xa6fb('0x1e')]=qs['limit'](_0x14d297[_0xa6fb('0x30')][_0xa6fb('0x1e')]);_0x576d32['offset']=qs['offset'](_0x14d297['query'][_0xa6fb('0x1c')]);}_0x576d32[_0xa6fb('0x39')]=qs[_0xa6fb('0x3a')](_0x14d297[_0xa6fb('0x30')][_0xa6fb('0x3a')]);_0x576d32[_0xa6fb('0x3b')]=qs[_0xa6fb('0x31')](_[_0xa6fb('0x3c')](_0x14d297[_0xa6fb('0x30')],_0x58d244['filters']),_0x3498b4);if(_0x14d297[_0xa6fb('0x30')]['filter']){_0x576d32[_0xa6fb('0x3b')]=_[_0xa6fb('0x3d')](_0x576d32[_0xa6fb('0x3b')],{'$or':_[_0xa6fb('0x3e')](_0x3498b4,function(_0x2a9105){if(_0x2a9105['type']!==_0xa6fb('0x3f')){var _0xb7e2d6={};_0xb7e2d6[_0x2a9105[_0xa6fb('0x29')]]={'$like':'%'+_0x14d297[_0xa6fb('0x30')][_0xa6fb('0x40')]+'%'};return _0xb7e2d6;}})});}_0x576d32=_['merge']({},_0x576d32,_0x14d297[_0xa6fb('0x41')]);var _0x4ad383={'where':_0x576d32[_0xa6fb('0x3b')]};return db[_0xa6fb('0x2b')][_0xa6fb('0x1f')](_0x4ad383)[_0xa6fb('0x24')](function(_0x38a3ab){_0x347ee5['count']=_0x38a3ab;if(_0x14d297[_0xa6fb('0x30')]['includeAll']){_0x576d32[_0xa6fb('0x42')]=[{'all':!![]}];}return db['SmsQueue'][_0xa6fb('0x43')](_0x576d32);})['then'](function(_0x4ef338){_0x347ee5['rows']=_0x4ef338;return _0x347ee5;})[_0xa6fb('0x24')](respondWithFilteredResult(_0x4828d7,_0x576d32))['catch'](handleError(_0x4828d7,null));};exports['show']=function(_0x2c0b5a,_0x57fa87){var _0x55285a={'raw':!![],'where':{'id':_0x2c0b5a[_0xa6fb('0x44')]['id']}},_0x46fc41={};_0x46fc41[_0xa6fb('0x33')]=_['keys'](db[_0xa6fb('0x2b')]['rawAttributes']);_0x46fc41['query']=_['keys'](_0x2c0b5a[_0xa6fb('0x30')]);_0x46fc41[_0xa6fb('0x31')]=_[_0xa6fb('0x32')](_0x46fc41[_0xa6fb('0x33')],_0x46fc41[_0xa6fb('0x30')]);_0x55285a[_0xa6fb('0x34')]=_[_0xa6fb('0x32')](_0x46fc41['model'],qs[_0xa6fb('0x35')](_0x2c0b5a[_0xa6fb('0x30')][_0xa6fb('0x35')]));_0x55285a[_0xa6fb('0x34')]=_0x55285a['attributes'][_0xa6fb('0x36')]?_0x55285a[_0xa6fb('0x34')]:_0x46fc41[_0xa6fb('0x33')];if(_0x2c0b5a[_0xa6fb('0x30')]['includeAll']){_0x55285a[_0xa6fb('0x42')]=[{'all':!![]}];}_0x55285a=_[_0xa6fb('0x3d')]({},_0x55285a,_0x2c0b5a[_0xa6fb('0x41')]);return db['SmsQueue'][_0xa6fb('0x45')](_0x55285a)[_0xa6fb('0x24')](handleEntityNotFound(_0x57fa87,null))['then'](respondWithResult(_0x57fa87,null))[_0xa6fb('0x46')](handleError(_0x57fa87,null));};exports[_0xa6fb('0x47')]=function(_0x410619,_0x35dc8a){return db[_0xa6fb('0x2b')][_0xa6fb('0x47')](_0x410619[_0xa6fb('0x48')],{})[_0xa6fb('0x24')](function(_0x23a44f){var _0x3802a2=_0x410619['user'][_0xa6fb('0x49')]({'plain':!![]});if(!_0x3802a2)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x3802a2[_0xa6fb('0x4a')]===_0xa6fb('0x4b')){var _0x1a9343=_0x23a44f[_0xa6fb('0x49')]({'plain':!![]});var _0x937140=_0xa6fb('0x25');return db['UserProfileSection']['find']({'where':{'name':_0x937140,'userProfileId':_0x3802a2['userProfileId']},'raw':!![]})[_0xa6fb('0x24')](function(_0x5d3631){if(_0x5d3631&&_0x5d3631[_0xa6fb('0x4c')]===0x0){return db[_0xa6fb('0x26')][_0xa6fb('0x47')]({'name':_0x1a9343[_0xa6fb('0x29')],'resourceId':_0x1a9343['id'],'type':_0x5d3631[_0xa6fb('0x29')],'sectionId':_0x5d3631['id']},{})['then'](function(){return _0x23a44f;});}else{return _0x23a44f;}})['catch'](function(_0x4ccdb8){logger[_0xa6fb('0x27')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x4ccdb8);throw _0x4ccdb8;});}return _0x23a44f;})['then'](respondWithResult(_0x35dc8a,0xc9))[_0xa6fb('0x46')](handleError(_0x35dc8a,null));};exports[_0xa6fb('0x4d')]=function(_0x37059e,_0x48f06f){if(_0x37059e[_0xa6fb('0x48')]['id']){delete _0x37059e[_0xa6fb('0x48')]['id'];}return db[_0xa6fb('0x2b')]['find']({'where':{'id':_0x37059e[_0xa6fb('0x44')]['id']}})[_0xa6fb('0x24')](handleEntityNotFound(_0x48f06f,null))['then'](saveUpdates(_0x37059e[_0xa6fb('0x48')],null))[_0xa6fb('0x24')](respondWithResult(_0x48f06f,null))[_0xa6fb('0x46')](handleError(_0x48f06f,null));};exports[_0xa6fb('0x23')]=function(_0x46b06c,_0x4cf456){return db[_0xa6fb('0x2b')][_0xa6fb('0x45')]({'where':{'id':_0x46b06c[_0xa6fb('0x44')]['id']}})[_0xa6fb('0x24')](handleEntityNotFound(_0x4cf456,null))[_0xa6fb('0x24')](removeEntity(_0x4cf456,null))[_0xa6fb('0x46')](handleError(_0x4cf456,null));};exports['describe']=function(_0x59c742,_0x1a328e){return db['SmsQueue'][_0xa6fb('0x4e')]()['then'](respondWithResult(_0x1a328e,null))[_0xa6fb('0x46')](handleError(_0x1a328e,null));};exports[_0xa6fb('0x4f')]=function(_0x1744c0,_0x1ac370,_0x59967e){var _0x1c40a7={'raw':!![],'where':{}},_0x2a1418={},_0xabb923;return db[_0xa6fb('0x2b')][_0xa6fb('0x50')]({'where':{'id':_0x1744c0[_0xa6fb('0x44')]['id']}})[_0xa6fb('0x24')](handleEntityNotFound(_0x1ac370,null))[_0xa6fb('0x24')](function(_0x2a52ae){if(_0x2a52ae){_0xabb923=_0x2a52ae[_0xa6fb('0x49')]({'plain':!![]});_0x2a1418[_0xa6fb('0x33')]=_[_0xa6fb('0x2f')](db[_0xa6fb('0x51')]['rawAttributes']);_0x2a1418[_0xa6fb('0x30')]=_[_0xa6fb('0x2f')](_0x1744c0[_0xa6fb('0x30')]);_0x2a1418[_0xa6fb('0x31')]=_[_0xa6fb('0x32')](_0x2a1418['model'],_0x2a1418['query']);_0x1c40a7[_0xa6fb('0x34')]=_[_0xa6fb('0x32')](_0x2a1418['model'],qs[_0xa6fb('0x35')](_0x1744c0['query'][_0xa6fb('0x35')]));_0x1c40a7['attributes']=_0x1c40a7[_0xa6fb('0x34')][_0xa6fb('0x36')]?_0x1c40a7[_0xa6fb('0x34')]:_0x2a1418['model'];if(!_0x1744c0['query']['hasOwnProperty'](_0xa6fb('0x38'))){_0x1c40a7[_0xa6fb('0x1e')]=qs[_0xa6fb('0x1e')](_0x1744c0[_0xa6fb('0x30')][_0xa6fb('0x1e')]);_0x1c40a7['offset']=qs['offset'](_0x1744c0[_0xa6fb('0x30')][_0xa6fb('0x1c')]);}_0x1c40a7[_0xa6fb('0x39')]=qs[_0xa6fb('0x3a')](_0x1744c0[_0xa6fb('0x30')][_0xa6fb('0x3a')]);_0x1c40a7[_0xa6fb('0x3b')]=qs['filters'](_['pick'](_0x1744c0['query'],_0x2a1418[_0xa6fb('0x31')]));_0x1c40a7['where'][_0xa6fb('0x52')]=_0x2a52ae['id'];if(_0x1744c0[_0xa6fb('0x30')][_0xa6fb('0x40')]){_0x1c40a7['where']=_[_0xa6fb('0x3d')](_0x1c40a7[_0xa6fb('0x3b')],{'$or':_['map'](_0x1c40a7[_0xa6fb('0x34')],function(_0x5135e0){var _0x693363={};_0x693363[_0x5135e0]={'$like':'%'+_0x1744c0['query'][_0xa6fb('0x40')]+'%'};return _0x693363;})});}_0x1c40a7=_['merge']({},_0x1c40a7,_0x1744c0[_0xa6fb('0x41')]);return db['UserSmsQueue'][_0xa6fb('0x43')](_0x1c40a7);}})[_0xa6fb('0x24')](function(_0x2c2b19){if(_0x2c2b19){return db[_0xa6fb('0x53')][_0xa6fb('0x54')]({'where':{'id':_['map'](_0x2c2b19,_0xa6fb('0x55')),'role':_0xa6fb('0x56')},'attributes':['id',_0xa6fb('0x29'),_0xa6fb('0x57'),_0xa6fb('0x58'),_0xa6fb('0x59')]});}})[_0xa6fb('0x24')](function(_0x56827a){if(_0x56827a){return{'count':_0x56827a['count'],'rows':_['map'](_0x56827a[_0xa6fb('0x5a')],function(_0x1b8103){return{'membername':_0x1b8103[_0xa6fb('0x29')],'UserId':_0x1b8103['id'],'queue_name':_0xabb923['name'],'SmsQueueId':_0xabb923['id'],'interface':util['format'](_0xa6fb('0x5b'),'SIP',_0x1b8103['name']),'penalty':0x0,'paused':_0x1b8103[_0xa6fb('0x57')],'createdAt':_0x1b8103[_0xa6fb('0x59')],'updatedAt':_0x1b8103[_0xa6fb('0x58')]};})};}else{return{'count':0x0,'rows':[]};}})[_0xa6fb('0x24')](respondWithFilteredResult(_0x1ac370,_0x1c40a7))[_0xa6fb('0x46')](handleError(_0x1ac370,null));};exports[_0xa6fb('0x5c')]=function(_0x34698d,_0x2a3815,_0x34b3f4){var _0x313ba4={};var _0x1e6b16={};var _0x3b8fa8;var _0x5d0956;return db[_0xa6fb('0x2b')]['findOne']({'where':{'id':_0x34698d[_0xa6fb('0x44')]['id']}})[_0xa6fb('0x24')](handleEntityNotFound(_0x2a3815,null))[_0xa6fb('0x24')](function(_0x3bcd48){if(_0x3bcd48){_0x3b8fa8=_0x3bcd48;_0x1e6b16[_0xa6fb('0x33')]=_[_0xa6fb('0x2f')](db['Team'][_0xa6fb('0x5d')]);_0x1e6b16[_0xa6fb('0x30')]=_['keys'](_0x34698d[_0xa6fb('0x30')]);_0x1e6b16['filters']=_[_0xa6fb('0x32')](_0x1e6b16[_0xa6fb('0x33')],_0x1e6b16[_0xa6fb('0x30')]);_0x313ba4['attributes']=_[_0xa6fb('0x32')](_0x1e6b16['model'],qs[_0xa6fb('0x35')](_0x34698d[_0xa6fb('0x30')][_0xa6fb('0x35')]));_0x313ba4[_0xa6fb('0x34')]=_0x313ba4['attributes'][_0xa6fb('0x36')]?_0x313ba4[_0xa6fb('0x34')]:_0x1e6b16['model'];_0x313ba4[_0xa6fb('0x39')]=qs[_0xa6fb('0x3a')](_0x34698d[_0xa6fb('0x30')][_0xa6fb('0x3a')]);_0x313ba4[_0xa6fb('0x3b')]=qs[_0xa6fb('0x31')](_[_0xa6fb('0x3c')](_0x34698d[_0xa6fb('0x30')],_0x1e6b16[_0xa6fb('0x31')]));if(_0x34698d[_0xa6fb('0x30')][_0xa6fb('0x40')]){_0x313ba4[_0xa6fb('0x3b')]=_[_0xa6fb('0x3d')](_0x313ba4[_0xa6fb('0x3b')],{'$or':_['map'](_0x313ba4['attributes'],function(_0x4050f8){var _0x513cbf={};_0x513cbf[_0x4050f8]={'$like':'%'+_0x34698d['query'][_0xa6fb('0x40')]+'%'};return _0x513cbf;})});}_0x313ba4=_[_0xa6fb('0x3d')]({},_0x313ba4,_0x34698d[_0xa6fb('0x41')]);return _0x3b8fa8[_0xa6fb('0x5c')](_0x313ba4);}})[_0xa6fb('0x24')](function(_0x204562){if(_0x204562){_0x5d0956=_0x204562[_0xa6fb('0x36')];if(!_0x34698d[_0xa6fb('0x30')][_0xa6fb('0x37')](_0xa6fb('0x38'))){_0x313ba4[_0xa6fb('0x1e')]=qs[_0xa6fb('0x1e')](_0x34698d[_0xa6fb('0x30')]['limit']);_0x313ba4[_0xa6fb('0x1c')]=qs[_0xa6fb('0x1c')](_0x34698d[_0xa6fb('0x30')][_0xa6fb('0x1c')]);}return _0x3b8fa8[_0xa6fb('0x5c')](_0x313ba4);}})['then'](function(_0x3625c9){if(_0x3625c9){return _0x3625c9?{'count':_0x5d0956,'rows':_0x3625c9}:null;}})[_0xa6fb('0x24')](respondWithResult(_0x2a3815,null))[_0xa6fb('0x46')](handleError(_0x2a3815,null));};exports[_0xa6fb('0x5e')]=function(_0x829f5,_0x44fae9,_0x28c616){var _0x109619=_0x829f5['body'][_0xa6fb('0x5f')];return db['Team'][_0xa6fb('0x43')]({'where':{'id':_0x109619},'attributes':['id'],'include':[{'model':db[_0xa6fb('0x53')],'as':_0xa6fb('0x60'),'attributes':['id',_0xa6fb('0x29'),_0xa6fb('0x61'),'voicePause',_0xa6fb('0x62')],'raw':!![]}]})[_0xa6fb('0x24')](function(_0x211d4b){if(_0x211d4b){var _0x258b5a=_['flatMap'](_0x211d4b,function(_0x25f298){var _0x3360ef=_0x25f298['get']({'plain':!![]});return _0x3360ef[_0xa6fb('0x60')];});return db[_0xa6fb('0x2b')][_0xa6fb('0x45')]({'where':{'id':_0x829f5[_0xa6fb('0x44')]['id']}})[_0xa6fb('0x24')](function(_0x3237fe){return db[_0xa6fb('0x63')][_0xa6fb('0x64')](function(_0x45b815){return _0x3237fe['addTeams'](_0x109619,{'transaction':_0x45b815})[_0xa6fb('0x24')](function(){return BPromise[_0xa6fb('0x65')](_0x258b5a,function(_0x215b17){return db[_0xa6fb('0x51')]['findOrCreate']({'where':{'UserId':_0x215b17['id'],'SmsQueueId':_0x829f5['params']['id']},'transaction':_0x45b815});});})[_0xa6fb('0x24')](function(){_0x258b5a[_0xa6fb('0x66')](function(_0x3db1df){socket['emit']('userSmsQueue:save',{'UserId':_0x3db1df['id'],'SmsQueueId':_0x3237fe['id']});});});});});}})[_0xa6fb('0x24')](respondWithStatusCode(_0x44fae9,null))[_0xa6fb('0x46')](handleError(_0x44fae9,null));};exports['removeTeams']=function(_0x42e6fd,_0x1baae4,_0x42d676){return db['Team'][_0xa6fb('0x43')]({'where':{'id':_0x42e6fd[_0xa6fb('0x30')][_0xa6fb('0x5f')]},'attributes':['id'],'include':[{'model':db['User'],'as':_0xa6fb('0x60'),'attributes':['id'],'raw':!![]}]})[_0xa6fb('0x24')](handleEntityNotFound(_0x1baae4,null))[_0xa6fb('0x24')](function(_0x578fb3){var _0x3e19d1=_['map'](_0x578fb3,'id');var _0x1f23a0=[];var _0x5da53a=[];var _0x2977fd=squel[_0xa6fb('0x67')]();_0x2977fd[_0xa6fb('0x68')]('tq.TeamId')[_0xa6fb('0x69')](_0xa6fb('0x6a'),'tq')[_0xa6fb('0x6b')](_0xa6fb('0x6c'),'ut','ut.TeamId\x20=\x20tq.TeamId')[_0xa6fb('0x3b')](_0xa6fb('0x6d'),_0x42e6fd[_0xa6fb('0x44')]['id']);for(var _0x2987cd=0x0;_0x2987cd<_0x578fb3[_0xa6fb('0x36')];_0x2987cd+=0x1){let _0x2c3b9d=_0x578fb3[_0x2987cd];for(var _0x116da9=0x0;_0x116da9<_0x2c3b9d[_0xa6fb('0x60')][_0xa6fb('0x36')];_0x116da9+=0x1){let _0x3b3547=_0x2c3b9d[_0xa6fb('0x60')][_0x116da9];var _0x11b844=_0x2977fd[_0xa6fb('0x6e')]();_0x11b844[_0xa6fb('0x3b')](_0xa6fb('0x6f'),_0x3b3547['id']);_0x5da53a[_0xa6fb('0x70')](db[_0xa6fb('0x63')][_0xa6fb('0x30')](_0x11b844[_0xa6fb('0x71')](),{'type':db[_0xa6fb('0x63')][_0xa6fb('0x72')][_0xa6fb('0x73')]})['then'](function(_0x42363f){if(_0x42363f[_0xa6fb('0x36')]===0x1){return _0x3b3547['id'];}else{var _0x12b984=_[_0xa6fb('0x74')](_['map'](_0x42363f,_0xa6fb('0x75')),function(_0x3b02b5){return _['includes'](_0x3e19d1,_0x3b02b5);});if(_0x12b984){return _0x3b3547['id'];}}}));}}return BPromise['all'](_0x5da53a)[_0xa6fb('0x24')](function(_0x5082a1){_0x1f23a0=_(_0x1f23a0)['union'](_0x5082a1)[_0xa6fb('0x76')]()[_0xa6fb('0x77')]();return db['SmsQueue']['find']({'where':{'id':_0x42e6fd[_0xa6fb('0x44')]['id']}})['then'](function(_0x2b4bc7){return db[_0xa6fb('0x63')][_0xa6fb('0x64')](function(_0x42cbd2){return _0x2b4bc7[_0xa6fb('0x78')](_0x42e6fd['query'][_0xa6fb('0x5f')],{'transaction':_0x42cbd2})[_0xa6fb('0x24')](function(){if(!_[_0xa6fb('0x79')](_0x1f23a0)){return _0x2b4bc7['removeAgents'](_0x1f23a0,{'transaction':_0x42cbd2});}})[_0xa6fb('0x24')](function(){_0x1f23a0[_0xa6fb('0x66')](function(_0x5c78df){socket[_0xa6fb('0x7a')](_0xa6fb('0x7b'),{'UserId':_0x5c78df,'SmsQueueId':_0x2b4bc7['id']});});});});});});})[_0xa6fb('0x24')](respondWithStatusCode(_0x1baae4,null))[_0xa6fb('0x46')](handleError(_0x1baae4,null));};exports[_0xa6fb('0x7c')]=function(_0x2bcbfe,_0x57668a,_0x8f0a06){return db['SmsQueue'][_0xa6fb('0x45')]({'where':{'id':_0x2bcbfe[_0xa6fb('0x44')]['id']}})['then'](handleEntityNotFound(_0x57668a,null))[_0xa6fb('0x24')](function(_0x1d2a8b){if(_0x1d2a8b){return _0x1d2a8b[_0xa6fb('0x7c')](_0x2bcbfe['body'][_0xa6fb('0x5f')],_[_0xa6fb('0x7d')](_0x2bcbfe[_0xa6fb('0x48')],['ids','id'])||{})['spread'](function(_0x3b51dc){for(var _0x32e45f=0x0;_0x32e45f<_0x2bcbfe[_0xa6fb('0x48')][_0xa6fb('0x5f')][_0xa6fb('0x36')];_0x32e45f+=0x1){socket[_0xa6fb('0x7a')](_0xa6fb('0x7e'),{'UserId':Number(_0x2bcbfe['body'][_0xa6fb('0x5f')][_0x32e45f]),'SmsQueueId':Number(_0x2bcbfe[_0xa6fb('0x44')]['id'])});}return _0x3b51dc;});}})['then'](respondWithResult(_0x57668a,null))[_0xa6fb('0x46')](handleError(_0x57668a,null));};exports[_0xa6fb('0x7f')]=function(_0x5dbcb0,_0x395cea,_0x485981){return db[_0xa6fb('0x2b')][_0xa6fb('0x45')]({'where':{'id':_0x5dbcb0[_0xa6fb('0x44')]['id']}})[_0xa6fb('0x24')](handleEntityNotFound(_0x395cea,null))['then'](function(_0x15dc4f){if(_0x15dc4f){return _0x15dc4f['removeAgents'](_0x5dbcb0[_0xa6fb('0x30')][_0xa6fb('0x5f')])[_0xa6fb('0x24')](function(){if(_['isArray'](_0x5dbcb0[_0xa6fb('0x30')]['ids'])){for(var _0x280e25=0x0;_0x280e25<_0x5dbcb0[_0xa6fb('0x30')][_0xa6fb('0x5f')][_0xa6fb('0x36')];_0x280e25+=0x1){socket[_0xa6fb('0x7a')](_0xa6fb('0x7b'),{'UserId':Number(_0x5dbcb0[_0xa6fb('0x30')][_0xa6fb('0x5f')][_0x280e25]),'SmsQueueId':Number(_0x5dbcb0['params']['id'])});}}else{socket[_0xa6fb('0x7a')](_0xa6fb('0x7b'),{'UserId':Number(_0x5dbcb0[_0xa6fb('0x30')][_0xa6fb('0x5f')]),'SmsQueueId':Number(_0x5dbcb0[_0xa6fb('0x44')]['id'])});}});}})[_0xa6fb('0x24')](respondWithStatusCode(_0x395cea,null))[_0xa6fb('0x46')](handleError(_0x395cea,null));};exports[_0xa6fb('0x80')]=function(_0x394abb,_0x672e5e,_0x16f378){var _0x59ce73={};var _0x376495={};var _0x3c9d74;var _0x41865e;return db['SmsQueue'][_0xa6fb('0x50')]({'where':{'id':_0x394abb[_0xa6fb('0x44')]['id']}})['then'](handleEntityNotFound(_0x672e5e,null))[_0xa6fb('0x24')](function(_0x59bc61){if(_0x59bc61){_0x3c9d74=_0x59bc61;_0x376495[_0xa6fb('0x33')]=_[_0xa6fb('0x2f')](db[_0xa6fb('0x53')][_0xa6fb('0x5d')]);_0x376495[_0xa6fb('0x30')]=_[_0xa6fb('0x2f')](_0x394abb['query']);_0x376495[_0xa6fb('0x31')]=_[_0xa6fb('0x32')](_0x376495['model'],_0x376495['query']);_0x59ce73[_0xa6fb('0x34')]=_[_0xa6fb('0x32')](_0x376495[_0xa6fb('0x33')],qs[_0xa6fb('0x35')](_0x394abb['query'][_0xa6fb('0x35')]));_0x59ce73[_0xa6fb('0x34')]=_0x59ce73[_0xa6fb('0x34')][_0xa6fb('0x36')]?_0x59ce73[_0xa6fb('0x34')]:_0x376495[_0xa6fb('0x33')];_0x59ce73[_0xa6fb('0x39')]=qs['sort'](_0x394abb[_0xa6fb('0x30')][_0xa6fb('0x3a')]);_0x59ce73[_0xa6fb('0x3b')]=qs[_0xa6fb('0x31')](_[_0xa6fb('0x3c')](_0x394abb[_0xa6fb('0x30')],_0x376495[_0xa6fb('0x31')]));if(_0x394abb[_0xa6fb('0x30')]['filter']){_0x59ce73[_0xa6fb('0x3b')]=_['merge'](_0x59ce73[_0xa6fb('0x3b')],{'$or':_[_0xa6fb('0x3e')](_0x59ce73['attributes'],function(_0x1b6c44){var _0x5e925f={};_0x5e925f[_0x1b6c44]={'$like':'%'+_0x394abb[_0xa6fb('0x30')][_0xa6fb('0x40')]+'%'};return _0x5e925f;})});}_0x59ce73=_[_0xa6fb('0x3d')]({},_0x59ce73,_0x394abb['options']);return _0x3c9d74['getAgents'](_0x59ce73);}})[_0xa6fb('0x24')](function(_0x195e58){if(_0x195e58){_0x41865e=_0x195e58[_0xa6fb('0x36')];if(!_0x394abb[_0xa6fb('0x30')][_0xa6fb('0x37')]('nolimit')){_0x59ce73[_0xa6fb('0x1e')]=qs[_0xa6fb('0x1e')](_0x394abb[_0xa6fb('0x30')][_0xa6fb('0x1e')]);_0x59ce73[_0xa6fb('0x1c')]=qs['offset'](_0x394abb[_0xa6fb('0x30')][_0xa6fb('0x1c')]);}return _0x3c9d74['getAgents'](_0x59ce73);}})[_0xa6fb('0x24')](function(_0x32ee25){if(_0x32ee25){return _0x32ee25?{'count':_0x41865e,'rows':_0x32ee25}:null;}})[_0xa6fb('0x24')](respondWithResult(_0x672e5e,null))[_0xa6fb('0x46')](handleError(_0x672e5e,null));};