Built motion from commit 88aa8522.|2.5.37
[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 _0xe9e4=['Agents','online','voicePause','interface','flatMap','sequelize','transaction','each','findOrCreate','forEach','userSmsQueue:save','tq.TeamId','from','team_has_sms_queues','join','user_has_teams','ut.TeamId\x20=\x20tq.TeamId','SmsQueueId\x20=\x20?','clone','ut.UserId\x20=\x20?','push','toString','QueryTypes','SELECT','every','TeamId','all','union','compact','value','isEmpty','removeAgents','userSmsQueue:remove','addAgents','omit','spread','emit','getAgents','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','path','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','socket.io-emitter','register','sendStatus','status','json','offset','undefined','limit','count','set','Content-Range','apply','reject','save','update','then','destroy','SmsQueues','end','stack','name','send','index','map','SmsQueue','rawAttributes','fieldName','type','key','model','keys','query','filters','intersection','fields','attributes','length','hasOwnProperty','nolimit','order','sort','pick','filter','where','VIRTUAL','merge','options','includeAll','include','findAll','rows','show','params','find','user','get','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','autoAssociation','UserProfileResource','create','catch','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','body','describe','getMembers','findOne','SmsQueueId','UserSmsQueue','User','findAndCountAll','UserId','agent','smsPause','updatedAt','%s/%s','SIP','createdAt','getTeams','Team','addTeams','ids'];(function(_0x4a64ca,_0x3c54df){var _0x2be2b3=function(_0xe68a7c){while(--_0xe68a7c){_0x4a64ca['push'](_0x4a64ca['shift']());}};_0x2be2b3(++_0x3c54df);}(_0xe9e4,0x1e2));var _0x4e9e=function(_0x383273,_0x424827){_0x383273=_0x383273-0x0;var _0x4649ee=_0xe9e4[_0x383273];return _0x4649ee;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x4e9e('0x0'));var zipdir=require(_0x4e9e('0x1'));var jsonpatch=require(_0x4e9e('0x2'));var rp=require(_0x4e9e('0x3'));var moment=require(_0x4e9e('0x4'));var BPromise=require('bluebird');var Mustache=require(_0x4e9e('0x5'));var util=require('util');var path=require(_0x4e9e('0x6'));var sox=require(_0x4e9e('0x7'));var csv=require(_0x4e9e('0x8'));var ejs=require(_0x4e9e('0x9'));var fs=require('fs');var fs_extra=require(_0x4e9e('0xa'));var _=require(_0x4e9e('0xb'));var squel=require(_0x4e9e('0xc'));var crypto=require(_0x4e9e('0xd'));var jsforce=require(_0x4e9e('0xe'));var deskjs=require(_0x4e9e('0xf'));var toCsv=require('to-csv');var querystring=require(_0x4e9e('0x10'));var Papa=require('papaparse');var Redis=require(_0x4e9e('0x11'));var authService=require(_0x4e9e('0x12'));var qs=require('../../components/parsers/qs');var as=require(_0x4e9e('0x13'));var hardwareService=require(_0x4e9e('0x14'));var logger=require(_0x4e9e('0x15'))('api');var utils=require('../../config/utils');var config=require(_0x4e9e('0x16'));var licenseUtil=require(_0x4e9e('0x17'));var db=require(_0x4e9e('0x18'))['db'];config[_0x4e9e('0x19')]=_[_0x4e9e('0x1a')](config[_0x4e9e('0x19')],{'host':'localhost','port':0x18eb});var socket=require(_0x4e9e('0x1b'))(new Redis(config[_0x4e9e('0x19')]));require('./smsQueue.socket')[_0x4e9e('0x1c')](socket);function respondWithStatusCode(_0x186c18,_0x2cfe01){_0x2cfe01=_0x2cfe01||0xcc;return function(_0x2cae41){if(_0x2cae41){return _0x186c18[_0x4e9e('0x1d')](_0x2cfe01);}return _0x186c18[_0x4e9e('0x1e')](_0x2cfe01)['end']();};}function respondWithResult(_0x1c68b1,_0x1c588b){_0x1c588b=_0x1c588b||0xc8;return function(_0xe5102e){if(_0xe5102e){return _0x1c68b1[_0x4e9e('0x1e')](_0x1c588b)[_0x4e9e('0x1f')](_0xe5102e);}};}function respondWithFilteredResult(_0x43e1ca,_0x225a33){return function(_0x22c5a4){if(_0x22c5a4){var _0x103d00=typeof _0x225a33[_0x4e9e('0x20')]===_0x4e9e('0x21')&&typeof _0x225a33[_0x4e9e('0x22')]===_0x4e9e('0x21');var _0x4bb375=_0x22c5a4[_0x4e9e('0x23')];var _0x1a3f05=_0x103d00?0x0:_0x225a33[_0x4e9e('0x20')];var _0x512451=_0x103d00?_0x22c5a4[_0x4e9e('0x23')]:_0x225a33[_0x4e9e('0x20')]+_0x225a33[_0x4e9e('0x22')];var _0x3a5414;if(_0x512451>=_0x4bb375){_0x512451=_0x4bb375;_0x3a5414=0xc8;}else{_0x3a5414=0xce;}_0x43e1ca['status'](_0x3a5414);return _0x43e1ca[_0x4e9e('0x24')](_0x4e9e('0x25'),_0x1a3f05+'-'+_0x512451+'/'+_0x4bb375)['json'](_0x22c5a4);}return null;};}function patchUpdates(_0x217783){return function(_0x428cf8){try{jsonpatch[_0x4e9e('0x26')](_0x428cf8,_0x217783,!![]);}catch(_0xdca65f){return BPromise[_0x4e9e('0x27')](_0xdca65f);}return _0x428cf8[_0x4e9e('0x28')]();};}function saveUpdates(_0x22b172,_0x368682){return function(_0x262aa5){if(_0x262aa5){return _0x262aa5[_0x4e9e('0x29')](_0x22b172)[_0x4e9e('0x2a')](function(_0x56abc4){return _0x56abc4;});}return null;};}function removeEntity(_0x3c5ff1,_0x4b7e0b){return function(_0x171f06){if(_0x171f06){return _0x171f06[_0x4e9e('0x2b')]()[_0x4e9e('0x2a')](function(){var _0xf91a9d=_0x171f06['get']({'plain':!![]});var _0x2ddcca=_0x4e9e('0x2c');return db['UserProfileResource'][_0x4e9e('0x2b')]({'where':{'type':_0x2ddcca,'resourceId':_0xf91a9d['id']}})['then'](function(){return _0x171f06;});})['then'](function(){_0x3c5ff1[_0x4e9e('0x1e')](0xcc)[_0x4e9e('0x2d')]();});}};}function handleEntityNotFound(_0x26928f,_0x213a93){return function(_0x3385c6){if(!_0x3385c6){_0x26928f[_0x4e9e('0x1d')](0x194);}return _0x3385c6;};}function handleError(_0x487c8f,_0x868427){_0x868427=_0x868427||0x1f4;return function(_0x20f0af){logger['error'](_0x20f0af[_0x4e9e('0x2e')]);if(_0x20f0af[_0x4e9e('0x2f')]){delete _0x20f0af[_0x4e9e('0x2f')];}_0x487c8f[_0x4e9e('0x1e')](_0x868427)[_0x4e9e('0x30')](_0x20f0af);};}exports[_0x4e9e('0x31')]=function(_0x39ed1e,_0x4590f8){var _0x43b27f={},_0x5bb14f={},_0x48569b={'count':0x0,'rows':[]};var _0x244585=_[_0x4e9e('0x32')](db[_0x4e9e('0x33')][_0x4e9e('0x34')],function(_0x5137a8){return{'name':_0x5137a8[_0x4e9e('0x35')],'type':_0x5137a8[_0x4e9e('0x36')][_0x4e9e('0x37')]};});_0x5bb14f[_0x4e9e('0x38')]=_[_0x4e9e('0x32')](_0x244585,_0x4e9e('0x2f'));_0x5bb14f['query']=_[_0x4e9e('0x39')](_0x39ed1e[_0x4e9e('0x3a')]);_0x5bb14f[_0x4e9e('0x3b')]=_[_0x4e9e('0x3c')](_0x5bb14f[_0x4e9e('0x38')],_0x5bb14f[_0x4e9e('0x3a')]);_0x43b27f['attributes']=_[_0x4e9e('0x3c')](_0x5bb14f['model'],qs[_0x4e9e('0x3d')](_0x39ed1e['query']['fields']));_0x43b27f[_0x4e9e('0x3e')]=_0x43b27f['attributes'][_0x4e9e('0x3f')]?_0x43b27f['attributes']:_0x5bb14f[_0x4e9e('0x38')];if(!_0x39ed1e[_0x4e9e('0x3a')][_0x4e9e('0x40')](_0x4e9e('0x41'))){_0x43b27f[_0x4e9e('0x22')]=qs[_0x4e9e('0x22')](_0x39ed1e[_0x4e9e('0x3a')][_0x4e9e('0x22')]);_0x43b27f['offset']=qs[_0x4e9e('0x20')](_0x39ed1e[_0x4e9e('0x3a')][_0x4e9e('0x20')]);}_0x43b27f[_0x4e9e('0x42')]=qs[_0x4e9e('0x43')](_0x39ed1e[_0x4e9e('0x3a')][_0x4e9e('0x43')]);_0x43b27f['where']=qs[_0x4e9e('0x3b')](_[_0x4e9e('0x44')](_0x39ed1e[_0x4e9e('0x3a')],_0x5bb14f[_0x4e9e('0x3b')]),_0x244585);if(_0x39ed1e[_0x4e9e('0x3a')][_0x4e9e('0x45')]){_0x43b27f['where']=_['merge'](_0x43b27f[_0x4e9e('0x46')],{'$or':_[_0x4e9e('0x32')](_0x244585,function(_0x292fc5){if(_0x292fc5['type']!==_0x4e9e('0x47')){var _0x49f26e={};_0x49f26e[_0x292fc5[_0x4e9e('0x2f')]]={'$like':'%'+_0x39ed1e[_0x4e9e('0x3a')][_0x4e9e('0x45')]+'%'};return _0x49f26e;}})});}_0x43b27f=_[_0x4e9e('0x48')]({},_0x43b27f,_0x39ed1e[_0x4e9e('0x49')]);var _0x576e36={'where':_0x43b27f[_0x4e9e('0x46')]};return db[_0x4e9e('0x33')]['count'](_0x576e36)[_0x4e9e('0x2a')](function(_0x2d5959){_0x48569b[_0x4e9e('0x23')]=_0x2d5959;if(_0x39ed1e[_0x4e9e('0x3a')][_0x4e9e('0x4a')]){_0x43b27f[_0x4e9e('0x4b')]=[{'all':!![]}];}return db['SmsQueue'][_0x4e9e('0x4c')](_0x43b27f);})[_0x4e9e('0x2a')](function(_0x58ba6f){_0x48569b[_0x4e9e('0x4d')]=_0x58ba6f;return _0x48569b;})[_0x4e9e('0x2a')](respondWithFilteredResult(_0x4590f8,_0x43b27f))['catch'](handleError(_0x4590f8,null));};exports[_0x4e9e('0x4e')]=function(_0x350090,_0xdaded9){var _0xa0cc9f={'raw':!![],'where':{'id':_0x350090[_0x4e9e('0x4f')]['id']}},_0x7b9024={};_0x7b9024[_0x4e9e('0x38')]=_[_0x4e9e('0x39')](db[_0x4e9e('0x33')]['rawAttributes']);_0x7b9024[_0x4e9e('0x3a')]=_['keys'](_0x350090[_0x4e9e('0x3a')]);_0x7b9024[_0x4e9e('0x3b')]=_[_0x4e9e('0x3c')](_0x7b9024[_0x4e9e('0x38')],_0x7b9024[_0x4e9e('0x3a')]);_0xa0cc9f['attributes']=_[_0x4e9e('0x3c')](_0x7b9024[_0x4e9e('0x38')],qs['fields'](_0x350090[_0x4e9e('0x3a')][_0x4e9e('0x3d')]));_0xa0cc9f['attributes']=_0xa0cc9f[_0x4e9e('0x3e')][_0x4e9e('0x3f')]?_0xa0cc9f['attributes']:_0x7b9024[_0x4e9e('0x38')];if(_0x350090['query'][_0x4e9e('0x4a')]){_0xa0cc9f[_0x4e9e('0x4b')]=[{'all':!![]}];}_0xa0cc9f=_['merge']({},_0xa0cc9f,_0x350090[_0x4e9e('0x49')]);return db[_0x4e9e('0x33')][_0x4e9e('0x50')](_0xa0cc9f)[_0x4e9e('0x2a')](handleEntityNotFound(_0xdaded9,null))[_0x4e9e('0x2a')](respondWithResult(_0xdaded9,null))['catch'](handleError(_0xdaded9,null));};exports['create']=function(_0xfa68db,_0x1a36dd){return db[_0x4e9e('0x33')]['create'](_0xfa68db['body'],{})[_0x4e9e('0x2a')](function(_0x4afaf3){var _0x3a1bf4=_0xfa68db[_0x4e9e('0x51')][_0x4e9e('0x52')]({'plain':!![]});if(!_0x3a1bf4)throw new Error(_0x4e9e('0x53'));if(_0x3a1bf4[_0x4e9e('0x54')]===_0x4e9e('0x51')){var _0x1ebab9=_0x4afaf3[_0x4e9e('0x52')]({'plain':!![]});var _0x18652f=_0x4e9e('0x2c');return db[_0x4e9e('0x55')]['find']({'where':{'name':_0x18652f,'userProfileId':_0x3a1bf4['userProfileId']},'raw':!![]})[_0x4e9e('0x2a')](function(_0x4e4643){if(_0x4e4643&&_0x4e4643[_0x4e9e('0x56')]===0x0){return db[_0x4e9e('0x57')][_0x4e9e('0x58')]({'name':_0x1ebab9[_0x4e9e('0x2f')],'resourceId':_0x1ebab9['id'],'type':_0x4e4643['name'],'sectionId':_0x4e4643['id']},{})['then'](function(){return _0x4afaf3;});}else{return _0x4afaf3;}})[_0x4e9e('0x59')](function(_0x2894ae){logger['error'](_0x4e9e('0x5a'),_0x2894ae);throw _0x2894ae;});}return _0x4afaf3;})[_0x4e9e('0x2a')](respondWithResult(_0x1a36dd,0xc9))[_0x4e9e('0x59')](handleError(_0x1a36dd,null));};exports[_0x4e9e('0x29')]=function(_0x5970d2,_0x3d4666){if(_0x5970d2[_0x4e9e('0x5b')]['id']){delete _0x5970d2[_0x4e9e('0x5b')]['id'];}return db[_0x4e9e('0x33')][_0x4e9e('0x50')]({'where':{'id':_0x5970d2[_0x4e9e('0x4f')]['id']}})[_0x4e9e('0x2a')](handleEntityNotFound(_0x3d4666,null))['then'](saveUpdates(_0x5970d2[_0x4e9e('0x5b')],null))[_0x4e9e('0x2a')](respondWithResult(_0x3d4666,null))[_0x4e9e('0x59')](handleError(_0x3d4666,null));};exports['destroy']=function(_0x1da568,_0x2605c1){return db[_0x4e9e('0x33')][_0x4e9e('0x50')]({'where':{'id':_0x1da568[_0x4e9e('0x4f')]['id']}})['then'](handleEntityNotFound(_0x2605c1,null))[_0x4e9e('0x2a')](removeEntity(_0x2605c1,null))['catch'](handleError(_0x2605c1,null));};exports[_0x4e9e('0x5c')]=function(_0x2d0262,_0x3f1eb8){return db[_0x4e9e('0x33')]['describe']()[_0x4e9e('0x2a')](respondWithResult(_0x3f1eb8,null))[_0x4e9e('0x59')](handleError(_0x3f1eb8,null));};exports[_0x4e9e('0x5d')]=function(_0xa8442,_0x471e3f,_0x138729){var _0x4c3277={'raw':!![],'where':{}},_0x5d7295={},_0x51f4bb;return db[_0x4e9e('0x33')][_0x4e9e('0x5e')]({'where':{'id':_0xa8442[_0x4e9e('0x4f')]['id']}})['then'](handleEntityNotFound(_0x471e3f,null))[_0x4e9e('0x2a')](function(_0x42d191){if(_0x42d191){_0x51f4bb=_0x42d191[_0x4e9e('0x52')]({'plain':!![]});_0x5d7295[_0x4e9e('0x38')]=_[_0x4e9e('0x39')](db['UserSmsQueue'][_0x4e9e('0x34')]);_0x5d7295[_0x4e9e('0x3a')]=_[_0x4e9e('0x39')](_0xa8442[_0x4e9e('0x3a')]);_0x5d7295[_0x4e9e('0x3b')]=_[_0x4e9e('0x3c')](_0x5d7295[_0x4e9e('0x38')],_0x5d7295[_0x4e9e('0x3a')]);_0x4c3277[_0x4e9e('0x3e')]=_['intersection'](_0x5d7295[_0x4e9e('0x38')],qs[_0x4e9e('0x3d')](_0xa8442[_0x4e9e('0x3a')][_0x4e9e('0x3d')]));_0x4c3277[_0x4e9e('0x3e')]=_0x4c3277[_0x4e9e('0x3e')]['length']?_0x4c3277[_0x4e9e('0x3e')]:_0x5d7295[_0x4e9e('0x38')];if(!_0xa8442[_0x4e9e('0x3a')]['hasOwnProperty'](_0x4e9e('0x41'))){_0x4c3277[_0x4e9e('0x22')]=qs[_0x4e9e('0x22')](_0xa8442[_0x4e9e('0x3a')][_0x4e9e('0x22')]);_0x4c3277[_0x4e9e('0x20')]=qs[_0x4e9e('0x20')](_0xa8442[_0x4e9e('0x3a')][_0x4e9e('0x20')]);}_0x4c3277[_0x4e9e('0x42')]=qs[_0x4e9e('0x43')](_0xa8442[_0x4e9e('0x3a')]['sort']);_0x4c3277[_0x4e9e('0x46')]=qs[_0x4e9e('0x3b')](_[_0x4e9e('0x44')](_0xa8442['query'],_0x5d7295[_0x4e9e('0x3b')]));_0x4c3277[_0x4e9e('0x46')][_0x4e9e('0x5f')]=_0x42d191['id'];if(_0xa8442[_0x4e9e('0x3a')][_0x4e9e('0x45')]){_0x4c3277[_0x4e9e('0x46')]=_['merge'](_0x4c3277['where'],{'$or':_[_0x4e9e('0x32')](_0x4c3277[_0x4e9e('0x3e')],function(_0x1d987e){var _0xba7642={};_0xba7642[_0x1d987e]={'$like':'%'+_0xa8442[_0x4e9e('0x3a')][_0x4e9e('0x45')]+'%'};return _0xba7642;})});}_0x4c3277=_[_0x4e9e('0x48')]({},_0x4c3277,_0xa8442[_0x4e9e('0x49')]);return db[_0x4e9e('0x60')][_0x4e9e('0x4c')](_0x4c3277);}})[_0x4e9e('0x2a')](function(_0x2e1e9c){if(_0x2e1e9c){return db[_0x4e9e('0x61')][_0x4e9e('0x62')]({'where':{'id':_[_0x4e9e('0x32')](_0x2e1e9c,_0x4e9e('0x63')),'role':_0x4e9e('0x64')},'attributes':['id',_0x4e9e('0x2f'),_0x4e9e('0x65'),_0x4e9e('0x66'),'createdAt']});}})['then'](function(_0x38b446){if(_0x38b446){return{'count':_0x38b446['count'],'rows':_[_0x4e9e('0x32')](_0x38b446['rows'],function(_0x3a64ef){return{'membername':_0x3a64ef[_0x4e9e('0x2f')],'UserId':_0x3a64ef['id'],'queue_name':_0x51f4bb[_0x4e9e('0x2f')],'SmsQueueId':_0x51f4bb['id'],'interface':util['format'](_0x4e9e('0x67'),_0x4e9e('0x68'),_0x3a64ef[_0x4e9e('0x2f')]),'penalty':0x0,'paused':_0x3a64ef[_0x4e9e('0x65')],'createdAt':_0x3a64ef[_0x4e9e('0x69')],'updatedAt':_0x3a64ef[_0x4e9e('0x66')]};})};}else{return{'count':0x0,'rows':[]};}})[_0x4e9e('0x2a')](respondWithFilteredResult(_0x471e3f,_0x4c3277))[_0x4e9e('0x59')](handleError(_0x471e3f,null));};exports[_0x4e9e('0x6a')]=function(_0xef8420,_0x3c0a80,_0xa78460){var _0x28484d={};var _0x7487d2={};var _0x24094e;var _0x4e5076;return db[_0x4e9e('0x33')][_0x4e9e('0x5e')]({'where':{'id':_0xef8420[_0x4e9e('0x4f')]['id']}})[_0x4e9e('0x2a')](handleEntityNotFound(_0x3c0a80,null))[_0x4e9e('0x2a')](function(_0x688fed){if(_0x688fed){_0x24094e=_0x688fed;_0x7487d2[_0x4e9e('0x38')]=_['keys'](db[_0x4e9e('0x6b')][_0x4e9e('0x34')]);_0x7487d2['query']=_['keys'](_0xef8420[_0x4e9e('0x3a')]);_0x7487d2['filters']=_[_0x4e9e('0x3c')](_0x7487d2[_0x4e9e('0x38')],_0x7487d2[_0x4e9e('0x3a')]);_0x28484d['attributes']=_['intersection'](_0x7487d2['model'],qs[_0x4e9e('0x3d')](_0xef8420[_0x4e9e('0x3a')][_0x4e9e('0x3d')]));_0x28484d['attributes']=_0x28484d[_0x4e9e('0x3e')]['length']?_0x28484d[_0x4e9e('0x3e')]:_0x7487d2[_0x4e9e('0x38')];_0x28484d[_0x4e9e('0x42')]=qs[_0x4e9e('0x43')](_0xef8420['query'][_0x4e9e('0x43')]);_0x28484d[_0x4e9e('0x46')]=qs[_0x4e9e('0x3b')](_['pick'](_0xef8420[_0x4e9e('0x3a')],_0x7487d2['filters']));if(_0xef8420[_0x4e9e('0x3a')][_0x4e9e('0x45')]){_0x28484d[_0x4e9e('0x46')]=_[_0x4e9e('0x48')](_0x28484d[_0x4e9e('0x46')],{'$or':_[_0x4e9e('0x32')](_0x28484d[_0x4e9e('0x3e')],function(_0x1cc9c1){var _0x336ca9={};_0x336ca9[_0x1cc9c1]={'$like':'%'+_0xef8420[_0x4e9e('0x3a')][_0x4e9e('0x45')]+'%'};return _0x336ca9;})});}_0x28484d=_['merge']({},_0x28484d,_0xef8420[_0x4e9e('0x49')]);return _0x24094e[_0x4e9e('0x6a')](_0x28484d);}})[_0x4e9e('0x2a')](function(_0x58f88d){if(_0x58f88d){_0x4e5076=_0x58f88d['length'];if(!_0xef8420[_0x4e9e('0x3a')][_0x4e9e('0x40')](_0x4e9e('0x41'))){_0x28484d[_0x4e9e('0x22')]=qs[_0x4e9e('0x22')](_0xef8420['query'][_0x4e9e('0x22')]);_0x28484d[_0x4e9e('0x20')]=qs['offset'](_0xef8420[_0x4e9e('0x3a')][_0x4e9e('0x20')]);}return _0x24094e[_0x4e9e('0x6a')](_0x28484d);}})['then'](function(_0x4edddb){if(_0x4edddb){return _0x4edddb?{'count':_0x4e5076,'rows':_0x4edddb}:null;}})[_0x4e9e('0x2a')](respondWithResult(_0x3c0a80,null))[_0x4e9e('0x59')](handleError(_0x3c0a80,null));};exports[_0x4e9e('0x6c')]=function(_0xdbf03c,_0x23d1d9,_0x557908){var _0x3ecece=_0xdbf03c[_0x4e9e('0x5b')][_0x4e9e('0x6d')];return db[_0x4e9e('0x6b')][_0x4e9e('0x4c')]({'where':{'id':_0x3ecece},'attributes':['id'],'include':[{'model':db[_0x4e9e('0x61')],'as':_0x4e9e('0x6e'),'attributes':['id','name',_0x4e9e('0x6f'),_0x4e9e('0x70'),_0x4e9e('0x71')],'raw':!![]}]})[_0x4e9e('0x2a')](function(_0x4409b3){if(_0x4409b3){var _0x2673ae=_[_0x4e9e('0x72')](_0x4409b3,function(_0x36bda5){var _0x4a21e6=_0x36bda5[_0x4e9e('0x52')]({'plain':!![]});return _0x4a21e6['Agents'];});return db['SmsQueue'][_0x4e9e('0x50')]({'where':{'id':_0xdbf03c[_0x4e9e('0x4f')]['id']}})[_0x4e9e('0x2a')](function(_0x2e3363){return db[_0x4e9e('0x73')][_0x4e9e('0x74')](function(_0x1f3467){return _0x2e3363[_0x4e9e('0x6c')](_0x3ecece,{'transaction':_0x1f3467})['then'](function(){return BPromise[_0x4e9e('0x75')](_0x2673ae,function(_0x398ba9){return db['UserSmsQueue'][_0x4e9e('0x76')]({'where':{'UserId':_0x398ba9['id'],'SmsQueueId':_0xdbf03c['params']['id']},'transaction':_0x1f3467});});})[_0x4e9e('0x2a')](function(){_0x2673ae[_0x4e9e('0x77')](function(_0x3c6058){socket['emit'](_0x4e9e('0x78'),{'UserId':_0x3c6058['id'],'SmsQueueId':_0x2e3363['id']});});});});});}})[_0x4e9e('0x2a')](respondWithStatusCode(_0x23d1d9,null))[_0x4e9e('0x59')](handleError(_0x23d1d9,null));};exports['removeTeams']=function(_0x3a72d2,_0xa0ba67,_0x292886){return db['Team'][_0x4e9e('0x4c')]({'where':{'id':_0x3a72d2['query'][_0x4e9e('0x6d')]},'attributes':['id'],'include':[{'model':db[_0x4e9e('0x61')],'as':'Agents','attributes':['id'],'raw':!![]}]})[_0x4e9e('0x2a')](handleEntityNotFound(_0xa0ba67,null))[_0x4e9e('0x2a')](function(_0x2361a5){var _0x59bfda=_[_0x4e9e('0x32')](_0x2361a5,'id');var _0x5bc9ff=[];var _0x16b7b0=[];var _0x1eb7ce=squel['select']();_0x1eb7ce['field'](_0x4e9e('0x79'))[_0x4e9e('0x7a')](_0x4e9e('0x7b'),'tq')[_0x4e9e('0x7c')](_0x4e9e('0x7d'),'ut',_0x4e9e('0x7e'))['where'](_0x4e9e('0x7f'),_0x3a72d2[_0x4e9e('0x4f')]['id']);for(var _0x185b79=0x0;_0x185b79<_0x2361a5[_0x4e9e('0x3f')];_0x185b79+=0x1){let _0x57cb20=_0x2361a5[_0x185b79];for(var _0x1f5d60=0x0;_0x1f5d60<_0x57cb20[_0x4e9e('0x6e')][_0x4e9e('0x3f')];_0x1f5d60+=0x1){let _0x435fa8=_0x57cb20['Agents'][_0x1f5d60];var _0x7337ce=_0x1eb7ce[_0x4e9e('0x80')]();_0x7337ce[_0x4e9e('0x46')](_0x4e9e('0x81'),_0x435fa8['id']);_0x16b7b0[_0x4e9e('0x82')](db[_0x4e9e('0x73')][_0x4e9e('0x3a')](_0x7337ce[_0x4e9e('0x83')](),{'type':db[_0x4e9e('0x73')][_0x4e9e('0x84')][_0x4e9e('0x85')]})[_0x4e9e('0x2a')](function(_0x2bf317){if(_0x2bf317['length']===0x1){return _0x435fa8['id'];}else{var _0x41de83=_[_0x4e9e('0x86')](_[_0x4e9e('0x32')](_0x2bf317,_0x4e9e('0x87')),function(_0x319d04){return _['includes'](_0x59bfda,_0x319d04);});if(_0x41de83){return _0x435fa8['id'];}}}));}}return BPromise[_0x4e9e('0x88')](_0x16b7b0)[_0x4e9e('0x2a')](function(_0x365388){_0x5bc9ff=_(_0x5bc9ff)[_0x4e9e('0x89')](_0x365388)[_0x4e9e('0x8a')]()[_0x4e9e('0x8b')]();return db[_0x4e9e('0x33')]['find']({'where':{'id':_0x3a72d2['params']['id']}})[_0x4e9e('0x2a')](function(_0x168cdf){return db[_0x4e9e('0x73')][_0x4e9e('0x74')](function(_0xf8bce7){return _0x168cdf['removeTeams'](_0x3a72d2[_0x4e9e('0x3a')][_0x4e9e('0x6d')],{'transaction':_0xf8bce7})['then'](function(){if(!_[_0x4e9e('0x8c')](_0x5bc9ff)){return _0x168cdf[_0x4e9e('0x8d')](_0x5bc9ff,{'transaction':_0xf8bce7});}})[_0x4e9e('0x2a')](function(){_0x5bc9ff[_0x4e9e('0x77')](function(_0x15217c){socket['emit'](_0x4e9e('0x8e'),{'UserId':_0x15217c,'SmsQueueId':_0x168cdf['id']});});});});});});})[_0x4e9e('0x2a')](respondWithStatusCode(_0xa0ba67,null))[_0x4e9e('0x59')](handleError(_0xa0ba67,null));};exports[_0x4e9e('0x8f')]=function(_0x3d3497,_0x225218,_0x15f0cc){return db['SmsQueue']['find']({'where':{'id':_0x3d3497['params']['id']}})[_0x4e9e('0x2a')](handleEntityNotFound(_0x225218,null))['then'](function(_0xe4ddbe){if(_0xe4ddbe){return _0xe4ddbe[_0x4e9e('0x8f')](_0x3d3497[_0x4e9e('0x5b')][_0x4e9e('0x6d')],_[_0x4e9e('0x90')](_0x3d3497[_0x4e9e('0x5b')],['ids','id'])||{})[_0x4e9e('0x91')](function(_0x532860){for(var _0x43d66e=0x0;_0x43d66e<_0x3d3497['body'][_0x4e9e('0x6d')][_0x4e9e('0x3f')];_0x43d66e+=0x1){socket[_0x4e9e('0x92')]('userSmsQueue:save',{'UserId':Number(_0x3d3497[_0x4e9e('0x5b')][_0x4e9e('0x6d')][_0x43d66e]),'SmsQueueId':Number(_0x3d3497[_0x4e9e('0x4f')]['id'])});}return _0x532860;});}})[_0x4e9e('0x2a')](respondWithResult(_0x225218,null))[_0x4e9e('0x59')](handleError(_0x225218,null));};exports['removeAgents']=function(_0x2a4e5d,_0x5c1c2c,_0x4ba8de){return db[_0x4e9e('0x33')][_0x4e9e('0x50')]({'where':{'id':_0x2a4e5d['params']['id']}})[_0x4e9e('0x2a')](handleEntityNotFound(_0x5c1c2c,null))['then'](function(_0x88c431){if(_0x88c431){return _0x88c431['removeAgents'](_0x2a4e5d[_0x4e9e('0x3a')]['ids'])[_0x4e9e('0x2a')](function(){if(_['isArray'](_0x2a4e5d[_0x4e9e('0x3a')][_0x4e9e('0x6d')])){for(var _0xcd2e7b=0x0;_0xcd2e7b<_0x2a4e5d['query'][_0x4e9e('0x6d')][_0x4e9e('0x3f')];_0xcd2e7b+=0x1){socket['emit']('userSmsQueue:remove',{'UserId':Number(_0x2a4e5d[_0x4e9e('0x3a')][_0x4e9e('0x6d')][_0xcd2e7b]),'SmsQueueId':Number(_0x2a4e5d[_0x4e9e('0x4f')]['id'])});}}else{socket[_0x4e9e('0x92')](_0x4e9e('0x8e'),{'UserId':Number(_0x2a4e5d[_0x4e9e('0x3a')]['ids']),'SmsQueueId':Number(_0x2a4e5d[_0x4e9e('0x4f')]['id'])});}});}})[_0x4e9e('0x2a')](respondWithStatusCode(_0x5c1c2c,null))[_0x4e9e('0x59')](handleError(_0x5c1c2c,null));};exports[_0x4e9e('0x93')]=function(_0x2c2322,_0x20be03,_0x3679e9){var _0x3bbaeb={};var _0x8d2700={};var _0x1fe41f;var _0x51a00c;return db[_0x4e9e('0x33')][_0x4e9e('0x5e')]({'where':{'id':_0x2c2322[_0x4e9e('0x4f')]['id']}})['then'](handleEntityNotFound(_0x20be03,null))[_0x4e9e('0x2a')](function(_0xfbec3){if(_0xfbec3){_0x1fe41f=_0xfbec3;_0x8d2700[_0x4e9e('0x38')]=_[_0x4e9e('0x39')](db['User'][_0x4e9e('0x34')]);_0x8d2700[_0x4e9e('0x3a')]=_['keys'](_0x2c2322[_0x4e9e('0x3a')]);_0x8d2700[_0x4e9e('0x3b')]=_[_0x4e9e('0x3c')](_0x8d2700[_0x4e9e('0x38')],_0x8d2700[_0x4e9e('0x3a')]);_0x3bbaeb[_0x4e9e('0x3e')]=_['intersection'](_0x8d2700['model'],qs[_0x4e9e('0x3d')](_0x2c2322[_0x4e9e('0x3a')][_0x4e9e('0x3d')]));_0x3bbaeb[_0x4e9e('0x3e')]=_0x3bbaeb[_0x4e9e('0x3e')][_0x4e9e('0x3f')]?_0x3bbaeb[_0x4e9e('0x3e')]:_0x8d2700[_0x4e9e('0x38')];_0x3bbaeb['order']=qs[_0x4e9e('0x43')](_0x2c2322[_0x4e9e('0x3a')][_0x4e9e('0x43')]);_0x3bbaeb[_0x4e9e('0x46')]=qs[_0x4e9e('0x3b')](_[_0x4e9e('0x44')](_0x2c2322[_0x4e9e('0x3a')],_0x8d2700[_0x4e9e('0x3b')]));if(_0x2c2322['query'][_0x4e9e('0x45')]){_0x3bbaeb[_0x4e9e('0x46')]=_[_0x4e9e('0x48')](_0x3bbaeb[_0x4e9e('0x46')],{'$or':_['map'](_0x3bbaeb[_0x4e9e('0x3e')],function(_0x189005){var _0x4e83c5={};_0x4e83c5[_0x189005]={'$like':'%'+_0x2c2322[_0x4e9e('0x3a')][_0x4e9e('0x45')]+'%'};return _0x4e83c5;})});}_0x3bbaeb=_['merge']({},_0x3bbaeb,_0x2c2322[_0x4e9e('0x49')]);return _0x1fe41f['getAgents'](_0x3bbaeb);}})[_0x4e9e('0x2a')](function(_0x13e9a8){if(_0x13e9a8){_0x51a00c=_0x13e9a8[_0x4e9e('0x3f')];if(!_0x2c2322['query']['hasOwnProperty'](_0x4e9e('0x41'))){_0x3bbaeb[_0x4e9e('0x22')]=qs['limit'](_0x2c2322[_0x4e9e('0x3a')][_0x4e9e('0x22')]);_0x3bbaeb[_0x4e9e('0x20')]=qs[_0x4e9e('0x20')](_0x2c2322['query']['offset']);}return _0x1fe41f[_0x4e9e('0x93')](_0x3bbaeb);}})[_0x4e9e('0x2a')](function(_0x1736c2){if(_0x1736c2){return _0x1736c2?{'count':_0x51a00c,'rows':_0x1736c2}:null;}})[_0x4e9e('0x2a')](respondWithResult(_0x20be03,null))[_0x4e9e('0x59')](handleError(_0x20be03,null));};