Built motion from commit 85328c08.|2.5.50
[motion2.git] / server / api / voiceQueue / voiceQueue.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 _0x2689=['fs-extra','squel','crypto','jsforce','querystring','papaparse','ioredis','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/license/util','../../mysqldb','defaults','redis','localhost','socket.io-emitter','./voiceQueue.socket','register','status','end','json','offset','undefined','count','limit','set','Content-Range','apply','reject','save','update','then','destroy','VoiceQueues','inbound','QueueCampaigns','outbound','filter','ignore','map','value','includes','type','find','UserProfileResource','sendStatus','stack','name','send','VoiceQueue','rawAttributes','fieldName','key','model','query','attributes','intersection','fields','length','hasOwnProperty','order','sort','filters','where','merge','VIRTUAL','options','includeAll','rows','catch','show','params','keys','include','create','get','Unable\x20to\x20retrieve\x20the\x20current\x20user','user','UserProfileSection','error','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','clone','updatedAt','body','omit','role','userProfileId','findOne','CmHopper','nolimit','pick','VoiceQueueId','findAll','getHopperHistories','CmHopperHistory','getHopperFinals','CmHopperFinal','getHopperBlacks','CmHopperBlack','getTeams','Team','teams','online','voicePause','Agents','forEach','penalty','sequelize','transaction','each','UserVoiceQueue','UserVoiceQueueRt','upsert','isNil','interface','format','SIP/%s','emit','userVoiceQueue:save','removeTeams','ids','User','select','field','tq.TeamId','from','team_has_voice_queues','join','user_has_teams','ut.TeamId\x20=\x20tq.TeamId','VoiceQueueId\x20=\x20?','ut.UserId\x20=\x20?','toString','SELECT','every','all','compact','removeAgents','userVoiceQueue:remove','addAgents','push','isArray','getAgents','getMembers','CmList','getLists','addLists','spread','dialCheckDuplicateType','always','into','cm_hopper','fromQuery','phone','scheduledAt','ContactId','NOW()','CmListId','ListId','cm_contacts','deletedAt\x20IS\x20NULL','ListId\x20=\x20?','phone\x20IS\x20NOT\x20NULL','phone\x20NOT\x20IN\x20(?)','COALESCE(calleridnum,\x27\x27)','onlyIfOpen','insert','createdAt','COALESCE(phone,\x27\x27)','removeLists','getBlackLists','addBlackLists','removeBlackLists','eml-format','zip-dir','fast-json-patch','request-promise','moment','bluebird','util','path','to-csv','ejs'];(function(_0x429d83,_0x988373){var _0x206410=function(_0x5e0067){while(--_0x5e0067){_0x429d83['push'](_0x429d83['shift']());}};_0x206410(++_0x988373);}(_0x2689,0xae));var _0x9268=function(_0xaae8e8,_0x35aa5c){_0xaae8e8=_0xaae8e8-0x0;var _0xcff5cf=_0x2689[_0xaae8e8];return _0xcff5cf;};'use strict';var emlformat=require(_0x9268('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x9268('0x1'));var jsonpatch=require(_0x9268('0x2'));var rp=require(_0x9268('0x3'));var moment=require(_0x9268('0x4'));var BPromise=require(_0x9268('0x5'));var Mustache=require('mustache');var util=require(_0x9268('0x6'));var path=require(_0x9268('0x7'));var sox=require('sox');var csv=require(_0x9268('0x8'));var ejs=require(_0x9268('0x9'));var fs=require('fs');var fs_extra=require(_0x9268('0xa'));var _=require('lodash');var squel=require(_0x9268('0xb'));var crypto=require(_0x9268('0xc'));var jsforce=require(_0x9268('0xd'));var deskjs=require('desk.js');var toCsv=require(_0x9268('0x8'));var querystring=require(_0x9268('0xe'));var Papa=require(_0x9268('0xf'));var Redis=require(_0x9268('0x10'));var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require(_0x9268('0x11'));var hardwareService=require(_0x9268('0x12'));var logger=require(_0x9268('0x13'))('api');var utils=require(_0x9268('0x14'));var config=require('../../config/environment');var licenseUtil=require(_0x9268('0x15'));var db=require(_0x9268('0x16'))['db'];config['redis']=_[_0x9268('0x17')](config[_0x9268('0x18')],{'host':_0x9268('0x19'),'port':0x18eb});var socket=require(_0x9268('0x1a'))(new Redis(config['redis']));require(_0x9268('0x1b'))[_0x9268('0x1c')](socket);function respondWithStatusCode(_0x46136f,_0xdef076){_0xdef076=_0xdef076||0xcc;return function(_0x4c0c9d){if(_0x4c0c9d){return _0x46136f['sendStatus'](_0xdef076);}return _0x46136f[_0x9268('0x1d')](_0xdef076)[_0x9268('0x1e')]();};}function respondWithResult(_0x3293cd,_0x2bb201){_0x2bb201=_0x2bb201||0xc8;return function(_0x3d03e2){if(_0x3d03e2){return _0x3293cd['status'](_0x2bb201)[_0x9268('0x1f')](_0x3d03e2);}};}function respondWithFilteredResult(_0x4b65df,_0xa56f11){return function(_0x12f5d3){if(_0x12f5d3){var _0x13ddb9=typeof _0xa56f11[_0x9268('0x20')]==='undefined'&&typeof _0xa56f11['limit']===_0x9268('0x21');var _0x14588f=_0x12f5d3[_0x9268('0x22')];var _0x508a9c=_0x13ddb9?0x0:_0xa56f11[_0x9268('0x20')];var _0x40b1e0=_0x13ddb9?_0x12f5d3[_0x9268('0x22')]:_0xa56f11[_0x9268('0x20')]+_0xa56f11[_0x9268('0x23')];var _0x363962;if(_0x40b1e0>=_0x14588f){_0x40b1e0=_0x14588f;_0x363962=0xc8;}else{_0x363962=0xce;}_0x4b65df[_0x9268('0x1d')](_0x363962);return _0x4b65df[_0x9268('0x24')](_0x9268('0x25'),_0x508a9c+'-'+_0x40b1e0+'/'+_0x14588f)[_0x9268('0x1f')](_0x12f5d3);}return null;};}function patchUpdates(_0x4a7596){return function(_0x100ddb){try{jsonpatch[_0x9268('0x26')](_0x100ddb,_0x4a7596,!![]);}catch(_0x2d0b64){return BPromise[_0x9268('0x27')](_0x2d0b64);}return _0x100ddb[_0x9268('0x28')]();};}function saveUpdates(_0x5cbb17,_0x589dfe){return function(_0x59628a){if(_0x59628a){return _0x59628a[_0x9268('0x29')](_0x5cbb17)[_0x9268('0x2a')](function(_0x224d43){return _0x224d43;});}return null;};}function removeEntity(_0x35702f,_0x1b5f88){return function(_0x461675){if(_0x461675){return _0x461675[_0x9268('0x2b')]()[_0x9268('0x2a')](function(){var _0x267ce6=_0x461675['get']({'plain':!![]});var _0x5610a2=[{'name':_0x9268('0x2c'),'value':_0x9268('0x2d'),'ignore':![]},{'name':_0x9268('0x2e'),'value':_0x9268('0x2f'),'ignore':![]}];var _0x1d75d3=_(_0x5610a2)[_0x9268('0x30')](_0x9268('0x31'))[_0x9268('0x32')](_0x9268('0x33'))[_0x9268('0x33')]();if(_[_0x9268('0x34')](_0x1d75d3,_0x267ce6[_0x9268('0x35')])){return;}var _0x31fdb8=_[_0x9268('0x36')](_0x5610a2,[_0x9268('0x33'),_0x267ce6[_0x9268('0x35')]])['name'];return db[_0x9268('0x37')][_0x9268('0x2b')]({'where':{'type':_0x31fdb8,'resourceId':_0x267ce6['id']}})['then'](function(){return _0x461675;});})[_0x9268('0x2a')](function(){_0x35702f[_0x9268('0x1d')](0xcc)['end']();});}};}function handleEntityNotFound(_0xf0ecaf,_0x223884){return function(_0x227bbf){if(!_0x227bbf){_0xf0ecaf[_0x9268('0x38')](0x194);}return _0x227bbf;};}function handleError(_0x46f752,_0xd7b03a){_0xd7b03a=_0xd7b03a||0x1f4;return function(_0x22b130){logger['error'](_0x22b130[_0x9268('0x39')]);if(_0x22b130[_0x9268('0x3a')]){delete _0x22b130[_0x9268('0x3a')];}_0x46f752['status'](_0xd7b03a)[_0x9268('0x3b')](_0x22b130);};}exports['index']=function(_0x4deb36,_0x5c138e){var _0x1dd4da={},_0x5beccd={},_0x397201={'count':0x0,'rows':[]};var _0x157998=_['map'](db[_0x9268('0x3c')][_0x9268('0x3d')],function(_0x1df408){return{'name':_0x1df408[_0x9268('0x3e')],'type':_0x1df408[_0x9268('0x35')][_0x9268('0x3f')]};});_0x5beccd[_0x9268('0x40')]=_['map'](_0x157998,'name');_0x5beccd['query']=_['keys'](_0x4deb36[_0x9268('0x41')]);_0x5beccd['filters']=_['intersection'](_0x5beccd['model'],_0x5beccd['query']);_0x1dd4da[_0x9268('0x42')]=_[_0x9268('0x43')](_0x5beccd[_0x9268('0x40')],qs[_0x9268('0x44')](_0x4deb36[_0x9268('0x41')][_0x9268('0x44')]));_0x1dd4da[_0x9268('0x42')]=_0x1dd4da[_0x9268('0x42')][_0x9268('0x45')]?_0x1dd4da[_0x9268('0x42')]:_0x5beccd['model'];if(!_0x4deb36[_0x9268('0x41')][_0x9268('0x46')]('nolimit')){_0x1dd4da[_0x9268('0x23')]=qs[_0x9268('0x23')](_0x4deb36['query']['limit']);_0x1dd4da[_0x9268('0x20')]=qs[_0x9268('0x20')](_0x4deb36[_0x9268('0x41')][_0x9268('0x20')]);}_0x1dd4da[_0x9268('0x47')]=qs[_0x9268('0x48')](_0x4deb36[_0x9268('0x41')][_0x9268('0x48')]);_0x1dd4da['where']=qs['filters'](_['pick'](_0x4deb36[_0x9268('0x41')],_0x5beccd[_0x9268('0x49')]),_0x157998);if(_0x4deb36[_0x9268('0x41')][_0x9268('0x30')]){_0x1dd4da[_0x9268('0x4a')]=_[_0x9268('0x4b')](_0x1dd4da['where'],{'$or':_[_0x9268('0x32')](_0x157998,function(_0x6cd13d){if(_0x6cd13d['type']!==_0x9268('0x4c')){var _0x156f23={};_0x156f23[_0x6cd13d['name']]={'$like':'%'+_0x4deb36[_0x9268('0x41')][_0x9268('0x30')]+'%'};return _0x156f23;}})});}_0x1dd4da=_[_0x9268('0x4b')]({},_0x1dd4da,_0x4deb36[_0x9268('0x4d')]);var _0x1ed1e7={'where':_0x1dd4da[_0x9268('0x4a')]};return db[_0x9268('0x3c')]['count'](_0x1ed1e7)['then'](function(_0x23bafe){_0x397201[_0x9268('0x22')]=_0x23bafe;if(_0x4deb36[_0x9268('0x41')][_0x9268('0x4e')]){_0x1dd4da['include']=[{'all':!![]}];}return db[_0x9268('0x3c')]['findAll'](_0x1dd4da);})['then'](function(_0xf43496){_0x397201[_0x9268('0x4f')]=_0xf43496;return _0x397201;})[_0x9268('0x2a')](respondWithFilteredResult(_0x5c138e,_0x1dd4da))[_0x9268('0x50')](handleError(_0x5c138e,null));};exports[_0x9268('0x51')]=function(_0x543df1,_0x58ebd8){var _0x11932b={'raw':![],'where':{'id':_0x543df1[_0x9268('0x52')]['id']}},_0x355087={};_0x355087[_0x9268('0x40')]=_[_0x9268('0x53')](db[_0x9268('0x3c')]['rawAttributes']);_0x355087[_0x9268('0x41')]=_[_0x9268('0x53')](_0x543df1[_0x9268('0x41')]);_0x355087[_0x9268('0x49')]=_[_0x9268('0x43')](_0x355087[_0x9268('0x40')],_0x355087[_0x9268('0x41')]);_0x11932b[_0x9268('0x42')]=_['intersection'](_0x355087[_0x9268('0x40')],qs[_0x9268('0x44')](_0x543df1['query'][_0x9268('0x44')]));_0x11932b[_0x9268('0x42')]=_0x11932b[_0x9268('0x42')][_0x9268('0x45')]?_0x11932b[_0x9268('0x42')]:_0x355087[_0x9268('0x40')];if(_0x543df1['query'][_0x9268('0x4e')]){_0x11932b[_0x9268('0x54')]=[{'all':!![]}];}_0x11932b=_[_0x9268('0x4b')]({},_0x11932b,_0x543df1[_0x9268('0x4d')]);return db[_0x9268('0x3c')][_0x9268('0x36')](_0x11932b)['then'](handleEntityNotFound(_0x58ebd8,null))['then'](respondWithResult(_0x58ebd8,null))[_0x9268('0x50')](handleError(_0x58ebd8,null));};exports['create']=function(_0x56f846,_0x30789a){return db['VoiceQueue'][_0x9268('0x55')](_0x56f846['body'],{})[_0x9268('0x2a')](function(_0x28b240){var _0xf097d7=_0x56f846['user'][_0x9268('0x56')]({'plain':!![]});if(!_0xf097d7)throw new Error(_0x9268('0x57'));if(_0xf097d7['role']===_0x9268('0x58')){var _0x19f526=_0x28b240[_0x9268('0x56')]({'plain':!![]});var _0x329482=[{'name':'VoiceQueues','value':'inbound'},{'name':_0x9268('0x2e'),'value':_0x9268('0x2f')}];var _0x5c1264=_[_0x9268('0x36')](_0x329482,[_0x9268('0x33'),_0x19f526[_0x9268('0x35')]])[_0x9268('0x3a')];return db[_0x9268('0x59')][_0x9268('0x36')]({'where':{'name':_0x5c1264,'userProfileId':_0xf097d7['userProfileId']},'raw':!![]})[_0x9268('0x2a')](function(_0x171d3b){if(_0x171d3b&&_0x171d3b['autoAssociation']===0x0){return db[_0x9268('0x37')]['create']({'name':_0x19f526[_0x9268('0x3a')],'resourceId':_0x19f526['id'],'type':_0x171d3b[_0x9268('0x3a')],'sectionId':_0x171d3b['id']},{})[_0x9268('0x2a')](function(){return _0x28b240;});}else{return _0x28b240;}})[_0x9268('0x50')](function(_0x298933){logger[_0x9268('0x5a')](_0x9268('0x5b'),_0x298933);throw _0x298933;});}return _0x28b240;})['then'](respondWithResult(_0x30789a,0xc9))['catch'](handleError(_0x30789a,null));};exports[_0x9268('0x5c')]=function(_0x225e4e,_0x4acf0a){var _0x41f407={'where':{'id':_0x225e4e[_0x9268('0x52')]['id']}},_0x4dcf20={};_0x4dcf20[_0x9268('0x40')]=_[_0x9268('0x53')](db[_0x9268('0x3c')][_0x9268('0x3d')]);_0x41f407['attributes']=_[_0x9268('0x43')](_0x4dcf20[_0x9268('0x40')],qs[_0x9268('0x44')](_0x225e4e[_0x9268('0x41')][_0x9268('0x44')]));_0x41f407['attributes']=_0x41f407['attributes'][_0x9268('0x45')]?_0x41f407[_0x9268('0x42')]:_0x4dcf20[_0x9268('0x40')];if(_0x225e4e[_0x9268('0x41')][_0x9268('0x4e')]){_0x41f407['include']=[{'all':!![]}];}_0x41f407=_[_0x9268('0x4b')]({},_0x41f407,_0x225e4e[_0x9268('0x4d')]);return db['VoiceQueue'][_0x9268('0x36')](_0x41f407)[_0x9268('0x2a')](handleEntityNotFound(_0x4acf0a,null))[_0x9268('0x2a')](function(_0x4f5e13){if(_0x4f5e13){var _0x5abc75=_0x4f5e13[_0x9268('0x56')]({'plain':!![]});_0x5abc75=qs['omit'](_0x5abc75,['id','createdAt',_0x9268('0x5d')]);_0x225e4e[_0x9268('0x5e')]=_[_0x9268('0x5f')](_0x225e4e[_0x9268('0x5e')],['id','createdAt',_0x9268('0x5d')]);return db[_0x9268('0x3c')]['create'](_[_0x9268('0x4b')](_0x5abc75,_0x225e4e[_0x9268('0x5e')]),{'include':_0x225e4e['query'][_0x9268('0x4e')]?[{'all':!![]}]:undefined})[_0x9268('0x2a')](function(_0x28f240){var _0x268606=_0x225e4e[_0x9268('0x58')][_0x9268('0x56')]({'plain':!![]});if(!_0x268606)throw new Error(_0x9268('0x57'));if(_0x268606[_0x9268('0x60')]===_0x9268('0x58')){var _0x12ffb8=_0x28f240[_0x9268('0x56')]({'plain':!![]});var _0x45c081=[{'name':_0x9268('0x2c'),'value':_0x9268('0x2d')},{'name':_0x9268('0x2e'),'value':_0x9268('0x2f')}];var _0x291328=_[_0x9268('0x36')](_0x45c081,['value',_0x12ffb8[_0x9268('0x35')]])[_0x9268('0x3a')];return db[_0x9268('0x59')][_0x9268('0x36')]({'where':{'name':_0x291328,'userProfileId':_0x268606[_0x9268('0x61')]},'raw':!![]})[_0x9268('0x2a')](function(_0x142cc9){if(_0x142cc9&&_0x142cc9['autoAssociation']===0x0){return db[_0x9268('0x37')]['create']({'name':_0x12ffb8[_0x9268('0x3a')],'resourceId':_0x12ffb8['id'],'type':_0x142cc9[_0x9268('0x3a')],'sectionId':_0x142cc9['id']},{})[_0x9268('0x2a')](function(){return _0x28f240;});}else{return _0x28f240;}})['catch'](function(_0x5f0beb){logger['error'](_0x9268('0x5b'),_0x5f0beb);throw _0x5f0beb;});}return _0x28f240;});}})['then'](respondWithResult(_0x4acf0a,0xc9))[_0x9268('0x50')](handleError(_0x4acf0a,null));};exports['update']=function(_0x26712b,_0x459bda){if(_0x26712b[_0x9268('0x5e')]['id']){delete _0x26712b['body']['id'];}return db[_0x9268('0x3c')][_0x9268('0x36')]({'where':{'id':_0x26712b[_0x9268('0x52')]['id']}})[_0x9268('0x2a')](handleEntityNotFound(_0x459bda,null))[_0x9268('0x2a')](saveUpdates(_0x26712b[_0x9268('0x5e')],null))[_0x9268('0x2a')](respondWithResult(_0x459bda,null))[_0x9268('0x50')](handleError(_0x459bda,null));};exports[_0x9268('0x2b')]=function(_0x5baf94,_0x5c5797){return db[_0x9268('0x3c')][_0x9268('0x36')]({'where':{'id':_0x5baf94[_0x9268('0x52')]['id']}})[_0x9268('0x2a')](handleEntityNotFound(_0x5c5797,null))[_0x9268('0x2a')](removeEntity(_0x5c5797,null))[_0x9268('0x50')](handleError(_0x5c5797,null));};exports['getHoppers']=function(_0x70a079,_0x3d6833,_0x409093){var _0x31435f={'raw':![],'where':{}};var _0x18848b={};var _0x4db4aa={'count':0x0,'rows':[]};return db[_0x9268('0x3c')][_0x9268('0x62')]({'where':{'id':_0x70a079['params']['id']}})[_0x9268('0x2a')](handleEntityNotFound(_0x3d6833,null))['then'](function(_0x1977ad){if(_0x1977ad){_0x18848b['model']=_[_0x9268('0x53')](db[_0x9268('0x63')][_0x9268('0x3d')]);_0x18848b[_0x9268('0x41')]=_[_0x9268('0x53')](_0x70a079[_0x9268('0x41')]);_0x18848b['filters']=_[_0x9268('0x43')](_0x18848b['model'],_0x18848b[_0x9268('0x41')]);_0x31435f[_0x9268('0x42')]=_['intersection'](_0x18848b[_0x9268('0x40')],qs['fields'](_0x70a079[_0x9268('0x41')][_0x9268('0x44')]));_0x31435f[_0x9268('0x42')]=_0x31435f[_0x9268('0x42')][_0x9268('0x45')]?_0x31435f[_0x9268('0x42')]:_0x18848b[_0x9268('0x40')];if(!_0x70a079[_0x9268('0x41')][_0x9268('0x46')](_0x9268('0x64'))){_0x31435f[_0x9268('0x23')]=qs[_0x9268('0x23')](_0x70a079[_0x9268('0x41')]['limit']);_0x31435f['offset']=qs[_0x9268('0x20')](_0x70a079[_0x9268('0x41')]['offset']);}_0x31435f[_0x9268('0x47')]=qs['sort'](_0x70a079[_0x9268('0x41')][_0x9268('0x48')]);_0x31435f[_0x9268('0x4a')]=qs[_0x9268('0x49')](_[_0x9268('0x65')](_0x70a079['query'],_0x18848b['filters']));_0x31435f[_0x9268('0x4a')][_0x9268('0x66')]=_0x1977ad['id'];if(_0x70a079[_0x9268('0x41')][_0x9268('0x30')]){_0x31435f['where']=_[_0x9268('0x4b')](_0x31435f[_0x9268('0x4a')],{'$or':_[_0x9268('0x32')](_0x31435f[_0x9268('0x42')],function(_0x59a753){var _0x5179f2={};_0x5179f2[_0x59a753]={'$like':'%'+_0x70a079[_0x9268('0x41')]['filter']+'%'};return _0x5179f2;})});}_0x31435f=_[_0x9268('0x4b')]({},_0x31435f,_0x70a079[_0x9268('0x4d')]);return db[_0x9268('0x63')]['count']({'where':_0x31435f[_0x9268('0x4a')]})['then'](function(_0xa047dd){_0x4db4aa[_0x9268('0x22')]=_0xa047dd;if(_0x70a079[_0x9268('0x41')]['includeAll']){_0x31435f[_0x9268('0x54')]=[{'all':!![]}];}return db['CmHopper'][_0x9268('0x67')](_0x31435f);})[_0x9268('0x2a')](function(_0x3f1d1f){_0x4db4aa[_0x9268('0x4f')]=_0x3f1d1f;return _0x4db4aa;});}})['then'](respondWithFilteredResult(_0x3d6833,_0x31435f))['catch'](handleError(_0x3d6833,null));};exports[_0x9268('0x68')]=function(_0x11175d,_0x1924af,_0x59a92b){var _0x377328={'raw':!![],'where':{}};var _0x32ca4e={};var _0x267d35={'count':0x0,'rows':[]};return db['VoiceQueue'][_0x9268('0x62')]({'where':{'id':_0x11175d[_0x9268('0x52')]['id']}})[_0x9268('0x2a')](handleEntityNotFound(_0x1924af,null))[_0x9268('0x2a')](function(_0x5e1ecb){if(_0x5e1ecb){_0x32ca4e[_0x9268('0x40')]=_['keys'](db[_0x9268('0x69')]['rawAttributes']);_0x32ca4e[_0x9268('0x41')]=_[_0x9268('0x53')](_0x11175d[_0x9268('0x41')]);_0x32ca4e[_0x9268('0x49')]=_['intersection'](_0x32ca4e[_0x9268('0x40')],_0x32ca4e[_0x9268('0x41')]);_0x377328[_0x9268('0x42')]=_['intersection'](_0x32ca4e[_0x9268('0x40')],qs[_0x9268('0x44')](_0x11175d['query'][_0x9268('0x44')]));_0x377328[_0x9268('0x42')]=_0x377328[_0x9268('0x42')][_0x9268('0x45')]?_0x377328[_0x9268('0x42')]:_0x32ca4e[_0x9268('0x40')];if(!_0x11175d[_0x9268('0x41')]['hasOwnProperty'](_0x9268('0x64'))){_0x377328[_0x9268('0x23')]=qs['limit'](_0x11175d[_0x9268('0x41')][_0x9268('0x23')]);_0x377328[_0x9268('0x20')]=qs[_0x9268('0x20')](_0x11175d['query'][_0x9268('0x20')]);}_0x377328[_0x9268('0x47')]=qs[_0x9268('0x48')](_0x11175d[_0x9268('0x41')][_0x9268('0x48')]);_0x377328['where']=qs['filters'](_[_0x9268('0x65')](_0x11175d[_0x9268('0x41')],_0x32ca4e[_0x9268('0x49')]));_0x377328[_0x9268('0x4a')]['VoiceQueueId']=_0x5e1ecb['id'];if(_0x11175d['query'][_0x9268('0x30')]){_0x377328[_0x9268('0x4a')]=_['merge'](_0x377328[_0x9268('0x4a')],{'$or':_['map'](_0x377328[_0x9268('0x42')],function(_0x5c4828){var _0x48e65f={};_0x48e65f[_0x5c4828]={'$like':'%'+_0x11175d[_0x9268('0x41')]['filter']+'%'};return _0x48e65f;})});}_0x377328=_[_0x9268('0x4b')]({},_0x377328,_0x11175d[_0x9268('0x4d')]);return db[_0x9268('0x69')]['count']({'where':_0x377328[_0x9268('0x4a')]})[_0x9268('0x2a')](function(_0x2297b6){_0x267d35[_0x9268('0x22')]=_0x2297b6;if(_0x11175d['query'][_0x9268('0x4e')]){_0x377328['include']=[{'all':!![]}];}return db['CmHopperHistory'][_0x9268('0x67')](_0x377328);})[_0x9268('0x2a')](function(_0x1ab881){_0x267d35[_0x9268('0x4f')]=_0x1ab881;return _0x267d35;});}})[_0x9268('0x2a')](respondWithFilteredResult(_0x1924af,_0x377328))[_0x9268('0x50')](handleError(_0x1924af,null));};exports[_0x9268('0x6a')]=function(_0x55beec,_0x34587d,_0x493c01){var _0x1347ef={'raw':!![],'where':{}};var _0x2bcefe={};var _0x36a99e={'count':0x0,'rows':[]};return db['VoiceQueue'][_0x9268('0x62')]({'where':{'id':_0x55beec['params']['id']}})[_0x9268('0x2a')](handleEntityNotFound(_0x34587d,null))['then'](function(_0x2b0fd5){if(_0x2b0fd5){_0x2bcefe[_0x9268('0x40')]=_[_0x9268('0x53')](db['CmHopperFinal'][_0x9268('0x3d')]);_0x2bcefe[_0x9268('0x41')]=_['keys'](_0x55beec[_0x9268('0x41')]);_0x2bcefe[_0x9268('0x49')]=_['intersection'](_0x2bcefe['model'],_0x2bcefe[_0x9268('0x41')]);_0x1347ef['attributes']=_[_0x9268('0x43')](_0x2bcefe[_0x9268('0x40')],qs[_0x9268('0x44')](_0x55beec[_0x9268('0x41')][_0x9268('0x44')]));_0x1347ef['attributes']=_0x1347ef[_0x9268('0x42')][_0x9268('0x45')]?_0x1347ef[_0x9268('0x42')]:_0x2bcefe[_0x9268('0x40')];if(!_0x55beec[_0x9268('0x41')][_0x9268('0x46')]('nolimit')){_0x1347ef[_0x9268('0x23')]=qs[_0x9268('0x23')](_0x55beec[_0x9268('0x41')][_0x9268('0x23')]);_0x1347ef[_0x9268('0x20')]=qs['offset'](_0x55beec[_0x9268('0x41')][_0x9268('0x20')]);}_0x1347ef[_0x9268('0x47')]=qs['sort'](_0x55beec[_0x9268('0x41')][_0x9268('0x48')]);_0x1347ef['where']=qs['filters'](_['pick'](_0x55beec[_0x9268('0x41')],_0x2bcefe[_0x9268('0x49')]));_0x1347ef['where'][_0x9268('0x66')]=_0x2b0fd5['id'];if(_0x55beec[_0x9268('0x41')][_0x9268('0x30')]){_0x1347ef[_0x9268('0x4a')]=_['merge'](_0x1347ef['where'],{'$or':_[_0x9268('0x32')](_0x1347ef[_0x9268('0x42')],function(_0x5ad154){var _0x237d30={};_0x237d30[_0x5ad154]={'$like':'%'+_0x55beec[_0x9268('0x41')][_0x9268('0x30')]+'%'};return _0x237d30;})});}_0x1347ef=_[_0x9268('0x4b')]({},_0x1347ef,_0x55beec[_0x9268('0x4d')]);return db['CmHopperFinal'][_0x9268('0x22')]({'where':_0x1347ef[_0x9268('0x4a')]})[_0x9268('0x2a')](function(_0x19a919){_0x36a99e[_0x9268('0x22')]=_0x19a919;if(_0x55beec[_0x9268('0x41')]['includeAll']){_0x1347ef[_0x9268('0x54')]=[{'all':!![]}];}return db[_0x9268('0x6b')][_0x9268('0x67')](_0x1347ef);})[_0x9268('0x2a')](function(_0x24e02f){_0x36a99e[_0x9268('0x4f')]=_0x24e02f;return _0x36a99e;});}})[_0x9268('0x2a')](respondWithFilteredResult(_0x34587d,_0x1347ef))[_0x9268('0x50')](handleError(_0x34587d,null));};exports[_0x9268('0x6c')]=function(_0x31b01a,_0xa9b44c,_0x5e69f6){var _0x40cefe={'raw':!![],'where':{}};var _0x136261={};var _0x1ed862={'count':0x0,'rows':[]};return db['VoiceQueue'][_0x9268('0x62')]({'where':{'id':_0x31b01a[_0x9268('0x52')]['id']}})[_0x9268('0x2a')](handleEntityNotFound(_0xa9b44c,null))[_0x9268('0x2a')](function(_0x14fcff){if(_0x14fcff){_0x136261[_0x9268('0x40')]=_[_0x9268('0x53')](db['CmHopperBlack'][_0x9268('0x3d')]);_0x136261[_0x9268('0x41')]=_[_0x9268('0x53')](_0x31b01a[_0x9268('0x41')]);_0x136261[_0x9268('0x49')]=_[_0x9268('0x43')](_0x136261[_0x9268('0x40')],_0x136261['query']);_0x40cefe[_0x9268('0x42')]=_[_0x9268('0x43')](_0x136261[_0x9268('0x40')],qs[_0x9268('0x44')](_0x31b01a[_0x9268('0x41')][_0x9268('0x44')]));_0x40cefe[_0x9268('0x42')]=_0x40cefe['attributes'][_0x9268('0x45')]?_0x40cefe[_0x9268('0x42')]:_0x136261[_0x9268('0x40')];if(!_0x31b01a[_0x9268('0x41')][_0x9268('0x46')](_0x9268('0x64'))){_0x40cefe[_0x9268('0x23')]=qs[_0x9268('0x23')](_0x31b01a[_0x9268('0x41')][_0x9268('0x23')]);_0x40cefe[_0x9268('0x20')]=qs['offset'](_0x31b01a[_0x9268('0x41')][_0x9268('0x20')]);}_0x40cefe['order']=qs[_0x9268('0x48')](_0x31b01a[_0x9268('0x41')]['sort']);_0x40cefe[_0x9268('0x4a')]=qs[_0x9268('0x49')](_['pick'](_0x31b01a[_0x9268('0x41')],_0x136261[_0x9268('0x49')]));_0x40cefe['where']['VoiceQueueId']=_0x14fcff['id'];if(_0x31b01a['query'][_0x9268('0x30')]){_0x40cefe[_0x9268('0x4a')]=_['merge'](_0x40cefe[_0x9268('0x4a')],{'$or':_['map'](_0x40cefe[_0x9268('0x42')],function(_0x4d603e){var _0x1347f8={};_0x1347f8[_0x4d603e]={'$like':'%'+_0x31b01a['query'][_0x9268('0x30')]+'%'};return _0x1347f8;})});}_0x40cefe=_[_0x9268('0x4b')]({},_0x40cefe,_0x31b01a[_0x9268('0x4d')]);return db[_0x9268('0x6d')]['count']({'where':_0x40cefe[_0x9268('0x4a')]})[_0x9268('0x2a')](function(_0x548fdd){_0x1ed862['count']=_0x548fdd;if(_0x31b01a[_0x9268('0x41')][_0x9268('0x4e')]){_0x40cefe[_0x9268('0x54')]=[{'all':!![]}];}return db['CmHopperBlack'][_0x9268('0x67')](_0x40cefe);})['then'](function(_0x4c5615){_0x1ed862[_0x9268('0x4f')]=_0x4c5615;return _0x1ed862;});}})[_0x9268('0x2a')](respondWithFilteredResult(_0xa9b44c,_0x40cefe))['catch'](handleError(_0xa9b44c,null));};exports[_0x9268('0x6e')]=function(_0x56bb57,_0x169847,_0x350474){var _0x230d9b={};var _0x304350={};var _0x24d4b4;var _0x2b37ba;return db[_0x9268('0x3c')]['findOne']({'where':{'id':_0x56bb57[_0x9268('0x52')]['id']}})[_0x9268('0x2a')](handleEntityNotFound(_0x169847,null))[_0x9268('0x2a')](function(_0x28174c){if(_0x28174c){_0x24d4b4=_0x28174c;_0x304350[_0x9268('0x40')]=_[_0x9268('0x53')](db[_0x9268('0x6f')][_0x9268('0x3d')]);_0x304350[_0x9268('0x41')]=_[_0x9268('0x53')](_0x56bb57[_0x9268('0x41')]);_0x304350['filters']=_['intersection'](_0x304350[_0x9268('0x40')],_0x304350[_0x9268('0x41')]);_0x230d9b[_0x9268('0x42')]=_[_0x9268('0x43')](_0x304350[_0x9268('0x40')],qs[_0x9268('0x44')](_0x56bb57[_0x9268('0x41')][_0x9268('0x44')]));_0x230d9b['attributes']=_0x230d9b[_0x9268('0x42')][_0x9268('0x45')]?_0x230d9b['attributes']:_0x304350['model'];_0x230d9b[_0x9268('0x47')]=qs[_0x9268('0x48')](_0x56bb57[_0x9268('0x41')][_0x9268('0x48')]);_0x230d9b[_0x9268('0x4a')]=qs[_0x9268('0x49')](_['pick'](_0x56bb57['query'],_0x304350[_0x9268('0x49')]));if(_0x56bb57[_0x9268('0x41')][_0x9268('0x30')]){_0x230d9b[_0x9268('0x4a')]=_[_0x9268('0x4b')](_0x230d9b['where'],{'$or':_[_0x9268('0x32')](_0x230d9b[_0x9268('0x42')],function(_0x2c790e){var _0x5f34c9={};_0x5f34c9[_0x2c790e]={'$like':'%'+_0x56bb57['query']['filter']+'%'};return _0x5f34c9;})});}_0x230d9b=_[_0x9268('0x4b')]({},_0x230d9b,_0x56bb57['options']);return _0x24d4b4[_0x9268('0x6e')](_0x230d9b);}})[_0x9268('0x2a')](function(_0x2a14b9){if(_0x2a14b9){_0x2b37ba=_0x2a14b9[_0x9268('0x45')];if(!_0x56bb57[_0x9268('0x41')][_0x9268('0x46')](_0x9268('0x64'))){_0x230d9b[_0x9268('0x23')]=qs[_0x9268('0x23')](_0x56bb57[_0x9268('0x41')][_0x9268('0x23')]);_0x230d9b['offset']=qs[_0x9268('0x20')](_0x56bb57['query']['offset']);}return _0x24d4b4[_0x9268('0x6e')](_0x230d9b);}})['then'](function(_0x382113){if(_0x382113){return _0x382113?{'count':_0x2b37ba,'rows':_0x382113}:null;}})['then'](respondWithResult(_0x169847,null))[_0x9268('0x50')](handleError(_0x169847,null));};exports['addTeams']=function(_0x30bcd3,_0x33ea21,_0xbc25b3){var _0x39eff7=_0x30bcd3[_0x9268('0x5e')][_0x9268('0x70')];var _0x820d02=_[_0x9268('0x32')](_0x39eff7,'id');return db[_0x9268('0x6f')][_0x9268('0x67')]({'where':{'id':_0x820d02},'attributes':['id'],'include':[{'model':db['User'],'as':'Agents','attributes':['id',_0x9268('0x3a'),_0x9268('0x71'),_0x9268('0x72'),'interface'],'raw':!![]}]})[_0x9268('0x2a')](function(_0x152c70){if(_0x152c70){var _0xcaef50=_['flatMap'](_0x152c70,function(_0x3c06e1){var _0x4dbcae=_0x3c06e1[_0x9268('0x56')]({'plain':!![]});_0x4dbcae[_0x9268('0x73')][_0x9268('0x74')](function(_0x4a863d){_0x4a863d[_0x9268('0x75')]=_[_0x9268('0x36')](_0x39eff7,{'id':_0x4dbcae['id']})[_0x9268('0x75')];});return _0x4dbcae[_0x9268('0x73')];});return db['VoiceQueue']['find']({'where':{'id':_0x30bcd3[_0x9268('0x52')]['id']}})['then'](function(_0x5b18bb){return db[_0x9268('0x76')][_0x9268('0x77')](function(_0x5a9fa8){return _0x5b18bb['addTeams'](_0x820d02,{'transaction':_0x5a9fa8})['then'](function(){return BPromise[_0x9268('0x78')](_0x39eff7,function(_0x251a8c){return db['TeamVoiceQueue']['upsert']({'TeamId':_0x251a8c['id'],'VoiceQueueId':_0x30bcd3[_0x9268('0x52')]['id'],'penalty':_0x251a8c[_0x9268('0x75')]},{'transaction':_0x5a9fa8});});})[_0x9268('0x2a')](function(){return BPromise['each'](_0xcaef50,function(_0x40b09b){return db[_0x9268('0x79')]['findOrCreate']({'where':{'UserId':_0x40b09b['id'],'VoiceQueueId':_0x30bcd3[_0x9268('0x52')]['id']},'defaults':{'penalty':_0x40b09b['penalty']},'transaction':_0x5a9fa8});});})[_0x9268('0x2a')](function(){return BPromise[_0x9268('0x78')](_[_0x9268('0x30')](_0xcaef50,{'online':!![]}),function(_0x38f020){return db[_0x9268('0x7a')][_0x9268('0x7b')]({'membername':_0x38f020['name'],'UserId':_0x38f020['id'],'queue_name':_0x5b18bb[_0x9268('0x3a')],'VoiceQueueId':_0x5b18bb['id'],'interface':_[_0x9268('0x7c')](_0x38f020[_0x9268('0x7d')])?util[_0x9268('0x7e')](_0x9268('0x7f'),_0x38f020[_0x9268('0x3a')]):_0x38f020['interface'],'paused':_0x38f020[_0x9268('0x72')]||![],'penalty':_0x38f020[_0x9268('0x75')]},{'transaction':_0x5a9fa8});});})[_0x9268('0x2a')](function(){_0xcaef50['forEach'](function(_0x54ef3d){socket[_0x9268('0x80')](_0x9268('0x81'),{'UserId':_0x54ef3d['id'],'VoiceQueueId':_0x5b18bb['id']});});});});});}})[_0x9268('0x2a')](respondWithStatusCode(_0x33ea21,null))[_0x9268('0x50')](handleError(_0x33ea21,null));};exports[_0x9268('0x82')]=function(_0x1d72e8,_0x6096bc,_0x184e05){return db[_0x9268('0x6f')]['findAll']({'where':{'id':_0x1d72e8[_0x9268('0x41')][_0x9268('0x83')]},'attributes':['id'],'include':[{'model':db[_0x9268('0x84')],'as':_0x9268('0x73'),'attributes':['id'],'raw':!![]}]})[_0x9268('0x2a')](handleEntityNotFound(_0x6096bc,null))[_0x9268('0x2a')](function(_0x3f9214){var _0x4f1975=_[_0x9268('0x32')](_0x3f9214,'id');var _0x5675be=[];var _0x477497=[];var _0x55f6e6=squel[_0x9268('0x85')]();_0x55f6e6[_0x9268('0x86')](_0x9268('0x87'))[_0x9268('0x88')](_0x9268('0x89'),'tq')[_0x9268('0x8a')](_0x9268('0x8b'),'ut',_0x9268('0x8c'))['where'](_0x9268('0x8d'),_0x1d72e8[_0x9268('0x52')]['id']);for(var _0x5005c5=0x0;_0x5005c5<_0x3f9214['length'];_0x5005c5+=0x1){let _0x10c647=_0x3f9214[_0x5005c5];for(var _0x213117=0x0;_0x213117<_0x10c647[_0x9268('0x73')][_0x9268('0x45')];_0x213117+=0x1){let _0x5c9861=_0x10c647['Agents'][_0x213117];var _0x1a18db=_0x55f6e6['clone']();_0x1a18db['where'](_0x9268('0x8e'),_0x5c9861['id']);_0x477497['push'](db[_0x9268('0x76')][_0x9268('0x41')](_0x1a18db[_0x9268('0x8f')](),{'type':db[_0x9268('0x76')]['QueryTypes'][_0x9268('0x90')]})['then'](function(_0x1eef5c){if(_0x1eef5c[_0x9268('0x45')]===0x1){return _0x5c9861['id'];}else{var _0x4ac3f8=_[_0x9268('0x91')](_[_0x9268('0x32')](_0x1eef5c,'TeamId'),function(_0x1d4c58){return _[_0x9268('0x34')](_0x4f1975,_0x1d4c58);});if(_0x4ac3f8){return _0x5c9861['id'];}}}));}}return BPromise[_0x9268('0x92')](_0x477497)[_0x9268('0x2a')](function(_0x230802){_0x5675be=_(_0x5675be)['union'](_0x230802)[_0x9268('0x93')]()['value']();return db[_0x9268('0x3c')]['find']({'where':{'id':_0x1d72e8['params']['id']}})['then'](function(_0x295c48){return db[_0x9268('0x76')][_0x9268('0x77')](function(_0x8bfb39){return _0x295c48[_0x9268('0x82')](_0x1d72e8['query'][_0x9268('0x83')],{'transaction':_0x8bfb39})[_0x9268('0x2a')](function(){if(!_['isEmpty'](_0x5675be)){return _0x295c48[_0x9268('0x94')](_0x5675be,{'transaction':_0x8bfb39})['then'](function(){return db[_0x9268('0x7a')]['destroy']({'where':{'VoiceQueueId':_0x1d72e8[_0x9268('0x52')]['id'],'UserId':_0x5675be},'transaction':_0x8bfb39});});}})[_0x9268('0x2a')](function(){_0x5675be[_0x9268('0x74')](function(_0x582227){socket[_0x9268('0x80')](_0x9268('0x95'),{'UserId':_0x582227,'VoiceQueueId':_0x295c48['id']});});});});});});})[_0x9268('0x2a')](respondWithStatusCode(_0x6096bc,null))['catch'](handleError(_0x6096bc,null));};exports[_0x9268('0x96')]=function(_0x49646c,_0x19cd4a,_0x546be7){var _0x1092be,_0x4c8dd1;return db[_0x9268('0x3c')][_0x9268('0x36')]({'where':{'id':_0x49646c['params']['id']}})[_0x9268('0x2a')](handleEntityNotFound(_0x19cd4a,null))['then'](function(_0x359b32){if(_0x359b32){_0x4c8dd1=_0x359b32;return _0x359b32[_0x9268('0x96')](_0x49646c[_0x9268('0x5e')][_0x9268('0x83')],_['omit'](_0x49646c[_0x9268('0x5e')],[_0x9268('0x83'),'id'])||{})['spread'](function(_0x1a6624){for(var _0x412def=0x0;_0x412def<_0x49646c[_0x9268('0x5e')][_0x9268('0x83')][_0x9268('0x45')];_0x412def+=0x1){socket[_0x9268('0x80')]('userVoiceQueue:save',{'UserId':Number(_0x49646c['body'][_0x9268('0x83')][_0x412def]),'VoiceQueueId':Number(_0x49646c[_0x9268('0x52')]['id'])});}return _0x1a6624;});}})[_0x9268('0x2a')](function(_0x4850ba){_0x1092be=_0x4850ba||[];if(_0x4c8dd1){return db[_0x9268('0x84')]['findAll']({'where':{'id':_0x49646c['body']['ids']},'attributes':['id',_0x9268('0x3a'),_0x9268('0x71'),_0x9268('0x72'),'interface'],'raw':!![]});}})[_0x9268('0x2a')](function(_0x4b0b54){if(!_['isEmpty'](_0x4b0b54)){var _0x4c6a39=[];for(var _0x48a88b=0x0;_0x48a88b<_0x4b0b54['length'];_0x48a88b++){if(_0x4b0b54[_0x48a88b][_0x9268('0x71')]){_0x4c6a39[_0x9268('0x97')](db[_0x9268('0x7a')][_0x9268('0x7b')]({'membername':_0x4b0b54[_0x48a88b][_0x9268('0x3a')],'UserId':_0x4b0b54[_0x48a88b]['id'],'queue_name':_0x4c8dd1['name'],'VoiceQueueId':_0x4c8dd1['id'],'interface':_['isNil'](_0x4b0b54[_0x48a88b][_0x9268('0x7d')])?util[_0x9268('0x7e')](_0x9268('0x7f'),_0x4b0b54[_0x48a88b][_0x9268('0x3a')]):_0x4b0b54[_0x48a88b][_0x9268('0x7d')],'paused':_0x4b0b54[_0x48a88b][_0x9268('0x72')]||![],'penalty':_0x49646c[_0x9268('0x5e')][_0x9268('0x75')]||0x0}));}}return BPromise[_0x9268('0x92')](_0x4c6a39);}})[_0x9268('0x2a')](function(){return _0x1092be;})[_0x9268('0x2a')](respondWithResult(_0x19cd4a,null))['catch'](handleError(_0x19cd4a,null));};exports['removeAgents']=function(_0x21961f,_0x4a5d31,_0x23d661){return db[_0x9268('0x3c')][_0x9268('0x36')]({'where':{'id':_0x21961f[_0x9268('0x52')]['id']}})[_0x9268('0x2a')](handleEntityNotFound(_0x4a5d31,null))[_0x9268('0x2a')](function(_0x257009){if(_0x257009){return _0x257009[_0x9268('0x94')](_0x21961f[_0x9268('0x41')]['ids'])[_0x9268('0x2a')](function(){if(_[_0x9268('0x98')](_0x21961f[_0x9268('0x41')][_0x9268('0x83')])){for(var _0x1ae501=0x0;_0x1ae501<_0x21961f['query'][_0x9268('0x83')][_0x9268('0x45')];_0x1ae501+=0x1){socket['emit'](_0x9268('0x95'),{'UserId':Number(_0x21961f[_0x9268('0x41')][_0x9268('0x83')][_0x1ae501]),'VoiceQueueId':Number(_0x21961f[_0x9268('0x52')]['id'])});}}else{socket[_0x9268('0x80')]('userVoiceQueue:remove',{'UserId':Number(_0x21961f[_0x9268('0x41')]['ids']),'VoiceQueueId':Number(_0x21961f['params']['id'])});}});}})[_0x9268('0x2a')](function(_0x504bb6){return db['UserVoiceQueueRt']['destroy']({'where':{'VoiceQueueId':_0x21961f['params']['id'],'UserId':_0x21961f[_0x9268('0x41')][_0x9268('0x83')]}})[_0x9268('0x2a')](function(){return _0x504bb6;});})[_0x9268('0x2a')](respondWithStatusCode(_0x4a5d31,null))[_0x9268('0x50')](handleError(_0x4a5d31,null));};exports[_0x9268('0x99')]=function(_0x2062de,_0x3145dc,_0x227455){var _0x3cfaf0={};var _0x2dd42f={};var _0x403b05;var _0x3eea11;return db[_0x9268('0x3c')][_0x9268('0x62')]({'where':{'id':_0x2062de[_0x9268('0x52')]['id']}})[_0x9268('0x2a')](handleEntityNotFound(_0x3145dc,null))['then'](function(_0x274850){if(_0x274850){_0x403b05=_0x274850;_0x2dd42f['model']=_[_0x9268('0x53')](db[_0x9268('0x84')][_0x9268('0x3d')]);_0x2dd42f['query']=_['keys'](_0x2062de[_0x9268('0x41')]);_0x2dd42f['filters']=_[_0x9268('0x43')](_0x2dd42f[_0x9268('0x40')],_0x2dd42f[_0x9268('0x41')]);_0x3cfaf0[_0x9268('0x42')]=_[_0x9268('0x43')](_0x2dd42f[_0x9268('0x40')],qs[_0x9268('0x44')](_0x2062de[_0x9268('0x41')][_0x9268('0x44')]));_0x3cfaf0[_0x9268('0x42')]=_0x3cfaf0['attributes'][_0x9268('0x45')]?_0x3cfaf0[_0x9268('0x42')]:_0x2dd42f[_0x9268('0x40')];_0x3cfaf0['order']=qs[_0x9268('0x48')](_0x2062de[_0x9268('0x41')][_0x9268('0x48')]);_0x3cfaf0[_0x9268('0x4a')]=qs['filters'](_['pick'](_0x2062de[_0x9268('0x41')],_0x2dd42f[_0x9268('0x49')]));if(_0x2062de[_0x9268('0x41')]['filter']){_0x3cfaf0['where']=_[_0x9268('0x4b')](_0x3cfaf0['where'],{'$or':_['map'](_0x3cfaf0[_0x9268('0x42')],function(_0x29f4f8){var _0x183286={};_0x183286[_0x29f4f8]={'$like':'%'+_0x2062de['query'][_0x9268('0x30')]+'%'};return _0x183286;})});}_0x3cfaf0=_[_0x9268('0x4b')]({},_0x3cfaf0,_0x2062de[_0x9268('0x4d')]);return _0x403b05['getAgents'](_0x3cfaf0);}})[_0x9268('0x2a')](function(_0x3f1c80){if(_0x3f1c80){_0x3eea11=_0x3f1c80[_0x9268('0x45')];if(!_0x2062de[_0x9268('0x41')][_0x9268('0x46')]('nolimit')){_0x3cfaf0[_0x9268('0x23')]=qs[_0x9268('0x23')](_0x2062de[_0x9268('0x41')][_0x9268('0x23')]);_0x3cfaf0[_0x9268('0x20')]=qs[_0x9268('0x20')](_0x2062de[_0x9268('0x41')][_0x9268('0x20')]);}return _0x403b05['getAgents'](_0x3cfaf0);}})[_0x9268('0x2a')](function(_0x12afae){if(_0x12afae){return _0x12afae?{'count':_0x3eea11,'rows':_0x12afae}:null;}})[_0x9268('0x2a')](respondWithResult(_0x3145dc,null))[_0x9268('0x50')](handleError(_0x3145dc,null));};exports[_0x9268('0x9a')]=function(_0x5ce6d4,_0x4dca1c,_0x58e1ce){var _0x4e34dd={};var _0x2d5e5e={};var _0x38a419;var _0x5aa233;return db[_0x9268('0x3c')][_0x9268('0x62')]({'where':{'id':_0x5ce6d4[_0x9268('0x52')]['id']}})[_0x9268('0x2a')](handleEntityNotFound(_0x4dca1c,null))[_0x9268('0x2a')](function(_0x2b94f9){if(_0x2b94f9){_0x38a419=_0x2b94f9;_0x2d5e5e['model']=_[_0x9268('0x53')](db[_0x9268('0x7a')]['rawAttributes']);_0x2d5e5e[_0x9268('0x41')]=_[_0x9268('0x53')](_0x5ce6d4[_0x9268('0x41')]);_0x2d5e5e[_0x9268('0x49')]=_[_0x9268('0x43')](_0x2d5e5e['model'],_0x2d5e5e[_0x9268('0x41')]);_0x4e34dd['attributes']=_['intersection'](_0x2d5e5e[_0x9268('0x40')],qs[_0x9268('0x44')](_0x5ce6d4[_0x9268('0x41')][_0x9268('0x44')]));_0x4e34dd[_0x9268('0x42')]=_0x4e34dd[_0x9268('0x42')][_0x9268('0x45')]?_0x4e34dd[_0x9268('0x42')]:_0x2d5e5e[_0x9268('0x40')];_0x4e34dd['order']=qs[_0x9268('0x48')](_0x5ce6d4[_0x9268('0x41')][_0x9268('0x48')]);_0x4e34dd[_0x9268('0x4a')]=qs[_0x9268('0x49')](_['pick'](_0x5ce6d4[_0x9268('0x41')],_0x2d5e5e[_0x9268('0x49')]));if(_0x5ce6d4['query'][_0x9268('0x30')]){_0x4e34dd[_0x9268('0x4a')]=_[_0x9268('0x4b')](_0x4e34dd['where'],{'$or':_[_0x9268('0x32')](_0x4e34dd['attributes'],function(_0x4d2c6c){var _0x3bb016={};_0x3bb016[_0x4d2c6c]={'$like':'%'+_0x5ce6d4[_0x9268('0x41')][_0x9268('0x30')]+'%'};return _0x3bb016;})});}_0x4e34dd=_[_0x9268('0x4b')]({},_0x4e34dd,_0x5ce6d4[_0x9268('0x4d')]);return _0x38a419[_0x9268('0x9a')](_0x4e34dd);}})['then'](function(_0x53b5ab){if(_0x53b5ab){_0x5aa233=_0x53b5ab[_0x9268('0x45')];if(!_0x5ce6d4[_0x9268('0x41')][_0x9268('0x46')](_0x9268('0x64'))){_0x4e34dd[_0x9268('0x23')]=qs[_0x9268('0x23')](_0x5ce6d4[_0x9268('0x41')][_0x9268('0x23')]);_0x4e34dd[_0x9268('0x20')]=qs[_0x9268('0x20')](_0x5ce6d4[_0x9268('0x41')][_0x9268('0x20')]);}return _0x38a419[_0x9268('0x9a')](_0x4e34dd);}})[_0x9268('0x2a')](function(_0x50ea78){return _0x50ea78?{'count':_0x5aa233,'rows':_0x50ea78}:null;})[_0x9268('0x2a')](respondWithResult(_0x4dca1c,null))[_0x9268('0x50')](handleError(_0x4dca1c,null));};exports['getLists']=function(_0x5e8753,_0x3a1ef2,_0x18a139){var _0x14a23c={};var _0x42405e={};var _0x437218;var _0x40ad48;return db[_0x9268('0x3c')][_0x9268('0x62')]({'where':{'id':_0x5e8753['params']['id']}})[_0x9268('0x2a')](handleEntityNotFound(_0x3a1ef2,null))[_0x9268('0x2a')](function(_0x3a6aa5){if(_0x3a6aa5){_0x437218=_0x3a6aa5;_0x42405e[_0x9268('0x40')]=_[_0x9268('0x53')](db[_0x9268('0x9b')]['rawAttributes']);_0x42405e[_0x9268('0x41')]=_[_0x9268('0x53')](_0x5e8753[_0x9268('0x41')]);_0x42405e[_0x9268('0x49')]=_[_0x9268('0x43')](_0x42405e[_0x9268('0x40')],_0x42405e[_0x9268('0x41')]);_0x14a23c[_0x9268('0x42')]=_[_0x9268('0x43')](_0x42405e['model'],qs['fields'](_0x5e8753[_0x9268('0x41')][_0x9268('0x44')]));_0x14a23c[_0x9268('0x42')]=_0x14a23c[_0x9268('0x42')][_0x9268('0x45')]?_0x14a23c[_0x9268('0x42')]:_0x42405e[_0x9268('0x40')];_0x14a23c[_0x9268('0x47')]=qs['sort'](_0x5e8753['query'][_0x9268('0x48')]);_0x14a23c['where']=qs['filters'](_[_0x9268('0x65')](_0x5e8753['query'],_0x42405e[_0x9268('0x49')]));if(_0x5e8753[_0x9268('0x41')]['filter']){_0x14a23c[_0x9268('0x4a')]=_[_0x9268('0x4b')](_0x14a23c[_0x9268('0x4a')],{'$or':_['map'](_0x14a23c[_0x9268('0x42')],function(_0x10dafb){var _0x4dd656={};_0x4dd656[_0x10dafb]={'$like':'%'+_0x5e8753[_0x9268('0x41')][_0x9268('0x30')]+'%'};return _0x4dd656;})});}_0x14a23c=_[_0x9268('0x4b')]({},_0x14a23c,_0x5e8753[_0x9268('0x4d')]);return _0x437218[_0x9268('0x9c')](_0x14a23c);}})[_0x9268('0x2a')](function(_0x5b5c4b){if(_0x5b5c4b){_0x40ad48=_0x5b5c4b[_0x9268('0x45')];if(!_0x5e8753[_0x9268('0x41')][_0x9268('0x46')](_0x9268('0x64'))){_0x14a23c['limit']=qs[_0x9268('0x23')](_0x5e8753[_0x9268('0x41')][_0x9268('0x23')]);_0x14a23c[_0x9268('0x20')]=qs[_0x9268('0x20')](_0x5e8753['query'][_0x9268('0x20')]);}return _0x437218[_0x9268('0x9c')](_0x14a23c);}})[_0x9268('0x2a')](function(_0x80ebb3){if(_0x80ebb3){return _0x80ebb3?{'count':_0x40ad48,'rows':_0x80ebb3}:null;}})[_0x9268('0x2a')](respondWithResult(_0x3a1ef2,null))[_0x9268('0x50')](handleError(_0x3a1ef2,null));};exports[_0x9268('0x9d')]=function(_0x4ec6fd,_0x3d1d76,_0x556052){var _0x3172aa,_0x435251;return db[_0x9268('0x3c')][_0x9268('0x36')]({'where':{'id':_0x4ec6fd[_0x9268('0x52')]['id']}})[_0x9268('0x2a')](handleEntityNotFound(_0x3d1d76,null))['then'](function(_0x18df3e){if(_0x18df3e){_0x435251=_0x18df3e;return _0x18df3e[_0x9268('0x9d')](_0x4ec6fd['body']['ids'],_[_0x9268('0x5f')](_0x4ec6fd['body'],[_0x9268('0x83'),'id'])||{});}return null;})[_0x9268('0x9e')](function(_0x2460e6){var _0x1364d0;_0x3172aa=_0x2460e6||[];var _0x295785=[];if(_0x2460e6){for(var _0x2227d7=0x0;_0x2227d7<_0x2460e6['length'];_0x2227d7+=0x1){var _0x275b63=_0x2460e6[_0x2227d7][_0x9268('0x56')]({'plain':!![]});_0x435251[_0x9268('0x9f')]=_0x4ec6fd[_0x9268('0x5e')][_0x9268('0x9f')]?_0x4ec6fd[_0x9268('0x5e')][_0x9268('0x9f')]:_0x435251[_0x9268('0x9f')];switch(_0x435251[_0x9268('0x9f')]){case _0x9268('0xa0'):_0x1364d0=squel['insert']()[_0x9268('0xa1')](_0x9268('0xa2'))[_0x9268('0xa3')]([_0x9268('0xa4'),_0x9268('0xa5'),_0x9268('0xa6'),'ListId',_0x9268('0x66'),'createdAt','updatedAt'],squel[_0x9268('0x85')]()[_0x9268('0x86')](_0x9268('0xa4'),_0x9268('0xa4'))['field'](_0x9268('0xa7'),'scheduledAt')['field']('id',_0x9268('0xa6'))[_0x9268('0x86')](_0x275b63[_0x9268('0xa8')][_0x9268('0x8f')](),_0x9268('0xa9'))[_0x9268('0x86')](_0x4ec6fd[_0x9268('0x52')]['id'][_0x9268('0x8f')](),_0x9268('0x66'))[_0x9268('0x86')]('NOW()','createdAt')['field']('NOW()',_0x9268('0x5d'))[_0x9268('0x88')](_0x9268('0xaa'))[_0x9268('0x4a')](_0x9268('0xab'))[_0x9268('0x4a')](_0x9268('0xac'),_0x275b63[_0x9268('0xa8')][_0x9268('0x8f')]())[_0x9268('0x4a')](_0x9268('0xad'))[_0x9268('0x4a')](_0x9268('0xae'),squel[_0x9268('0x85')]()['field'](_0x9268('0xaf'))[_0x9268('0x88')]('cm_hopper_final')[_0x9268('0x4a')]('VoiceQueueId\x20=\x20?',_0x4ec6fd[_0x9268('0x52')]['id']['toString']()))[_0x9268('0x4a')](_0x9268('0xae'),squel[_0x9268('0x85')]()[_0x9268('0x86')]('COALESCE(phone,\x27\x27)')[_0x9268('0x88')](_0x9268('0xa2'))[_0x9268('0x4a')](_0x9268('0x8d'),_0x4ec6fd[_0x9268('0x52')]['id'][_0x9268('0x8f')]())))[_0x9268('0x8f')]();break;case _0x9268('0xb0'):_0x1364d0=squel[_0x9268('0xb1')]()[_0x9268('0xa1')](_0x9268('0xa2'))[_0x9268('0xa3')]([_0x9268('0xa4'),_0x9268('0xa5'),_0x9268('0xa6'),_0x9268('0xa9'),_0x9268('0x66'),_0x9268('0xb2'),_0x9268('0x5d')],squel[_0x9268('0x85')]()[_0x9268('0x86')](_0x9268('0xa4'),_0x9268('0xa4'))[_0x9268('0x86')]('NOW()',_0x9268('0xa5'))['field']('id','ContactId')['field'](_0x275b63['CmListId'][_0x9268('0x8f')](),_0x9268('0xa9'))[_0x9268('0x86')](_0x4ec6fd[_0x9268('0x52')]['id'][_0x9268('0x8f')](),_0x9268('0x66'))[_0x9268('0x86')](_0x9268('0xa7'),'createdAt')[_0x9268('0x86')](_0x9268('0xa7'),_0x9268('0x5d'))[_0x9268('0x88')](_0x9268('0xaa'))[_0x9268('0x4a')](_0x9268('0xab'))[_0x9268('0x4a')](_0x9268('0xac'),_0x275b63['CmListId']['toString']())['where'](_0x9268('0xad'))[_0x9268('0x4a')](_0x9268('0xae'),squel[_0x9268('0x85')]()['field'](_0x9268('0xb3'))[_0x9268('0x88')]('cm_hopper')['where'](_0x9268('0x8d'),_0x4ec6fd[_0x9268('0x52')]['id'][_0x9268('0x8f')]())))['toString']();break;default:_0x1364d0=squel[_0x9268('0xb1')]()['into'](_0x9268('0xa2'))['fromQuery']([_0x9268('0xa4'),_0x9268('0xa5'),'ContactId',_0x9268('0xa9'),'VoiceQueueId',_0x9268('0xb2'),_0x9268('0x5d')],squel[_0x9268('0x85')]()[_0x9268('0x86')](_0x9268('0xa4'),_0x9268('0xa4'))[_0x9268('0x86')](_0x9268('0xa7'),_0x9268('0xa5'))[_0x9268('0x86')]('id',_0x9268('0xa6'))[_0x9268('0x86')](_0x275b63[_0x9268('0xa8')][_0x9268('0x8f')](),'ListId')[_0x9268('0x86')](_0x4ec6fd[_0x9268('0x52')]['id'][_0x9268('0x8f')](),_0x9268('0x66'))[_0x9268('0x86')](_0x9268('0xa7'),'createdAt')['field'](_0x9268('0xa7'),_0x9268('0x5d'))[_0x9268('0x88')](_0x9268('0xaa'))[_0x9268('0x4a')](_0x9268('0xab'))['where'](_0x9268('0xac'),_0x275b63[_0x9268('0xa8')][_0x9268('0x8f')]())[_0x9268('0x4a')](_0x9268('0xad')))['toString']();}_0x295785[_0x9268('0x97')](db[_0x9268('0x76')][_0x9268('0x41')](_0x1364d0));}return BPromise['all'](_0x295785);}})[_0x9268('0x2a')](function(){return _0x3172aa;})[_0x9268('0x2a')](respondWithResult(_0x3d1d76,null))[_0x9268('0x50')](handleError(_0x3d1d76,null));};exports[_0x9268('0xb4')]=function(_0x3f2c54,_0xb08891,_0x27caa0){return db[_0x9268('0x3c')][_0x9268('0x36')]({'where':{'id':_0x3f2c54['params']['id']}})[_0x9268('0x2a')](handleEntityNotFound(_0xb08891,null))[_0x9268('0x2a')](function(_0x5f5973){if(_0x5f5973){return _0x5f5973[_0x9268('0xb4')](_0x3f2c54['query']['ids']);}})[_0x9268('0x2a')](function(_0x2c014c){if(_0x2c014c){return db[_0x9268('0x63')][_0x9268('0x2b')]({'where':{'ListId':_0x3f2c54['query'][_0x9268('0x83')],'VoiceQueueId':_0x3f2c54[_0x9268('0x52')]['id']}})[_0x9268('0x2a')](function(){return _0x2c014c;});}})['then'](respondWithStatusCode(_0xb08891,null))[_0x9268('0x50')](handleError(_0xb08891,null));};exports[_0x9268('0xb5')]=function(_0x39958d,_0x4e09e7,_0x228b02){var _0xdf4b07={};var _0x63e3cf={};var _0x187771;var _0x3771e1;return db[_0x9268('0x3c')]['findOne']({'where':{'id':_0x39958d[_0x9268('0x52')]['id']}})[_0x9268('0x2a')](handleEntityNotFound(_0x4e09e7,null))[_0x9268('0x2a')](function(_0x12edc2){if(_0x12edc2){_0x187771=_0x12edc2;_0x63e3cf[_0x9268('0x40')]=_[_0x9268('0x53')](db[_0x9268('0x9b')][_0x9268('0x3d')]);_0x63e3cf['query']=_[_0x9268('0x53')](_0x39958d[_0x9268('0x41')]);_0x63e3cf[_0x9268('0x49')]=_['intersection'](_0x63e3cf[_0x9268('0x40')],_0x63e3cf[_0x9268('0x41')]);_0xdf4b07[_0x9268('0x42')]=_['intersection'](_0x63e3cf[_0x9268('0x40')],qs[_0x9268('0x44')](_0x39958d[_0x9268('0x41')]['fields']));_0xdf4b07[_0x9268('0x42')]=_0xdf4b07[_0x9268('0x42')][_0x9268('0x45')]?_0xdf4b07['attributes']:_0x63e3cf[_0x9268('0x40')];_0xdf4b07[_0x9268('0x47')]=qs[_0x9268('0x48')](_0x39958d[_0x9268('0x41')]['sort']);_0xdf4b07[_0x9268('0x4a')]=qs[_0x9268('0x49')](_[_0x9268('0x65')](_0x39958d[_0x9268('0x41')],_0x63e3cf[_0x9268('0x49')]));if(_0x39958d[_0x9268('0x41')][_0x9268('0x30')]){_0xdf4b07['where']=_['merge'](_0xdf4b07[_0x9268('0x4a')],{'$or':_[_0x9268('0x32')](_0xdf4b07[_0x9268('0x42')],function(_0xe5853c){var _0x15fc31={};_0x15fc31[_0xe5853c]={'$like':'%'+_0x39958d['query'][_0x9268('0x30')]+'%'};return _0x15fc31;})});}_0xdf4b07=_['merge']({},_0xdf4b07,_0x39958d[_0x9268('0x4d')]);return _0x187771['getBlackLists'](_0xdf4b07);}})[_0x9268('0x2a')](function(_0x2b4869){if(_0x2b4869){_0x3771e1=_0x2b4869[_0x9268('0x45')];if(!_0x39958d['query']['hasOwnProperty']('nolimit')){_0xdf4b07[_0x9268('0x23')]=qs[_0x9268('0x23')](_0x39958d[_0x9268('0x41')][_0x9268('0x23')]);_0xdf4b07[_0x9268('0x20')]=qs[_0x9268('0x20')](_0x39958d[_0x9268('0x41')][_0x9268('0x20')]);}return _0x187771[_0x9268('0xb5')](_0xdf4b07);}})[_0x9268('0x2a')](function(_0x4a5c65){if(_0x4a5c65){return _0x4a5c65?{'count':_0x3771e1,'rows':_0x4a5c65}:null;}})[_0x9268('0x2a')](respondWithResult(_0x4e09e7,null))[_0x9268('0x50')](handleError(_0x4e09e7,null));};exports[_0x9268('0xb6')]=function(_0xf1694c,_0x543e63,_0x4ab7f5){var _0x40baf0,_0x3164bb;return db['VoiceQueue'][_0x9268('0x36')]({'where':{'id':_0xf1694c[_0x9268('0x52')]['id']}})['then'](handleEntityNotFound(_0x543e63,null))[_0x9268('0x2a')](function(_0x43e938){if(_0x43e938){_0x3164bb=_0x43e938;return _0x43e938[_0x9268('0xb6')](_0xf1694c[_0x9268('0x5e')]['ids'],_[_0x9268('0x5f')](_0xf1694c[_0x9268('0x5e')],[_0x9268('0x83'),'id'])||{});}return null;})[_0x9268('0x9e')](function(_0x35590b){var _0x401d3c;_0x40baf0=_0x35590b||[];var _0x5c64e7=[];if(_0x35590b){for(var _0x45d060=0x0;_0x45d060<_0x35590b[_0x9268('0x45')];_0x45d060+=0x1){var _0x5f4d81=_0x35590b[_0x45d060][_0x9268('0x56')]({'plain':!![]});_0x401d3c=squel[_0x9268('0xb1')]()[_0x9268('0xa1')]('cm_hopper_black')['fromQuery'](['phone',_0x9268('0xa6'),_0x9268('0xa9'),_0x9268('0x66'),_0x9268('0xb2'),_0x9268('0x5d')],squel[_0x9268('0x85')]()[_0x9268('0x86')]('phone',_0x9268('0xa4'))[_0x9268('0x86')]('id',_0x9268('0xa6'))[_0x9268('0x86')](_0x5f4d81[_0x9268('0xa8')]['toString'](),_0x9268('0xa9'))[_0x9268('0x86')](_0xf1694c[_0x9268('0x52')]['id'][_0x9268('0x8f')](),_0x9268('0x66'))['field']('NOW()',_0x9268('0xb2'))[_0x9268('0x86')](_0x9268('0xa7'),_0x9268('0x5d'))[_0x9268('0x88')](_0x9268('0xaa'))['where'](_0x9268('0xab'))[_0x9268('0x4a')](_0x9268('0xac'),_0x5f4d81[_0x9268('0xa8')][_0x9268('0x8f')]())['where']('phone\x20IS\x20NOT\x20NULL'))[_0x9268('0x8f')]();_0x5c64e7[_0x9268('0x97')](db[_0x9268('0x76')][_0x9268('0x41')](_0x401d3c));}return BPromise['all'](_0x5c64e7);}})[_0x9268('0x2a')](function(){return _0x40baf0;})['then'](respondWithResult(_0x543e63,null))[_0x9268('0x50')](handleError(_0x543e63,null));};exports[_0x9268('0xb7')]=function(_0xfaa947,_0x3d26f2,_0x173992){return db[_0x9268('0x3c')]['find']({'where':{'id':_0xfaa947[_0x9268('0x52')]['id']}})[_0x9268('0x2a')](handleEntityNotFound(_0x3d26f2,null))['then'](function(_0x152881){if(_0x152881){return _0x152881['removeBlackLists'](_0xfaa947[_0x9268('0x41')][_0x9268('0x83')]);}})[_0x9268('0x2a')](function(_0x1de925){if(_0x1de925){return db[_0x9268('0x6d')]['destroy']({'where':{'ListId':_0xfaa947[_0x9268('0x41')][_0x9268('0x83')],'VoiceQueueId':_0xfaa947[_0x9268('0x52')]['id']}})[_0x9268('0x2a')](function(){return _0x1de925;});}})['then'](respondWithStatusCode(_0x3d26f2,null))['catch'](handleError(_0x3d26f2,null));};