1a58d09218a2d3a40dd8449116ad648dbc1007ad
[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 _0x583c=['QueryTypes','every','TeamId','includes','all','compact','value','isEmpty','removeAgents','userSmsQueue:remove','addAgents','omit','getAgents','eml-format','rimraf','zip-dir','fast-json-patch','moment','bluebird','path','sox','ejs','fs-extra','lodash','squel','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./smsQueue.socket','register','sendStatus','status','json','offset','limit','count','set','Content-Range','apply','reject','update','then','destroy','get','UserProfileResource','end','error','stack','name','send','map','SmsQueue','fieldName','type','model','query','keys','filters','attributes','fields','nolimit','order','sort','pick','where','merge','VIRTUAL','options','includeAll','findAll','rows','catch','params','rawAttributes','intersection','length','include','find','create','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','SmsQueues','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','body','describe','findOne','UserSmsQueue','hasOwnProperty','SmsQueueId','filter','User','UserId','agent','smsPause','updatedAt','createdAt','format','%s/%s','SIP','Team','getTeams','addTeams','online','voicePause','interface','flatMap','Agents','sequelize','transaction','findOrCreate','forEach','emit','removeTeams','ids','select','field','tq.TeamId','from','join','user_has_teams','ut.TeamId\x20=\x20tq.TeamId','SmsQueueId\x20=\x20?','clone','ut.UserId\x20=\x20?','push','toString'];(function(_0x457607,_0x50ca5a){var _0x3e345d=function(_0x5bbb5b){while(--_0x5bbb5b){_0x457607['push'](_0x457607['shift']());}};_0x3e345d(++_0x50ca5a);}(_0x583c,0x12b));var _0xc583=function(_0x2af053,_0x4f6d28){_0x2af053=_0x2af053-0x0;var _0x4b4001=_0x583c[_0x2af053];return _0x4b4001;};'use strict';var emlformat=require(_0xc583('0x0'));var rimraf=require(_0xc583('0x1'));var zipdir=require(_0xc583('0x2'));var jsonpatch=require(_0xc583('0x3'));var rp=require('request-promise');var moment=require(_0xc583('0x4'));var BPromise=require(_0xc583('0x5'));var Mustache=require('mustache');var util=require('util');var path=require(_0xc583('0x6'));var sox=require(_0xc583('0x7'));var csv=require('to-csv');var ejs=require(_0xc583('0x8'));var fs=require('fs');var fs_extra=require(_0xc583('0x9'));var _=require(_0xc583('0xa'));var squel=require(_0xc583('0xb'));var crypto=require('crypto');var jsforce=require(_0xc583('0xc'));var deskjs=require(_0xc583('0xd'));var toCsv=require('to-csv');var querystring=require(_0xc583('0xe'));var Papa=require(_0xc583('0xf'));var Redis=require(_0xc583('0x10'));var authService=require(_0xc583('0x11'));var qs=require(_0xc583('0x12'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xc583('0x13'));var logger=require(_0xc583('0x14'))('api');var utils=require(_0xc583('0x15'));var config=require(_0xc583('0x16'));var licenseUtil=require('../../config/license/util');var db=require(_0xc583('0x17'))['db'];config[_0xc583('0x18')]=_[_0xc583('0x19')](config[_0xc583('0x18')],{'host':_0xc583('0x1a'),'port':0x18eb});var socket=require(_0xc583('0x1b'))(new Redis(config[_0xc583('0x18')]));require(_0xc583('0x1c'))[_0xc583('0x1d')](socket);function respondWithStatusCode(_0x5403a3,_0x21cf25){_0x21cf25=_0x21cf25||0xcc;return function(_0x51ecd7){if(_0x51ecd7){return _0x5403a3[_0xc583('0x1e')](_0x21cf25);}return _0x5403a3[_0xc583('0x1f')](_0x21cf25)['end']();};}function respondWithResult(_0x263552,_0x311ad5){_0x311ad5=_0x311ad5||0xc8;return function(_0x5b1871){if(_0x5b1871){return _0x263552[_0xc583('0x1f')](_0x311ad5)[_0xc583('0x20')](_0x5b1871);}};}function respondWithFilteredResult(_0x5127fa,_0x21cf22){return function(_0x8a2d84){if(_0x8a2d84){var _0x12aac2=typeof _0x21cf22[_0xc583('0x21')]==='undefined'&&typeof _0x21cf22[_0xc583('0x22')]==='undefined';var _0x227ec2=_0x8a2d84[_0xc583('0x23')];var _0xfd9a60=_0x12aac2?0x0:_0x21cf22[_0xc583('0x21')];var _0x1052b5=_0x12aac2?_0x8a2d84[_0xc583('0x23')]:_0x21cf22[_0xc583('0x21')]+_0x21cf22[_0xc583('0x22')];var _0x37fcd4;if(_0x1052b5>=_0x227ec2){_0x1052b5=_0x227ec2;_0x37fcd4=0xc8;}else{_0x37fcd4=0xce;}_0x5127fa[_0xc583('0x1f')](_0x37fcd4);return _0x5127fa[_0xc583('0x24')](_0xc583('0x25'),_0xfd9a60+'-'+_0x1052b5+'/'+_0x227ec2)[_0xc583('0x20')](_0x8a2d84);}return null;};}function patchUpdates(_0x478ee1){return function(_0x542256){try{jsonpatch[_0xc583('0x26')](_0x542256,_0x478ee1,!![]);}catch(_0x3e075c){return BPromise[_0xc583('0x27')](_0x3e075c);}return _0x542256['save']();};}function saveUpdates(_0x1521e2,_0x959500){return function(_0x37f156){if(_0x37f156){return _0x37f156[_0xc583('0x28')](_0x1521e2)[_0xc583('0x29')](function(_0x48c95e){return _0x48c95e;});}return null;};}function removeEntity(_0x4cad36,_0x45871c){return function(_0x4f366b){if(_0x4f366b){return _0x4f366b[_0xc583('0x2a')]()[_0xc583('0x29')](function(){var _0xbabf24=_0x4f366b[_0xc583('0x2b')]({'plain':!![]});var _0x24aab5='SmsQueues';return db[_0xc583('0x2c')][_0xc583('0x2a')]({'where':{'type':_0x24aab5,'resourceId':_0xbabf24['id']}})['then'](function(){return _0x4f366b;});})[_0xc583('0x29')](function(){_0x4cad36['status'](0xcc)[_0xc583('0x2d')]();});}};}function handleEntityNotFound(_0x8d4ecb,_0x1c80b1){return function(_0x3ed083){if(!_0x3ed083){_0x8d4ecb[_0xc583('0x1e')](0x194);}return _0x3ed083;};}function handleError(_0x19079b,_0x113b39){_0x113b39=_0x113b39||0x1f4;return function(_0x4a87b5){logger[_0xc583('0x2e')](_0x4a87b5[_0xc583('0x2f')]);if(_0x4a87b5[_0xc583('0x30')]){delete _0x4a87b5[_0xc583('0x30')];}_0x19079b[_0xc583('0x1f')](_0x113b39)[_0xc583('0x31')](_0x4a87b5);};}exports['index']=function(_0x2246dd,_0x58d97f){var _0x510931={},_0x299551={},_0x2df18d={'count':0x0,'rows':[]};var _0x20bbce=_[_0xc583('0x32')](db[_0xc583('0x33')]['rawAttributes'],function(_0x3e41c0){return{'name':_0x3e41c0[_0xc583('0x34')],'type':_0x3e41c0[_0xc583('0x35')]['key']};});_0x299551[_0xc583('0x36')]=_['map'](_0x20bbce,_0xc583('0x30'));_0x299551[_0xc583('0x37')]=_[_0xc583('0x38')](_0x2246dd[_0xc583('0x37')]);_0x299551[_0xc583('0x39')]=_['intersection'](_0x299551[_0xc583('0x36')],_0x299551['query']);_0x510931[_0xc583('0x3a')]=_['intersection'](_0x299551[_0xc583('0x36')],qs[_0xc583('0x3b')](_0x2246dd[_0xc583('0x37')][_0xc583('0x3b')]));_0x510931[_0xc583('0x3a')]=_0x510931[_0xc583('0x3a')]['length']?_0x510931['attributes']:_0x299551[_0xc583('0x36')];if(!_0x2246dd[_0xc583('0x37')]['hasOwnProperty'](_0xc583('0x3c'))){_0x510931[_0xc583('0x22')]=qs[_0xc583('0x22')](_0x2246dd[_0xc583('0x37')][_0xc583('0x22')]);_0x510931[_0xc583('0x21')]=qs['offset'](_0x2246dd[_0xc583('0x37')]['offset']);}_0x510931[_0xc583('0x3d')]=qs[_0xc583('0x3e')](_0x2246dd[_0xc583('0x37')]['sort']);_0x510931['where']=qs['filters'](_[_0xc583('0x3f')](_0x2246dd[_0xc583('0x37')],_0x299551[_0xc583('0x39')]),_0x20bbce);if(_0x2246dd[_0xc583('0x37')]['filter']){_0x510931[_0xc583('0x40')]=_[_0xc583('0x41')](_0x510931['where'],{'$or':_['map'](_0x20bbce,function(_0x1ea5da){if(_0x1ea5da['type']!==_0xc583('0x42')){var _0x1ec6f9={};_0x1ec6f9[_0x1ea5da[_0xc583('0x30')]]={'$like':'%'+_0x2246dd[_0xc583('0x37')]['filter']+'%'};return _0x1ec6f9;}})});}_0x510931=_[_0xc583('0x41')]({},_0x510931,_0x2246dd[_0xc583('0x43')]);var _0x39c5ab={'where':_0x510931[_0xc583('0x40')]};return db[_0xc583('0x33')]['count'](_0x39c5ab)[_0xc583('0x29')](function(_0x5f5a97){_0x2df18d['count']=_0x5f5a97;if(_0x2246dd[_0xc583('0x37')][_0xc583('0x44')]){_0x510931['include']=[{'all':!![]}];}return db['SmsQueue'][_0xc583('0x45')](_0x510931);})[_0xc583('0x29')](function(_0x7d1b29){_0x2df18d[_0xc583('0x46')]=_0x7d1b29;return _0x2df18d;})['then'](respondWithFilteredResult(_0x58d97f,_0x510931))[_0xc583('0x47')](handleError(_0x58d97f,null));};exports['show']=function(_0x8c8209,_0x4edac2){var _0x28ab1a={'raw':!![],'where':{'id':_0x8c8209[_0xc583('0x48')]['id']}},_0x14e9ad={};_0x14e9ad[_0xc583('0x36')]=_[_0xc583('0x38')](db['SmsQueue'][_0xc583('0x49')]);_0x14e9ad[_0xc583('0x37')]=_[_0xc583('0x38')](_0x8c8209['query']);_0x14e9ad['filters']=_['intersection'](_0x14e9ad[_0xc583('0x36')],_0x14e9ad['query']);_0x28ab1a[_0xc583('0x3a')]=_[_0xc583('0x4a')](_0x14e9ad[_0xc583('0x36')],qs[_0xc583('0x3b')](_0x8c8209[_0xc583('0x37')][_0xc583('0x3b')]));_0x28ab1a[_0xc583('0x3a')]=_0x28ab1a[_0xc583('0x3a')][_0xc583('0x4b')]?_0x28ab1a[_0xc583('0x3a')]:_0x14e9ad[_0xc583('0x36')];if(_0x8c8209['query'][_0xc583('0x44')]){_0x28ab1a[_0xc583('0x4c')]=[{'all':!![]}];}_0x28ab1a=_[_0xc583('0x41')]({},_0x28ab1a,_0x8c8209[_0xc583('0x43')]);return db['SmsQueue'][_0xc583('0x4d')](_0x28ab1a)[_0xc583('0x29')](handleEntityNotFound(_0x4edac2,null))[_0xc583('0x29')](respondWithResult(_0x4edac2,null))[_0xc583('0x47')](handleError(_0x4edac2,null));};exports[_0xc583('0x4e')]=function(_0x22da88,_0x3f60ae){return db[_0xc583('0x33')][_0xc583('0x4e')](_0x22da88['body'],{})[_0xc583('0x29')](function(_0x1919fa){var _0x416259=_0x22da88[_0xc583('0x4f')][_0xc583('0x2b')]({'plain':!![]});if(!_0x416259)throw new Error(_0xc583('0x50'));if(_0x416259[_0xc583('0x51')]===_0xc583('0x4f')){var _0x21a956=_0x1919fa[_0xc583('0x2b')]({'plain':!![]});var _0x1a0f91=_0xc583('0x52');return db[_0xc583('0x53')]['find']({'where':{'name':_0x1a0f91,'userProfileId':_0x416259[_0xc583('0x54')]},'raw':!![]})[_0xc583('0x29')](function(_0x44413e){if(_0x44413e&&_0x44413e[_0xc583('0x55')]===0x0){return db[_0xc583('0x2c')][_0xc583('0x4e')]({'name':_0x21a956[_0xc583('0x30')],'resourceId':_0x21a956['id'],'type':_0x44413e[_0xc583('0x30')],'sectionId':_0x44413e['id']},{})[_0xc583('0x29')](function(){return _0x1919fa;});}else{return _0x1919fa;}})['catch'](function(_0x141faa){logger[_0xc583('0x2e')](_0xc583('0x56'),_0x141faa);throw _0x141faa;});}return _0x1919fa;})['then'](respondWithResult(_0x3f60ae,0xc9))['catch'](handleError(_0x3f60ae,null));};exports[_0xc583('0x28')]=function(_0x4b4968,_0x12568e){if(_0x4b4968[_0xc583('0x57')]['id']){delete _0x4b4968['body']['id'];}return db['SmsQueue'][_0xc583('0x4d')]({'where':{'id':_0x4b4968[_0xc583('0x48')]['id']}})[_0xc583('0x29')](handleEntityNotFound(_0x12568e,null))[_0xc583('0x29')](saveUpdates(_0x4b4968[_0xc583('0x57')],null))[_0xc583('0x29')](respondWithResult(_0x12568e,null))[_0xc583('0x47')](handleError(_0x12568e,null));};exports[_0xc583('0x2a')]=function(_0x5c60f1,_0x1d41df){return db[_0xc583('0x33')][_0xc583('0x4d')]({'where':{'id':_0x5c60f1[_0xc583('0x48')]['id']}})['then'](handleEntityNotFound(_0x1d41df,null))[_0xc583('0x29')](removeEntity(_0x1d41df,null))[_0xc583('0x47')](handleError(_0x1d41df,null));};exports['describe']=function(_0x5a534e,_0x12b114){return db['SmsQueue'][_0xc583('0x58')]()[_0xc583('0x29')](respondWithResult(_0x12b114,null))[_0xc583('0x47')](handleError(_0x12b114,null));};exports['getMembers']=function(_0x4e314b,_0x1ea579,_0x3a5033){var _0x4276d9={'raw':!![],'where':{}},_0xd85099={},_0x52aa76;return db[_0xc583('0x33')][_0xc583('0x59')]({'where':{'id':_0x4e314b['params']['id']}})['then'](handleEntityNotFound(_0x1ea579,null))[_0xc583('0x29')](function(_0x579c62){if(_0x579c62){_0x52aa76=_0x579c62['get']({'plain':!![]});_0xd85099[_0xc583('0x36')]=_[_0xc583('0x38')](db[_0xc583('0x5a')][_0xc583('0x49')]);_0xd85099[_0xc583('0x37')]=_['keys'](_0x4e314b['query']);_0xd85099[_0xc583('0x39')]=_[_0xc583('0x4a')](_0xd85099['model'],_0xd85099['query']);_0x4276d9[_0xc583('0x3a')]=_['intersection'](_0xd85099[_0xc583('0x36')],qs[_0xc583('0x3b')](_0x4e314b['query'][_0xc583('0x3b')]));_0x4276d9['attributes']=_0x4276d9[_0xc583('0x3a')][_0xc583('0x4b')]?_0x4276d9['attributes']:_0xd85099[_0xc583('0x36')];if(!_0x4e314b[_0xc583('0x37')][_0xc583('0x5b')](_0xc583('0x3c'))){_0x4276d9[_0xc583('0x22')]=qs[_0xc583('0x22')](_0x4e314b[_0xc583('0x37')][_0xc583('0x22')]);_0x4276d9['offset']=qs['offset'](_0x4e314b['query'][_0xc583('0x21')]);}_0x4276d9['order']=qs[_0xc583('0x3e')](_0x4e314b[_0xc583('0x37')][_0xc583('0x3e')]);_0x4276d9[_0xc583('0x40')]=qs[_0xc583('0x39')](_[_0xc583('0x3f')](_0x4e314b[_0xc583('0x37')],_0xd85099[_0xc583('0x39')]));_0x4276d9['where'][_0xc583('0x5c')]=_0x579c62['id'];if(_0x4e314b[_0xc583('0x37')][_0xc583('0x5d')]){_0x4276d9[_0xc583('0x40')]=_[_0xc583('0x41')](_0x4276d9[_0xc583('0x40')],{'$or':_['map'](_0x4276d9[_0xc583('0x3a')],function(_0x7b68a5){var _0x17268d={};_0x17268d[_0x7b68a5]={'$like':'%'+_0x4e314b[_0xc583('0x37')][_0xc583('0x5d')]+'%'};return _0x17268d;})});}_0x4276d9=_[_0xc583('0x41')]({},_0x4276d9,_0x4e314b['options']);return db[_0xc583('0x5a')][_0xc583('0x45')](_0x4276d9);}})[_0xc583('0x29')](function(_0x54e331){if(_0x54e331){return db[_0xc583('0x5e')]['findAndCountAll']({'where':{'id':_[_0xc583('0x32')](_0x54e331,_0xc583('0x5f')),'role':_0xc583('0x60')},'attributes':['id',_0xc583('0x30'),_0xc583('0x61'),_0xc583('0x62'),_0xc583('0x63')]});}})['then'](function(_0x5a7b91){if(_0x5a7b91){return{'count':_0x5a7b91['count'],'rows':_['map'](_0x5a7b91[_0xc583('0x46')],function(_0x3f166f){return{'membername':_0x3f166f[_0xc583('0x30')],'UserId':_0x3f166f['id'],'queue_name':_0x52aa76[_0xc583('0x30')],'SmsQueueId':_0x52aa76['id'],'interface':util[_0xc583('0x64')](_0xc583('0x65'),_0xc583('0x66'),_0x3f166f[_0xc583('0x30')]),'penalty':0x0,'paused':_0x3f166f[_0xc583('0x61')],'createdAt':_0x3f166f[_0xc583('0x63')],'updatedAt':_0x3f166f['updatedAt']};})};}else{return{'count':0x0,'rows':[]};}})[_0xc583('0x29')](respondWithFilteredResult(_0x1ea579,_0x4276d9))[_0xc583('0x47')](handleError(_0x1ea579,null));};exports['getTeams']=function(_0x54cf71,_0x5b2f7c,_0x118682){var _0x10037e={};var _0x3d884e={};var _0x3436b5;var _0x2c992f;return db[_0xc583('0x33')][_0xc583('0x59')]({'where':{'id':_0x54cf71[_0xc583('0x48')]['id']}})[_0xc583('0x29')](handleEntityNotFound(_0x5b2f7c,null))['then'](function(_0x442844){if(_0x442844){_0x3436b5=_0x442844;_0x3d884e[_0xc583('0x36')]=_['keys'](db[_0xc583('0x67')][_0xc583('0x49')]);_0x3d884e[_0xc583('0x37')]=_[_0xc583('0x38')](_0x54cf71[_0xc583('0x37')]);_0x3d884e['filters']=_[_0xc583('0x4a')](_0x3d884e[_0xc583('0x36')],_0x3d884e[_0xc583('0x37')]);_0x10037e[_0xc583('0x3a')]=_['intersection'](_0x3d884e['model'],qs['fields'](_0x54cf71[_0xc583('0x37')]['fields']));_0x10037e['attributes']=_0x10037e['attributes'][_0xc583('0x4b')]?_0x10037e[_0xc583('0x3a')]:_0x3d884e[_0xc583('0x36')];_0x10037e[_0xc583('0x3d')]=qs[_0xc583('0x3e')](_0x54cf71['query'][_0xc583('0x3e')]);_0x10037e[_0xc583('0x40')]=qs[_0xc583('0x39')](_['pick'](_0x54cf71[_0xc583('0x37')],_0x3d884e[_0xc583('0x39')]));if(_0x54cf71['query']['filter']){_0x10037e[_0xc583('0x40')]=_[_0xc583('0x41')](_0x10037e[_0xc583('0x40')],{'$or':_[_0xc583('0x32')](_0x10037e[_0xc583('0x3a')],function(_0x10651c){var _0x222e84={};_0x222e84[_0x10651c]={'$like':'%'+_0x54cf71[_0xc583('0x37')]['filter']+'%'};return _0x222e84;})});}_0x10037e=_[_0xc583('0x41')]({},_0x10037e,_0x54cf71[_0xc583('0x43')]);return _0x3436b5[_0xc583('0x68')](_0x10037e);}})[_0xc583('0x29')](function(_0x674d99){if(_0x674d99){_0x2c992f=_0x674d99[_0xc583('0x4b')];if(!_0x54cf71[_0xc583('0x37')][_0xc583('0x5b')](_0xc583('0x3c'))){_0x10037e[_0xc583('0x22')]=qs[_0xc583('0x22')](_0x54cf71[_0xc583('0x37')][_0xc583('0x22')]);_0x10037e[_0xc583('0x21')]=qs[_0xc583('0x21')](_0x54cf71[_0xc583('0x37')][_0xc583('0x21')]);}return _0x3436b5[_0xc583('0x68')](_0x10037e);}})[_0xc583('0x29')](function(_0x2c1ff0){if(_0x2c1ff0){return _0x2c1ff0?{'count':_0x2c992f,'rows':_0x2c1ff0}:null;}})[_0xc583('0x29')](respondWithResult(_0x5b2f7c,null))[_0xc583('0x47')](handleError(_0x5b2f7c,null));};exports[_0xc583('0x69')]=function(_0x3058e2,_0x4c44f8,_0x54d7cf){var _0xa0eb5c=_0x3058e2[_0xc583('0x57')]['ids'];return db['Team'][_0xc583('0x45')]({'where':{'id':_0xa0eb5c},'attributes':['id'],'include':[{'model':db[_0xc583('0x5e')],'as':'Agents','attributes':['id','name',_0xc583('0x6a'),_0xc583('0x6b'),_0xc583('0x6c')],'raw':!![]}]})['then'](function(_0x53bb85){if(_0x53bb85){var _0xcb06d4=_[_0xc583('0x6d')](_0x53bb85,function(_0x4050d2){var _0x55c679=_0x4050d2[_0xc583('0x2b')]({'plain':!![]});return _0x55c679[_0xc583('0x6e')];});return db['SmsQueue'][_0xc583('0x4d')]({'where':{'id':_0x3058e2[_0xc583('0x48')]['id']}})[_0xc583('0x29')](function(_0x429970){return db[_0xc583('0x6f')][_0xc583('0x70')](function(_0x3b2835){return _0x429970['addTeams'](_0xa0eb5c,{'transaction':_0x3b2835})['then'](function(){return BPromise['each'](_0xcb06d4,function(_0x44a39f){return db[_0xc583('0x5a')][_0xc583('0x71')]({'where':{'UserId':_0x44a39f['id'],'SmsQueueId':_0x3058e2[_0xc583('0x48')]['id']},'transaction':_0x3b2835});});})[_0xc583('0x29')](function(){_0xcb06d4[_0xc583('0x72')](function(_0x1179d8){socket[_0xc583('0x73')]('userSmsQueue:save',{'UserId':_0x1179d8['id'],'SmsQueueId':_0x429970['id']});});});});});}})[_0xc583('0x29')](respondWithStatusCode(_0x4c44f8,null))[_0xc583('0x47')](handleError(_0x4c44f8,null));};exports[_0xc583('0x74')]=function(_0x1f2d3d,_0x5cd680,_0x4afaf0){return db['Team'][_0xc583('0x45')]({'where':{'id':_0x1f2d3d[_0xc583('0x37')][_0xc583('0x75')]},'attributes':['id'],'include':[{'model':db[_0xc583('0x5e')],'as':_0xc583('0x6e'),'attributes':['id'],'raw':!![]}]})[_0xc583('0x29')](handleEntityNotFound(_0x5cd680,null))['then'](function(_0x4c75d8){var _0x1907ff=_[_0xc583('0x32')](_0x4c75d8,'id');var _0x492e13=[];var _0xc11b2e=[];var _0x1a2a0d=squel[_0xc583('0x76')]();_0x1a2a0d[_0xc583('0x77')](_0xc583('0x78'))[_0xc583('0x79')]('team_has_sms_queues','tq')[_0xc583('0x7a')](_0xc583('0x7b'),'ut',_0xc583('0x7c'))[_0xc583('0x40')](_0xc583('0x7d'),_0x1f2d3d[_0xc583('0x48')]['id']);for(var _0x2e9f85=0x0;_0x2e9f85<_0x4c75d8[_0xc583('0x4b')];_0x2e9f85+=0x1){let _0x2780d1=_0x4c75d8[_0x2e9f85];for(var _0x328d52=0x0;_0x328d52<_0x2780d1['Agents'][_0xc583('0x4b')];_0x328d52+=0x1){let _0x15c3dd=_0x2780d1[_0xc583('0x6e')][_0x328d52];var _0x50c7d0=_0x1a2a0d[_0xc583('0x7e')]();_0x50c7d0['where'](_0xc583('0x7f'),_0x15c3dd['id']);_0xc11b2e[_0xc583('0x80')](db[_0xc583('0x6f')][_0xc583('0x37')](_0x50c7d0[_0xc583('0x81')](),{'type':db[_0xc583('0x6f')][_0xc583('0x82')]['SELECT']})[_0xc583('0x29')](function(_0x490236){if(_0x490236[_0xc583('0x4b')]===0x1){return _0x15c3dd['id'];}else{var _0x57f281=_[_0xc583('0x83')](_[_0xc583('0x32')](_0x490236,_0xc583('0x84')),function(_0x25d16e){return _[_0xc583('0x85')](_0x1907ff,_0x25d16e);});if(_0x57f281){return _0x15c3dd['id'];}}}));}}return BPromise[_0xc583('0x86')](_0xc11b2e)[_0xc583('0x29')](function(_0x8b4b99){_0x492e13=_(_0x492e13)['union'](_0x8b4b99)[_0xc583('0x87')]()[_0xc583('0x88')]();return db[_0xc583('0x33')][_0xc583('0x4d')]({'where':{'id':_0x1f2d3d[_0xc583('0x48')]['id']}})['then'](function(_0xab96bb){return db[_0xc583('0x6f')][_0xc583('0x70')](function(_0x5adde2){return _0xab96bb['removeTeams'](_0x1f2d3d[_0xc583('0x37')][_0xc583('0x75')],{'transaction':_0x5adde2})[_0xc583('0x29')](function(){if(!_[_0xc583('0x89')](_0x492e13)){return _0xab96bb[_0xc583('0x8a')](_0x492e13,{'transaction':_0x5adde2});}})[_0xc583('0x29')](function(){_0x492e13['forEach'](function(_0xd2bc2){socket[_0xc583('0x73')](_0xc583('0x8b'),{'UserId':_0xd2bc2,'SmsQueueId':_0xab96bb['id']});});});});});});})[_0xc583('0x29')](respondWithStatusCode(_0x5cd680,null))[_0xc583('0x47')](handleError(_0x5cd680,null));};exports['addAgents']=function(_0x49766b,_0x558345,_0x1371a2){return db['SmsQueue'][_0xc583('0x4d')]({'where':{'id':_0x49766b[_0xc583('0x48')]['id']}})['then'](handleEntityNotFound(_0x558345,null))['then'](function(_0x1f1dfc){if(_0x1f1dfc){return _0x1f1dfc[_0xc583('0x8c')](_0x49766b[_0xc583('0x57')][_0xc583('0x75')],_[_0xc583('0x8d')](_0x49766b['body'],[_0xc583('0x75'),'id'])||{})['spread'](function(_0xeed0a4){for(var _0xd54077=0x0;_0xd54077<_0x49766b[_0xc583('0x57')][_0xc583('0x75')]['length'];_0xd54077+=0x1){socket['emit']('userSmsQueue:save',{'UserId':Number(_0x49766b[_0xc583('0x57')][_0xc583('0x75')][_0xd54077]),'SmsQueueId':Number(_0x49766b[_0xc583('0x48')]['id'])});}return _0xeed0a4;});}})['then'](respondWithResult(_0x558345,null))[_0xc583('0x47')](handleError(_0x558345,null));};exports[_0xc583('0x8a')]=function(_0x5645c7,_0x392a65,_0x584454){return db[_0xc583('0x33')][_0xc583('0x4d')]({'where':{'id':_0x5645c7[_0xc583('0x48')]['id']}})[_0xc583('0x29')](handleEntityNotFound(_0x392a65,null))['then'](function(_0xc84276){if(_0xc84276){return _0xc84276[_0xc583('0x8a')](_0x5645c7[_0xc583('0x37')]['ids'])['then'](function(){if(_['isArray'](_0x5645c7[_0xc583('0x37')][_0xc583('0x75')])){for(var _0x50f902=0x0;_0x50f902<_0x5645c7[_0xc583('0x37')][_0xc583('0x75')]['length'];_0x50f902+=0x1){socket['emit'](_0xc583('0x8b'),{'UserId':Number(_0x5645c7['query'][_0xc583('0x75')][_0x50f902]),'SmsQueueId':Number(_0x5645c7[_0xc583('0x48')]['id'])});}}else{socket[_0xc583('0x73')](_0xc583('0x8b'),{'UserId':Number(_0x5645c7[_0xc583('0x37')][_0xc583('0x75')]),'SmsQueueId':Number(_0x5645c7['params']['id'])});}});}})[_0xc583('0x29')](respondWithStatusCode(_0x392a65,null))[_0xc583('0x47')](handleError(_0x392a65,null));};exports[_0xc583('0x8e')]=function(_0x2fe064,_0x3fa08e,_0x2a3ef9){var _0x4d24e7={};var _0x33febd={};var _0x496872;var _0x1b0c41;return db[_0xc583('0x33')]['findOne']({'where':{'id':_0x2fe064['params']['id']}})[_0xc583('0x29')](handleEntityNotFound(_0x3fa08e,null))['then'](function(_0x564e57){if(_0x564e57){_0x496872=_0x564e57;_0x33febd[_0xc583('0x36')]=_['keys'](db[_0xc583('0x5e')][_0xc583('0x49')]);_0x33febd[_0xc583('0x37')]=_[_0xc583('0x38')](_0x2fe064['query']);_0x33febd[_0xc583('0x39')]=_[_0xc583('0x4a')](_0x33febd[_0xc583('0x36')],_0x33febd[_0xc583('0x37')]);_0x4d24e7[_0xc583('0x3a')]=_[_0xc583('0x4a')](_0x33febd[_0xc583('0x36')],qs[_0xc583('0x3b')](_0x2fe064[_0xc583('0x37')][_0xc583('0x3b')]));_0x4d24e7[_0xc583('0x3a')]=_0x4d24e7[_0xc583('0x3a')][_0xc583('0x4b')]?_0x4d24e7['attributes']:_0x33febd[_0xc583('0x36')];_0x4d24e7[_0xc583('0x3d')]=qs[_0xc583('0x3e')](_0x2fe064[_0xc583('0x37')][_0xc583('0x3e')]);_0x4d24e7[_0xc583('0x40')]=qs[_0xc583('0x39')](_[_0xc583('0x3f')](_0x2fe064['query'],_0x33febd[_0xc583('0x39')]));if(_0x2fe064[_0xc583('0x37')]['filter']){_0x4d24e7['where']=_[_0xc583('0x41')](_0x4d24e7[_0xc583('0x40')],{'$or':_['map'](_0x4d24e7[_0xc583('0x3a')],function(_0x5aa4f3){var _0x468bd4={};_0x468bd4[_0x5aa4f3]={'$like':'%'+_0x2fe064[_0xc583('0x37')][_0xc583('0x5d')]+'%'};return _0x468bd4;})});}_0x4d24e7=_[_0xc583('0x41')]({},_0x4d24e7,_0x2fe064[_0xc583('0x43')]);return _0x496872[_0xc583('0x8e')](_0x4d24e7);}})[_0xc583('0x29')](function(_0x5bae53){if(_0x5bae53){_0x1b0c41=_0x5bae53['length'];if(!_0x2fe064[_0xc583('0x37')]['hasOwnProperty'](_0xc583('0x3c'))){_0x4d24e7['limit']=qs[_0xc583('0x22')](_0x2fe064[_0xc583('0x37')]['limit']);_0x4d24e7[_0xc583('0x21')]=qs[_0xc583('0x21')](_0x2fe064[_0xc583('0x37')][_0xc583('0x21')]);}return _0x496872['getAgents'](_0x4d24e7);}})[_0xc583('0x29')](function(_0x182c40){if(_0x182c40){return _0x182c40?{'count':_0x1b0c41,'rows':_0x182c40}:null;}})[_0xc583('0x29')](respondWithResult(_0x3fa08e,null))['catch'](handleError(_0x3fa08e,null));};