Built motion from commit (unavailable).|2.5.6
[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 _0x72b1=['UserProfileResource','end','name','send','index','map','SmsQueue','rawAttributes','fieldName','type','key','model','query','keys','filters','attributes','nolimit','order','sort','where','pick','merge','VIRTUAL','filter','includeAll','findAll','rows','params','intersection','fields','find','catch','create','body','user','role','autoAssociation','error','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','describe','getMembers','findOne','UserSmsQueue','length','hasOwnProperty','options','User','findAndCountAll','UserId','smsPause','createdAt','%s/%s','SIP','updatedAt','Team','getTeams','addTeams','online','voicePause','interface','flatMap','sequelize','findOrCreate','userSmsQueue:save','removeTeams','ids','select','field','tq.TeamId','team_has_sms_queues','join','user_has_teams','ut.TeamId\x20=\x20tq.TeamId','Agents','ut.UserId\x20=\x20?','push','QueryTypes','SELECT','every','TeamId','includes','all','compact','value','transaction','isEmpty','forEach','emit','userSmsQueue:remove','addAgents','omit','spread','removeAgents','getAgents','html-pdf','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','path','sox','to-csv','ejs','squel','jsforce','querystring','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','redis','defaults','localhost','./smsQueue.socket','sendStatus','status','count','offset','limit','set','Content-Range','save','update','then','destroy','get','SmsQueues'];(function(_0x515a67,_0x54ceb8){var _0x326ae0=function(_0x5ddee1){while(--_0x5ddee1){_0x515a67['push'](_0x515a67['shift']());}};_0x326ae0(++_0x54ceb8);}(_0x72b1,0x16e));var _0x172b=function(_0x5482f9,_0x3f59d4){_0x5482f9=_0x5482f9-0x0;var _0x29626f=_0x72b1[_0x5482f9];return _0x29626f;};'use strict';var pdf=require(_0x172b('0x0'));var emlformat=require('eml-format');var rimraf=require(_0x172b('0x1'));var zipdir=require(_0x172b('0x2'));var jsonpatch=require(_0x172b('0x3'));var rp=require(_0x172b('0x4'));var moment=require(_0x172b('0x5'));var BPromise=require(_0x172b('0x6'));var Mustache=require(_0x172b('0x7'));var util=require('util');var path=require(_0x172b('0x8'));var sox=require(_0x172b('0x9'));var csv=require(_0x172b('0xa'));var ejs=require(_0x172b('0xb'));var fs=require('fs');var _=require('lodash');var squel=require(_0x172b('0xc'));var crypto=require('crypto');var jsforce=require(_0x172b('0xd'));var deskjs=require('desk.js');var toCsv=require(_0x172b('0xa'));var querystring=require(_0x172b('0xe'));var Papa=require(_0x172b('0xf'));var Redis=require(_0x172b('0x10'));var authService=require('../../components/auth/service');var qs=require(_0x172b('0x11'));var as=require(_0x172b('0x12'));var hardwareService=require(_0x172b('0x13'));var logger=require(_0x172b('0x14'))(_0x172b('0x15'));var utils=require(_0x172b('0x16'));var config=require(_0x172b('0x17'));var licenseUtil=require('../../config/license/util');var db=require(_0x172b('0x18'))['db'];config[_0x172b('0x19')]=_[_0x172b('0x1a')](config['redis'],{'host':_0x172b('0x1b'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x172b('0x19')]));require(_0x172b('0x1c'))['register'](socket);function respondWithStatusCode(_0x1b7247,_0x3452f2){_0x3452f2=_0x3452f2||0xcc;return function(_0x2790ed){if(_0x2790ed){return _0x1b7247[_0x172b('0x1d')](_0x3452f2);}return _0x1b7247['status'](_0x3452f2)['end']();};}function respondWithResult(_0x3625bb,_0x34be39){_0x34be39=_0x34be39||0xc8;return function(_0x36af74){if(_0x36af74){return _0x3625bb[_0x172b('0x1e')](_0x34be39)['json'](_0x36af74);}};}function respondWithFilteredResult(_0x4f369b,_0x10c80b){return function(_0x3b2701){if(_0x3b2701){var _0x18c22a=_0x3b2701[_0x172b('0x1f')],_0xba7825=_0x10c80b[_0x172b('0x20')],_0x1f20ac=_0x10c80b[_0x172b('0x20')]+_0x10c80b[_0x172b('0x21')],_0x4e7cb9;if(_0x1f20ac>=_0x18c22a){_0x1f20ac=_0x18c22a;_0x4e7cb9=0xc8;}else{_0x4e7cb9=0xce;}_0x4f369b[_0x172b('0x1e')](_0x4e7cb9);return _0x4f369b[_0x172b('0x22')](_0x172b('0x23'),_0xba7825+'-'+_0x1f20ac+'/'+_0x18c22a)['json'](_0x3b2701);}return null;};}function patchUpdates(_0x4edaad){return function(_0x562db9){try{jsonpatch['apply'](_0x562db9,_0x4edaad,!![]);}catch(_0x13cfc7){return BPromise['reject'](_0x13cfc7);}return _0x562db9[_0x172b('0x24')]();};}function saveUpdates(_0x25ee62,_0x19ca8e){return function(_0x256fb5){if(_0x256fb5){return _0x256fb5[_0x172b('0x25')](_0x25ee62)[_0x172b('0x26')](function(_0x507b99){return _0x507b99;});}return null;};}function removeEntity(_0x1cefd1,_0x275414){return function(_0x5ea2b2){if(_0x5ea2b2){return _0x5ea2b2[_0x172b('0x27')]()[_0x172b('0x26')](function(){var _0x3df490=_0x5ea2b2[_0x172b('0x28')]({'plain':!![]});var _0x356c83=_0x172b('0x29');return db[_0x172b('0x2a')]['destroy']({'where':{'type':_0x356c83,'resourceId':_0x3df490['id']}})[_0x172b('0x26')](function(){return _0x5ea2b2;});})[_0x172b('0x26')](function(){_0x1cefd1['status'](0xcc)[_0x172b('0x2b')]();});}};}function handleEntityNotFound(_0x320253,_0x3909b1){return function(_0xa58782){if(!_0xa58782){_0x320253[_0x172b('0x1d')](0x194);}return _0xa58782;};}function handleError(_0x4bea8e,_0x9624f5){_0x9624f5=_0x9624f5||0x1f4;return function(_0x37acc5){logger['error'](_0x37acc5['stack']);if(_0x37acc5[_0x172b('0x2c')]){delete _0x37acc5[_0x172b('0x2c')];}_0x4bea8e[_0x172b('0x1e')](_0x9624f5)[_0x172b('0x2d')](_0x37acc5);};}exports[_0x172b('0x2e')]=function(_0x1934ea,_0x3345bd){var _0xd4a668={},_0x34b4ec={},_0x239161={'count':0x0,'rows':[]};var _0x5a44d4=_[_0x172b('0x2f')](db[_0x172b('0x30')][_0x172b('0x31')],function(_0x32e35b){return{'name':_0x32e35b[_0x172b('0x32')],'type':_0x32e35b[_0x172b('0x33')][_0x172b('0x34')]};});_0x34b4ec[_0x172b('0x35')]=_[_0x172b('0x2f')](_0x5a44d4,_0x172b('0x2c'));_0x34b4ec[_0x172b('0x36')]=_[_0x172b('0x37')](_0x1934ea[_0x172b('0x36')]);_0x34b4ec[_0x172b('0x38')]=_['intersection'](_0x34b4ec[_0x172b('0x35')],_0x34b4ec[_0x172b('0x36')]);_0xd4a668[_0x172b('0x39')]=_['intersection'](_0x34b4ec[_0x172b('0x35')],qs['fields'](_0x1934ea['query']['fields']));_0xd4a668[_0x172b('0x39')]=_0xd4a668['attributes']['length']?_0xd4a668[_0x172b('0x39')]:_0x34b4ec[_0x172b('0x35')];if(!_0x1934ea[_0x172b('0x36')]['hasOwnProperty'](_0x172b('0x3a'))){_0xd4a668[_0x172b('0x21')]=qs[_0x172b('0x21')](_0x1934ea[_0x172b('0x36')][_0x172b('0x21')]);_0xd4a668[_0x172b('0x20')]=qs[_0x172b('0x20')](_0x1934ea[_0x172b('0x36')][_0x172b('0x20')]);}_0xd4a668[_0x172b('0x3b')]=qs[_0x172b('0x3c')](_0x1934ea[_0x172b('0x36')][_0x172b('0x3c')]);_0xd4a668[_0x172b('0x3d')]=qs[_0x172b('0x38')](_[_0x172b('0x3e')](_0x1934ea[_0x172b('0x36')],_0x34b4ec[_0x172b('0x38')]),_0x5a44d4);if(_0x1934ea[_0x172b('0x36')]['filter']){_0xd4a668['where']=_[_0x172b('0x3f')](_0xd4a668['where'],{'$or':_['map'](_0x5a44d4,function(_0x5321e0){if(_0x5321e0[_0x172b('0x33')]!==_0x172b('0x40')){var _0x2e7097={};_0x2e7097[_0x5321e0['name']]={'$like':'%'+_0x1934ea[_0x172b('0x36')][_0x172b('0x41')]+'%'};return _0x2e7097;}})});}_0xd4a668=_[_0x172b('0x3f')]({},_0xd4a668,_0x1934ea['options']);var _0x3cff36={'where':_0xd4a668['where']};return db[_0x172b('0x30')][_0x172b('0x1f')](_0x3cff36)[_0x172b('0x26')](function(_0xc45ecd){_0x239161[_0x172b('0x1f')]=_0xc45ecd;if(_0x1934ea[_0x172b('0x36')][_0x172b('0x42')]){_0xd4a668['include']=[{'all':!![]}];}return db[_0x172b('0x30')][_0x172b('0x43')](_0xd4a668);})[_0x172b('0x26')](function(_0x13ccb3){_0x239161[_0x172b('0x44')]=_0x13ccb3;return _0x239161;})[_0x172b('0x26')](respondWithFilteredResult(_0x3345bd,_0xd4a668))['catch'](handleError(_0x3345bd,null));};exports['show']=function(_0x496065,_0x57f656){var _0x5c2eb2={'raw':!![],'where':{'id':_0x496065[_0x172b('0x45')]['id']}},_0x4a80f5={};_0x4a80f5[_0x172b('0x35')]=_[_0x172b('0x37')](db[_0x172b('0x30')]['rawAttributes']);_0x4a80f5[_0x172b('0x36')]=_[_0x172b('0x37')](_0x496065[_0x172b('0x36')]);_0x4a80f5[_0x172b('0x38')]=_[_0x172b('0x46')](_0x4a80f5[_0x172b('0x35')],_0x4a80f5[_0x172b('0x36')]);_0x5c2eb2[_0x172b('0x39')]=_[_0x172b('0x46')](_0x4a80f5[_0x172b('0x35')],qs[_0x172b('0x47')](_0x496065[_0x172b('0x36')]['fields']));_0x5c2eb2[_0x172b('0x39')]=_0x5c2eb2[_0x172b('0x39')]['length']?_0x5c2eb2['attributes']:_0x4a80f5[_0x172b('0x35')];if(_0x496065[_0x172b('0x36')][_0x172b('0x42')]){_0x5c2eb2['include']=[{'all':!![]}];}_0x5c2eb2=_[_0x172b('0x3f')]({},_0x5c2eb2,_0x496065['options']);return db['SmsQueue'][_0x172b('0x48')](_0x5c2eb2)[_0x172b('0x26')](handleEntityNotFound(_0x57f656,null))[_0x172b('0x26')](respondWithResult(_0x57f656,null))[_0x172b('0x49')](handleError(_0x57f656,null));};exports[_0x172b('0x4a')]=function(_0x230ba3,_0x3131eb){return db[_0x172b('0x30')][_0x172b('0x4a')](_0x230ba3[_0x172b('0x4b')],{})['then'](function(_0x4c7470){var _0x382075=_0x230ba3[_0x172b('0x4c')]['get']({'plain':!![]});if(!_0x382075)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x382075[_0x172b('0x4d')]===_0x172b('0x4c')){var _0x10543d=_0x4c7470[_0x172b('0x28')]({'plain':!![]});var _0x3dedd2=_0x172b('0x29');return db['UserProfileSection'][_0x172b('0x48')]({'where':{'name':_0x3dedd2,'userProfileId':_0x382075['userProfileId']},'raw':!![]})['then'](function(_0x221cd7){if(_0x221cd7&&_0x221cd7[_0x172b('0x4e')]===0x0){return db[_0x172b('0x2a')]['create']({'name':_0x10543d[_0x172b('0x2c')],'resourceId':_0x10543d['id'],'type':_0x221cd7[_0x172b('0x2c')],'sectionId':_0x221cd7['id']},{})[_0x172b('0x26')](function(){return _0x4c7470;});}else{return _0x4c7470;}})['catch'](function(_0x553a4d){logger[_0x172b('0x4f')](_0x172b('0x50'),_0x553a4d);throw _0x553a4d;});}return _0x4c7470;})[_0x172b('0x26')](respondWithResult(_0x3131eb,0xc9))[_0x172b('0x49')](handleError(_0x3131eb,null));};exports[_0x172b('0x25')]=function(_0x2f7684,_0x39ff88){if(_0x2f7684[_0x172b('0x4b')]['id']){delete _0x2f7684['body']['id'];}return db[_0x172b('0x30')]['find']({'where':{'id':_0x2f7684['params']['id']}})[_0x172b('0x26')](handleEntityNotFound(_0x39ff88,null))['then'](saveUpdates(_0x2f7684[_0x172b('0x4b')],null))[_0x172b('0x26')](respondWithResult(_0x39ff88,null))[_0x172b('0x49')](handleError(_0x39ff88,null));};exports['destroy']=function(_0x2cc8c7,_0x51b1a1){return db[_0x172b('0x30')][_0x172b('0x48')]({'where':{'id':_0x2cc8c7['params']['id']}})[_0x172b('0x26')](handleEntityNotFound(_0x51b1a1,null))['then'](removeEntity(_0x51b1a1,null))[_0x172b('0x49')](handleError(_0x51b1a1,null));};exports[_0x172b('0x51')]=function(_0x3f5940,_0x3914aa){return db[_0x172b('0x30')]['describe']()[_0x172b('0x26')](respondWithResult(_0x3914aa,null))[_0x172b('0x49')](handleError(_0x3914aa,null));};exports[_0x172b('0x52')]=function(_0x23a430,_0x535c3f,_0x24ccdd){var _0x49535f={'raw':!![],'where':{}},_0x3c811b={},_0xc9b7e8;return db[_0x172b('0x30')][_0x172b('0x53')]({'where':{'id':_0x23a430[_0x172b('0x45')]['id']}})[_0x172b('0x26')](handleEntityNotFound(_0x535c3f,null))['then'](function(_0x423e93){if(_0x423e93){_0xc9b7e8=_0x423e93[_0x172b('0x28')]({'plain':!![]});_0x3c811b[_0x172b('0x35')]=_['keys'](db[_0x172b('0x54')]['rawAttributes']);_0x3c811b['query']=_[_0x172b('0x37')](_0x23a430[_0x172b('0x36')]);_0x3c811b[_0x172b('0x38')]=_[_0x172b('0x46')](_0x3c811b[_0x172b('0x35')],_0x3c811b[_0x172b('0x36')]);_0x49535f[_0x172b('0x39')]=_[_0x172b('0x46')](_0x3c811b[_0x172b('0x35')],qs[_0x172b('0x47')](_0x23a430['query'][_0x172b('0x47')]));_0x49535f[_0x172b('0x39')]=_0x49535f[_0x172b('0x39')][_0x172b('0x55')]?_0x49535f[_0x172b('0x39')]:_0x3c811b[_0x172b('0x35')];if(!_0x23a430[_0x172b('0x36')][_0x172b('0x56')](_0x172b('0x3a'))){_0x49535f[_0x172b('0x21')]=qs[_0x172b('0x21')](_0x23a430['query'][_0x172b('0x21')]);_0x49535f[_0x172b('0x20')]=qs[_0x172b('0x20')](_0x23a430[_0x172b('0x36')][_0x172b('0x20')]);}_0x49535f[_0x172b('0x3b')]=qs['sort'](_0x23a430[_0x172b('0x36')][_0x172b('0x3c')]);_0x49535f[_0x172b('0x3d')]=qs[_0x172b('0x38')](_[_0x172b('0x3e')](_0x23a430[_0x172b('0x36')],_0x3c811b[_0x172b('0x38')]));_0x49535f[_0x172b('0x3d')]['SmsQueueId']=_0x423e93['id'];if(_0x23a430[_0x172b('0x36')][_0x172b('0x41')]){_0x49535f[_0x172b('0x3d')]=_[_0x172b('0x3f')](_0x49535f[_0x172b('0x3d')],{'$or':_['map'](_0x49535f[_0x172b('0x39')],function(_0x3fe646){var _0x493d1d={};_0x493d1d[_0x3fe646]={'$like':'%'+_0x23a430[_0x172b('0x36')][_0x172b('0x41')]+'%'};return _0x493d1d;})});}_0x49535f=_['merge']({},_0x49535f,_0x23a430[_0x172b('0x57')]);return db[_0x172b('0x54')][_0x172b('0x43')](_0x49535f);}})[_0x172b('0x26')](function(_0x52b76e){if(_0x52b76e){return db[_0x172b('0x58')][_0x172b('0x59')]({'where':{'id':_['map'](_0x52b76e,_0x172b('0x5a')),'role':'agent'},'attributes':['id',_0x172b('0x2c'),_0x172b('0x5b'),'updatedAt',_0x172b('0x5c')]});}})[_0x172b('0x26')](function(_0xcb5849){if(_0xcb5849){return{'count':_0xcb5849[_0x172b('0x1f')],'rows':_[_0x172b('0x2f')](_0xcb5849['rows'],function(_0x9f9f46){return{'membername':_0x9f9f46[_0x172b('0x2c')],'UserId':_0x9f9f46['id'],'queue_name':_0xc9b7e8['name'],'SmsQueueId':_0xc9b7e8['id'],'interface':util['format'](_0x172b('0x5d'),_0x172b('0x5e'),_0x9f9f46['name']),'penalty':0x0,'paused':_0x9f9f46[_0x172b('0x5b')],'createdAt':_0x9f9f46[_0x172b('0x5c')],'updatedAt':_0x9f9f46[_0x172b('0x5f')]};})};}else{return{'count':0x0,'rows':[]};}})[_0x172b('0x26')](respondWithFilteredResult(_0x535c3f,_0x49535f))[_0x172b('0x49')](handleError(_0x535c3f,null));};exports['getTeams']=function(_0x5ceeee,_0x5a84eb,_0x4885f9){var _0x55203e={};var _0x22e50a={};var _0x3fae32;var _0x5d278e;return db[_0x172b('0x30')][_0x172b('0x53')]({'where':{'id':_0x5ceeee[_0x172b('0x45')]['id']}})[_0x172b('0x26')](handleEntityNotFound(_0x5a84eb,null))[_0x172b('0x26')](function(_0x21e7cb){if(_0x21e7cb){_0x3fae32=_0x21e7cb;_0x22e50a['model']=_[_0x172b('0x37')](db[_0x172b('0x60')][_0x172b('0x31')]);_0x22e50a[_0x172b('0x36')]=_[_0x172b('0x37')](_0x5ceeee[_0x172b('0x36')]);_0x22e50a['filters']=_[_0x172b('0x46')](_0x22e50a[_0x172b('0x35')],_0x22e50a[_0x172b('0x36')]);_0x55203e[_0x172b('0x39')]=_['intersection'](_0x22e50a[_0x172b('0x35')],qs['fields'](_0x5ceeee[_0x172b('0x36')][_0x172b('0x47')]));_0x55203e[_0x172b('0x39')]=_0x55203e[_0x172b('0x39')][_0x172b('0x55')]?_0x55203e[_0x172b('0x39')]:_0x22e50a[_0x172b('0x35')];_0x55203e[_0x172b('0x3b')]=qs[_0x172b('0x3c')](_0x5ceeee['query'][_0x172b('0x3c')]);_0x55203e['where']=qs[_0x172b('0x38')](_[_0x172b('0x3e')](_0x5ceeee[_0x172b('0x36')],_0x22e50a[_0x172b('0x38')]));if(_0x5ceeee[_0x172b('0x36')]['filter']){_0x55203e[_0x172b('0x3d')]=_[_0x172b('0x3f')](_0x55203e['where'],{'$or':_[_0x172b('0x2f')](_0x55203e[_0x172b('0x39')],function(_0x2f7855){var _0x4bb59f={};_0x4bb59f[_0x2f7855]={'$like':'%'+_0x5ceeee[_0x172b('0x36')][_0x172b('0x41')]+'%'};return _0x4bb59f;})});}_0x55203e=_[_0x172b('0x3f')]({},_0x55203e,_0x5ceeee[_0x172b('0x57')]);return _0x3fae32[_0x172b('0x61')](_0x55203e);}})[_0x172b('0x26')](function(_0x2cc268){if(_0x2cc268){_0x5d278e=_0x2cc268['length'];if(!_0x5ceeee[_0x172b('0x36')][_0x172b('0x56')](_0x172b('0x3a'))){_0x55203e[_0x172b('0x21')]=qs[_0x172b('0x21')](_0x5ceeee[_0x172b('0x36')][_0x172b('0x21')]);_0x55203e[_0x172b('0x20')]=qs['offset'](_0x5ceeee[_0x172b('0x36')][_0x172b('0x20')]);}return _0x3fae32[_0x172b('0x61')](_0x55203e);}})[_0x172b('0x26')](function(_0x2f0d8d){if(_0x2f0d8d){return _0x2f0d8d?{'count':_0x5d278e,'rows':_0x2f0d8d}:null;}})[_0x172b('0x26')](respondWithResult(_0x5a84eb,null))[_0x172b('0x49')](handleError(_0x5a84eb,null));};exports[_0x172b('0x62')]=function(_0x6c7c23,_0x16b0ae,_0x14bf75){var _0x5650d8=_0x6c7c23['body']['ids'];return db[_0x172b('0x60')][_0x172b('0x43')]({'where':{'id':_0x5650d8},'attributes':['id'],'include':[{'model':db['User'],'as':'Agents','attributes':['id','name',_0x172b('0x63'),_0x172b('0x64'),_0x172b('0x65')],'raw':!![]}]})['then'](function(_0x887047){if(_0x887047){var _0x400871=_[_0x172b('0x66')](_0x887047,function(_0x3ea902){var _0x3906fe=_0x3ea902['get']({'plain':!![]});return _0x3906fe['Agents'];});return db[_0x172b('0x30')]['find']({'where':{'id':_0x6c7c23[_0x172b('0x45')]['id']}})[_0x172b('0x26')](function(_0x257ad5){return db[_0x172b('0x67')]['transaction'](function(_0x4c3b26){return _0x257ad5[_0x172b('0x62')](_0x5650d8,{'transaction':_0x4c3b26})['then'](function(){return BPromise['each'](_0x400871,function(_0x504fa6){return db[_0x172b('0x54')][_0x172b('0x68')]({'where':{'UserId':_0x504fa6['id'],'SmsQueueId':_0x6c7c23[_0x172b('0x45')]['id']},'transaction':_0x4c3b26});});})[_0x172b('0x26')](function(){_0x400871['forEach'](function(_0xbcbfb5){socket['emit'](_0x172b('0x69'),{'UserId':_0xbcbfb5['id'],'SmsQueueId':_0x257ad5['id']});});});});});}})[_0x172b('0x26')](respondWithStatusCode(_0x16b0ae,null))['catch'](handleError(_0x16b0ae,null));};exports[_0x172b('0x6a')]=function(_0x3be286,_0x1a1b58,_0x4bf586){return db[_0x172b('0x60')]['findAll']({'where':{'id':_0x3be286[_0x172b('0x36')][_0x172b('0x6b')]},'attributes':['id'],'include':[{'model':db['User'],'as':'Agents','attributes':['id'],'raw':!![]}]})['then'](handleEntityNotFound(_0x1a1b58,null))[_0x172b('0x26')](function(_0x2d2af4){var _0x89a77=_[_0x172b('0x2f')](_0x2d2af4,'id');var _0x1459df=[];var _0x522a12=[];var _0x2de3d6=squel[_0x172b('0x6c')]();_0x2de3d6[_0x172b('0x6d')](_0x172b('0x6e'))['from'](_0x172b('0x6f'),'tq')[_0x172b('0x70')](_0x172b('0x71'),'ut',_0x172b('0x72'))[_0x172b('0x3d')]('SmsQueueId\x20=\x20?',_0x3be286[_0x172b('0x45')]['id']);for(var _0x147422=0x0;_0x147422<_0x2d2af4[_0x172b('0x55')];_0x147422+=0x1){let _0xac6e75=_0x2d2af4[_0x147422];for(var _0x41141b=0x0;_0x41141b<_0xac6e75[_0x172b('0x73')][_0x172b('0x55')];_0x41141b+=0x1){let _0x5d2fa2=_0xac6e75[_0x172b('0x73')][_0x41141b];var _0x2dc261=_0x2de3d6['clone']();_0x2dc261[_0x172b('0x3d')](_0x172b('0x74'),_0x5d2fa2['id']);_0x522a12[_0x172b('0x75')](db[_0x172b('0x67')][_0x172b('0x36')](_0x2dc261['toString'](),{'type':db[_0x172b('0x67')][_0x172b('0x76')][_0x172b('0x77')]})[_0x172b('0x26')](function(_0x303cf7){if(_0x303cf7['length']===0x1){return _0x5d2fa2['id'];}else{var _0x329ce2=_[_0x172b('0x78')](_[_0x172b('0x2f')](_0x303cf7,_0x172b('0x79')),function(_0x4ebda3){return _[_0x172b('0x7a')](_0x89a77,_0x4ebda3);});if(_0x329ce2){return _0x5d2fa2['id'];}}}));}}return BPromise[_0x172b('0x7b')](_0x522a12)['then'](function(_0x3b0188){_0x1459df=_(_0x1459df)['union'](_0x3b0188)[_0x172b('0x7c')]()[_0x172b('0x7d')]();return db[_0x172b('0x30')][_0x172b('0x48')]({'where':{'id':_0x3be286['params']['id']}})[_0x172b('0x26')](function(_0x56c1c3){return db[_0x172b('0x67')][_0x172b('0x7e')](function(_0x4ed325){return _0x56c1c3[_0x172b('0x6a')](_0x3be286[_0x172b('0x36')]['ids'],{'transaction':_0x4ed325})[_0x172b('0x26')](function(){if(!_[_0x172b('0x7f')](_0x1459df)){return _0x56c1c3['removeAgents'](_0x1459df,{'transaction':_0x4ed325});}})[_0x172b('0x26')](function(){_0x1459df[_0x172b('0x80')](function(_0x2151f5){socket[_0x172b('0x81')](_0x172b('0x82'),{'UserId':_0x2151f5,'SmsQueueId':_0x56c1c3['id']});});});});});});})[_0x172b('0x26')](respondWithStatusCode(_0x1a1b58,null))[_0x172b('0x49')](handleError(_0x1a1b58,null));};exports[_0x172b('0x83')]=function(_0x15a06e,_0x5d6103,_0x39a707){return db[_0x172b('0x30')][_0x172b('0x48')]({'where':{'id':_0x15a06e[_0x172b('0x45')]['id']}})[_0x172b('0x26')](handleEntityNotFound(_0x5d6103,null))['then'](function(_0x224d34){if(_0x224d34){return _0x224d34[_0x172b('0x83')](_0x15a06e[_0x172b('0x4b')][_0x172b('0x6b')],_[_0x172b('0x84')](_0x15a06e['body'],[_0x172b('0x6b'),'id'])||{})[_0x172b('0x85')](function(_0x167286){for(var _0x4960af=0x0;_0x4960af<_0x15a06e[_0x172b('0x4b')][_0x172b('0x6b')][_0x172b('0x55')];_0x4960af+=0x1){socket['emit'](_0x172b('0x69'),{'UserId':_0x15a06e[_0x172b('0x4b')][_0x172b('0x6b')][_0x4960af],'SmsQueueId':_0x15a06e[_0x172b('0x45')]['id']});}return _0x167286;});}})[_0x172b('0x26')](respondWithResult(_0x5d6103,null))['catch'](handleError(_0x5d6103,null));};exports[_0x172b('0x86')]=function(_0x44fa8e,_0x251df0,_0x1520c5){return db[_0x172b('0x30')][_0x172b('0x48')]({'where':{'id':_0x44fa8e[_0x172b('0x45')]['id']}})['then'](handleEntityNotFound(_0x251df0,null))[_0x172b('0x26')](function(_0x250a78){if(_0x250a78){return _0x250a78[_0x172b('0x86')](_0x44fa8e['query']['ids'])[_0x172b('0x26')](function(){if(_['isArray'](_0x44fa8e[_0x172b('0x36')]['ids'])){for(var _0x2aa4f0=0x0;_0x2aa4f0<_0x44fa8e[_0x172b('0x36')][_0x172b('0x6b')]['length'];_0x2aa4f0+=0x1){socket[_0x172b('0x81')](_0x172b('0x82'),{'UserId':Number(_0x44fa8e[_0x172b('0x36')][_0x172b('0x6b')][_0x2aa4f0]),'SmsQueueId':Number(_0x44fa8e[_0x172b('0x45')]['id'])});}}else{socket[_0x172b('0x81')]('userSmsQueue:remove',{'UserId':Number(_0x44fa8e[_0x172b('0x36')][_0x172b('0x6b')]),'SmsQueueId':Number(_0x44fa8e[_0x172b('0x45')]['id'])});}});}})[_0x172b('0x26')](respondWithStatusCode(_0x251df0,null))[_0x172b('0x49')](handleError(_0x251df0,null));};exports[_0x172b('0x87')]=function(_0x302af1,_0x508b2b,_0x22100f){var _0x56be31={};var _0x3d8071={};var _0x3d81d6;var _0x576128;return db[_0x172b('0x30')]['findOne']({'where':{'id':_0x302af1[_0x172b('0x45')]['id']}})[_0x172b('0x26')](handleEntityNotFound(_0x508b2b,null))[_0x172b('0x26')](function(_0x21c242){if(_0x21c242){_0x3d81d6=_0x21c242;_0x3d8071[_0x172b('0x35')]=_[_0x172b('0x37')](db[_0x172b('0x58')][_0x172b('0x31')]);_0x3d8071[_0x172b('0x36')]=_['keys'](_0x302af1['query']);_0x3d8071[_0x172b('0x38')]=_[_0x172b('0x46')](_0x3d8071[_0x172b('0x35')],_0x3d8071[_0x172b('0x36')]);_0x56be31[_0x172b('0x39')]=_['intersection'](_0x3d8071[_0x172b('0x35')],qs['fields'](_0x302af1[_0x172b('0x36')][_0x172b('0x47')]));_0x56be31[_0x172b('0x39')]=_0x56be31[_0x172b('0x39')][_0x172b('0x55')]?_0x56be31['attributes']:_0x3d8071[_0x172b('0x35')];_0x56be31[_0x172b('0x3b')]=qs[_0x172b('0x3c')](_0x302af1[_0x172b('0x36')][_0x172b('0x3c')]);_0x56be31[_0x172b('0x3d')]=qs[_0x172b('0x38')](_[_0x172b('0x3e')](_0x302af1[_0x172b('0x36')],_0x3d8071[_0x172b('0x38')]));if(_0x302af1[_0x172b('0x36')]['filter']){_0x56be31[_0x172b('0x3d')]=_[_0x172b('0x3f')](_0x56be31[_0x172b('0x3d')],{'$or':_['map'](_0x56be31[_0x172b('0x39')],function(_0x1fd3fd){var _0x1c20d5={};_0x1c20d5[_0x1fd3fd]={'$like':'%'+_0x302af1[_0x172b('0x36')][_0x172b('0x41')]+'%'};return _0x1c20d5;})});}_0x56be31=_['merge']({},_0x56be31,_0x302af1[_0x172b('0x57')]);return _0x3d81d6['getAgents'](_0x56be31);}})[_0x172b('0x26')](function(_0x1ed35d){if(_0x1ed35d){_0x576128=_0x1ed35d[_0x172b('0x55')];if(!_0x302af1['query'][_0x172b('0x56')](_0x172b('0x3a'))){_0x56be31['limit']=qs[_0x172b('0x21')](_0x302af1[_0x172b('0x36')][_0x172b('0x21')]);_0x56be31['offset']=qs[_0x172b('0x20')](_0x302af1[_0x172b('0x36')][_0x172b('0x20')]);}return _0x3d81d6[_0x172b('0x87')](_0x56be31);}})['then'](function(_0x2f06b1){if(_0x2f06b1){return _0x2f06b1?{'count':_0x576128,'rows':_0x2f06b1}:null;}})[_0x172b('0x26')](respondWithResult(_0x508b2b,null))['catch'](handleError(_0x508b2b,null));};