353d3e11571779162efc3dbd8d4dc99adc8866db
[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 _0x8ece=['mustache','util','path','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','ioredis','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','redis','defaults','localhost','socket.io-emitter','register','sendStatus','status','end','json','count','offset','limit','set','Content-Range','apply','save','update','destroy','then','SmsQueues','UserProfileResource','stack','name','send','SmsQueue','rawAttributes','model','query','filters','intersection','attributes','fields','hasOwnProperty','nolimit','order','sort','pick','filter','where','type','field','merge','options','includeAll','include','findAll','catch','show','params','keys','length','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','get','find','userProfileId','autoAssociation','describe','findOne','UserSmsQueue','map','findAndCountAll','UserId','smsPause','updatedAt','createdAt','rows','%s/%s','SIP','getTeams','Team','addTeams','teams','User','Agents','online','sequelize','transaction','each','forEach','emit','userSmsQueue:save','removeTeams','ids','select','tq.TeamId','join','user_has_teams','ut.TeamId\x20=\x20tq.TeamId','SmsQueueId\x20=\x20?','clone','ut.UserId\x20=\x20?','push','toString','QueryTypes','SELECT','includes','all','union','compact','value','isEmpty','removeAgents','addAgents','omit','spread','isArray','userSmsQueue:remove','getAgents','html-pdf','eml-format','rimraf','zip-dir','moment','bluebird'];(function(_0x53ca00,_0x3d167a){var _0x21afba=function(_0x5cd784){while(--_0x5cd784){_0x53ca00['push'](_0x53ca00['shift']());}};_0x21afba(++_0x3d167a);}(_0x8ece,0x195));var _0xe8ec=function(_0x14dc8a,_0x4fe14d){_0x14dc8a=_0x14dc8a-0x0;var _0xc2be12=_0x8ece[_0x14dc8a];return _0xc2be12;};'use strict';var pdf=require(_0xe8ec('0x0'));var emlformat=require(_0xe8ec('0x1'));var rimraf=require(_0xe8ec('0x2'));var zipdir=require(_0xe8ec('0x3'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0xe8ec('0x4'));var BPromise=require(_0xe8ec('0x5'));var Mustache=require(_0xe8ec('0x6'));var util=require(_0xe8ec('0x7'));var path=require(_0xe8ec('0x8'));var sox=require('sox');var csv=require(_0xe8ec('0x9'));var ejs=require(_0xe8ec('0xa'));var fs=require('fs');var _=require(_0xe8ec('0xb'));var squel=require(_0xe8ec('0xc'));var crypto=require(_0xe8ec('0xd'));var jsforce=require(_0xe8ec('0xe'));var deskjs=require(_0xe8ec('0xf'));var toCsv=require('to-csv');var querystring=require(_0xe8ec('0x10'));var Papa=require('papaparse');var Redis=require(_0xe8ec('0x11'));var authService=require('../../components/auth/service');var qs=require(_0xe8ec('0x12'));var hardwareService=require(_0xe8ec('0x13'));var logger=require(_0xe8ec('0x14'))(_0xe8ec('0x15'));var utils=require(_0xe8ec('0x16'));var config=require(_0xe8ec('0x17'));var db=require(_0xe8ec('0x18'))['db'];config[_0xe8ec('0x19')]=_[_0xe8ec('0x1a')](config[_0xe8ec('0x19')],{'host':_0xe8ec('0x1b'),'port':0x18eb});var socket=require(_0xe8ec('0x1c'))(new Redis(config[_0xe8ec('0x19')]));require('./smsQueue.socket')[_0xe8ec('0x1d')](socket);function respondWithStatusCode(_0x431723,_0x2e5a88){_0x2e5a88=_0x2e5a88||0xcc;return function(_0x167ebb){if(_0x167ebb){return _0x431723[_0xe8ec('0x1e')](_0x2e5a88);}return _0x431723[_0xe8ec('0x1f')](_0x2e5a88)[_0xe8ec('0x20')]();};}function respondWithResult(_0x218a4b,_0x531f69){_0x531f69=_0x531f69||0xc8;return function(_0x2e7c82){if(_0x2e7c82){return _0x218a4b[_0xe8ec('0x1f')](_0x531f69)[_0xe8ec('0x21')](_0x2e7c82);}};}function respondWithFilteredResult(_0x50f8ed,_0x2d476a){return function(_0x20e847){if(_0x20e847){var _0x2a3b73=_0x20e847[_0xe8ec('0x22')],_0x34a582=_0x2d476a[_0xe8ec('0x23')],_0x9a6f0c=_0x2d476a['offset']+_0x2d476a[_0xe8ec('0x24')],_0x39e557;if(_0x9a6f0c>=_0x2a3b73){_0x9a6f0c=_0x2a3b73;_0x39e557=0xc8;}else{_0x39e557=0xce;}_0x50f8ed[_0xe8ec('0x1f')](_0x39e557);return _0x50f8ed[_0xe8ec('0x25')](_0xe8ec('0x26'),_0x34a582+'-'+_0x9a6f0c+'/'+_0x2a3b73)[_0xe8ec('0x21')](_0x20e847);}return null;};}function patchUpdates(_0x3d6fbc){return function(_0xd5ccf5){try{jsonpatch[_0xe8ec('0x27')](_0xd5ccf5,_0x3d6fbc,!![]);}catch(_0x3a5d14){return BPromise['reject'](_0x3a5d14);}return _0xd5ccf5[_0xe8ec('0x28')]();};}function saveUpdates(_0x3fa53f,_0x3de125){return function(_0x31a97d){if(_0x31a97d){return _0x31a97d[_0xe8ec('0x29')](_0x3fa53f)['then'](function(_0x2e05d8){return _0x2e05d8;});}return null;};}function removeEntity(_0x78b6f4,_0x431af0){return function(_0x24260b){if(_0x24260b){return _0x24260b[_0xe8ec('0x2a')]()[_0xe8ec('0x2b')](function(){var _0x4ce7d3=_0x24260b['get']({'plain':!![]});var _0x457607=_0xe8ec('0x2c');return db[_0xe8ec('0x2d')][_0xe8ec('0x2a')]({'where':{'type':_0x457607,'resourceId':_0x4ce7d3['id']}})[_0xe8ec('0x2b')](function(){return _0x24260b;});})[_0xe8ec('0x2b')](function(){_0x78b6f4[_0xe8ec('0x1f')](0xcc)[_0xe8ec('0x20')]();});}};}function handleEntityNotFound(_0xa9e1b1,_0x2e2d47){return function(_0x388e15){if(!_0x388e15){_0xa9e1b1[_0xe8ec('0x1e')](0x194);}return _0x388e15;};}function handleError(_0x1b7bdd,_0x310fec){_0x310fec=_0x310fec||0x1f4;return function(_0x1140d6){logger['error'](_0x1140d6[_0xe8ec('0x2e')]);if(_0x1140d6[_0xe8ec('0x2f')]){delete _0x1140d6[_0xe8ec('0x2f')];}_0x1b7bdd['status'](_0x310fec)[_0xe8ec('0x30')](_0x1140d6);};}exports['index']=function(_0x45bb71,_0x3b27d3){var _0x34840b={},_0xb5fcbb={},_0x9c83b9={'count':0x0,'rows':[]};var _0x4a89b9=db[_0xe8ec('0x31')][_0xe8ec('0x32')];_0xb5fcbb[_0xe8ec('0x33')]=_['keys'](_0x4a89b9);_0xb5fcbb[_0xe8ec('0x34')]=_['keys'](_0x45bb71[_0xe8ec('0x34')]);_0xb5fcbb[_0xe8ec('0x35')]=_[_0xe8ec('0x36')](_0xb5fcbb[_0xe8ec('0x33')],_0xb5fcbb[_0xe8ec('0x34')]);_0x34840b[_0xe8ec('0x37')]=_[_0xe8ec('0x36')](_0xb5fcbb[_0xe8ec('0x33')],qs[_0xe8ec('0x38')](_0x45bb71['query'][_0xe8ec('0x38')]));_0x34840b[_0xe8ec('0x37')]=_0x34840b[_0xe8ec('0x37')]['length']?_0x34840b[_0xe8ec('0x37')]:_0xb5fcbb[_0xe8ec('0x33')];if(!_0x45bb71['query'][_0xe8ec('0x39')](_0xe8ec('0x3a'))){_0x34840b[_0xe8ec('0x24')]=qs[_0xe8ec('0x24')](_0x45bb71['query'][_0xe8ec('0x24')]);_0x34840b[_0xe8ec('0x23')]=qs[_0xe8ec('0x23')](_0x45bb71[_0xe8ec('0x34')][_0xe8ec('0x23')]);}_0x34840b[_0xe8ec('0x3b')]=qs[_0xe8ec('0x3c')](_0x45bb71[_0xe8ec('0x34')]['sort']);_0x34840b['where']=qs[_0xe8ec('0x35')](_[_0xe8ec('0x3d')](_0x45bb71[_0xe8ec('0x34')],_0xb5fcbb[_0xe8ec('0x35')]));if(_0x45bb71[_0xe8ec('0x34')][_0xe8ec('0x3e')]){_0x34840b[_0xe8ec('0x3f')]=_['merge'](_0x34840b[_0xe8ec('0x3f')],{'$or':_['map'](_0x4a89b9,function(_0x341c75){if(_0x341c75[_0xe8ec('0x40')]['key']!=='VIRTUAL'){var _0x224e21={};_0x224e21[_0x341c75[_0xe8ec('0x41')]]={'$like':'%'+_0x45bb71[_0xe8ec('0x34')]['filter']+'%'};return _0x224e21;}})});}_0x34840b=_[_0xe8ec('0x42')]({},_0x34840b,_0x45bb71[_0xe8ec('0x43')]);var _0x168e04={'where':_0x34840b[_0xe8ec('0x3f')]};return db[_0xe8ec('0x31')]['count'](_0x168e04)['then'](function(_0x2d6722){_0x9c83b9['count']=_0x2d6722;if(_0x45bb71[_0xe8ec('0x34')][_0xe8ec('0x44')]){_0x34840b[_0xe8ec('0x45')]=[{'all':!![]}];}return db[_0xe8ec('0x31')][_0xe8ec('0x46')](_0x34840b);})[_0xe8ec('0x2b')](function(_0x23e2af){_0x9c83b9['rows']=_0x23e2af;return _0x9c83b9;})[_0xe8ec('0x2b')](respondWithFilteredResult(_0x3b27d3,_0x34840b))[_0xe8ec('0x47')](handleError(_0x3b27d3,null));};exports[_0xe8ec('0x48')]=function(_0x582d67,_0x2f295e){var _0x372b36={'raw':!![],'where':{'id':_0x582d67[_0xe8ec('0x49')]['id']}},_0x409632={};_0x409632['model']=_[_0xe8ec('0x4a')](db[_0xe8ec('0x31')][_0xe8ec('0x32')]);_0x409632['query']=_[_0xe8ec('0x4a')](_0x582d67['query']);_0x409632[_0xe8ec('0x35')]=_[_0xe8ec('0x36')](_0x409632[_0xe8ec('0x33')],_0x409632['query']);_0x372b36[_0xe8ec('0x37')]=_[_0xe8ec('0x36')](_0x409632['model'],qs[_0xe8ec('0x38')](_0x582d67['query'][_0xe8ec('0x38')]));_0x372b36['attributes']=_0x372b36[_0xe8ec('0x37')][_0xe8ec('0x4b')]?_0x372b36[_0xe8ec('0x37')]:_0x409632[_0xe8ec('0x33')];if(_0x582d67['query']['includeAll']){_0x372b36['include']=[{'all':!![]}];}_0x372b36=_[_0xe8ec('0x42')]({},_0x372b36,_0x582d67[_0xe8ec('0x43')]);return db[_0xe8ec('0x31')]['find'](_0x372b36)[_0xe8ec('0x2b')](handleEntityNotFound(_0x2f295e,null))[_0xe8ec('0x2b')](respondWithResult(_0x2f295e,null))[_0xe8ec('0x47')](handleError(_0x2f295e,null));};exports[_0xe8ec('0x4c')]=function(_0x18f620,_0x555238){return db[_0xe8ec('0x31')][_0xe8ec('0x4c')](_0x18f620[_0xe8ec('0x4d')],{})[_0xe8ec('0x2b')](function(_0x329ef3){var _0xd3127=_0x18f620[_0xe8ec('0x4e')]['get']({'plain':!![]});if(!_0xd3127)throw new Error(_0xe8ec('0x4f'));if(_0xd3127[_0xe8ec('0x50')]==='user'){var _0x31d2e6=_0x329ef3[_0xe8ec('0x51')]({'plain':!![]});var _0x40b8e6=_0xe8ec('0x2c');return db['UserProfileSection'][_0xe8ec('0x52')]({'where':{'name':_0x40b8e6,'userProfileId':_0xd3127[_0xe8ec('0x53')]},'raw':!![]})[_0xe8ec('0x2b')](function(_0xab8f25){if(_0xab8f25&&_0xab8f25[_0xe8ec('0x54')]===0x0){return db[_0xe8ec('0x2d')]['create']({'name':_0x31d2e6[_0xe8ec('0x2f')],'resourceId':_0x31d2e6['id'],'type':_0xab8f25[_0xe8ec('0x2f')],'sectionId':_0xab8f25['id']},{})['then'](function(){return _0x329ef3;});}else{return _0x329ef3;}})['catch'](function(_0x27c36f){logger['error']('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x27c36f);throw _0x27c36f;});}return _0x329ef3;})[_0xe8ec('0x2b')](respondWithResult(_0x555238,0xc9))[_0xe8ec('0x47')](handleError(_0x555238,null));};exports[_0xe8ec('0x29')]=function(_0x382f78,_0xff3885){if(_0x382f78[_0xe8ec('0x4d')]['id']){delete _0x382f78['body']['id'];}return db['SmsQueue'][_0xe8ec('0x52')]({'where':{'id':_0x382f78[_0xe8ec('0x49')]['id']}})['then'](handleEntityNotFound(_0xff3885,null))['then'](saveUpdates(_0x382f78[_0xe8ec('0x4d')],null))[_0xe8ec('0x2b')](respondWithResult(_0xff3885,null))[_0xe8ec('0x47')](handleError(_0xff3885,null));};exports['destroy']=function(_0x5550f0,_0x28be9b){return db[_0xe8ec('0x31')][_0xe8ec('0x52')]({'where':{'id':_0x5550f0[_0xe8ec('0x49')]['id']}})['then'](handleEntityNotFound(_0x28be9b,null))['then'](removeEntity(_0x28be9b,null))[_0xe8ec('0x47')](handleError(_0x28be9b,null));};exports['describe']=function(_0xa58c79,_0x221a79){return db['SmsQueue'][_0xe8ec('0x55')]()['then'](respondWithResult(_0x221a79,null))[_0xe8ec('0x47')](handleError(_0x221a79,null));};exports['getMembers']=function(_0x46ae9c,_0x307fce,_0x3ef497){var _0x32d99e={'raw':!![],'where':{}},_0x14b8b6={},_0x30a9b0;return db['SmsQueue'][_0xe8ec('0x56')]({'where':{'id':_0x46ae9c['params']['id']}})[_0xe8ec('0x2b')](handleEntityNotFound(_0x307fce,null))[_0xe8ec('0x2b')](function(_0x1b40cc){if(_0x1b40cc){_0x30a9b0=_0x1b40cc[_0xe8ec('0x51')]({'plain':!![]});_0x14b8b6[_0xe8ec('0x33')]=_['keys'](db[_0xe8ec('0x57')][_0xe8ec('0x32')]);_0x14b8b6['query']=_['keys'](_0x46ae9c[_0xe8ec('0x34')]);_0x14b8b6[_0xe8ec('0x35')]=_['intersection'](_0x14b8b6[_0xe8ec('0x33')],_0x14b8b6[_0xe8ec('0x34')]);_0x32d99e['attributes']=_['intersection'](_0x14b8b6[_0xe8ec('0x33')],qs[_0xe8ec('0x38')](_0x46ae9c['query']['fields']));_0x32d99e[_0xe8ec('0x37')]=_0x32d99e[_0xe8ec('0x37')][_0xe8ec('0x4b')]?_0x32d99e[_0xe8ec('0x37')]:_0x14b8b6[_0xe8ec('0x33')];if(!_0x46ae9c[_0xe8ec('0x34')][_0xe8ec('0x39')](_0xe8ec('0x3a'))){_0x32d99e[_0xe8ec('0x24')]=qs[_0xe8ec('0x24')](_0x46ae9c[_0xe8ec('0x34')][_0xe8ec('0x24')]);_0x32d99e[_0xe8ec('0x23')]=qs[_0xe8ec('0x23')](_0x46ae9c[_0xe8ec('0x34')][_0xe8ec('0x23')]);}_0x32d99e['order']=qs[_0xe8ec('0x3c')](_0x46ae9c[_0xe8ec('0x34')][_0xe8ec('0x3c')]);_0x32d99e[_0xe8ec('0x3f')]=qs['filters'](_['pick'](_0x46ae9c[_0xe8ec('0x34')],_0x14b8b6['filters']));_0x32d99e[_0xe8ec('0x3f')]['SmsQueueId']=_0x1b40cc['id'];if(_0x46ae9c[_0xe8ec('0x34')][_0xe8ec('0x3e')]){_0x32d99e[_0xe8ec('0x3f')]=_[_0xe8ec('0x42')](_0x32d99e[_0xe8ec('0x3f')],{'$or':_[_0xe8ec('0x58')](_0x32d99e[_0xe8ec('0x37')],function(_0x9e389f){var _0x2c29fb={};_0x2c29fb[_0x9e389f]={'$like':'%'+_0x46ae9c[_0xe8ec('0x34')]['filter']+'%'};return _0x2c29fb;})});}_0x32d99e=_[_0xe8ec('0x42')]({},_0x32d99e,_0x46ae9c[_0xe8ec('0x43')]);return db[_0xe8ec('0x57')][_0xe8ec('0x46')](_0x32d99e);}})['then'](function(_0x1e69eb){if(_0x1e69eb){return db['User'][_0xe8ec('0x59')]({'where':{'id':_['map'](_0x1e69eb,_0xe8ec('0x5a')),'role':'agent'},'attributes':['id',_0xe8ec('0x2f'),_0xe8ec('0x5b'),_0xe8ec('0x5c'),_0xe8ec('0x5d')]});}})['then'](function(_0x28cf8b){if(_0x28cf8b){return{'count':_0x28cf8b['count'],'rows':_[_0xe8ec('0x58')](_0x28cf8b[_0xe8ec('0x5e')],function(_0x5a7660){return{'membername':_0x5a7660[_0xe8ec('0x2f')],'UserId':_0x5a7660['id'],'queue_name':_0x30a9b0[_0xe8ec('0x2f')],'SmsQueueId':_0x30a9b0['id'],'interface':util['format'](_0xe8ec('0x5f'),_0xe8ec('0x60'),_0x5a7660['name']),'penalty':0x0,'paused':_0x5a7660['smsPause'],'createdAt':_0x5a7660[_0xe8ec('0x5d')],'updatedAt':_0x5a7660[_0xe8ec('0x5c')]};})};}else{return{'count':0x0,'rows':[]};}})[_0xe8ec('0x2b')](respondWithFilteredResult(_0x307fce,_0x32d99e))[_0xe8ec('0x47')](handleError(_0x307fce,null));};exports[_0xe8ec('0x61')]=function(_0x4c49fd,_0x57ee3c,_0x36069a){var _0x1a1063={};var _0x22e243={};var _0x5033a8;var _0x5b19d3;return db[_0xe8ec('0x31')]['findOne']({'where':{'id':_0x4c49fd[_0xe8ec('0x49')]['id']}})['then'](handleEntityNotFound(_0x57ee3c,null))[_0xe8ec('0x2b')](function(_0x339125){if(_0x339125){_0x5033a8=_0x339125;_0x22e243[_0xe8ec('0x33')]=_['keys'](db[_0xe8ec('0x62')][_0xe8ec('0x32')]);_0x22e243['query']=_[_0xe8ec('0x4a')](_0x4c49fd[_0xe8ec('0x34')]);_0x22e243[_0xe8ec('0x35')]=_[_0xe8ec('0x36')](_0x22e243['model'],_0x22e243[_0xe8ec('0x34')]);_0x1a1063['attributes']=_[_0xe8ec('0x36')](_0x22e243[_0xe8ec('0x33')],qs['fields'](_0x4c49fd[_0xe8ec('0x34')][_0xe8ec('0x38')]));_0x1a1063[_0xe8ec('0x37')]=_0x1a1063['attributes'][_0xe8ec('0x4b')]?_0x1a1063[_0xe8ec('0x37')]:_0x22e243[_0xe8ec('0x33')];_0x1a1063[_0xe8ec('0x3b')]=qs[_0xe8ec('0x3c')](_0x4c49fd[_0xe8ec('0x34')][_0xe8ec('0x3c')]);_0x1a1063[_0xe8ec('0x3f')]=qs['filters'](_['pick'](_0x4c49fd[_0xe8ec('0x34')],_0x22e243[_0xe8ec('0x35')]));if(_0x4c49fd[_0xe8ec('0x34')][_0xe8ec('0x3e')]){_0x1a1063[_0xe8ec('0x3f')]=_['merge'](_0x1a1063['where'],{'$or':_['map'](_0x1a1063[_0xe8ec('0x37')],function(_0x289e0b){var _0xb0dce6={};_0xb0dce6[_0x289e0b]={'$like':'%'+_0x4c49fd[_0xe8ec('0x34')][_0xe8ec('0x3e')]+'%'};return _0xb0dce6;})});}_0x1a1063=_['merge']({},_0x1a1063,_0x4c49fd['options']);return _0x5033a8[_0xe8ec('0x61')](_0x1a1063);}})[_0xe8ec('0x2b')](function(_0x2f0f34){if(_0x2f0f34){_0x5b19d3=_0x2f0f34[_0xe8ec('0x4b')];if(!_0x4c49fd['query'][_0xe8ec('0x39')](_0xe8ec('0x3a'))){_0x1a1063[_0xe8ec('0x24')]=qs['limit'](_0x4c49fd[_0xe8ec('0x34')][_0xe8ec('0x24')]);_0x1a1063['offset']=qs[_0xe8ec('0x23')](_0x4c49fd[_0xe8ec('0x34')][_0xe8ec('0x23')]);}return _0x5033a8[_0xe8ec('0x61')](_0x1a1063);}})[_0xe8ec('0x2b')](function(_0x24c698){if(_0x24c698){return _0x24c698?{'count':_0x5b19d3,'rows':_0x24c698}:null;}})[_0xe8ec('0x2b')](respondWithResult(_0x57ee3c,null))[_0xe8ec('0x47')](handleError(_0x57ee3c,null));};exports[_0xe8ec('0x63')]=function(_0x3f38a5,_0xc26b96,_0x4a3aef){var _0x127a14=_0x3f38a5[_0xe8ec('0x4d')][_0xe8ec('0x64')];return db['Team'][_0xe8ec('0x46')]({'where':{'id':_[_0xe8ec('0x58')](_0x127a14,'id')},'attributes':['id'],'include':[{'model':db[_0xe8ec('0x65')],'as':_0xe8ec('0x66'),'attributes':['id',_0xe8ec('0x2f'),_0xe8ec('0x67'),'voicePause','interface'],'raw':!![]}]})[_0xe8ec('0x2b')](function(_0x55f6c7){if(_0x55f6c7){var _0x9ee111=_['flatMap'](_0x55f6c7,function(_0xbc028c){var _0x486809=_0xbc028c[_0xe8ec('0x51')]({'plain':!![]});return _0x486809[_0xe8ec('0x66')];});return db[_0xe8ec('0x31')]['find']({'where':{'id':_0x3f38a5['params']['id']}})[_0xe8ec('0x2b')](function(_0x3237c9){return db[_0xe8ec('0x68')][_0xe8ec('0x69')](function(_0x4852e9){return _0x3237c9[_0xe8ec('0x63')](_['map'](_0x127a14,'id'),{'transaction':_0x4852e9})[_0xe8ec('0x2b')](function(){return BPromise[_0xe8ec('0x6a')](_0x9ee111,function(_0x4e2272){return db[_0xe8ec('0x57')]['findOrCreate']({'where':{'UserId':_0x4e2272['id'],'SmsQueueId':_0x3f38a5[_0xe8ec('0x49')]['id']},'transaction':_0x4852e9});});})[_0xe8ec('0x2b')](function(){_0x9ee111[_0xe8ec('0x6b')](function(_0x25c5c6){socket[_0xe8ec('0x6c')](_0xe8ec('0x6d'),{'UserId':_0x25c5c6['id'],'SmsQueueId':_0x3237c9['id']});});});});});}})[_0xe8ec('0x2b')](respondWithStatusCode(_0xc26b96,null))[_0xe8ec('0x47')](handleError(_0xc26b96,null));};exports[_0xe8ec('0x6e')]=function(_0x438ec4,_0x5a3255,_0x3b6338){return db['Team'][_0xe8ec('0x46')]({'where':{'id':_0x438ec4[_0xe8ec('0x34')][_0xe8ec('0x6f')]},'attributes':['id'],'include':[{'model':db[_0xe8ec('0x65')],'as':'Agents','attributes':['id'],'raw':!![]}]})[_0xe8ec('0x2b')](handleEntityNotFound(_0x5a3255,null))[_0xe8ec('0x2b')](function(_0x15097f){var _0x34239e=_[_0xe8ec('0x58')](_0x15097f,'id');var _0xe0e0f7=[];var _0x1bea0b=[];var _0x1e5b7f=squel[_0xe8ec('0x70')]();_0x1e5b7f[_0xe8ec('0x41')](_0xe8ec('0x71'))['from']('team_has_sms_queues','tq')[_0xe8ec('0x72')](_0xe8ec('0x73'),'ut',_0xe8ec('0x74'))[_0xe8ec('0x3f')](_0xe8ec('0x75'),_0x438ec4[_0xe8ec('0x49')]['id']);for(var _0x159039=0x0;_0x159039<_0x15097f[_0xe8ec('0x4b')];_0x159039+=0x1){let _0x1a4038=_0x15097f[_0x159039];for(var _0x4bd733=0x0;_0x4bd733<_0x1a4038['Agents'][_0xe8ec('0x4b')];_0x4bd733+=0x1){let _0x1d6811=_0x1a4038['Agents'][_0x4bd733];var _0x590d26=_0x1e5b7f[_0xe8ec('0x76')]();_0x590d26[_0xe8ec('0x3f')](_0xe8ec('0x77'),_0x1d6811['id']);_0x1bea0b[_0xe8ec('0x78')](db[_0xe8ec('0x68')][_0xe8ec('0x34')](_0x590d26[_0xe8ec('0x79')](),{'type':db[_0xe8ec('0x68')][_0xe8ec('0x7a')][_0xe8ec('0x7b')]})[_0xe8ec('0x2b')](function(_0x10c2aa){if(_0x10c2aa[_0xe8ec('0x4b')]===0x1){return _0x1d6811['id'];}else{var _0x37a3ab=_['every'](_[_0xe8ec('0x58')](_0x10c2aa,'TeamId'),function(_0x3bd6bd){return _[_0xe8ec('0x7c')](_0x34239e,_0x3bd6bd);});if(_0x37a3ab){return _0x1d6811['id'];}}}));}}return BPromise[_0xe8ec('0x7d')](_0x1bea0b)[_0xe8ec('0x2b')](function(_0x355539){_0xe0e0f7=_(_0xe0e0f7)[_0xe8ec('0x7e')](_0x355539)[_0xe8ec('0x7f')]()[_0xe8ec('0x80')]();return db[_0xe8ec('0x31')][_0xe8ec('0x52')]({'where':{'id':_0x438ec4[_0xe8ec('0x49')]['id']}})[_0xe8ec('0x2b')](function(_0x19bfad){return db[_0xe8ec('0x68')]['transaction'](function(_0x23f350){return _0x19bfad[_0xe8ec('0x6e')](_0x438ec4[_0xe8ec('0x34')][_0xe8ec('0x6f')],{'transaction':_0x23f350})['then'](function(){if(!_[_0xe8ec('0x81')](_0xe0e0f7)){return _0x19bfad[_0xe8ec('0x82')](_0xe0e0f7,{'transaction':_0x23f350});}})[_0xe8ec('0x2b')](function(){_0xe0e0f7[_0xe8ec('0x6b')](function(_0x258476){socket[_0xe8ec('0x6c')]('userSmsQueue:remove',{'UserId':_0x258476,'SmsQueueId':_0x19bfad['id']});});});});});});})[_0xe8ec('0x2b')](respondWithStatusCode(_0x5a3255,null))[_0xe8ec('0x47')](handleError(_0x5a3255,null));};exports[_0xe8ec('0x83')]=function(_0x35d17,_0x15478a,_0x25fc25){return db[_0xe8ec('0x31')]['find']({'where':{'id':_0x35d17[_0xe8ec('0x49')]['id']}})['then'](handleEntityNotFound(_0x15478a,null))['then'](function(_0x3f06aa){if(_0x3f06aa){return _0x3f06aa[_0xe8ec('0x83')](_0x35d17[_0xe8ec('0x4d')]['ids'],_[_0xe8ec('0x84')](_0x35d17[_0xe8ec('0x4d')],[_0xe8ec('0x6f'),'id'])||{})[_0xe8ec('0x85')](function(_0x4081e2){for(var _0x2d294c=0x0;_0x2d294c<_0x35d17[_0xe8ec('0x4d')][_0xe8ec('0x6f')][_0xe8ec('0x4b')];_0x2d294c+=0x1){socket[_0xe8ec('0x6c')](_0xe8ec('0x6d'),{'UserId':_0x35d17[_0xe8ec('0x4d')][_0xe8ec('0x6f')][_0x2d294c],'SmsQueueId':_0x35d17[_0xe8ec('0x49')]['id']});}return _0x4081e2;});}})[_0xe8ec('0x2b')](respondWithResult(_0x15478a,null))[_0xe8ec('0x47')](handleError(_0x15478a,null));};exports[_0xe8ec('0x82')]=function(_0x435d5b,_0x3a62b1,_0x1481e8){return db[_0xe8ec('0x31')][_0xe8ec('0x52')]({'where':{'id':_0x435d5b[_0xe8ec('0x49')]['id']}})[_0xe8ec('0x2b')](handleEntityNotFound(_0x3a62b1,null))[_0xe8ec('0x2b')](function(_0x2d0ed9){if(_0x2d0ed9){return _0x2d0ed9['removeAgents'](_0x435d5b[_0xe8ec('0x34')]['ids'])[_0xe8ec('0x2b')](function(){if(_[_0xe8ec('0x86')](_0x435d5b[_0xe8ec('0x34')][_0xe8ec('0x6f')])){for(var _0x385e5a=0x0;_0x385e5a<_0x435d5b[_0xe8ec('0x34')][_0xe8ec('0x6f')][_0xe8ec('0x4b')];_0x385e5a+=0x1){socket[_0xe8ec('0x6c')](_0xe8ec('0x87'),{'UserId':Number(_0x435d5b[_0xe8ec('0x34')][_0xe8ec('0x6f')][_0x385e5a]),'SmsQueueId':Number(_0x435d5b[_0xe8ec('0x49')]['id'])});}}else{socket[_0xe8ec('0x6c')]('userSmsQueue:remove',{'UserId':Number(_0x435d5b[_0xe8ec('0x34')][_0xe8ec('0x6f')]),'SmsQueueId':Number(_0x435d5b['params']['id'])});}});}})[_0xe8ec('0x2b')](respondWithStatusCode(_0x3a62b1,null))[_0xe8ec('0x47')](handleError(_0x3a62b1,null));};exports[_0xe8ec('0x88')]=function(_0x4873ff,_0x272a74,_0x14acf2){var _0x362db0={};var _0x357d14={};var _0xb24578;var _0x4f7996;return db[_0xe8ec('0x31')][_0xe8ec('0x56')]({'where':{'id':_0x4873ff[_0xe8ec('0x49')]['id']}})[_0xe8ec('0x2b')](handleEntityNotFound(_0x272a74,null))[_0xe8ec('0x2b')](function(_0x453c72){if(_0x453c72){_0xb24578=_0x453c72;_0x357d14[_0xe8ec('0x33')]=_[_0xe8ec('0x4a')](db[_0xe8ec('0x65')][_0xe8ec('0x32')]);_0x357d14['query']=_[_0xe8ec('0x4a')](_0x4873ff[_0xe8ec('0x34')]);_0x357d14[_0xe8ec('0x35')]=_[_0xe8ec('0x36')](_0x357d14['model'],_0x357d14[_0xe8ec('0x34')]);_0x362db0[_0xe8ec('0x37')]=_[_0xe8ec('0x36')](_0x357d14[_0xe8ec('0x33')],qs[_0xe8ec('0x38')](_0x4873ff[_0xe8ec('0x34')]['fields']));_0x362db0[_0xe8ec('0x37')]=_0x362db0[_0xe8ec('0x37')][_0xe8ec('0x4b')]?_0x362db0[_0xe8ec('0x37')]:_0x357d14[_0xe8ec('0x33')];_0x362db0[_0xe8ec('0x3b')]=qs[_0xe8ec('0x3c')](_0x4873ff[_0xe8ec('0x34')][_0xe8ec('0x3c')]);_0x362db0[_0xe8ec('0x3f')]=qs[_0xe8ec('0x35')](_[_0xe8ec('0x3d')](_0x4873ff[_0xe8ec('0x34')],_0x357d14[_0xe8ec('0x35')]));if(_0x4873ff[_0xe8ec('0x34')][_0xe8ec('0x3e')]){_0x362db0['where']=_[_0xe8ec('0x42')](_0x362db0[_0xe8ec('0x3f')],{'$or':_[_0xe8ec('0x58')](_0x362db0[_0xe8ec('0x37')],function(_0x15caf2){var _0x44f1d1={};_0x44f1d1[_0x15caf2]={'$like':'%'+_0x4873ff[_0xe8ec('0x34')][_0xe8ec('0x3e')]+'%'};return _0x44f1d1;})});}_0x362db0=_['merge']({},_0x362db0,_0x4873ff[_0xe8ec('0x43')]);return _0xb24578[_0xe8ec('0x88')](_0x362db0);}})['then'](function(_0x425cab){if(_0x425cab){_0x4f7996=_0x425cab[_0xe8ec('0x4b')];if(!_0x4873ff[_0xe8ec('0x34')][_0xe8ec('0x39')](_0xe8ec('0x3a'))){_0x362db0[_0xe8ec('0x24')]=qs[_0xe8ec('0x24')](_0x4873ff[_0xe8ec('0x34')][_0xe8ec('0x24')]);_0x362db0[_0xe8ec('0x23')]=qs[_0xe8ec('0x23')](_0x4873ff[_0xe8ec('0x34')]['offset']);}return _0xb24578[_0xe8ec('0x88')](_0x362db0);}})['then'](function(_0x48690a){if(_0x48690a){return _0x48690a?{'count':_0x4f7996,'rows':_0x48690a}:null;}})[_0xe8ec('0x2b')](respondWithResult(_0x272a74,null))[_0xe8ec('0x47')](handleError(_0x272a74,null));};