eed39ef9435f04fc017c8a8efc6dfcf24aea972f
[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 _0x6cf0=['rawAttributes','fieldName','type','key','model','query','keys','intersection','attributes','fields','hasOwnProperty','nolimit','order','sort','where','filters','pick','filter','options','SmsQueue','includeAll','include','findAll','rows','catch','show','params','length','merge','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','SmsQueues','UserProfileSection','find','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','describe','getMembers','UserSmsQueue','SmsQueueId','User','findAndCountAll','UserId','smsPause','updatedAt','format','%s/%s','SIP','createdAt','getTeams','findOne','Team','addTeams','ids','Agents','online','interface','sequelize','forEach','emit','userSmsQueue:save','removeTeams','select','tq.TeamId','from','team_has_sms_queues','user_has_teams','clone','ut.UserId\x20=\x20?','toString','QueryTypes','SELECT','every','TeamId','all','isEmpty','removeAgents','userSmsQueue:remove','addAgents','omit','spread','isArray','getAgents','rimraf','zip-dir','fast-json-patch','mustache','util','path','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/environment','../../mysqldb','redis','localhost','register','sendStatus','status','end','json','undefined','count','offset','limit','Content-Range','apply','reject','save','update','then','destroy','get','error','stack','name','message','agent','interaction','index','map'];(function(_0x1431ea,_0x17ceaa){var _0x5c282a=function(_0x511250){while(--_0x511250){_0x1431ea['push'](_0x1431ea['shift']());}};_0x5c282a(++_0x17ceaa);}(_0x6cf0,0x1ef));var _0x06cf=function(_0x3acb2e,_0x243552){_0x3acb2e=_0x3acb2e-0x0;var _0x48b407=_0x6cf0[_0x3acb2e];return _0x48b407;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x06cf('0x0'));var zipdir=require(_0x06cf('0x1'));var jsonpatch=require(_0x06cf('0x2'));var rp=require('request-promise');var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0x06cf('0x3'));var util=require(_0x06cf('0x4'));var path=require(_0x06cf('0x5'));var sox=require(_0x06cf('0x6'));var csv=require(_0x06cf('0x7'));var ejs=require(_0x06cf('0x8'));var fs=require('fs');var fs_extra=require(_0x06cf('0x9'));var _=require(_0x06cf('0xa'));var squel=require(_0x06cf('0xb'));var crypto=require(_0x06cf('0xc'));var jsforce=require(_0x06cf('0xd'));var deskjs=require('desk.js');var toCsv=require(_0x06cf('0x7'));var querystring=require(_0x06cf('0xe'));var Papa=require('papaparse');var Redis=require(_0x06cf('0xf'));var authService=require(_0x06cf('0x10'));var qs=require(_0x06cf('0x11'));var as=require(_0x06cf('0x12'));var hardwareService=require(_0x06cf('0x13'));var logger=require('../../config/logger')('api');var utils=require('../../config/utils');var config=require(_0x06cf('0x14'));var licenseUtil=require('../../config/license/util');var db=require(_0x06cf('0x15'))['db'];config[_0x06cf('0x16')]=_['defaults'](config['redis'],{'host':_0x06cf('0x17'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x06cf('0x16')]));require('./smsQueue.socket')[_0x06cf('0x18')](socket);function respondWithStatusCode(_0xbb54c0,_0x2d78a7){_0x2d78a7=_0x2d78a7||0xcc;return function(_0x3ce161){if(_0x3ce161){return _0xbb54c0[_0x06cf('0x19')](_0x2d78a7);}return _0xbb54c0[_0x06cf('0x1a')](_0x2d78a7)[_0x06cf('0x1b')]();};}function respondWithResult(_0x222b5d,_0x3d73c5){_0x3d73c5=_0x3d73c5||0xc8;return function(_0x4285dd){if(_0x4285dd){return _0x222b5d[_0x06cf('0x1a')](_0x3d73c5)[_0x06cf('0x1c')](_0x4285dd);}};}function respondWithFilteredResult(_0x921ada,_0x90ccaf){return function(_0x401363){if(_0x401363){var _0x20bbd9=typeof _0x90ccaf['offset']==='undefined'&&typeof _0x90ccaf['limit']===_0x06cf('0x1d');var _0x529837=_0x401363[_0x06cf('0x1e')];var _0x920ee2=_0x20bbd9?0x0:_0x90ccaf[_0x06cf('0x1f')];var _0x2c5792=_0x20bbd9?_0x401363[_0x06cf('0x1e')]:_0x90ccaf[_0x06cf('0x1f')]+_0x90ccaf[_0x06cf('0x20')];var _0x1baf0a;if(_0x2c5792>=_0x529837){_0x2c5792=_0x529837;_0x1baf0a=0xc8;}else{_0x1baf0a=0xce;}_0x921ada[_0x06cf('0x1a')](_0x1baf0a);return _0x921ada['set'](_0x06cf('0x21'),_0x920ee2+'-'+_0x2c5792+'/'+_0x529837)[_0x06cf('0x1c')](_0x401363);}return null;};}function patchUpdates(_0x3d7032){return function(_0x58ce8b){try{jsonpatch[_0x06cf('0x22')](_0x58ce8b,_0x3d7032,!![]);}catch(_0x4f17c1){return BPromise[_0x06cf('0x23')](_0x4f17c1);}return _0x58ce8b[_0x06cf('0x24')]();};}function saveUpdates(_0x19082b,_0x1ce499){return function(_0x457a4a){if(_0x457a4a){return _0x457a4a[_0x06cf('0x25')](_0x19082b)[_0x06cf('0x26')](function(_0x3b0b93){return _0x3b0b93;});}return null;};}function removeEntity(_0x137520,_0xcdd2c1){return function(_0x2c88e5){if(_0x2c88e5){return _0x2c88e5[_0x06cf('0x27')]()['then'](function(){var _0x38c65c=_0x2c88e5[_0x06cf('0x28')]({'plain':!![]});var _0x23b559='SmsQueues';return db['UserProfileResource'][_0x06cf('0x27')]({'where':{'type':_0x23b559,'resourceId':_0x38c65c['id']}})[_0x06cf('0x26')](function(){return _0x2c88e5;});})[_0x06cf('0x26')](function(){_0x137520[_0x06cf('0x1a')](0xcc)[_0x06cf('0x1b')]();});}};}function handleEntityNotFound(_0x109ecb,_0x5e800e){return function(_0x172809){if(!_0x172809){_0x109ecb['sendStatus'](0x194);}return _0x172809;};}function handleError(_0xcce2cd,_0x55a442){_0x55a442=_0x55a442||0x1f4;return function(_0x39feaf){logger[_0x06cf('0x29')](_0x39feaf[_0x06cf('0x2a')]);if(_0x39feaf[_0x06cf('0x2b')]){delete _0x39feaf[_0x06cf('0x2b')];}_0xcce2cd[_0x06cf('0x1a')](_0x55a442)['send'](_0x39feaf);};}function getMustacheRender(_0x37dc33,_0x465f23){return Mustache['render'](_0x37dc33,_['merge'](_0x465f23['body'],{'contact':_0x465f23['contact'],'message':_0x465f23[_0x06cf('0x2c')],'agent':_0x465f23[_0x06cf('0x2d')],'interaction':_0x465f23[_0x06cf('0x2e')],'account':_0x465f23['account']}))||'';}exports[_0x06cf('0x2f')]=function(_0x43bedd,_0x56be1d){var _0x67c5c2={},_0x3f9413={},_0x13f523={'count':0x0,'rows':[]};var _0x1b06ad=_[_0x06cf('0x30')](db['SmsQueue'][_0x06cf('0x31')],function(_0x36c590){return{'name':_0x36c590[_0x06cf('0x32')],'type':_0x36c590[_0x06cf('0x33')][_0x06cf('0x34')]};});_0x3f9413[_0x06cf('0x35')]=_['map'](_0x1b06ad,_0x06cf('0x2b'));_0x3f9413[_0x06cf('0x36')]=_[_0x06cf('0x37')](_0x43bedd[_0x06cf('0x36')]);_0x3f9413['filters']=_[_0x06cf('0x38')](_0x3f9413[_0x06cf('0x35')],_0x3f9413[_0x06cf('0x36')]);_0x67c5c2[_0x06cf('0x39')]=_[_0x06cf('0x38')](_0x3f9413['model'],qs[_0x06cf('0x3a')](_0x43bedd[_0x06cf('0x36')][_0x06cf('0x3a')]));_0x67c5c2['attributes']=_0x67c5c2[_0x06cf('0x39')]['length']?_0x67c5c2['attributes']:_0x3f9413[_0x06cf('0x35')];if(!_0x43bedd['query'][_0x06cf('0x3b')](_0x06cf('0x3c'))){_0x67c5c2[_0x06cf('0x20')]=qs[_0x06cf('0x20')](_0x43bedd[_0x06cf('0x36')]['limit']);_0x67c5c2[_0x06cf('0x1f')]=qs['offset'](_0x43bedd[_0x06cf('0x36')][_0x06cf('0x1f')]);}_0x67c5c2[_0x06cf('0x3d')]=qs[_0x06cf('0x3e')](_0x43bedd[_0x06cf('0x36')]['sort']);_0x67c5c2[_0x06cf('0x3f')]=qs[_0x06cf('0x40')](_[_0x06cf('0x41')](_0x43bedd[_0x06cf('0x36')],_0x3f9413[_0x06cf('0x40')]),_0x1b06ad);if(_0x43bedd[_0x06cf('0x36')][_0x06cf('0x42')]){_0x67c5c2[_0x06cf('0x3f')]=_['merge'](_0x67c5c2[_0x06cf('0x3f')],{'$or':_[_0x06cf('0x30')](_0x1b06ad,function(_0x32e540){if(_0x32e540[_0x06cf('0x33')]!=='VIRTUAL'){var _0xe39219={};_0xe39219[_0x32e540[_0x06cf('0x2b')]]={'$like':'%'+_0x43bedd[_0x06cf('0x36')][_0x06cf('0x42')]+'%'};return _0xe39219;}})});}_0x67c5c2=_['merge']({},_0x67c5c2,_0x43bedd[_0x06cf('0x43')]);var _0x33b743={'where':_0x67c5c2[_0x06cf('0x3f')]};return db[_0x06cf('0x44')][_0x06cf('0x1e')](_0x33b743)[_0x06cf('0x26')](function(_0x18aea2){_0x13f523[_0x06cf('0x1e')]=_0x18aea2;if(_0x43bedd['query'][_0x06cf('0x45')]){_0x67c5c2[_0x06cf('0x46')]=[{'all':!![]}];}return db[_0x06cf('0x44')][_0x06cf('0x47')](_0x67c5c2);})[_0x06cf('0x26')](function(_0x6df406){_0x13f523[_0x06cf('0x48')]=_0x6df406;return _0x13f523;})[_0x06cf('0x26')](respondWithFilteredResult(_0x56be1d,_0x67c5c2))[_0x06cf('0x49')](handleError(_0x56be1d,null));};exports[_0x06cf('0x4a')]=function(_0x28869a,_0x18f567){var _0x1bdcfd={'raw':!![],'where':{'id':_0x28869a[_0x06cf('0x4b')]['id']}},_0x24667c={};_0x24667c[_0x06cf('0x35')]=_[_0x06cf('0x37')](db[_0x06cf('0x44')]['rawAttributes']);_0x24667c[_0x06cf('0x36')]=_[_0x06cf('0x37')](_0x28869a[_0x06cf('0x36')]);_0x24667c[_0x06cf('0x40')]=_[_0x06cf('0x38')](_0x24667c[_0x06cf('0x35')],_0x24667c[_0x06cf('0x36')]);_0x1bdcfd[_0x06cf('0x39')]=_[_0x06cf('0x38')](_0x24667c[_0x06cf('0x35')],qs[_0x06cf('0x3a')](_0x28869a[_0x06cf('0x36')][_0x06cf('0x3a')]));_0x1bdcfd[_0x06cf('0x39')]=_0x1bdcfd[_0x06cf('0x39')][_0x06cf('0x4c')]?_0x1bdcfd['attributes']:_0x24667c[_0x06cf('0x35')];if(_0x28869a[_0x06cf('0x36')][_0x06cf('0x45')]){_0x1bdcfd['include']=[{'all':!![]}];}_0x1bdcfd=_[_0x06cf('0x4d')]({},_0x1bdcfd,_0x28869a['options']);return db['SmsQueue']['find'](_0x1bdcfd)['then'](handleEntityNotFound(_0x18f567,null))[_0x06cf('0x26')](respondWithResult(_0x18f567,null))['catch'](handleError(_0x18f567,null));};exports[_0x06cf('0x4e')]=function(_0x36c3a7,_0x257e7f){return db['SmsQueue'][_0x06cf('0x4e')](_0x36c3a7[_0x06cf('0x4f')],{})[_0x06cf('0x26')](function(_0x320611){var _0x1e8d0a=_0x36c3a7[_0x06cf('0x50')]['get']({'plain':!![]});if(!_0x1e8d0a)throw new Error(_0x06cf('0x51'));if(_0x1e8d0a[_0x06cf('0x52')]===_0x06cf('0x50')){var _0x1e3997=_0x320611['get']({'plain':!![]});var _0x1d0630=_0x06cf('0x53');return db[_0x06cf('0x54')][_0x06cf('0x55')]({'where':{'name':_0x1d0630,'userProfileId':_0x1e8d0a[_0x06cf('0x56')]},'raw':!![]})[_0x06cf('0x26')](function(_0x200116){if(_0x200116&&_0x200116[_0x06cf('0x57')]===0x0){return db['UserProfileResource'][_0x06cf('0x4e')]({'name':_0x1e3997[_0x06cf('0x2b')],'resourceId':_0x1e3997['id'],'type':_0x200116['name'],'sectionId':_0x200116['id']},{})['then'](function(){return _0x320611;});}else{return _0x320611;}})[_0x06cf('0x49')](function(_0x567c6e){logger[_0x06cf('0x29')](_0x06cf('0x58'),_0x567c6e);throw _0x567c6e;});}return _0x320611;})['then'](respondWithResult(_0x257e7f,0xc9))[_0x06cf('0x49')](handleError(_0x257e7f,null));};exports[_0x06cf('0x25')]=function(_0x1863c1,_0x261017){if(_0x1863c1[_0x06cf('0x4f')]['id']){delete _0x1863c1[_0x06cf('0x4f')]['id'];}return db[_0x06cf('0x44')]['find']({'where':{'id':_0x1863c1[_0x06cf('0x4b')]['id']}})['then'](handleEntityNotFound(_0x261017,null))[_0x06cf('0x26')](saveUpdates(_0x1863c1[_0x06cf('0x4f')],null))[_0x06cf('0x26')](respondWithResult(_0x261017,null))['catch'](handleError(_0x261017,null));};exports[_0x06cf('0x27')]=function(_0x3a2704,_0x2ea59c){return db[_0x06cf('0x44')][_0x06cf('0x55')]({'where':{'id':_0x3a2704['params']['id']}})[_0x06cf('0x26')](handleEntityNotFound(_0x2ea59c,null))['then'](removeEntity(_0x2ea59c,null))[_0x06cf('0x49')](handleError(_0x2ea59c,null));};exports[_0x06cf('0x59')]=function(_0x3f00bc,_0x27bccc){return db[_0x06cf('0x44')][_0x06cf('0x59')]()['then'](respondWithResult(_0x27bccc,null))[_0x06cf('0x49')](handleError(_0x27bccc,null));};exports[_0x06cf('0x5a')]=function(_0x4d17fc,_0x331045,_0x48226f){var _0x464a2d={'raw':!![],'where':{}},_0x4512df={},_0x162859;return db[_0x06cf('0x44')]['findOne']({'where':{'id':_0x4d17fc[_0x06cf('0x4b')]['id']}})[_0x06cf('0x26')](handleEntityNotFound(_0x331045,null))[_0x06cf('0x26')](function(_0x1a59d4){if(_0x1a59d4){_0x162859=_0x1a59d4[_0x06cf('0x28')]({'plain':!![]});_0x4512df['model']=_[_0x06cf('0x37')](db[_0x06cf('0x5b')]['rawAttributes']);_0x4512df[_0x06cf('0x36')]=_['keys'](_0x4d17fc['query']);_0x4512df['filters']=_[_0x06cf('0x38')](_0x4512df[_0x06cf('0x35')],_0x4512df['query']);_0x464a2d[_0x06cf('0x39')]=_[_0x06cf('0x38')](_0x4512df[_0x06cf('0x35')],qs[_0x06cf('0x3a')](_0x4d17fc[_0x06cf('0x36')][_0x06cf('0x3a')]));_0x464a2d[_0x06cf('0x39')]=_0x464a2d[_0x06cf('0x39')][_0x06cf('0x4c')]?_0x464a2d['attributes']:_0x4512df[_0x06cf('0x35')];if(!_0x4d17fc[_0x06cf('0x36')][_0x06cf('0x3b')](_0x06cf('0x3c'))){_0x464a2d['limit']=qs[_0x06cf('0x20')](_0x4d17fc[_0x06cf('0x36')][_0x06cf('0x20')]);_0x464a2d[_0x06cf('0x1f')]=qs[_0x06cf('0x1f')](_0x4d17fc['query'][_0x06cf('0x1f')]);}_0x464a2d[_0x06cf('0x3d')]=qs[_0x06cf('0x3e')](_0x4d17fc['query'][_0x06cf('0x3e')]);_0x464a2d[_0x06cf('0x3f')]=qs[_0x06cf('0x40')](_[_0x06cf('0x41')](_0x4d17fc[_0x06cf('0x36')],_0x4512df[_0x06cf('0x40')]));_0x464a2d[_0x06cf('0x3f')][_0x06cf('0x5c')]=_0x1a59d4['id'];if(_0x4d17fc[_0x06cf('0x36')]['filter']){_0x464a2d[_0x06cf('0x3f')]=_[_0x06cf('0x4d')](_0x464a2d[_0x06cf('0x3f')],{'$or':_[_0x06cf('0x30')](_0x464a2d[_0x06cf('0x39')],function(_0xa997e7){var _0x4c2c4c={};_0x4c2c4c[_0xa997e7]={'$like':'%'+_0x4d17fc['query'][_0x06cf('0x42')]+'%'};return _0x4c2c4c;})});}_0x464a2d=_[_0x06cf('0x4d')]({},_0x464a2d,_0x4d17fc[_0x06cf('0x43')]);return db[_0x06cf('0x5b')][_0x06cf('0x47')](_0x464a2d);}})[_0x06cf('0x26')](function(_0x3099ac){if(_0x3099ac){return db[_0x06cf('0x5d')][_0x06cf('0x5e')]({'where':{'id':_[_0x06cf('0x30')](_0x3099ac,_0x06cf('0x5f')),'role':_0x06cf('0x2d')},'attributes':['id','name',_0x06cf('0x60'),_0x06cf('0x61'),'createdAt']});}})['then'](function(_0xb94187){if(_0xb94187){return{'count':_0xb94187[_0x06cf('0x1e')],'rows':_['map'](_0xb94187[_0x06cf('0x48')],function(_0x4d5c24){return{'membername':_0x4d5c24['name'],'UserId':_0x4d5c24['id'],'queue_name':_0x162859[_0x06cf('0x2b')],'SmsQueueId':_0x162859['id'],'interface':util[_0x06cf('0x62')](_0x06cf('0x63'),_0x06cf('0x64'),_0x4d5c24[_0x06cf('0x2b')]),'penalty':0x0,'paused':_0x4d5c24[_0x06cf('0x60')],'createdAt':_0x4d5c24[_0x06cf('0x65')],'updatedAt':_0x4d5c24['updatedAt']};})};}else{return{'count':0x0,'rows':[]};}})['then'](respondWithFilteredResult(_0x331045,_0x464a2d))[_0x06cf('0x49')](handleError(_0x331045,null));};exports[_0x06cf('0x66')]=function(_0x1cb77c,_0x2c9978,_0x59e6cf){var _0x1bf60f={};var _0xd6dd33={};var _0x5ab1d4;var _0x16d8b9;return db[_0x06cf('0x44')][_0x06cf('0x67')]({'where':{'id':_0x1cb77c['params']['id']}})['then'](handleEntityNotFound(_0x2c9978,null))['then'](function(_0x57142f){if(_0x57142f){_0x5ab1d4=_0x57142f;_0xd6dd33[_0x06cf('0x35')]=_[_0x06cf('0x37')](db[_0x06cf('0x68')][_0x06cf('0x31')]);_0xd6dd33['query']=_['keys'](_0x1cb77c[_0x06cf('0x36')]);_0xd6dd33[_0x06cf('0x40')]=_[_0x06cf('0x38')](_0xd6dd33[_0x06cf('0x35')],_0xd6dd33[_0x06cf('0x36')]);_0x1bf60f[_0x06cf('0x39')]=_[_0x06cf('0x38')](_0xd6dd33[_0x06cf('0x35')],qs[_0x06cf('0x3a')](_0x1cb77c[_0x06cf('0x36')][_0x06cf('0x3a')]));_0x1bf60f[_0x06cf('0x39')]=_0x1bf60f['attributes']['length']?_0x1bf60f[_0x06cf('0x39')]:_0xd6dd33[_0x06cf('0x35')];_0x1bf60f[_0x06cf('0x3d')]=qs['sort'](_0x1cb77c[_0x06cf('0x36')][_0x06cf('0x3e')]);_0x1bf60f[_0x06cf('0x3f')]=qs['filters'](_['pick'](_0x1cb77c[_0x06cf('0x36')],_0xd6dd33[_0x06cf('0x40')]));if(_0x1cb77c[_0x06cf('0x36')][_0x06cf('0x42')]){_0x1bf60f['where']=_['merge'](_0x1bf60f[_0x06cf('0x3f')],{'$or':_[_0x06cf('0x30')](_0x1bf60f[_0x06cf('0x39')],function(_0x10b1e6){var _0x3060f6={};_0x3060f6[_0x10b1e6]={'$like':'%'+_0x1cb77c[_0x06cf('0x36')]['filter']+'%'};return _0x3060f6;})});}_0x1bf60f=_[_0x06cf('0x4d')]({},_0x1bf60f,_0x1cb77c['options']);return _0x5ab1d4[_0x06cf('0x66')](_0x1bf60f);}})[_0x06cf('0x26')](function(_0x3ee2bd){if(_0x3ee2bd){_0x16d8b9=_0x3ee2bd[_0x06cf('0x4c')];if(!_0x1cb77c[_0x06cf('0x36')][_0x06cf('0x3b')](_0x06cf('0x3c'))){_0x1bf60f[_0x06cf('0x20')]=qs[_0x06cf('0x20')](_0x1cb77c[_0x06cf('0x36')][_0x06cf('0x20')]);_0x1bf60f[_0x06cf('0x1f')]=qs[_0x06cf('0x1f')](_0x1cb77c[_0x06cf('0x36')][_0x06cf('0x1f')]);}return _0x5ab1d4[_0x06cf('0x66')](_0x1bf60f);}})[_0x06cf('0x26')](function(_0xc05ab2){if(_0xc05ab2){return _0xc05ab2?{'count':_0x16d8b9,'rows':_0xc05ab2}:null;}})[_0x06cf('0x26')](respondWithResult(_0x2c9978,null))[_0x06cf('0x49')](handleError(_0x2c9978,null));};exports[_0x06cf('0x69')]=function(_0x5a2da3,_0x425aed,_0x578e88){var _0x1d8d52=_0x5a2da3['body'][_0x06cf('0x6a')];return db['Team']['findAll']({'where':{'id':_0x1d8d52},'attributes':['id'],'include':[{'model':db[_0x06cf('0x5d')],'as':_0x06cf('0x6b'),'attributes':['id',_0x06cf('0x2b'),_0x06cf('0x6c'),'voicePause',_0x06cf('0x6d')],'raw':!![]}]})[_0x06cf('0x26')](function(_0x1d3524){if(_0x1d3524){var _0x1ac1e2=_['flatMap'](_0x1d3524,function(_0x417fd1){var _0x27a4a6=_0x417fd1[_0x06cf('0x28')]({'plain':!![]});return _0x27a4a6[_0x06cf('0x6b')];});return db[_0x06cf('0x44')][_0x06cf('0x55')]({'where':{'id':_0x5a2da3[_0x06cf('0x4b')]['id']}})[_0x06cf('0x26')](function(_0x1b5a41){return db[_0x06cf('0x6e')]['transaction'](function(_0x1926ea){return _0x1b5a41[_0x06cf('0x69')](_0x1d8d52,{'transaction':_0x1926ea})[_0x06cf('0x26')](function(){return BPromise['each'](_0x1ac1e2,function(_0xaf1b1e){return db[_0x06cf('0x5b')]['findOrCreate']({'where':{'UserId':_0xaf1b1e['id'],'SmsQueueId':_0x5a2da3[_0x06cf('0x4b')]['id']},'transaction':_0x1926ea});});})[_0x06cf('0x26')](function(){_0x1ac1e2[_0x06cf('0x6f')](function(_0x5b280b){socket[_0x06cf('0x70')](_0x06cf('0x71'),{'UserId':_0x5b280b['id'],'SmsQueueId':_0x1b5a41['id']});});});});});}})['then'](respondWithStatusCode(_0x425aed,null))[_0x06cf('0x49')](handleError(_0x425aed,null));};exports[_0x06cf('0x72')]=function(_0x5168ed,_0x46a87f,_0x56f2f7){return db[_0x06cf('0x68')][_0x06cf('0x47')]({'where':{'id':_0x5168ed[_0x06cf('0x36')]['ids']},'attributes':['id'],'include':[{'model':db[_0x06cf('0x5d')],'as':_0x06cf('0x6b'),'attributes':['id'],'raw':!![]}]})[_0x06cf('0x26')](handleEntityNotFound(_0x46a87f,null))['then'](function(_0x311404){var _0x581e11=_[_0x06cf('0x30')](_0x311404,'id');var _0x3ca7ab=[];var _0x3e5537=[];var _0x503818=squel[_0x06cf('0x73')]();_0x503818['field'](_0x06cf('0x74'))[_0x06cf('0x75')](_0x06cf('0x76'),'tq')['join'](_0x06cf('0x77'),'ut','ut.TeamId\x20=\x20tq.TeamId')['where']('SmsQueueId\x20=\x20?',_0x5168ed[_0x06cf('0x4b')]['id']);for(var _0x5a4594=0x0;_0x5a4594<_0x311404['length'];_0x5a4594+=0x1){let _0x5c4833=_0x311404[_0x5a4594];for(var _0x1267b2=0x0;_0x1267b2<_0x5c4833[_0x06cf('0x6b')][_0x06cf('0x4c')];_0x1267b2+=0x1){let _0x564884=_0x5c4833[_0x06cf('0x6b')][_0x1267b2];var _0x370dd5=_0x503818[_0x06cf('0x78')]();_0x370dd5['where'](_0x06cf('0x79'),_0x564884['id']);_0x3e5537['push'](db[_0x06cf('0x6e')]['query'](_0x370dd5[_0x06cf('0x7a')](),{'type':db[_0x06cf('0x6e')][_0x06cf('0x7b')][_0x06cf('0x7c')]})['then'](function(_0xd1d22f){if(_0xd1d22f[_0x06cf('0x4c')]===0x1){return _0x564884['id'];}else{var _0x3da5de=_[_0x06cf('0x7d')](_[_0x06cf('0x30')](_0xd1d22f,_0x06cf('0x7e')),function(_0x51395a){return _['includes'](_0x581e11,_0x51395a);});if(_0x3da5de){return _0x564884['id'];}}}));}}return BPromise[_0x06cf('0x7f')](_0x3e5537)[_0x06cf('0x26')](function(_0x1ce189){_0x3ca7ab=_(_0x3ca7ab)['union'](_0x1ce189)['compact']()['value']();return db[_0x06cf('0x44')][_0x06cf('0x55')]({'where':{'id':_0x5168ed['params']['id']}})['then'](function(_0x33a60c){return db[_0x06cf('0x6e')]['transaction'](function(_0x61d11f){return _0x33a60c['removeTeams'](_0x5168ed['query']['ids'],{'transaction':_0x61d11f})[_0x06cf('0x26')](function(){if(!_[_0x06cf('0x80')](_0x3ca7ab)){return _0x33a60c[_0x06cf('0x81')](_0x3ca7ab,{'transaction':_0x61d11f});}})[_0x06cf('0x26')](function(){_0x3ca7ab[_0x06cf('0x6f')](function(_0x47c6cc){socket[_0x06cf('0x70')](_0x06cf('0x82'),{'UserId':_0x47c6cc,'SmsQueueId':_0x33a60c['id']});});});});});});})[_0x06cf('0x26')](respondWithStatusCode(_0x46a87f,null))[_0x06cf('0x49')](handleError(_0x46a87f,null));};exports[_0x06cf('0x83')]=function(_0x2e29ab,_0x555ec0,_0x35e582){return db[_0x06cf('0x44')][_0x06cf('0x55')]({'where':{'id':_0x2e29ab['params']['id']}})[_0x06cf('0x26')](handleEntityNotFound(_0x555ec0,null))['then'](function(_0x21c2d5){if(_0x21c2d5){return _0x21c2d5['addAgents'](_0x2e29ab[_0x06cf('0x4f')][_0x06cf('0x6a')],_[_0x06cf('0x84')](_0x2e29ab[_0x06cf('0x4f')],[_0x06cf('0x6a'),'id'])||{})[_0x06cf('0x85')](function(_0x4e98dd){for(var _0x2d7ac6=0x0;_0x2d7ac6<_0x2e29ab[_0x06cf('0x4f')]['ids'][_0x06cf('0x4c')];_0x2d7ac6+=0x1){socket[_0x06cf('0x70')](_0x06cf('0x71'),{'UserId':_0x2e29ab[_0x06cf('0x4f')][_0x06cf('0x6a')][_0x2d7ac6],'SmsQueueId':_0x2e29ab[_0x06cf('0x4b')]['id']});}return _0x4e98dd;});}})[_0x06cf('0x26')](respondWithResult(_0x555ec0,null))[_0x06cf('0x49')](handleError(_0x555ec0,null));};exports[_0x06cf('0x81')]=function(_0x47ec78,_0x30bdda,_0x3caefd){return db['SmsQueue']['find']({'where':{'id':_0x47ec78[_0x06cf('0x4b')]['id']}})[_0x06cf('0x26')](handleEntityNotFound(_0x30bdda,null))['then'](function(_0x79fd92){if(_0x79fd92){return _0x79fd92['removeAgents'](_0x47ec78[_0x06cf('0x36')]['ids'])['then'](function(){if(_[_0x06cf('0x86')](_0x47ec78['query']['ids'])){for(var _0x1b1d81=0x0;_0x1b1d81<_0x47ec78['query'][_0x06cf('0x6a')][_0x06cf('0x4c')];_0x1b1d81+=0x1){socket['emit'](_0x06cf('0x82'),{'UserId':Number(_0x47ec78[_0x06cf('0x36')]['ids'][_0x1b1d81]),'SmsQueueId':Number(_0x47ec78[_0x06cf('0x4b')]['id'])});}}else{socket[_0x06cf('0x70')]('userSmsQueue:remove',{'UserId':Number(_0x47ec78[_0x06cf('0x36')][_0x06cf('0x6a')]),'SmsQueueId':Number(_0x47ec78[_0x06cf('0x4b')]['id'])});}});}})[_0x06cf('0x26')](respondWithStatusCode(_0x30bdda,null))['catch'](handleError(_0x30bdda,null));};exports[_0x06cf('0x87')]=function(_0x40aa19,_0x57fc2c,_0x53a1d4){var _0x361df3={};var _0x1b8eec={};var _0x11c65d;var _0x3ea4f3;return db[_0x06cf('0x44')][_0x06cf('0x67')]({'where':{'id':_0x40aa19[_0x06cf('0x4b')]['id']}})[_0x06cf('0x26')](handleEntityNotFound(_0x57fc2c,null))[_0x06cf('0x26')](function(_0x19a2cb){if(_0x19a2cb){_0x11c65d=_0x19a2cb;_0x1b8eec[_0x06cf('0x35')]=_[_0x06cf('0x37')](db[_0x06cf('0x5d')][_0x06cf('0x31')]);_0x1b8eec[_0x06cf('0x36')]=_[_0x06cf('0x37')](_0x40aa19[_0x06cf('0x36')]);_0x1b8eec[_0x06cf('0x40')]=_[_0x06cf('0x38')](_0x1b8eec[_0x06cf('0x35')],_0x1b8eec['query']);_0x361df3[_0x06cf('0x39')]=_[_0x06cf('0x38')](_0x1b8eec[_0x06cf('0x35')],qs['fields'](_0x40aa19[_0x06cf('0x36')][_0x06cf('0x3a')]));_0x361df3[_0x06cf('0x39')]=_0x361df3[_0x06cf('0x39')]['length']?_0x361df3[_0x06cf('0x39')]:_0x1b8eec['model'];_0x361df3[_0x06cf('0x3d')]=qs[_0x06cf('0x3e')](_0x40aa19[_0x06cf('0x36')][_0x06cf('0x3e')]);_0x361df3[_0x06cf('0x3f')]=qs['filters'](_[_0x06cf('0x41')](_0x40aa19[_0x06cf('0x36')],_0x1b8eec['filters']));if(_0x40aa19[_0x06cf('0x36')]['filter']){_0x361df3[_0x06cf('0x3f')]=_[_0x06cf('0x4d')](_0x361df3[_0x06cf('0x3f')],{'$or':_['map'](_0x361df3['attributes'],function(_0x14ed32){var _0x28f6eb={};_0x28f6eb[_0x14ed32]={'$like':'%'+_0x40aa19[_0x06cf('0x36')][_0x06cf('0x42')]+'%'};return _0x28f6eb;})});}_0x361df3=_['merge']({},_0x361df3,_0x40aa19[_0x06cf('0x43')]);return _0x11c65d[_0x06cf('0x87')](_0x361df3);}})[_0x06cf('0x26')](function(_0x488b35){if(_0x488b35){_0x3ea4f3=_0x488b35['length'];if(!_0x40aa19[_0x06cf('0x36')][_0x06cf('0x3b')](_0x06cf('0x3c'))){_0x361df3[_0x06cf('0x20')]=qs[_0x06cf('0x20')](_0x40aa19['query'][_0x06cf('0x20')]);_0x361df3[_0x06cf('0x1f')]=qs[_0x06cf('0x1f')](_0x40aa19[_0x06cf('0x36')][_0x06cf('0x1f')]);}return _0x11c65d[_0x06cf('0x87')](_0x361df3);}})[_0x06cf('0x26')](function(_0xdadecb){if(_0xdadecb){return _0xdadecb?{'count':_0x3ea4f3,'rows':_0xdadecb}:null;}})['then'](respondWithResult(_0x57fc2c,null))[_0x06cf('0x49')](handleError(_0x57fc2c,null));};