a7c213e6020c8979a5404dc82616e835a84d2724
[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 _0x35e2=['filter','include','findAll','catch','show','params','keys','includeAll','merge','options','find','create','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','get','UserProfileSection','userProfileId','autoAssociation','error','body','describe','getMembers','UserSmsQueue','User','UserId','updatedAt','createdAt','rows','SIP','smsPause','getTeams','findOne','Team','addTeams','ids','Agents','online','voicePause','sequelize','each','forEach','userSmsQueue:save','removeTeams','select','field','from','join','user_has_teams','ut.TeamId\x20=\x20tq.TeamId','SmsQueueId\x20=\x20?','clone','push','toString','QueryTypes','SELECT','every','TeamId','includes','all','union','compact','transaction','isEmpty','emit','userSmsQueue:remove','addAgents','removeAgents','isArray','getAgents','html-pdf','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/logger','api','../../config/environment','defaults','redis','localhost','socket.io-emitter','./smsQueue.socket','register','sendStatus','status','end','json','count','offset','limit','Content-Range','reject','update','then','destroy','stack','name','send','map','SmsQueue','rawAttributes','fieldName','type','key','model','query','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick'];(function(_0x54a49d,_0x1343b7){var _0x516b4b=function(_0x5bd362){while(--_0x5bd362){_0x54a49d['push'](_0x54a49d['shift']());}};_0x516b4b(++_0x1343b7);}(_0x35e2,0x1d1));var _0x235e=function(_0x15bc81,_0x4d4f77){_0x15bc81=_0x15bc81-0x0;var _0x59440e=_0x35e2[_0x15bc81];return _0x59440e;};'use strict';var pdf=require(_0x235e('0x0'));var emlformat=require('eml-format');var rimraf=require(_0x235e('0x1'));var zipdir=require(_0x235e('0x2'));var jsonpatch=require(_0x235e('0x3'));var rp=require(_0x235e('0x4'));var moment=require(_0x235e('0x5'));var BPromise=require(_0x235e('0x6'));var Mustache=require(_0x235e('0x7'));var util=require(_0x235e('0x8'));var path=require(_0x235e('0x9'));var sox=require(_0x235e('0xa'));var csv=require(_0x235e('0xb'));var ejs=require('ejs');var fs=require('fs');var _=require('lodash');var squel=require('squel');var crypto=require(_0x235e('0xc'));var jsforce=require(_0x235e('0xd'));var deskjs=require(_0x235e('0xe'));var toCsv=require(_0x235e('0xb'));var querystring=require(_0x235e('0xf'));var Papa=require(_0x235e('0x10'));var Redis=require(_0x235e('0x11'));var authService=require(_0x235e('0x12'));var qs=require(_0x235e('0x13'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0x235e('0x14'))(_0x235e('0x15'));var utils=require('../../config/utils');var config=require(_0x235e('0x16'));var db=require('../../mysqldb')['db'];config['redis']=_[_0x235e('0x17')](config[_0x235e('0x18')],{'host':_0x235e('0x19'),'port':0x18eb});var socket=require(_0x235e('0x1a'))(new Redis(config[_0x235e('0x18')]));require(_0x235e('0x1b'))[_0x235e('0x1c')](socket);function respondWithStatusCode(_0x398b08,_0x222d39){_0x222d39=_0x222d39||0xcc;return function(_0x2c7f15){if(_0x2c7f15){return _0x398b08[_0x235e('0x1d')](_0x222d39);}return _0x398b08[_0x235e('0x1e')](_0x222d39)[_0x235e('0x1f')]();};}function respondWithResult(_0x3c50a7,_0xcddf21){_0xcddf21=_0xcddf21||0xc8;return function(_0x5a0483){if(_0x5a0483){return _0x3c50a7[_0x235e('0x1e')](_0xcddf21)[_0x235e('0x20')](_0x5a0483);}};}function respondWithFilteredResult(_0x5705fe,_0xc4a4e1){return function(_0xf3aed6){if(_0xf3aed6){var _0x27d1ab=_0xf3aed6[_0x235e('0x21')],_0x5f4e49=_0xc4a4e1[_0x235e('0x22')],_0xb37c8d=_0xc4a4e1[_0x235e('0x22')]+_0xc4a4e1[_0x235e('0x23')],_0x285beb;if(_0xb37c8d>=_0x27d1ab){_0xb37c8d=_0x27d1ab;_0x285beb=0xc8;}else{_0x285beb=0xce;}_0x5705fe[_0x235e('0x1e')](_0x285beb);return _0x5705fe['set'](_0x235e('0x24'),_0x5f4e49+'-'+_0xb37c8d+'/'+_0x27d1ab)[_0x235e('0x20')](_0xf3aed6);}return null;};}function patchUpdates(_0x261bf4){return function(_0x5a5b10){try{jsonpatch['apply'](_0x5a5b10,_0x261bf4,!![]);}catch(_0x4c45aa){return BPromise[_0x235e('0x25')](_0x4c45aa);}return _0x5a5b10['save']();};}function saveUpdates(_0x5f39f5,_0x60789b){return function(_0x27dd33){if(_0x27dd33){return _0x27dd33[_0x235e('0x26')](_0x5f39f5)[_0x235e('0x27')](function(_0x96017c){return _0x96017c;});}return null;};}function removeEntity(_0x194178,_0xf85359){return function(_0x5de2a0){if(_0x5de2a0){return _0x5de2a0['destroy']()[_0x235e('0x27')](function(){var _0x1defcb=_0x5de2a0['get']({'plain':!![]});var _0x2909c2='SmsQueues';return db['UserProfileResource'][_0x235e('0x28')]({'where':{'type':_0x2909c2,'resourceId':_0x1defcb['id']}})['then'](function(){return _0x5de2a0;});})['then'](function(){_0x194178[_0x235e('0x1e')](0xcc)['end']();});}};}function handleEntityNotFound(_0x3a67d4,_0xb84b96){return function(_0x3aae5f){if(!_0x3aae5f){_0x3a67d4[_0x235e('0x1d')](0x194);}return _0x3aae5f;};}function handleError(_0x4d913b,_0x51c41d){_0x51c41d=_0x51c41d||0x1f4;return function(_0x3fd041){logger['error'](_0x3fd041[_0x235e('0x29')]);if(_0x3fd041['name']){delete _0x3fd041[_0x235e('0x2a')];}_0x4d913b['status'](_0x51c41d)[_0x235e('0x2b')](_0x3fd041);};}exports['index']=function(_0x1aec5f,_0xd977dc){var _0x4eabbf={},_0x3d9018={},_0x37363a={'count':0x0,'rows':[]};var _0x1ad80c=_[_0x235e('0x2c')](db[_0x235e('0x2d')][_0x235e('0x2e')],function(_0x5ca1dd){return{'name':_0x5ca1dd[_0x235e('0x2f')],'type':_0x5ca1dd[_0x235e('0x30')][_0x235e('0x31')]};});_0x3d9018[_0x235e('0x32')]=_[_0x235e('0x2c')](_0x1ad80c,_0x235e('0x2a'));_0x3d9018[_0x235e('0x33')]=_['keys'](_0x1aec5f[_0x235e('0x33')]);_0x3d9018[_0x235e('0x34')]=_[_0x235e('0x35')](_0x3d9018[_0x235e('0x32')],_0x3d9018[_0x235e('0x33')]);_0x4eabbf[_0x235e('0x36')]=_[_0x235e('0x35')](_0x3d9018['model'],qs['fields'](_0x1aec5f['query'][_0x235e('0x37')]));_0x4eabbf[_0x235e('0x36')]=_0x4eabbf['attributes'][_0x235e('0x38')]?_0x4eabbf[_0x235e('0x36')]:_0x3d9018[_0x235e('0x32')];if(!_0x1aec5f[_0x235e('0x33')][_0x235e('0x39')](_0x235e('0x3a'))){_0x4eabbf[_0x235e('0x23')]=qs[_0x235e('0x23')](_0x1aec5f[_0x235e('0x33')][_0x235e('0x23')]);_0x4eabbf['offset']=qs[_0x235e('0x22')](_0x1aec5f[_0x235e('0x33')][_0x235e('0x22')]);}_0x4eabbf[_0x235e('0x3b')]=qs[_0x235e('0x3c')](_0x1aec5f[_0x235e('0x33')][_0x235e('0x3c')]);_0x4eabbf[_0x235e('0x3d')]=qs[_0x235e('0x34')](_[_0x235e('0x3e')](_0x1aec5f[_0x235e('0x33')],_0x3d9018[_0x235e('0x34')]),_0x1ad80c);if(_0x1aec5f['query'][_0x235e('0x3f')]){_0x4eabbf[_0x235e('0x3d')]=_['merge'](_0x4eabbf[_0x235e('0x3d')],{'$or':_[_0x235e('0x2c')](_0x1ad80c,function(_0x9d3e91){if(_0x9d3e91[_0x235e('0x30')]!=='VIRTUAL'){var _0x5a1529={};_0x5a1529[_0x9d3e91[_0x235e('0x2a')]]={'$like':'%'+_0x1aec5f[_0x235e('0x33')][_0x235e('0x3f')]+'%'};return _0x5a1529;}})});}_0x4eabbf=_['merge']({},_0x4eabbf,_0x1aec5f['options']);var _0x269190={'where':_0x4eabbf[_0x235e('0x3d')]};return db[_0x235e('0x2d')][_0x235e('0x21')](_0x269190)['then'](function(_0x2d7089){_0x37363a['count']=_0x2d7089;if(_0x1aec5f[_0x235e('0x33')]['includeAll']){_0x4eabbf[_0x235e('0x40')]=[{'all':!![]}];}return db[_0x235e('0x2d')][_0x235e('0x41')](_0x4eabbf);})[_0x235e('0x27')](function(_0x3dd313){_0x37363a['rows']=_0x3dd313;return _0x37363a;})['then'](respondWithFilteredResult(_0xd977dc,_0x4eabbf))[_0x235e('0x42')](handleError(_0xd977dc,null));};exports[_0x235e('0x43')]=function(_0x4f2fbc,_0x1c80e3){var _0x19f339={'raw':!![],'where':{'id':_0x4f2fbc[_0x235e('0x44')]['id']}},_0x2bf0b4={};_0x2bf0b4[_0x235e('0x32')]=_[_0x235e('0x45')](db[_0x235e('0x2d')][_0x235e('0x2e')]);_0x2bf0b4[_0x235e('0x33')]=_['keys'](_0x4f2fbc[_0x235e('0x33')]);_0x2bf0b4[_0x235e('0x34')]=_['intersection'](_0x2bf0b4[_0x235e('0x32')],_0x2bf0b4[_0x235e('0x33')]);_0x19f339['attributes']=_[_0x235e('0x35')](_0x2bf0b4[_0x235e('0x32')],qs['fields'](_0x4f2fbc['query'][_0x235e('0x37')]));_0x19f339[_0x235e('0x36')]=_0x19f339[_0x235e('0x36')]['length']?_0x19f339[_0x235e('0x36')]:_0x2bf0b4[_0x235e('0x32')];if(_0x4f2fbc[_0x235e('0x33')][_0x235e('0x46')]){_0x19f339['include']=[{'all':!![]}];}_0x19f339=_[_0x235e('0x47')]({},_0x19f339,_0x4f2fbc[_0x235e('0x48')]);return db[_0x235e('0x2d')][_0x235e('0x49')](_0x19f339)[_0x235e('0x27')](handleEntityNotFound(_0x1c80e3,null))[_0x235e('0x27')](respondWithResult(_0x1c80e3,null))[_0x235e('0x42')](handleError(_0x1c80e3,null));};exports[_0x235e('0x4a')]=function(_0x15e162,_0x1ddf34){return db[_0x235e('0x2d')][_0x235e('0x4a')](_0x15e162['body'],{})['then'](function(_0x1c5f24){var _0xd8aad=_0x15e162['user']['get']({'plain':!![]});if(!_0xd8aad)throw new Error(_0x235e('0x4b'));if(_0xd8aad[_0x235e('0x4c')]==='user'){var _0x39a23a=_0x1c5f24[_0x235e('0x4d')]({'plain':!![]});var _0x3c975b='SmsQueues';return db[_0x235e('0x4e')][_0x235e('0x49')]({'where':{'name':_0x3c975b,'userProfileId':_0xd8aad[_0x235e('0x4f')]},'raw':!![]})[_0x235e('0x27')](function(_0x5d9abd){if(_0x5d9abd&&_0x5d9abd[_0x235e('0x50')]===0x0){return db['UserProfileResource'][_0x235e('0x4a')]({'name':_0x39a23a[_0x235e('0x2a')],'resourceId':_0x39a23a['id'],'type':_0x5d9abd['name'],'sectionId':_0x5d9abd['id']},{})[_0x235e('0x27')](function(){return _0x1c5f24;});}else{return _0x1c5f24;}})[_0x235e('0x42')](function(_0x11eccf){logger[_0x235e('0x51')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x11eccf);throw _0x11eccf;});}return _0x1c5f24;})[_0x235e('0x27')](respondWithResult(_0x1ddf34,0xc9))['catch'](handleError(_0x1ddf34,null));};exports[_0x235e('0x26')]=function(_0x57b9de,_0x529451){if(_0x57b9de[_0x235e('0x52')]['id']){delete _0x57b9de['body']['id'];}return db[_0x235e('0x2d')][_0x235e('0x49')]({'where':{'id':_0x57b9de[_0x235e('0x44')]['id']}})[_0x235e('0x27')](handleEntityNotFound(_0x529451,null))[_0x235e('0x27')](saveUpdates(_0x57b9de['body'],null))[_0x235e('0x27')](respondWithResult(_0x529451,null))[_0x235e('0x42')](handleError(_0x529451,null));};exports['destroy']=function(_0x496ad6,_0x2b20e1){return db[_0x235e('0x2d')][_0x235e('0x49')]({'where':{'id':_0x496ad6[_0x235e('0x44')]['id']}})[_0x235e('0x27')](handleEntityNotFound(_0x2b20e1,null))[_0x235e('0x27')](removeEntity(_0x2b20e1,null))[_0x235e('0x42')](handleError(_0x2b20e1,null));};exports[_0x235e('0x53')]=function(_0x1c35f8,_0x4a3d64){return db[_0x235e('0x2d')][_0x235e('0x53')]()[_0x235e('0x27')](respondWithResult(_0x4a3d64,null))['catch'](handleError(_0x4a3d64,null));};exports[_0x235e('0x54')]=function(_0x290e71,_0x49305d,_0x39a52f){var _0x2e9a0e={'raw':!![],'where':{}},_0x2c3aa8={},_0x4b1fb6;return db['SmsQueue']['findOne']({'where':{'id':_0x290e71[_0x235e('0x44')]['id']}})[_0x235e('0x27')](handleEntityNotFound(_0x49305d,null))[_0x235e('0x27')](function(_0x2f7c85){if(_0x2f7c85){_0x4b1fb6=_0x2f7c85[_0x235e('0x4d')]({'plain':!![]});_0x2c3aa8['model']=_[_0x235e('0x45')](db[_0x235e('0x55')][_0x235e('0x2e')]);_0x2c3aa8[_0x235e('0x33')]=_['keys'](_0x290e71[_0x235e('0x33')]);_0x2c3aa8[_0x235e('0x34')]=_['intersection'](_0x2c3aa8[_0x235e('0x32')],_0x2c3aa8[_0x235e('0x33')]);_0x2e9a0e[_0x235e('0x36')]=_[_0x235e('0x35')](_0x2c3aa8[_0x235e('0x32')],qs[_0x235e('0x37')](_0x290e71['query'][_0x235e('0x37')]));_0x2e9a0e[_0x235e('0x36')]=_0x2e9a0e[_0x235e('0x36')][_0x235e('0x38')]?_0x2e9a0e[_0x235e('0x36')]:_0x2c3aa8[_0x235e('0x32')];if(!_0x290e71[_0x235e('0x33')]['hasOwnProperty'](_0x235e('0x3a'))){_0x2e9a0e['limit']=qs[_0x235e('0x23')](_0x290e71[_0x235e('0x33')][_0x235e('0x23')]);_0x2e9a0e[_0x235e('0x22')]=qs[_0x235e('0x22')](_0x290e71[_0x235e('0x33')][_0x235e('0x22')]);}_0x2e9a0e[_0x235e('0x3b')]=qs[_0x235e('0x3c')](_0x290e71['query'][_0x235e('0x3c')]);_0x2e9a0e[_0x235e('0x3d')]=qs['filters'](_['pick'](_0x290e71['query'],_0x2c3aa8[_0x235e('0x34')]));_0x2e9a0e[_0x235e('0x3d')]['SmsQueueId']=_0x2f7c85['id'];if(_0x290e71[_0x235e('0x33')][_0x235e('0x3f')]){_0x2e9a0e['where']=_[_0x235e('0x47')](_0x2e9a0e[_0x235e('0x3d')],{'$or':_[_0x235e('0x2c')](_0x2e9a0e['attributes'],function(_0x5d003a){var _0x57e0b4={};_0x57e0b4[_0x5d003a]={'$like':'%'+_0x290e71[_0x235e('0x33')]['filter']+'%'};return _0x57e0b4;})});}_0x2e9a0e=_[_0x235e('0x47')]({},_0x2e9a0e,_0x290e71[_0x235e('0x48')]);return db[_0x235e('0x55')][_0x235e('0x41')](_0x2e9a0e);}})[_0x235e('0x27')](function(_0x32ce87){if(_0x32ce87){return db[_0x235e('0x56')]['findAndCountAll']({'where':{'id':_['map'](_0x32ce87,_0x235e('0x57')),'role':'agent'},'attributes':['id','name','smsPause',_0x235e('0x58'),_0x235e('0x59')]});}})[_0x235e('0x27')](function(_0x5220e2){if(_0x5220e2){return{'count':_0x5220e2[_0x235e('0x21')],'rows':_[_0x235e('0x2c')](_0x5220e2[_0x235e('0x5a')],function(_0x2a90ec){return{'membername':_0x2a90ec['name'],'UserId':_0x2a90ec['id'],'queue_name':_0x4b1fb6[_0x235e('0x2a')],'SmsQueueId':_0x4b1fb6['id'],'interface':util['format']('%s/%s',_0x235e('0x5b'),_0x2a90ec['name']),'penalty':0x0,'paused':_0x2a90ec[_0x235e('0x5c')],'createdAt':_0x2a90ec[_0x235e('0x59')],'updatedAt':_0x2a90ec[_0x235e('0x58')]};})};}else{return{'count':0x0,'rows':[]};}})[_0x235e('0x27')](respondWithFilteredResult(_0x49305d,_0x2e9a0e))[_0x235e('0x42')](handleError(_0x49305d,null));};exports[_0x235e('0x5d')]=function(_0x2cfbe6,_0x57bdfc,_0x439c80){var _0x51f301={};var _0x5cd515={};var _0x5a8207;var _0x3fb751;return db['SmsQueue'][_0x235e('0x5e')]({'where':{'id':_0x2cfbe6[_0x235e('0x44')]['id']}})[_0x235e('0x27')](handleEntityNotFound(_0x57bdfc,null))[_0x235e('0x27')](function(_0xa0b29e){if(_0xa0b29e){_0x5a8207=_0xa0b29e;_0x5cd515[_0x235e('0x32')]=_[_0x235e('0x45')](db[_0x235e('0x5f')][_0x235e('0x2e')]);_0x5cd515[_0x235e('0x33')]=_[_0x235e('0x45')](_0x2cfbe6[_0x235e('0x33')]);_0x5cd515[_0x235e('0x34')]=_[_0x235e('0x35')](_0x5cd515[_0x235e('0x32')],_0x5cd515[_0x235e('0x33')]);_0x51f301['attributes']=_[_0x235e('0x35')](_0x5cd515['model'],qs[_0x235e('0x37')](_0x2cfbe6[_0x235e('0x33')][_0x235e('0x37')]));_0x51f301[_0x235e('0x36')]=_0x51f301[_0x235e('0x36')][_0x235e('0x38')]?_0x51f301[_0x235e('0x36')]:_0x5cd515[_0x235e('0x32')];_0x51f301[_0x235e('0x3b')]=qs[_0x235e('0x3c')](_0x2cfbe6[_0x235e('0x33')][_0x235e('0x3c')]);_0x51f301[_0x235e('0x3d')]=qs[_0x235e('0x34')](_[_0x235e('0x3e')](_0x2cfbe6[_0x235e('0x33')],_0x5cd515[_0x235e('0x34')]));if(_0x2cfbe6[_0x235e('0x33')][_0x235e('0x3f')]){_0x51f301[_0x235e('0x3d')]=_[_0x235e('0x47')](_0x51f301['where'],{'$or':_[_0x235e('0x2c')](_0x51f301[_0x235e('0x36')],function(_0x425250){var _0xdd4e3f={};_0xdd4e3f[_0x425250]={'$like':'%'+_0x2cfbe6[_0x235e('0x33')]['filter']+'%'};return _0xdd4e3f;})});}_0x51f301=_[_0x235e('0x47')]({},_0x51f301,_0x2cfbe6[_0x235e('0x48')]);return _0x5a8207[_0x235e('0x5d')](_0x51f301);}})['then'](function(_0x49ca94){if(_0x49ca94){_0x3fb751=_0x49ca94['length'];if(!_0x2cfbe6[_0x235e('0x33')][_0x235e('0x39')](_0x235e('0x3a'))){_0x51f301[_0x235e('0x23')]=qs[_0x235e('0x23')](_0x2cfbe6[_0x235e('0x33')]['limit']);_0x51f301[_0x235e('0x22')]=qs['offset'](_0x2cfbe6['query']['offset']);}return _0x5a8207[_0x235e('0x5d')](_0x51f301);}})[_0x235e('0x27')](function(_0x4244eb){if(_0x4244eb){return _0x4244eb?{'count':_0x3fb751,'rows':_0x4244eb}:null;}})[_0x235e('0x27')](respondWithResult(_0x57bdfc,null))[_0x235e('0x42')](handleError(_0x57bdfc,null));};exports[_0x235e('0x60')]=function(_0x46ae2d,_0x4ab5cc,_0x89ae88){var _0x30d5ac=_0x46ae2d['body'][_0x235e('0x61')];return db[_0x235e('0x5f')][_0x235e('0x41')]({'where':{'id':_0x30d5ac},'attributes':['id'],'include':[{'model':db[_0x235e('0x56')],'as':_0x235e('0x62'),'attributes':['id',_0x235e('0x2a'),_0x235e('0x63'),_0x235e('0x64'),'interface'],'raw':!![]}]})[_0x235e('0x27')](function(_0x1fa3da){if(_0x1fa3da){var _0xcbe48f=_['flatMap'](_0x1fa3da,function(_0x319b07){var _0x1bd202=_0x319b07['get']({'plain':!![]});return _0x1bd202[_0x235e('0x62')];});return db[_0x235e('0x2d')][_0x235e('0x49')]({'where':{'id':_0x46ae2d[_0x235e('0x44')]['id']}})[_0x235e('0x27')](function(_0x550294){return db[_0x235e('0x65')]['transaction'](function(_0x46689e){return _0x550294[_0x235e('0x60')](_0x30d5ac,{'transaction':_0x46689e})['then'](function(){return BPromise[_0x235e('0x66')](_0xcbe48f,function(_0x2cb783){return db[_0x235e('0x55')]['findOrCreate']({'where':{'UserId':_0x2cb783['id'],'SmsQueueId':_0x46ae2d[_0x235e('0x44')]['id']},'transaction':_0x46689e});});})[_0x235e('0x27')](function(){_0xcbe48f[_0x235e('0x67')](function(_0x47f9b3){socket['emit'](_0x235e('0x68'),{'UserId':_0x47f9b3['id'],'SmsQueueId':_0x550294['id']});});});});});}})[_0x235e('0x27')](respondWithStatusCode(_0x4ab5cc,null))['catch'](handleError(_0x4ab5cc,null));};exports[_0x235e('0x69')]=function(_0x6551ba,_0x390833,_0x3a66ec){return db['Team'][_0x235e('0x41')]({'where':{'id':_0x6551ba[_0x235e('0x33')][_0x235e('0x61')]},'attributes':['id'],'include':[{'model':db[_0x235e('0x56')],'as':_0x235e('0x62'),'attributes':['id'],'raw':!![]}]})[_0x235e('0x27')](handleEntityNotFound(_0x390833,null))['then'](function(_0x51ba7c){var _0x5c8c4c=_[_0x235e('0x2c')](_0x51ba7c,'id');var _0x2da7e9=[];var _0x281f9c=[];var _0x2bc483=squel[_0x235e('0x6a')]();_0x2bc483[_0x235e('0x6b')]('tq.TeamId')[_0x235e('0x6c')]('team_has_sms_queues','tq')[_0x235e('0x6d')](_0x235e('0x6e'),'ut',_0x235e('0x6f'))['where'](_0x235e('0x70'),_0x6551ba[_0x235e('0x44')]['id']);for(var _0x58fb31=0x0;_0x58fb31<_0x51ba7c[_0x235e('0x38')];_0x58fb31+=0x1){let _0xb90946=_0x51ba7c[_0x58fb31];for(var _0x493c01=0x0;_0x493c01<_0xb90946[_0x235e('0x62')][_0x235e('0x38')];_0x493c01+=0x1){let _0xd58b14=_0xb90946[_0x235e('0x62')][_0x493c01];var _0x57646f=_0x2bc483[_0x235e('0x71')]();_0x57646f['where']('ut.UserId\x20=\x20?',_0xd58b14['id']);_0x281f9c[_0x235e('0x72')](db['sequelize'][_0x235e('0x33')](_0x57646f[_0x235e('0x73')](),{'type':db[_0x235e('0x65')][_0x235e('0x74')][_0x235e('0x75')]})['then'](function(_0x154647){if(_0x154647['length']===0x1){return _0xd58b14['id'];}else{var _0x3f66a8=_[_0x235e('0x76')](_[_0x235e('0x2c')](_0x154647,_0x235e('0x77')),function(_0x12831c){return _[_0x235e('0x78')](_0x5c8c4c,_0x12831c);});if(_0x3f66a8){return _0xd58b14['id'];}}}));}}return BPromise[_0x235e('0x79')](_0x281f9c)[_0x235e('0x27')](function(_0x164441){_0x2da7e9=_(_0x2da7e9)[_0x235e('0x7a')](_0x164441)[_0x235e('0x7b')]()['value']();return db['SmsQueue'][_0x235e('0x49')]({'where':{'id':_0x6551ba[_0x235e('0x44')]['id']}})['then'](function(_0x51a264){return db[_0x235e('0x65')][_0x235e('0x7c')](function(_0x9fd8a2){return _0x51a264[_0x235e('0x69')](_0x6551ba['query'][_0x235e('0x61')],{'transaction':_0x9fd8a2})[_0x235e('0x27')](function(){if(!_[_0x235e('0x7d')](_0x2da7e9)){return _0x51a264['removeAgents'](_0x2da7e9,{'transaction':_0x9fd8a2});}})[_0x235e('0x27')](function(){_0x2da7e9['forEach'](function(_0x5590df){socket[_0x235e('0x7e')](_0x235e('0x7f'),{'UserId':_0x5590df,'SmsQueueId':_0x51a264['id']});});});});});});})[_0x235e('0x27')](respondWithStatusCode(_0x390833,null))[_0x235e('0x42')](handleError(_0x390833,null));};exports[_0x235e('0x80')]=function(_0x904157,_0xb3a8ed,_0x323bc1){return db[_0x235e('0x2d')][_0x235e('0x49')]({'where':{'id':_0x904157[_0x235e('0x44')]['id']}})[_0x235e('0x27')](handleEntityNotFound(_0xb3a8ed,null))['then'](function(_0xb43d9c){if(_0xb43d9c){return _0xb43d9c[_0x235e('0x80')](_0x904157[_0x235e('0x52')]['ids'],_['omit'](_0x904157[_0x235e('0x52')],[_0x235e('0x61'),'id'])||{})['spread'](function(_0x181b96){for(var _0x331cf4=0x0;_0x331cf4<_0x904157[_0x235e('0x52')][_0x235e('0x61')]['length'];_0x331cf4+=0x1){socket[_0x235e('0x7e')](_0x235e('0x68'),{'UserId':_0x904157[_0x235e('0x52')][_0x235e('0x61')][_0x331cf4],'SmsQueueId':_0x904157[_0x235e('0x44')]['id']});}return _0x181b96;});}})[_0x235e('0x27')](respondWithResult(_0xb3a8ed,null))[_0x235e('0x42')](handleError(_0xb3a8ed,null));};exports['removeAgents']=function(_0x29ee66,_0x2bb326,_0x2d6106){return db[_0x235e('0x2d')]['find']({'where':{'id':_0x29ee66['params']['id']}})[_0x235e('0x27')](handleEntityNotFound(_0x2bb326,null))[_0x235e('0x27')](function(_0x16bc85){if(_0x16bc85){return _0x16bc85[_0x235e('0x81')](_0x29ee66[_0x235e('0x33')]['ids'])[_0x235e('0x27')](function(){if(_[_0x235e('0x82')](_0x29ee66['query']['ids'])){for(var _0x382b26=0x0;_0x382b26<_0x29ee66[_0x235e('0x33')][_0x235e('0x61')]['length'];_0x382b26+=0x1){socket[_0x235e('0x7e')](_0x235e('0x7f'),{'UserId':Number(_0x29ee66[_0x235e('0x33')][_0x235e('0x61')][_0x382b26]),'SmsQueueId':Number(_0x29ee66['params']['id'])});}}else{socket[_0x235e('0x7e')](_0x235e('0x7f'),{'UserId':Number(_0x29ee66[_0x235e('0x33')]['ids']),'SmsQueueId':Number(_0x29ee66[_0x235e('0x44')]['id'])});}});}})[_0x235e('0x27')](respondWithStatusCode(_0x2bb326,null))[_0x235e('0x42')](handleError(_0x2bb326,null));};exports[_0x235e('0x83')]=function(_0x4c6f34,_0x29608d,_0x1139de){var _0x1c8102={};var _0x31bfdc={};var _0xc64eae;var _0x1757ea;return db[_0x235e('0x2d')][_0x235e('0x5e')]({'where':{'id':_0x4c6f34[_0x235e('0x44')]['id']}})[_0x235e('0x27')](handleEntityNotFound(_0x29608d,null))[_0x235e('0x27')](function(_0x2f0dd9){if(_0x2f0dd9){_0xc64eae=_0x2f0dd9;_0x31bfdc[_0x235e('0x32')]=_[_0x235e('0x45')](db[_0x235e('0x56')][_0x235e('0x2e')]);_0x31bfdc['query']=_[_0x235e('0x45')](_0x4c6f34[_0x235e('0x33')]);_0x31bfdc[_0x235e('0x34')]=_[_0x235e('0x35')](_0x31bfdc['model'],_0x31bfdc[_0x235e('0x33')]);_0x1c8102[_0x235e('0x36')]=_[_0x235e('0x35')](_0x31bfdc['model'],qs[_0x235e('0x37')](_0x4c6f34[_0x235e('0x33')][_0x235e('0x37')]));_0x1c8102[_0x235e('0x36')]=_0x1c8102[_0x235e('0x36')][_0x235e('0x38')]?_0x1c8102[_0x235e('0x36')]:_0x31bfdc[_0x235e('0x32')];_0x1c8102[_0x235e('0x3b')]=qs[_0x235e('0x3c')](_0x4c6f34[_0x235e('0x33')][_0x235e('0x3c')]);_0x1c8102[_0x235e('0x3d')]=qs[_0x235e('0x34')](_[_0x235e('0x3e')](_0x4c6f34[_0x235e('0x33')],_0x31bfdc[_0x235e('0x34')]));if(_0x4c6f34[_0x235e('0x33')][_0x235e('0x3f')]){_0x1c8102['where']=_[_0x235e('0x47')](_0x1c8102[_0x235e('0x3d')],{'$or':_[_0x235e('0x2c')](_0x1c8102[_0x235e('0x36')],function(_0x51c17b){var _0x20039a={};_0x20039a[_0x51c17b]={'$like':'%'+_0x4c6f34[_0x235e('0x33')][_0x235e('0x3f')]+'%'};return _0x20039a;})});}_0x1c8102=_[_0x235e('0x47')]({},_0x1c8102,_0x4c6f34[_0x235e('0x48')]);return _0xc64eae[_0x235e('0x83')](_0x1c8102);}})[_0x235e('0x27')](function(_0x1de652){if(_0x1de652){_0x1757ea=_0x1de652[_0x235e('0x38')];if(!_0x4c6f34[_0x235e('0x33')]['hasOwnProperty'](_0x235e('0x3a'))){_0x1c8102[_0x235e('0x23')]=qs['limit'](_0x4c6f34[_0x235e('0x33')][_0x235e('0x23')]);_0x1c8102[_0x235e('0x22')]=qs[_0x235e('0x22')](_0x4c6f34[_0x235e('0x33')][_0x235e('0x22')]);}return _0xc64eae[_0x235e('0x83')](_0x1c8102);}})['then'](function(_0xbf3d8e){if(_0xbf3d8e){return _0xbf3d8e?{'count':_0x1757ea,'rows':_0xbf3d8e}:null;}})[_0x235e('0x27')](respondWithResult(_0x29608d,null))['catch'](handleError(_0x29608d,null));};