b7ccae8be4d6a03e31b80f96d6ef57603f58aec7
[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 _0x54cc=['every','TeamId','includes','all','union','compact','value','isEmpty','removeAgents','userSmsQueue:remove','addAgents','spread','isArray','getAgents','eml-format','zip-dir','fast-json-patch','moment','bluebird','util','path','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','redis','socket.io-emitter','./smsQueue.socket','register','sendStatus','status','end','offset','undefined','limit','count','set','Content-Range','json','apply','reject','save','update','then','destroy','SmsQueues','UserProfileResource','stack','name','send','index','map','SmsQueue','fieldName','type','model','query','filters','intersection','attributes','fields','length','order','sort','where','filter','merge','VIRTUAL','options','includeAll','findAll','rows','catch','show','params','keys','rawAttributes','create','body','user','get','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','find','userProfileId','error','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','describe','getMembers','UserSmsQueue','hasOwnProperty','nolimit','pick','User','findAndCountAll','agent','smsPause','format','%s/%s','SIP','createdAt','getTeams','findOne','Team','ids','Agents','interface','flatMap','sequelize','transaction','each','findOrCreate','forEach','emit','userSmsQueue:save','removeTeams','select','tq.TeamId','from','team_has_sms_queues','join','ut.TeamId\x20=\x20tq.TeamId','SmsQueueId\x20=\x20?','clone','push','toString','QueryTypes','SELECT'];(function(_0xaa37af,_0x9c97e7){var _0x56d335=function(_0x32ce3d){while(--_0x32ce3d){_0xaa37af['push'](_0xaa37af['shift']());}};_0x56d335(++_0x9c97e7);}(_0x54cc,0xa0));var _0xc54c=function(_0xba161d,_0x52e434){_0xba161d=_0xba161d-0x0;var _0x23385b=_0x54cc[_0xba161d];return _0x23385b;};'use strict';var emlformat=require(_0xc54c('0x0'));var rimraf=require('rimraf');var zipdir=require(_0xc54c('0x1'));var jsonpatch=require(_0xc54c('0x2'));var rp=require('request-promise');var moment=require(_0xc54c('0x3'));var BPromise=require(_0xc54c('0x4'));var Mustache=require('mustache');var util=require(_0xc54c('0x5'));var path=require(_0xc54c('0x6'));var sox=require(_0xc54c('0x7'));var csv=require(_0xc54c('0x8'));var ejs=require(_0xc54c('0x9'));var fs=require('fs');var fs_extra=require(_0xc54c('0xa'));var _=require(_0xc54c('0xb'));var squel=require(_0xc54c('0xc'));var crypto=require(_0xc54c('0xd'));var jsforce=require(_0xc54c('0xe'));var deskjs=require(_0xc54c('0xf'));var toCsv=require('to-csv');var querystring=require(_0xc54c('0x10'));var Papa=require(_0xc54c('0x11'));var Redis=require(_0xc54c('0x12'));var authService=require(_0xc54c('0x13'));var qs=require(_0xc54c('0x14'));var as=require(_0xc54c('0x15'));var hardwareService=require(_0xc54c('0x16'));var logger=require(_0xc54c('0x17'))(_0xc54c('0x18'));var utils=require(_0xc54c('0x19'));var config=require(_0xc54c('0x1a'));var licenseUtil=require(_0xc54c('0x1b'));var db=require('../../mysqldb')['db'];config[_0xc54c('0x1c')]=_['defaults'](config[_0xc54c('0x1c')],{'host':'localhost','port':0x18eb});var socket=require(_0xc54c('0x1d'))(new Redis(config[_0xc54c('0x1c')]));require(_0xc54c('0x1e'))[_0xc54c('0x1f')](socket);function respondWithStatusCode(_0xb5b3a5,_0x36b971){_0x36b971=_0x36b971||0xcc;return function(_0x5ba683){if(_0x5ba683){return _0xb5b3a5[_0xc54c('0x20')](_0x36b971);}return _0xb5b3a5[_0xc54c('0x21')](_0x36b971)[_0xc54c('0x22')]();};}function respondWithResult(_0x3c37b2,_0x226700){_0x226700=_0x226700||0xc8;return function(_0x2977a8){if(_0x2977a8){return _0x3c37b2[_0xc54c('0x21')](_0x226700)['json'](_0x2977a8);}};}function respondWithFilteredResult(_0x7ff040,_0x4e95e9){return function(_0xfa8f7f){if(_0xfa8f7f){var _0x56f050=typeof _0x4e95e9[_0xc54c('0x23')]===_0xc54c('0x24')&&typeof _0x4e95e9[_0xc54c('0x25')]===_0xc54c('0x24');var _0x5ad65e=_0xfa8f7f[_0xc54c('0x26')];var _0x2ac120=_0x56f050?0x0:_0x4e95e9[_0xc54c('0x23')];var _0x16b6c4=_0x56f050?_0xfa8f7f[_0xc54c('0x26')]:_0x4e95e9[_0xc54c('0x23')]+_0x4e95e9['limit'];var _0xc977c8;if(_0x16b6c4>=_0x5ad65e){_0x16b6c4=_0x5ad65e;_0xc977c8=0xc8;}else{_0xc977c8=0xce;}_0x7ff040[_0xc54c('0x21')](_0xc977c8);return _0x7ff040[_0xc54c('0x27')](_0xc54c('0x28'),_0x2ac120+'-'+_0x16b6c4+'/'+_0x5ad65e)[_0xc54c('0x29')](_0xfa8f7f);}return null;};}function patchUpdates(_0x5dd96f){return function(_0x3f6a09){try{jsonpatch[_0xc54c('0x2a')](_0x3f6a09,_0x5dd96f,!![]);}catch(_0x567b61){return BPromise[_0xc54c('0x2b')](_0x567b61);}return _0x3f6a09[_0xc54c('0x2c')]();};}function saveUpdates(_0x4ea0fe,_0x4f6681){return function(_0x14e84b){if(_0x14e84b){return _0x14e84b[_0xc54c('0x2d')](_0x4ea0fe)[_0xc54c('0x2e')](function(_0x386c5c){return _0x386c5c;});}return null;};}function removeEntity(_0x8ab82d,_0x3503e8){return function(_0x4288ab){if(_0x4288ab){return _0x4288ab[_0xc54c('0x2f')]()['then'](function(){var _0x5f0345=_0x4288ab['get']({'plain':!![]});var _0x2186c5=_0xc54c('0x30');return db[_0xc54c('0x31')][_0xc54c('0x2f')]({'where':{'type':_0x2186c5,'resourceId':_0x5f0345['id']}})[_0xc54c('0x2e')](function(){return _0x4288ab;});})[_0xc54c('0x2e')](function(){_0x8ab82d[_0xc54c('0x21')](0xcc)[_0xc54c('0x22')]();});}};}function handleEntityNotFound(_0x3a3223,_0x1858d3){return function(_0x2588dc){if(!_0x2588dc){_0x3a3223[_0xc54c('0x20')](0x194);}return _0x2588dc;};}function handleError(_0x145f0b,_0x4b3620){_0x4b3620=_0x4b3620||0x1f4;return function(_0x431b89){logger['error'](_0x431b89[_0xc54c('0x32')]);if(_0x431b89[_0xc54c('0x33')]){delete _0x431b89[_0xc54c('0x33')];}_0x145f0b[_0xc54c('0x21')](_0x4b3620)[_0xc54c('0x34')](_0x431b89);};}exports[_0xc54c('0x35')]=function(_0x2265f0,_0x2e2452){var _0x2a5067={},_0xec4037={},_0x5641ef={'count':0x0,'rows':[]};var _0x4dfb20=_[_0xc54c('0x36')](db[_0xc54c('0x37')]['rawAttributes'],function(_0xb2baa9){return{'name':_0xb2baa9[_0xc54c('0x38')],'type':_0xb2baa9[_0xc54c('0x39')]['key']};});_0xec4037[_0xc54c('0x3a')]=_[_0xc54c('0x36')](_0x4dfb20,_0xc54c('0x33'));_0xec4037[_0xc54c('0x3b')]=_['keys'](_0x2265f0[_0xc54c('0x3b')]);_0xec4037[_0xc54c('0x3c')]=_[_0xc54c('0x3d')](_0xec4037[_0xc54c('0x3a')],_0xec4037['query']);_0x2a5067[_0xc54c('0x3e')]=_[_0xc54c('0x3d')](_0xec4037[_0xc54c('0x3a')],qs[_0xc54c('0x3f')](_0x2265f0[_0xc54c('0x3b')]['fields']));_0x2a5067['attributes']=_0x2a5067[_0xc54c('0x3e')][_0xc54c('0x40')]?_0x2a5067[_0xc54c('0x3e')]:_0xec4037['model'];if(!_0x2265f0['query']['hasOwnProperty']('nolimit')){_0x2a5067[_0xc54c('0x25')]=qs['limit'](_0x2265f0['query'][_0xc54c('0x25')]);_0x2a5067['offset']=qs[_0xc54c('0x23')](_0x2265f0[_0xc54c('0x3b')]['offset']);}_0x2a5067[_0xc54c('0x41')]=qs[_0xc54c('0x42')](_0x2265f0[_0xc54c('0x3b')][_0xc54c('0x42')]);_0x2a5067[_0xc54c('0x43')]=qs[_0xc54c('0x3c')](_['pick'](_0x2265f0['query'],_0xec4037[_0xc54c('0x3c')]),_0x4dfb20);if(_0x2265f0[_0xc54c('0x3b')][_0xc54c('0x44')]){_0x2a5067[_0xc54c('0x43')]=_[_0xc54c('0x45')](_0x2a5067[_0xc54c('0x43')],{'$or':_['map'](_0x4dfb20,function(_0x1316f4){if(_0x1316f4['type']!==_0xc54c('0x46')){var _0x30ca36={};_0x30ca36[_0x1316f4[_0xc54c('0x33')]]={'$like':'%'+_0x2265f0[_0xc54c('0x3b')][_0xc54c('0x44')]+'%'};return _0x30ca36;}})});}_0x2a5067=_['merge']({},_0x2a5067,_0x2265f0[_0xc54c('0x47')]);var _0xd53092={'where':_0x2a5067[_0xc54c('0x43')]};return db[_0xc54c('0x37')][_0xc54c('0x26')](_0xd53092)[_0xc54c('0x2e')](function(_0x3ce9bd){_0x5641ef['count']=_0x3ce9bd;if(_0x2265f0[_0xc54c('0x3b')][_0xc54c('0x48')]){_0x2a5067['include']=[{'all':!![]}];}return db[_0xc54c('0x37')][_0xc54c('0x49')](_0x2a5067);})['then'](function(_0x533c28){_0x5641ef[_0xc54c('0x4a')]=_0x533c28;return _0x5641ef;})['then'](respondWithFilteredResult(_0x2e2452,_0x2a5067))[_0xc54c('0x4b')](handleError(_0x2e2452,null));};exports[_0xc54c('0x4c')]=function(_0x1397e6,_0x3a4b17){var _0x4aa301={'raw':!![],'where':{'id':_0x1397e6[_0xc54c('0x4d')]['id']}},_0x347e12={};_0x347e12['model']=_[_0xc54c('0x4e')](db['SmsQueue'][_0xc54c('0x4f')]);_0x347e12['query']=_[_0xc54c('0x4e')](_0x1397e6[_0xc54c('0x3b')]);_0x347e12[_0xc54c('0x3c')]=_['intersection'](_0x347e12[_0xc54c('0x3a')],_0x347e12[_0xc54c('0x3b')]);_0x4aa301[_0xc54c('0x3e')]=_[_0xc54c('0x3d')](_0x347e12[_0xc54c('0x3a')],qs[_0xc54c('0x3f')](_0x1397e6['query'][_0xc54c('0x3f')]));_0x4aa301['attributes']=_0x4aa301[_0xc54c('0x3e')][_0xc54c('0x40')]?_0x4aa301[_0xc54c('0x3e')]:_0x347e12[_0xc54c('0x3a')];if(_0x1397e6[_0xc54c('0x3b')][_0xc54c('0x48')]){_0x4aa301['include']=[{'all':!![]}];}_0x4aa301=_[_0xc54c('0x45')]({},_0x4aa301,_0x1397e6[_0xc54c('0x47')]);return db['SmsQueue']['find'](_0x4aa301)[_0xc54c('0x2e')](handleEntityNotFound(_0x3a4b17,null))['then'](respondWithResult(_0x3a4b17,null))[_0xc54c('0x4b')](handleError(_0x3a4b17,null));};exports['create']=function(_0x3ffe3e,_0x3b584e){return db[_0xc54c('0x37')][_0xc54c('0x50')](_0x3ffe3e[_0xc54c('0x51')],{})[_0xc54c('0x2e')](function(_0x34bb82){var _0x4f0ce5=_0x3ffe3e[_0xc54c('0x52')][_0xc54c('0x53')]({'plain':!![]});if(!_0x4f0ce5)throw new Error(_0xc54c('0x54'));if(_0x4f0ce5[_0xc54c('0x55')]==='user'){var _0x52011b=_0x34bb82[_0xc54c('0x53')]({'plain':!![]});var _0x590a2=_0xc54c('0x30');return db[_0xc54c('0x56')][_0xc54c('0x57')]({'where':{'name':_0x590a2,'userProfileId':_0x4f0ce5[_0xc54c('0x58')]},'raw':!![]})[_0xc54c('0x2e')](function(_0x53e4ab){if(_0x53e4ab&&_0x53e4ab['autoAssociation']===0x0){return db[_0xc54c('0x31')][_0xc54c('0x50')]({'name':_0x52011b[_0xc54c('0x33')],'resourceId':_0x52011b['id'],'type':_0x53e4ab[_0xc54c('0x33')],'sectionId':_0x53e4ab['id']},{})[_0xc54c('0x2e')](function(){return _0x34bb82;});}else{return _0x34bb82;}})[_0xc54c('0x4b')](function(_0x61c91e){logger[_0xc54c('0x59')](_0xc54c('0x5a'),_0x61c91e);throw _0x61c91e;});}return _0x34bb82;})[_0xc54c('0x2e')](respondWithResult(_0x3b584e,0xc9))['catch'](handleError(_0x3b584e,null));};exports[_0xc54c('0x2d')]=function(_0x55fbfe,_0x1843c7){if(_0x55fbfe[_0xc54c('0x51')]['id']){delete _0x55fbfe[_0xc54c('0x51')]['id'];}return db[_0xc54c('0x37')]['find']({'where':{'id':_0x55fbfe['params']['id']}})['then'](handleEntityNotFound(_0x1843c7,null))[_0xc54c('0x2e')](saveUpdates(_0x55fbfe[_0xc54c('0x51')],null))[_0xc54c('0x2e')](respondWithResult(_0x1843c7,null))[_0xc54c('0x4b')](handleError(_0x1843c7,null));};exports[_0xc54c('0x2f')]=function(_0x1d5e8d,_0x1dfa32){return db[_0xc54c('0x37')]['find']({'where':{'id':_0x1d5e8d['params']['id']}})['then'](handleEntityNotFound(_0x1dfa32,null))[_0xc54c('0x2e')](removeEntity(_0x1dfa32,null))[_0xc54c('0x4b')](handleError(_0x1dfa32,null));};exports[_0xc54c('0x5b')]=function(_0x5dfa3f,_0x35b4ac){return db['SmsQueue'][_0xc54c('0x5b')]()['then'](respondWithResult(_0x35b4ac,null))[_0xc54c('0x4b')](handleError(_0x35b4ac,null));};exports[_0xc54c('0x5c')]=function(_0x9b361f,_0x180120,_0x5d31ca){var _0x32cdc3={'raw':!![],'where':{}},_0x2d5cc6={},_0x2553e4;return db[_0xc54c('0x37')]['findOne']({'where':{'id':_0x9b361f['params']['id']}})[_0xc54c('0x2e')](handleEntityNotFound(_0x180120,null))['then'](function(_0x14a0cd){if(_0x14a0cd){_0x2553e4=_0x14a0cd['get']({'plain':!![]});_0x2d5cc6['model']=_[_0xc54c('0x4e')](db[_0xc54c('0x5d')][_0xc54c('0x4f')]);_0x2d5cc6[_0xc54c('0x3b')]=_[_0xc54c('0x4e')](_0x9b361f[_0xc54c('0x3b')]);_0x2d5cc6[_0xc54c('0x3c')]=_[_0xc54c('0x3d')](_0x2d5cc6[_0xc54c('0x3a')],_0x2d5cc6[_0xc54c('0x3b')]);_0x32cdc3['attributes']=_[_0xc54c('0x3d')](_0x2d5cc6['model'],qs[_0xc54c('0x3f')](_0x9b361f[_0xc54c('0x3b')]['fields']));_0x32cdc3['attributes']=_0x32cdc3['attributes']['length']?_0x32cdc3[_0xc54c('0x3e')]:_0x2d5cc6[_0xc54c('0x3a')];if(!_0x9b361f[_0xc54c('0x3b')][_0xc54c('0x5e')](_0xc54c('0x5f'))){_0x32cdc3[_0xc54c('0x25')]=qs[_0xc54c('0x25')](_0x9b361f[_0xc54c('0x3b')][_0xc54c('0x25')]);_0x32cdc3['offset']=qs['offset'](_0x9b361f[_0xc54c('0x3b')][_0xc54c('0x23')]);}_0x32cdc3[_0xc54c('0x41')]=qs[_0xc54c('0x42')](_0x9b361f[_0xc54c('0x3b')][_0xc54c('0x42')]);_0x32cdc3['where']=qs[_0xc54c('0x3c')](_[_0xc54c('0x60')](_0x9b361f[_0xc54c('0x3b')],_0x2d5cc6[_0xc54c('0x3c')]));_0x32cdc3[_0xc54c('0x43')]['SmsQueueId']=_0x14a0cd['id'];if(_0x9b361f['query'][_0xc54c('0x44')]){_0x32cdc3[_0xc54c('0x43')]=_[_0xc54c('0x45')](_0x32cdc3[_0xc54c('0x43')],{'$or':_[_0xc54c('0x36')](_0x32cdc3[_0xc54c('0x3e')],function(_0x1efc1d){var _0x3f9e88={};_0x3f9e88[_0x1efc1d]={'$like':'%'+_0x9b361f[_0xc54c('0x3b')][_0xc54c('0x44')]+'%'};return _0x3f9e88;})});}_0x32cdc3=_['merge']({},_0x32cdc3,_0x9b361f['options']);return db[_0xc54c('0x5d')][_0xc54c('0x49')](_0x32cdc3);}})[_0xc54c('0x2e')](function(_0x485dce){if(_0x485dce){return db[_0xc54c('0x61')][_0xc54c('0x62')]({'where':{'id':_[_0xc54c('0x36')](_0x485dce,'UserId'),'role':_0xc54c('0x63')},'attributes':['id',_0xc54c('0x33'),_0xc54c('0x64'),'updatedAt','createdAt']});}})[_0xc54c('0x2e')](function(_0x3969d7){if(_0x3969d7){return{'count':_0x3969d7[_0xc54c('0x26')],'rows':_[_0xc54c('0x36')](_0x3969d7[_0xc54c('0x4a')],function(_0xd7f80){return{'membername':_0xd7f80[_0xc54c('0x33')],'UserId':_0xd7f80['id'],'queue_name':_0x2553e4['name'],'SmsQueueId':_0x2553e4['id'],'interface':util[_0xc54c('0x65')](_0xc54c('0x66'),_0xc54c('0x67'),_0xd7f80['name']),'penalty':0x0,'paused':_0xd7f80['smsPause'],'createdAt':_0xd7f80[_0xc54c('0x68')],'updatedAt':_0xd7f80['updatedAt']};})};}else{return{'count':0x0,'rows':[]};}})['then'](respondWithFilteredResult(_0x180120,_0x32cdc3))['catch'](handleError(_0x180120,null));};exports[_0xc54c('0x69')]=function(_0x3f540a,_0xeeaac5,_0x2650e3){var _0x193f9e={};var _0x3ec835={};var _0x4caeda;var _0x26a054;return db[_0xc54c('0x37')][_0xc54c('0x6a')]({'where':{'id':_0x3f540a[_0xc54c('0x4d')]['id']}})[_0xc54c('0x2e')](handleEntityNotFound(_0xeeaac5,null))[_0xc54c('0x2e')](function(_0xb62624){if(_0xb62624){_0x4caeda=_0xb62624;_0x3ec835[_0xc54c('0x3a')]=_[_0xc54c('0x4e')](db[_0xc54c('0x6b')][_0xc54c('0x4f')]);_0x3ec835['query']=_[_0xc54c('0x4e')](_0x3f540a[_0xc54c('0x3b')]);_0x3ec835['filters']=_[_0xc54c('0x3d')](_0x3ec835[_0xc54c('0x3a')],_0x3ec835[_0xc54c('0x3b')]);_0x193f9e[_0xc54c('0x3e')]=_[_0xc54c('0x3d')](_0x3ec835[_0xc54c('0x3a')],qs[_0xc54c('0x3f')](_0x3f540a[_0xc54c('0x3b')][_0xc54c('0x3f')]));_0x193f9e['attributes']=_0x193f9e[_0xc54c('0x3e')][_0xc54c('0x40')]?_0x193f9e[_0xc54c('0x3e')]:_0x3ec835[_0xc54c('0x3a')];_0x193f9e[_0xc54c('0x41')]=qs[_0xc54c('0x42')](_0x3f540a[_0xc54c('0x3b')]['sort']);_0x193f9e[_0xc54c('0x43')]=qs[_0xc54c('0x3c')](_[_0xc54c('0x60')](_0x3f540a['query'],_0x3ec835[_0xc54c('0x3c')]));if(_0x3f540a[_0xc54c('0x3b')][_0xc54c('0x44')]){_0x193f9e[_0xc54c('0x43')]=_[_0xc54c('0x45')](_0x193f9e['where'],{'$or':_[_0xc54c('0x36')](_0x193f9e[_0xc54c('0x3e')],function(_0x316167){var _0x46972e={};_0x46972e[_0x316167]={'$like':'%'+_0x3f540a[_0xc54c('0x3b')][_0xc54c('0x44')]+'%'};return _0x46972e;})});}_0x193f9e=_[_0xc54c('0x45')]({},_0x193f9e,_0x3f540a[_0xc54c('0x47')]);return _0x4caeda[_0xc54c('0x69')](_0x193f9e);}})[_0xc54c('0x2e')](function(_0x4053ca){if(_0x4053ca){_0x26a054=_0x4053ca[_0xc54c('0x40')];if(!_0x3f540a[_0xc54c('0x3b')][_0xc54c('0x5e')]('nolimit')){_0x193f9e[_0xc54c('0x25')]=qs[_0xc54c('0x25')](_0x3f540a[_0xc54c('0x3b')][_0xc54c('0x25')]);_0x193f9e[_0xc54c('0x23')]=qs[_0xc54c('0x23')](_0x3f540a[_0xc54c('0x3b')][_0xc54c('0x23')]);}return _0x4caeda[_0xc54c('0x69')](_0x193f9e);}})[_0xc54c('0x2e')](function(_0x3ae811){if(_0x3ae811){return _0x3ae811?{'count':_0x26a054,'rows':_0x3ae811}:null;}})[_0xc54c('0x2e')](respondWithResult(_0xeeaac5,null))[_0xc54c('0x4b')](handleError(_0xeeaac5,null));};exports['addTeams']=function(_0x313248,_0x4c6e01,_0x4f79be){var _0x34418=_0x313248[_0xc54c('0x51')][_0xc54c('0x6c')];return db[_0xc54c('0x6b')]['findAll']({'where':{'id':_0x34418},'attributes':['id'],'include':[{'model':db[_0xc54c('0x61')],'as':_0xc54c('0x6d'),'attributes':['id',_0xc54c('0x33'),'online','voicePause',_0xc54c('0x6e')],'raw':!![]}]})[_0xc54c('0x2e')](function(_0x307512){if(_0x307512){var _0x566adb=_[_0xc54c('0x6f')](_0x307512,function(_0x8e3cd5){var _0x264c89=_0x8e3cd5[_0xc54c('0x53')]({'plain':!![]});return _0x264c89[_0xc54c('0x6d')];});return db[_0xc54c('0x37')][_0xc54c('0x57')]({'where':{'id':_0x313248[_0xc54c('0x4d')]['id']}})['then'](function(_0x4ca9c3){return db[_0xc54c('0x70')][_0xc54c('0x71')](function(_0x1beaa9){return _0x4ca9c3['addTeams'](_0x34418,{'transaction':_0x1beaa9})[_0xc54c('0x2e')](function(){return BPromise[_0xc54c('0x72')](_0x566adb,function(_0x19558d){return db[_0xc54c('0x5d')][_0xc54c('0x73')]({'where':{'UserId':_0x19558d['id'],'SmsQueueId':_0x313248['params']['id']},'transaction':_0x1beaa9});});})[_0xc54c('0x2e')](function(){_0x566adb[_0xc54c('0x74')](function(_0x526eec){socket[_0xc54c('0x75')](_0xc54c('0x76'),{'UserId':_0x526eec['id'],'SmsQueueId':_0x4ca9c3['id']});});});});});}})[_0xc54c('0x2e')](respondWithStatusCode(_0x4c6e01,null))[_0xc54c('0x4b')](handleError(_0x4c6e01,null));};exports[_0xc54c('0x77')]=function(_0x23f057,_0x4f06c2,_0x3b6e96){return db['Team'][_0xc54c('0x49')]({'where':{'id':_0x23f057['query'][_0xc54c('0x6c')]},'attributes':['id'],'include':[{'model':db[_0xc54c('0x61')],'as':_0xc54c('0x6d'),'attributes':['id'],'raw':!![]}]})['then'](handleEntityNotFound(_0x4f06c2,null))[_0xc54c('0x2e')](function(_0x51b23b){var _0x21d1a9=_[_0xc54c('0x36')](_0x51b23b,'id');var _0x57bbcf=[];var _0x201573=[];var _0x109f8f=squel[_0xc54c('0x78')]();_0x109f8f['field'](_0xc54c('0x79'))[_0xc54c('0x7a')](_0xc54c('0x7b'),'tq')[_0xc54c('0x7c')]('user_has_teams','ut',_0xc54c('0x7d'))['where'](_0xc54c('0x7e'),_0x23f057[_0xc54c('0x4d')]['id']);for(var _0x586946=0x0;_0x586946<_0x51b23b[_0xc54c('0x40')];_0x586946+=0x1){let _0xf85691=_0x51b23b[_0x586946];for(var _0x78974e=0x0;_0x78974e<_0xf85691[_0xc54c('0x6d')]['length'];_0x78974e+=0x1){let _0x14e8ef=_0xf85691[_0xc54c('0x6d')][_0x78974e];var _0x2afcc8=_0x109f8f[_0xc54c('0x7f')]();_0x2afcc8[_0xc54c('0x43')]('ut.UserId\x20=\x20?',_0x14e8ef['id']);_0x201573[_0xc54c('0x80')](db[_0xc54c('0x70')][_0xc54c('0x3b')](_0x2afcc8[_0xc54c('0x81')](),{'type':db['sequelize'][_0xc54c('0x82')][_0xc54c('0x83')]})['then'](function(_0xef1bcb){if(_0xef1bcb['length']===0x1){return _0x14e8ef['id'];}else{var _0x5b6488=_[_0xc54c('0x84')](_[_0xc54c('0x36')](_0xef1bcb,_0xc54c('0x85')),function(_0x342b97){return _[_0xc54c('0x86')](_0x21d1a9,_0x342b97);});if(_0x5b6488){return _0x14e8ef['id'];}}}));}}return BPromise[_0xc54c('0x87')](_0x201573)[_0xc54c('0x2e')](function(_0x43d50f){_0x57bbcf=_(_0x57bbcf)[_0xc54c('0x88')](_0x43d50f)[_0xc54c('0x89')]()[_0xc54c('0x8a')]();return db[_0xc54c('0x37')]['find']({'where':{'id':_0x23f057[_0xc54c('0x4d')]['id']}})[_0xc54c('0x2e')](function(_0xb1c0a7){return db['sequelize'][_0xc54c('0x71')](function(_0x5093af){return _0xb1c0a7[_0xc54c('0x77')](_0x23f057[_0xc54c('0x3b')]['ids'],{'transaction':_0x5093af})['then'](function(){if(!_[_0xc54c('0x8b')](_0x57bbcf)){return _0xb1c0a7[_0xc54c('0x8c')](_0x57bbcf,{'transaction':_0x5093af});}})[_0xc54c('0x2e')](function(){_0x57bbcf[_0xc54c('0x74')](function(_0x29c73b){socket['emit'](_0xc54c('0x8d'),{'UserId':_0x29c73b,'SmsQueueId':_0xb1c0a7['id']});});});});});});})[_0xc54c('0x2e')](respondWithStatusCode(_0x4f06c2,null))[_0xc54c('0x4b')](handleError(_0x4f06c2,null));};exports['addAgents']=function(_0x50c6aa,_0x5b1007,_0xd14057){return db['SmsQueue']['find']({'where':{'id':_0x50c6aa[_0xc54c('0x4d')]['id']}})[_0xc54c('0x2e')](handleEntityNotFound(_0x5b1007,null))[_0xc54c('0x2e')](function(_0x3834b5){if(_0x3834b5){return _0x3834b5[_0xc54c('0x8e')](_0x50c6aa[_0xc54c('0x51')]['ids'],_['omit'](_0x50c6aa['body'],[_0xc54c('0x6c'),'id'])||{})[_0xc54c('0x8f')](function(_0x82e4d4){for(var _0xb2ab89=0x0;_0xb2ab89<_0x50c6aa[_0xc54c('0x51')][_0xc54c('0x6c')]['length'];_0xb2ab89+=0x1){socket[_0xc54c('0x75')](_0xc54c('0x76'),{'UserId':Number(_0x50c6aa[_0xc54c('0x51')]['ids'][_0xb2ab89]),'SmsQueueId':Number(_0x50c6aa[_0xc54c('0x4d')]['id'])});}return _0x82e4d4;});}})[_0xc54c('0x2e')](respondWithResult(_0x5b1007,null))[_0xc54c('0x4b')](handleError(_0x5b1007,null));};exports[_0xc54c('0x8c')]=function(_0x1d152a,_0x2518c9,_0x4c2176){return db[_0xc54c('0x37')]['find']({'where':{'id':_0x1d152a[_0xc54c('0x4d')]['id']}})[_0xc54c('0x2e')](handleEntityNotFound(_0x2518c9,null))[_0xc54c('0x2e')](function(_0x2002ee){if(_0x2002ee){return _0x2002ee['removeAgents'](_0x1d152a[_0xc54c('0x3b')][_0xc54c('0x6c')])[_0xc54c('0x2e')](function(){if(_[_0xc54c('0x90')](_0x1d152a[_0xc54c('0x3b')][_0xc54c('0x6c')])){for(var _0x240506=0x0;_0x240506<_0x1d152a[_0xc54c('0x3b')]['ids']['length'];_0x240506+=0x1){socket[_0xc54c('0x75')](_0xc54c('0x8d'),{'UserId':Number(_0x1d152a['query'][_0xc54c('0x6c')][_0x240506]),'SmsQueueId':Number(_0x1d152a['params']['id'])});}}else{socket[_0xc54c('0x75')]('userSmsQueue:remove',{'UserId':Number(_0x1d152a[_0xc54c('0x3b')][_0xc54c('0x6c')]),'SmsQueueId':Number(_0x1d152a[_0xc54c('0x4d')]['id'])});}});}})[_0xc54c('0x2e')](respondWithStatusCode(_0x2518c9,null))[_0xc54c('0x4b')](handleError(_0x2518c9,null));};exports[_0xc54c('0x91')]=function(_0x19fe50,_0x40a17c,_0x99d314){var _0x294390={};var _0x170a1a={};var _0x4c6164;var _0x3e582f;return db[_0xc54c('0x37')][_0xc54c('0x6a')]({'where':{'id':_0x19fe50[_0xc54c('0x4d')]['id']}})[_0xc54c('0x2e')](handleEntityNotFound(_0x40a17c,null))[_0xc54c('0x2e')](function(_0x3af2d2){if(_0x3af2d2){_0x4c6164=_0x3af2d2;_0x170a1a['model']=_['keys'](db[_0xc54c('0x61')][_0xc54c('0x4f')]);_0x170a1a[_0xc54c('0x3b')]=_[_0xc54c('0x4e')](_0x19fe50[_0xc54c('0x3b')]);_0x170a1a[_0xc54c('0x3c')]=_[_0xc54c('0x3d')](_0x170a1a[_0xc54c('0x3a')],_0x170a1a[_0xc54c('0x3b')]);_0x294390[_0xc54c('0x3e')]=_[_0xc54c('0x3d')](_0x170a1a[_0xc54c('0x3a')],qs[_0xc54c('0x3f')](_0x19fe50[_0xc54c('0x3b')][_0xc54c('0x3f')]));_0x294390[_0xc54c('0x3e')]=_0x294390[_0xc54c('0x3e')][_0xc54c('0x40')]?_0x294390[_0xc54c('0x3e')]:_0x170a1a[_0xc54c('0x3a')];_0x294390['order']=qs[_0xc54c('0x42')](_0x19fe50['query']['sort']);_0x294390[_0xc54c('0x43')]=qs[_0xc54c('0x3c')](_[_0xc54c('0x60')](_0x19fe50[_0xc54c('0x3b')],_0x170a1a[_0xc54c('0x3c')]));if(_0x19fe50[_0xc54c('0x3b')]['filter']){_0x294390[_0xc54c('0x43')]=_['merge'](_0x294390[_0xc54c('0x43')],{'$or':_[_0xc54c('0x36')](_0x294390[_0xc54c('0x3e')],function(_0x52eef3){var _0x3e45f3={};_0x3e45f3[_0x52eef3]={'$like':'%'+_0x19fe50[_0xc54c('0x3b')][_0xc54c('0x44')]+'%'};return _0x3e45f3;})});}_0x294390=_['merge']({},_0x294390,_0x19fe50[_0xc54c('0x47')]);return _0x4c6164[_0xc54c('0x91')](_0x294390);}})[_0xc54c('0x2e')](function(_0x4894fd){if(_0x4894fd){_0x3e582f=_0x4894fd[_0xc54c('0x40')];if(!_0x19fe50[_0xc54c('0x3b')]['hasOwnProperty'](_0xc54c('0x5f'))){_0x294390[_0xc54c('0x25')]=qs[_0xc54c('0x25')](_0x19fe50[_0xc54c('0x3b')]['limit']);_0x294390['offset']=qs[_0xc54c('0x23')](_0x19fe50[_0xc54c('0x3b')][_0xc54c('0x23')]);}return _0x4c6164[_0xc54c('0x91')](_0x294390);}})[_0xc54c('0x2e')](function(_0xd332dd){if(_0xd332dd){return _0xd332dd?{'count':_0x3e582f,'rows':_0xd332dd}:null;}})[_0xc54c('0x2e')](respondWithResult(_0x40a17c,null))['catch'](handleError(_0x40a17c,null));};