ab32fb99fc2b86edc3471b68bc04acab3d712101
[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 _0x46f3=['sequelize','transaction','each','UserVoiceQueue','findOrCreate','UserVoiceQueueRt','upsert','interface','format','emit','userVoiceQueue:save','removeTeams','select','field','from','team_has_voice_queues','join','user_has_teams','ut.TeamId\x20=\x20tq.TeamId','VoiceQueueId\x20=\x20?','ut.UserId\x20=\x20?','push','toString','QueryTypes','SELECT','all','compact','removeAgents','forEach','addAgents','ids','spread','isEmpty','SIP/%s','isArray','getAgents','getMembers','getLists','CmList','addLists','dialCheckDuplicateType','always','insert','into','cm_hopper','fromQuery','phone','ContactId','ListId','NOW()','scheduledAt','CmListId','cm_contacts','deletedAt\x20IS\x20NULL','ListId\x20=\x20?','phone\x20NOT\x20IN\x20(?)','COALESCE(calleridnum,\x27\x27)','cm_hopper_final','COALESCE(phone,\x27\x27)','onlyIfOpen','phone\x20IS\x20NOT\x20NULL','removeLists','getBlackLists','cm_hopper_black','removeBlackLists','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','util','path','sox','to-csv','ejs','squel','crypto','desk.js','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','localhost','./voiceQueue.socket','register','sendStatus','status','end','json','count','offset','limit','set','Content-Range','apply','reject','save','update','then','destroy','get','inbound','QueueCampaigns','outbound','filter','map','value','type','error','stack','name','send','index','VoiceQueue','rawAttributes','key','model','query','keys','intersection','attributes','fields','length','hasOwnProperty','order','sort','filters','pick','where','merge','VIRTUAL','options','includeAll','include','findAll','rows','catch','params','find','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','VoiceQueues','UserProfileSection','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','clone','omit','createdAt','updatedAt','userProfileId','UserProfileResource','getHoppers','findOne','CmHopperHistory','nolimit','VoiceQueueId','CmHopperFinal','getHopperBlacks','CmHopperBlack','getTeams','Team','addTeams','teams','User','Agents','online','voicePause','flatMap','penalty'];(function(_0x2fc5a9,_0x2a92f0){var _0x2b1b8b=function(_0x1f4e55){while(--_0x1f4e55){_0x2fc5a9['push'](_0x2fc5a9['shift']());}};_0x2b1b8b(++_0x2a92f0);}(_0x46f3,0xf9));var _0x346f=function(_0x5a9e50,_0x48dd72){_0x5a9e50=_0x5a9e50-0x0;var _0x26cbd8=_0x46f3[_0x5a9e50];return _0x26cbd8;};'use strict';var pdf=require(_0x346f('0x0'));var emlformat=require(_0x346f('0x1'));var rimraf=require(_0x346f('0x2'));var zipdir=require(_0x346f('0x3'));var jsonpatch=require(_0x346f('0x4'));var rp=require(_0x346f('0x5'));var moment=require(_0x346f('0x6'));var BPromise=require('bluebird');var Mustache=require(_0x346f('0x7'));var util=require(_0x346f('0x8'));var path=require(_0x346f('0x9'));var sox=require(_0x346f('0xa'));var csv=require(_0x346f('0xb'));var ejs=require(_0x346f('0xc'));var fs=require('fs');var _=require('lodash');var squel=require(_0x346f('0xd'));var crypto=require(_0x346f('0xe'));var jsforce=require('jsforce');var deskjs=require(_0x346f('0xf'));var toCsv=require(_0x346f('0xb'));var querystring=require('querystring');var Papa=require(_0x346f('0x10'));var Redis=require(_0x346f('0x11'));var authService=require('../../components/auth/service');var qs=require(_0x346f('0x12'));var as=require(_0x346f('0x13'));var hardwareService=require(_0x346f('0x14'));var logger=require(_0x346f('0x15'))(_0x346f('0x16'));var utils=require(_0x346f('0x17'));var config=require(_0x346f('0x18'));var licenseUtil=require(_0x346f('0x19'));var db=require(_0x346f('0x1a'))['db'];config[_0x346f('0x1b')]=_[_0x346f('0x1c')](config['redis'],{'host':_0x346f('0x1d'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x346f('0x1b')]));require(_0x346f('0x1e'))[_0x346f('0x1f')](socket);function respondWithStatusCode(_0x48525a,_0x3d3249){_0x3d3249=_0x3d3249||0xcc;return function(_0xfca475){if(_0xfca475){return _0x48525a[_0x346f('0x20')](_0x3d3249);}return _0x48525a[_0x346f('0x21')](_0x3d3249)[_0x346f('0x22')]();};}function respondWithResult(_0x37ee7c,_0x5e035c){_0x5e035c=_0x5e035c||0xc8;return function(_0x3cf89f){if(_0x3cf89f){return _0x37ee7c[_0x346f('0x21')](_0x5e035c)[_0x346f('0x23')](_0x3cf89f);}};}function respondWithFilteredResult(_0x5002ad,_0x13010c){return function(_0x2b30ed){if(_0x2b30ed){var _0x20d1d3=_0x2b30ed[_0x346f('0x24')],_0x2b0ad4=_0x13010c['offset'],_0x53c0ed=_0x13010c[_0x346f('0x25')]+_0x13010c[_0x346f('0x26')],_0xe9eecf;if(_0x53c0ed>=_0x20d1d3){_0x53c0ed=_0x20d1d3;_0xe9eecf=0xc8;}else{_0xe9eecf=0xce;}_0x5002ad['status'](_0xe9eecf);return _0x5002ad[_0x346f('0x27')](_0x346f('0x28'),_0x2b0ad4+'-'+_0x53c0ed+'/'+_0x20d1d3)[_0x346f('0x23')](_0x2b30ed);}return null;};}function patchUpdates(_0x1e319c){return function(_0x2311a8){try{jsonpatch[_0x346f('0x29')](_0x2311a8,_0x1e319c,!![]);}catch(_0x45d62b){return BPromise[_0x346f('0x2a')](_0x45d62b);}return _0x2311a8[_0x346f('0x2b')]();};}function saveUpdates(_0x2158c1,_0x519371){return function(_0x1d9a51){if(_0x1d9a51){return _0x1d9a51[_0x346f('0x2c')](_0x2158c1)[_0x346f('0x2d')](function(_0x46113f){return _0x46113f;});}return null;};}function removeEntity(_0x1d5e2b,_0x5a6ac0){return function(_0x14319e){if(_0x14319e){return _0x14319e[_0x346f('0x2e')]()['then'](function(){var _0x560615=_0x14319e[_0x346f('0x2f')]({'plain':!![]});var _0x4c3f30=[{'name':'VoiceQueues','value':_0x346f('0x30'),'ignore':![]},{'name':_0x346f('0x31'),'value':_0x346f('0x32'),'ignore':![]}];var _0x166bce=_(_0x4c3f30)[_0x346f('0x33')]('ignore')[_0x346f('0x34')](_0x346f('0x35'))[_0x346f('0x35')]();if(_['includes'](_0x166bce,_0x560615[_0x346f('0x36')])){return;}var _0x8223ea=_['find'](_0x4c3f30,[_0x346f('0x35'),_0x560615[_0x346f('0x36')]])['name'];return db['UserProfileResource'][_0x346f('0x2e')]({'where':{'type':_0x8223ea,'resourceId':_0x560615['id']}})[_0x346f('0x2d')](function(){return _0x14319e;});})[_0x346f('0x2d')](function(){_0x1d5e2b[_0x346f('0x21')](0xcc)[_0x346f('0x22')]();});}};}function handleEntityNotFound(_0x501eea,_0x5c928c){return function(_0x2aa6cc){if(!_0x2aa6cc){_0x501eea[_0x346f('0x20')](0x194);}return _0x2aa6cc;};}function handleError(_0x594961,_0x5103e5){_0x5103e5=_0x5103e5||0x1f4;return function(_0x3f6202){logger[_0x346f('0x37')](_0x3f6202[_0x346f('0x38')]);if(_0x3f6202[_0x346f('0x39')]){delete _0x3f6202[_0x346f('0x39')];}_0x594961[_0x346f('0x21')](_0x5103e5)[_0x346f('0x3a')](_0x3f6202);};}exports[_0x346f('0x3b')]=function(_0x235c97,_0x547c11){var _0x17d09f={},_0x24e81e={},_0x5e1b73={'count':0x0,'rows':[]};var _0x916a9c=_[_0x346f('0x34')](db[_0x346f('0x3c')][_0x346f('0x3d')],function(_0x167eef){return{'name':_0x167eef['fieldName'],'type':_0x167eef[_0x346f('0x36')][_0x346f('0x3e')]};});_0x24e81e[_0x346f('0x3f')]=_[_0x346f('0x34')](_0x916a9c,_0x346f('0x39'));_0x24e81e[_0x346f('0x40')]=_[_0x346f('0x41')](_0x235c97['query']);_0x24e81e['filters']=_[_0x346f('0x42')](_0x24e81e[_0x346f('0x3f')],_0x24e81e[_0x346f('0x40')]);_0x17d09f[_0x346f('0x43')]=_['intersection'](_0x24e81e[_0x346f('0x3f')],qs[_0x346f('0x44')](_0x235c97[_0x346f('0x40')]['fields']));_0x17d09f[_0x346f('0x43')]=_0x17d09f[_0x346f('0x43')][_0x346f('0x45')]?_0x17d09f['attributes']:_0x24e81e['model'];if(!_0x235c97[_0x346f('0x40')][_0x346f('0x46')]('nolimit')){_0x17d09f[_0x346f('0x26')]=qs[_0x346f('0x26')](_0x235c97[_0x346f('0x40')][_0x346f('0x26')]);_0x17d09f[_0x346f('0x25')]=qs[_0x346f('0x25')](_0x235c97[_0x346f('0x40')][_0x346f('0x25')]);}_0x17d09f[_0x346f('0x47')]=qs[_0x346f('0x48')](_0x235c97[_0x346f('0x40')][_0x346f('0x48')]);_0x17d09f['where']=qs[_0x346f('0x49')](_[_0x346f('0x4a')](_0x235c97[_0x346f('0x40')],_0x24e81e['filters']),_0x916a9c);if(_0x235c97[_0x346f('0x40')]['filter']){_0x17d09f[_0x346f('0x4b')]=_[_0x346f('0x4c')](_0x17d09f[_0x346f('0x4b')],{'$or':_[_0x346f('0x34')](_0x916a9c,function(_0x1c4604){if(_0x1c4604[_0x346f('0x36')]!==_0x346f('0x4d')){var _0x9da185={};_0x9da185[_0x1c4604['name']]={'$like':'%'+_0x235c97['query'][_0x346f('0x33')]+'%'};return _0x9da185;}})});}_0x17d09f=_[_0x346f('0x4c')]({},_0x17d09f,_0x235c97[_0x346f('0x4e')]);var _0x73c34d={'where':_0x17d09f[_0x346f('0x4b')]};return db[_0x346f('0x3c')][_0x346f('0x24')](_0x73c34d)[_0x346f('0x2d')](function(_0x12a0eb){_0x5e1b73['count']=_0x12a0eb;if(_0x235c97['query'][_0x346f('0x4f')]){_0x17d09f[_0x346f('0x50')]=[{'all':!![]}];}return db['VoiceQueue'][_0x346f('0x51')](_0x17d09f);})[_0x346f('0x2d')](function(_0x453f38){_0x5e1b73[_0x346f('0x52')]=_0x453f38;return _0x5e1b73;})[_0x346f('0x2d')](respondWithFilteredResult(_0x547c11,_0x17d09f))[_0x346f('0x53')](handleError(_0x547c11,null));};exports['show']=function(_0x1e7bb0,_0x5a7ec8){var _0x2a46cf={'raw':![],'where':{'id':_0x1e7bb0[_0x346f('0x54')]['id']}},_0xe49feb={};_0xe49feb[_0x346f('0x3f')]=_[_0x346f('0x41')](db[_0x346f('0x3c')][_0x346f('0x3d')]);_0xe49feb['query']=_[_0x346f('0x41')](_0x1e7bb0['query']);_0xe49feb['filters']=_[_0x346f('0x42')](_0xe49feb[_0x346f('0x3f')],_0xe49feb[_0x346f('0x40')]);_0x2a46cf[_0x346f('0x43')]=_[_0x346f('0x42')](_0xe49feb[_0x346f('0x3f')],qs['fields'](_0x1e7bb0['query'][_0x346f('0x44')]));_0x2a46cf[_0x346f('0x43')]=_0x2a46cf[_0x346f('0x43')][_0x346f('0x45')]?_0x2a46cf['attributes']:_0xe49feb[_0x346f('0x3f')];if(_0x1e7bb0[_0x346f('0x40')][_0x346f('0x4f')]){_0x2a46cf[_0x346f('0x50')]=[{'all':!![]}];}_0x2a46cf=_['merge']({},_0x2a46cf,_0x1e7bb0[_0x346f('0x4e')]);return db['VoiceQueue'][_0x346f('0x55')](_0x2a46cf)['then'](handleEntityNotFound(_0x5a7ec8,null))[_0x346f('0x2d')](respondWithResult(_0x5a7ec8,null))[_0x346f('0x53')](handleError(_0x5a7ec8,null));};exports['create']=function(_0x45f85f,_0x545eaa){return db[_0x346f('0x3c')][_0x346f('0x56')](_0x45f85f[_0x346f('0x57')],{})[_0x346f('0x2d')](function(_0x10c631){var _0x7603c8=_0x45f85f[_0x346f('0x58')][_0x346f('0x2f')]({'plain':!![]});if(!_0x7603c8)throw new Error(_0x346f('0x59'));if(_0x7603c8[_0x346f('0x5a')]===_0x346f('0x58')){var _0x2438c9=_0x10c631[_0x346f('0x2f')]({'plain':!![]});var _0x275854=[{'name':_0x346f('0x5b'),'value':_0x346f('0x30')},{'name':'QueueCampaigns','value':_0x346f('0x32')}];var _0x53e571=_[_0x346f('0x55')](_0x275854,[_0x346f('0x35'),_0x2438c9[_0x346f('0x36')]])[_0x346f('0x39')];return db[_0x346f('0x5c')][_0x346f('0x55')]({'where':{'name':_0x53e571,'userProfileId':_0x7603c8['userProfileId']},'raw':!![]})[_0x346f('0x2d')](function(_0x4d7bfd){if(_0x4d7bfd&&_0x4d7bfd[_0x346f('0x5d')]===0x0){return db['UserProfileResource'][_0x346f('0x56')]({'name':_0x2438c9['name'],'resourceId':_0x2438c9['id'],'type':_0x4d7bfd[_0x346f('0x39')],'sectionId':_0x4d7bfd['id']},{})[_0x346f('0x2d')](function(){return _0x10c631;});}else{return _0x10c631;}})[_0x346f('0x53')](function(_0x5cfe44){logger[_0x346f('0x37')](_0x346f('0x5e'),_0x5cfe44);throw _0x5cfe44;});}return _0x10c631;})[_0x346f('0x2d')](respondWithResult(_0x545eaa,0xc9))[_0x346f('0x53')](handleError(_0x545eaa,null));};exports[_0x346f('0x5f')]=function(_0xb1e0d7,_0x4ed3bc){var _0x1c1256={'where':{'id':_0xb1e0d7[_0x346f('0x54')]['id']}},_0x428aea={};_0x428aea[_0x346f('0x3f')]=_[_0x346f('0x41')](db[_0x346f('0x3c')]['rawAttributes']);_0x1c1256[_0x346f('0x43')]=_[_0x346f('0x42')](_0x428aea[_0x346f('0x3f')],qs[_0x346f('0x44')](_0xb1e0d7['query'][_0x346f('0x44')]));_0x1c1256['attributes']=_0x1c1256[_0x346f('0x43')][_0x346f('0x45')]?_0x1c1256['attributes']:_0x428aea[_0x346f('0x3f')];if(_0xb1e0d7['query'][_0x346f('0x4f')]){_0x1c1256['include']=[{'all':!![]}];}_0x1c1256=_[_0x346f('0x4c')]({},_0x1c1256,_0xb1e0d7['options']);return db[_0x346f('0x3c')][_0x346f('0x55')](_0x1c1256)['then'](handleEntityNotFound(_0x4ed3bc,null))['then'](function(_0x5ba986){if(_0x5ba986){var _0x1b3837=_0x5ba986[_0x346f('0x2f')]({'plain':!![]});_0x1b3837=qs[_0x346f('0x60')](_0x1b3837,['id',_0x346f('0x61'),_0x346f('0x62')]);_0xb1e0d7['body']=_[_0x346f('0x60')](_0xb1e0d7[_0x346f('0x57')],['id',_0x346f('0x61'),_0x346f('0x62')]);return db[_0x346f('0x3c')][_0x346f('0x56')](_[_0x346f('0x4c')](_0x1b3837,_0xb1e0d7[_0x346f('0x57')]),{'include':_0xb1e0d7['query']['includeAll']?[{'all':!![]}]:undefined})[_0x346f('0x2d')](function(_0x14d111){var _0x503732=_0xb1e0d7[_0x346f('0x58')][_0x346f('0x2f')]({'plain':!![]});if(!_0x503732)throw new Error(_0x346f('0x59'));if(_0x503732['role']==='user'){var _0x14a25f=_0x14d111[_0x346f('0x2f')]({'plain':!![]});var _0x2e35ea=[{'name':_0x346f('0x5b'),'value':_0x346f('0x30')},{'name':'QueueCampaigns','value':_0x346f('0x32')}];var _0x4b17b9=_[_0x346f('0x55')](_0x2e35ea,['value',_0x14a25f[_0x346f('0x36')]])[_0x346f('0x39')];return db[_0x346f('0x5c')][_0x346f('0x55')]({'where':{'name':_0x4b17b9,'userProfileId':_0x503732[_0x346f('0x63')]},'raw':!![]})['then'](function(_0x34ac40){if(_0x34ac40&&_0x34ac40['autoAssociation']===0x0){return db[_0x346f('0x64')][_0x346f('0x56')]({'name':_0x14a25f['name'],'resourceId':_0x14a25f['id'],'type':_0x34ac40[_0x346f('0x39')],'sectionId':_0x34ac40['id']},{})['then'](function(){return _0x14d111;});}else{return _0x14d111;}})[_0x346f('0x53')](function(_0x384786){logger[_0x346f('0x37')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x384786);throw _0x384786;});}return _0x14d111;});}})['then'](respondWithResult(_0x4ed3bc,0xc9))[_0x346f('0x53')](handleError(_0x4ed3bc,null));};exports[_0x346f('0x2c')]=function(_0x20ec67,_0x3ae29e){if(_0x20ec67['body']['id']){delete _0x20ec67[_0x346f('0x57')]['id'];}return db[_0x346f('0x3c')][_0x346f('0x55')]({'where':{'id':_0x20ec67[_0x346f('0x54')]['id']}})[_0x346f('0x2d')](handleEntityNotFound(_0x3ae29e,null))[_0x346f('0x2d')](saveUpdates(_0x20ec67[_0x346f('0x57')],null))[_0x346f('0x2d')](respondWithResult(_0x3ae29e,null))[_0x346f('0x53')](handleError(_0x3ae29e,null));};exports[_0x346f('0x2e')]=function(_0x3bcd2e,_0x169d3d){return db[_0x346f('0x3c')]['find']({'where':{'id':_0x3bcd2e[_0x346f('0x54')]['id']}})['then'](handleEntityNotFound(_0x169d3d,null))[_0x346f('0x2d')](removeEntity(_0x169d3d,null))[_0x346f('0x53')](handleError(_0x169d3d,null));};exports[_0x346f('0x65')]=function(_0x2e144f,_0x1b7075,_0x1fefdb){var _0x21e802={'raw':![],'where':{}};var _0xd3b38b={};var _0x26a7d8={'count':0x0,'rows':[]};return db[_0x346f('0x3c')][_0x346f('0x66')]({'where':{'id':_0x2e144f[_0x346f('0x54')]['id']}})[_0x346f('0x2d')](handleEntityNotFound(_0x1b7075,null))[_0x346f('0x2d')](function(_0x3f097c){if(_0x3f097c){_0xd3b38b[_0x346f('0x3f')]=_[_0x346f('0x41')](db['CmHopper']['rawAttributes']);_0xd3b38b[_0x346f('0x40')]=_[_0x346f('0x41')](_0x2e144f['query']);_0xd3b38b[_0x346f('0x49')]=_[_0x346f('0x42')](_0xd3b38b['model'],_0xd3b38b[_0x346f('0x40')]);_0x21e802[_0x346f('0x43')]=_[_0x346f('0x42')](_0xd3b38b[_0x346f('0x3f')],qs['fields'](_0x2e144f[_0x346f('0x40')][_0x346f('0x44')]));_0x21e802[_0x346f('0x43')]=_0x21e802[_0x346f('0x43')][_0x346f('0x45')]?_0x21e802[_0x346f('0x43')]:_0xd3b38b['model'];if(!_0x2e144f[_0x346f('0x40')][_0x346f('0x46')]('nolimit')){_0x21e802[_0x346f('0x26')]=qs['limit'](_0x2e144f[_0x346f('0x40')][_0x346f('0x26')]);_0x21e802[_0x346f('0x25')]=qs['offset'](_0x2e144f['query'][_0x346f('0x25')]);}_0x21e802[_0x346f('0x47')]=qs[_0x346f('0x48')](_0x2e144f[_0x346f('0x40')]['sort']);_0x21e802[_0x346f('0x4b')]=qs['filters'](_[_0x346f('0x4a')](_0x2e144f[_0x346f('0x40')],_0xd3b38b[_0x346f('0x49')]));_0x21e802[_0x346f('0x4b')]['VoiceQueueId']=_0x3f097c['id'];if(_0x2e144f['query']['filter']){_0x21e802[_0x346f('0x4b')]=_[_0x346f('0x4c')](_0x21e802[_0x346f('0x4b')],{'$or':_[_0x346f('0x34')](_0x21e802[_0x346f('0x43')],function(_0x3c6eac){var _0x2a9a01={};_0x2a9a01[_0x3c6eac]={'$like':'%'+_0x2e144f[_0x346f('0x40')][_0x346f('0x33')]+'%'};return _0x2a9a01;})});}_0x21e802=_[_0x346f('0x4c')]({},_0x21e802,_0x2e144f['options']);return db['CmHopper']['count']({'where':_0x21e802[_0x346f('0x4b')]})[_0x346f('0x2d')](function(_0x2942b1){_0x26a7d8[_0x346f('0x24')]=_0x2942b1;if(_0x2e144f[_0x346f('0x40')][_0x346f('0x4f')]){_0x21e802['include']=[{'all':!![]}];}return db['CmHopper'][_0x346f('0x51')](_0x21e802);})[_0x346f('0x2d')](function(_0xb93cd8){_0x26a7d8[_0x346f('0x52')]=_0xb93cd8;return _0x26a7d8;});}})[_0x346f('0x2d')](respondWithFilteredResult(_0x1b7075,_0x21e802))['catch'](handleError(_0x1b7075,null));};exports['getHopperHistories']=function(_0x4a77cd,_0x359b80,_0x17b450){var _0x380e9b={'raw':!![],'where':{}};var _0x5da2e2={};var _0x582d2e={'count':0x0,'rows':[]};return db['VoiceQueue'][_0x346f('0x66')]({'where':{'id':_0x4a77cd[_0x346f('0x54')]['id']}})[_0x346f('0x2d')](handleEntityNotFound(_0x359b80,null))['then'](function(_0x2cfee2){if(_0x2cfee2){_0x5da2e2['model']=_[_0x346f('0x41')](db[_0x346f('0x67')][_0x346f('0x3d')]);_0x5da2e2[_0x346f('0x40')]=_[_0x346f('0x41')](_0x4a77cd[_0x346f('0x40')]);_0x5da2e2[_0x346f('0x49')]=_[_0x346f('0x42')](_0x5da2e2[_0x346f('0x3f')],_0x5da2e2[_0x346f('0x40')]);_0x380e9b[_0x346f('0x43')]=_[_0x346f('0x42')](_0x5da2e2[_0x346f('0x3f')],qs[_0x346f('0x44')](_0x4a77cd['query'][_0x346f('0x44')]));_0x380e9b['attributes']=_0x380e9b['attributes']['length']?_0x380e9b[_0x346f('0x43')]:_0x5da2e2['model'];if(!_0x4a77cd[_0x346f('0x40')][_0x346f('0x46')](_0x346f('0x68'))){_0x380e9b[_0x346f('0x26')]=qs['limit'](_0x4a77cd[_0x346f('0x40')]['limit']);_0x380e9b[_0x346f('0x25')]=qs[_0x346f('0x25')](_0x4a77cd[_0x346f('0x40')]['offset']);}_0x380e9b[_0x346f('0x47')]=qs[_0x346f('0x48')](_0x4a77cd['query']['sort']);_0x380e9b[_0x346f('0x4b')]=qs[_0x346f('0x49')](_[_0x346f('0x4a')](_0x4a77cd[_0x346f('0x40')],_0x5da2e2['filters']));_0x380e9b[_0x346f('0x4b')][_0x346f('0x69')]=_0x2cfee2['id'];if(_0x4a77cd['query']['filter']){_0x380e9b['where']=_[_0x346f('0x4c')](_0x380e9b[_0x346f('0x4b')],{'$or':_['map'](_0x380e9b['attributes'],function(_0x382cd7){var _0xa756da={};_0xa756da[_0x382cd7]={'$like':'%'+_0x4a77cd[_0x346f('0x40')][_0x346f('0x33')]+'%'};return _0xa756da;})});}_0x380e9b=_['merge']({},_0x380e9b,_0x4a77cd[_0x346f('0x4e')]);return db[_0x346f('0x67')][_0x346f('0x24')]({'where':_0x380e9b[_0x346f('0x4b')]})[_0x346f('0x2d')](function(_0x33d20f){_0x582d2e[_0x346f('0x24')]=_0x33d20f;if(_0x4a77cd[_0x346f('0x40')][_0x346f('0x4f')]){_0x380e9b['include']=[{'all':!![]}];}return db[_0x346f('0x67')][_0x346f('0x51')](_0x380e9b);})[_0x346f('0x2d')](function(_0x2fdeba){_0x582d2e['rows']=_0x2fdeba;return _0x582d2e;});}})[_0x346f('0x2d')](respondWithFilteredResult(_0x359b80,_0x380e9b))['catch'](handleError(_0x359b80,null));};exports['getHopperFinals']=function(_0x48f29b,_0x56d3db,_0x565f93){var _0x421469={'raw':!![],'where':{}};var _0x2b7ed8={};var _0x576d86={'count':0x0,'rows':[]};return db[_0x346f('0x3c')][_0x346f('0x66')]({'where':{'id':_0x48f29b[_0x346f('0x54')]['id']}})[_0x346f('0x2d')](handleEntityNotFound(_0x56d3db,null))[_0x346f('0x2d')](function(_0x3c607b){if(_0x3c607b){_0x2b7ed8[_0x346f('0x3f')]=_[_0x346f('0x41')](db[_0x346f('0x6a')][_0x346f('0x3d')]);_0x2b7ed8['query']=_[_0x346f('0x41')](_0x48f29b[_0x346f('0x40')]);_0x2b7ed8['filters']=_[_0x346f('0x42')](_0x2b7ed8[_0x346f('0x3f')],_0x2b7ed8[_0x346f('0x40')]);_0x421469[_0x346f('0x43')]=_[_0x346f('0x42')](_0x2b7ed8[_0x346f('0x3f')],qs[_0x346f('0x44')](_0x48f29b[_0x346f('0x40')][_0x346f('0x44')]));_0x421469['attributes']=_0x421469['attributes'][_0x346f('0x45')]?_0x421469[_0x346f('0x43')]:_0x2b7ed8['model'];if(!_0x48f29b[_0x346f('0x40')]['hasOwnProperty']('nolimit')){_0x421469['limit']=qs[_0x346f('0x26')](_0x48f29b[_0x346f('0x40')][_0x346f('0x26')]);_0x421469['offset']=qs[_0x346f('0x25')](_0x48f29b[_0x346f('0x40')][_0x346f('0x25')]);}_0x421469[_0x346f('0x47')]=qs[_0x346f('0x48')](_0x48f29b[_0x346f('0x40')][_0x346f('0x48')]);_0x421469[_0x346f('0x4b')]=qs[_0x346f('0x49')](_[_0x346f('0x4a')](_0x48f29b[_0x346f('0x40')],_0x2b7ed8[_0x346f('0x49')]));_0x421469[_0x346f('0x4b')][_0x346f('0x69')]=_0x3c607b['id'];if(_0x48f29b[_0x346f('0x40')][_0x346f('0x33')]){_0x421469[_0x346f('0x4b')]=_[_0x346f('0x4c')](_0x421469['where'],{'$or':_[_0x346f('0x34')](_0x421469[_0x346f('0x43')],function(_0x1691be){var _0x318358={};_0x318358[_0x1691be]={'$like':'%'+_0x48f29b['query'][_0x346f('0x33')]+'%'};return _0x318358;})});}_0x421469=_[_0x346f('0x4c')]({},_0x421469,_0x48f29b[_0x346f('0x4e')]);return db[_0x346f('0x6a')][_0x346f('0x24')]({'where':_0x421469[_0x346f('0x4b')]})[_0x346f('0x2d')](function(_0x1aac17){_0x576d86['count']=_0x1aac17;if(_0x48f29b[_0x346f('0x40')][_0x346f('0x4f')]){_0x421469[_0x346f('0x50')]=[{'all':!![]}];}return db[_0x346f('0x6a')][_0x346f('0x51')](_0x421469);})[_0x346f('0x2d')](function(_0x539f0c){_0x576d86[_0x346f('0x52')]=_0x539f0c;return _0x576d86;});}})[_0x346f('0x2d')](respondWithFilteredResult(_0x56d3db,_0x421469))[_0x346f('0x53')](handleError(_0x56d3db,null));};exports[_0x346f('0x6b')]=function(_0x27a504,_0xfb39d1,_0x2aa63f){var _0x2b7e53={'raw':!![],'where':{}};var _0x6675f6={};var _0x1134b9={'count':0x0,'rows':[]};return db[_0x346f('0x3c')][_0x346f('0x66')]({'where':{'id':_0x27a504[_0x346f('0x54')]['id']}})[_0x346f('0x2d')](handleEntityNotFound(_0xfb39d1,null))[_0x346f('0x2d')](function(_0x280eed){if(_0x280eed){_0x6675f6['model']=_[_0x346f('0x41')](db[_0x346f('0x6c')]['rawAttributes']);_0x6675f6[_0x346f('0x40')]=_['keys'](_0x27a504[_0x346f('0x40')]);_0x6675f6[_0x346f('0x49')]=_[_0x346f('0x42')](_0x6675f6[_0x346f('0x3f')],_0x6675f6[_0x346f('0x40')]);_0x2b7e53[_0x346f('0x43')]=_[_0x346f('0x42')](_0x6675f6['model'],qs[_0x346f('0x44')](_0x27a504[_0x346f('0x40')][_0x346f('0x44')]));_0x2b7e53[_0x346f('0x43')]=_0x2b7e53[_0x346f('0x43')]['length']?_0x2b7e53['attributes']:_0x6675f6['model'];if(!_0x27a504['query'][_0x346f('0x46')]('nolimit')){_0x2b7e53[_0x346f('0x26')]=qs[_0x346f('0x26')](_0x27a504[_0x346f('0x40')][_0x346f('0x26')]);_0x2b7e53[_0x346f('0x25')]=qs['offset'](_0x27a504['query'][_0x346f('0x25')]);}_0x2b7e53[_0x346f('0x47')]=qs[_0x346f('0x48')](_0x27a504[_0x346f('0x40')][_0x346f('0x48')]);_0x2b7e53[_0x346f('0x4b')]=qs[_0x346f('0x49')](_['pick'](_0x27a504[_0x346f('0x40')],_0x6675f6[_0x346f('0x49')]));_0x2b7e53[_0x346f('0x4b')]['VoiceQueueId']=_0x280eed['id'];if(_0x27a504[_0x346f('0x40')][_0x346f('0x33')]){_0x2b7e53[_0x346f('0x4b')]=_[_0x346f('0x4c')](_0x2b7e53[_0x346f('0x4b')],{'$or':_[_0x346f('0x34')](_0x2b7e53[_0x346f('0x43')],function(_0x243aa9){var _0x558aca={};_0x558aca[_0x243aa9]={'$like':'%'+_0x27a504[_0x346f('0x40')][_0x346f('0x33')]+'%'};return _0x558aca;})});}_0x2b7e53=_[_0x346f('0x4c')]({},_0x2b7e53,_0x27a504[_0x346f('0x4e')]);return db[_0x346f('0x6c')][_0x346f('0x24')]({'where':_0x2b7e53[_0x346f('0x4b')]})['then'](function(_0x13a04a){_0x1134b9[_0x346f('0x24')]=_0x13a04a;if(_0x27a504[_0x346f('0x40')][_0x346f('0x4f')]){_0x2b7e53[_0x346f('0x50')]=[{'all':!![]}];}return db[_0x346f('0x6c')][_0x346f('0x51')](_0x2b7e53);})[_0x346f('0x2d')](function(_0x2623db){_0x1134b9['rows']=_0x2623db;return _0x1134b9;});}})[_0x346f('0x2d')](respondWithFilteredResult(_0xfb39d1,_0x2b7e53))[_0x346f('0x53')](handleError(_0xfb39d1,null));};exports[_0x346f('0x6d')]=function(_0x14dd21,_0x4e31d2,_0x31ad9a){var _0x58f9ed={};var _0x3c3895={};var _0x5220ba;var _0x44d737;return db[_0x346f('0x3c')][_0x346f('0x66')]({'where':{'id':_0x14dd21[_0x346f('0x54')]['id']}})['then'](handleEntityNotFound(_0x4e31d2,null))[_0x346f('0x2d')](function(_0xc23b7b){if(_0xc23b7b){_0x5220ba=_0xc23b7b;_0x3c3895[_0x346f('0x3f')]=_[_0x346f('0x41')](db[_0x346f('0x6e')][_0x346f('0x3d')]);_0x3c3895[_0x346f('0x40')]=_[_0x346f('0x41')](_0x14dd21[_0x346f('0x40')]);_0x3c3895[_0x346f('0x49')]=_[_0x346f('0x42')](_0x3c3895[_0x346f('0x3f')],_0x3c3895[_0x346f('0x40')]);_0x58f9ed[_0x346f('0x43')]=_[_0x346f('0x42')](_0x3c3895['model'],qs[_0x346f('0x44')](_0x14dd21[_0x346f('0x40')][_0x346f('0x44')]));_0x58f9ed[_0x346f('0x43')]=_0x58f9ed[_0x346f('0x43')]['length']?_0x58f9ed[_0x346f('0x43')]:_0x3c3895[_0x346f('0x3f')];_0x58f9ed[_0x346f('0x47')]=qs['sort'](_0x14dd21[_0x346f('0x40')][_0x346f('0x48')]);_0x58f9ed[_0x346f('0x4b')]=qs[_0x346f('0x49')](_[_0x346f('0x4a')](_0x14dd21[_0x346f('0x40')],_0x3c3895[_0x346f('0x49')]));if(_0x14dd21['query'][_0x346f('0x33')]){_0x58f9ed['where']=_[_0x346f('0x4c')](_0x58f9ed[_0x346f('0x4b')],{'$or':_['map'](_0x58f9ed[_0x346f('0x43')],function(_0x5f1772){var _0x5ce42f={};_0x5ce42f[_0x5f1772]={'$like':'%'+_0x14dd21[_0x346f('0x40')][_0x346f('0x33')]+'%'};return _0x5ce42f;})});}_0x58f9ed=_[_0x346f('0x4c')]({},_0x58f9ed,_0x14dd21[_0x346f('0x4e')]);return _0x5220ba['getTeams'](_0x58f9ed);}})[_0x346f('0x2d')](function(_0x3b51f6){if(_0x3b51f6){_0x44d737=_0x3b51f6['length'];if(!_0x14dd21[_0x346f('0x40')]['hasOwnProperty'](_0x346f('0x68'))){_0x58f9ed[_0x346f('0x26')]=qs[_0x346f('0x26')](_0x14dd21[_0x346f('0x40')][_0x346f('0x26')]);_0x58f9ed['offset']=qs['offset'](_0x14dd21[_0x346f('0x40')][_0x346f('0x25')]);}return _0x5220ba[_0x346f('0x6d')](_0x58f9ed);}})[_0x346f('0x2d')](function(_0x26c739){if(_0x26c739){return _0x26c739?{'count':_0x44d737,'rows':_0x26c739}:null;}})[_0x346f('0x2d')](respondWithResult(_0x4e31d2,null))[_0x346f('0x53')](handleError(_0x4e31d2,null));};exports[_0x346f('0x6f')]=function(_0x1e6fdc,_0x58b7a0,_0x5d8ac8){var _0x2957e9=_0x1e6fdc['body'][_0x346f('0x70')];var _0xd006a5=_[_0x346f('0x34')](_0x2957e9,'id');return db[_0x346f('0x6e')][_0x346f('0x51')]({'where':{'id':_0xd006a5},'attributes':['id'],'include':[{'model':db[_0x346f('0x71')],'as':_0x346f('0x72'),'attributes':['id',_0x346f('0x39'),_0x346f('0x73'),_0x346f('0x74'),'interface'],'raw':!![]}]})['then'](function(_0x7ebb92){if(_0x7ebb92){var _0x45692b=_[_0x346f('0x75')](_0x7ebb92,function(_0x35cdcb){var _0x2459c6=_0x35cdcb[_0x346f('0x2f')]({'plain':!![]});_0x2459c6['Agents']['forEach'](function(_0x2084d5){_0x2084d5[_0x346f('0x76')]=_['find'](_0x2957e9,{'id':_0x2459c6['id']})[_0x346f('0x76')];});return _0x2459c6[_0x346f('0x72')];});return db['VoiceQueue'][_0x346f('0x55')]({'where':{'id':_0x1e6fdc[_0x346f('0x54')]['id']}})[_0x346f('0x2d')](function(_0x228876){return db[_0x346f('0x77')][_0x346f('0x78')](function(_0x373081){return _0x228876[_0x346f('0x6f')](_0xd006a5,{'transaction':_0x373081})['then'](function(){return BPromise[_0x346f('0x79')](_0x45692b,function(_0x489f49){return db[_0x346f('0x7a')][_0x346f('0x7b')]({'where':{'UserId':_0x489f49['id'],'VoiceQueueId':_0x1e6fdc[_0x346f('0x54')]['id']},'defaults':{'penalty':_0x489f49[_0x346f('0x76')]},'transaction':_0x373081});});})[_0x346f('0x2d')](function(){return BPromise[_0x346f('0x79')](_[_0x346f('0x33')](_0x45692b,{'online':!![]}),function(_0x286611){return db[_0x346f('0x7c')][_0x346f('0x7d')]({'membername':_0x286611['name'],'UserId':_0x286611['id'],'queue_name':_0x228876[_0x346f('0x39')],'VoiceQueueId':_0x228876['id'],'interface':_['isNil'](_0x286611[_0x346f('0x7e')])?util[_0x346f('0x7f')]('SIP/%s',_0x286611['name']):_0x286611[_0x346f('0x7e')],'paused':_0x286611[_0x346f('0x74')]||![],'penalty':_0x286611[_0x346f('0x76')]},{'transaction':_0x373081});});})[_0x346f('0x2d')](function(){_0x45692b['forEach'](function(_0x594b16){socket[_0x346f('0x80')](_0x346f('0x81'),{'UserId':_0x594b16['id'],'VoiceQueueId':_0x228876['id']});});});});});}})['then'](respondWithStatusCode(_0x58b7a0,null))['catch'](handleError(_0x58b7a0,null));};exports[_0x346f('0x82')]=function(_0x59182a,_0x514008,_0x1daa86){return db[_0x346f('0x6e')][_0x346f('0x51')]({'where':{'id':_0x59182a[_0x346f('0x40')]['ids']},'attributes':['id'],'include':[{'model':db['User'],'as':_0x346f('0x72'),'attributes':['id'],'raw':!![]}]})['then'](handleEntityNotFound(_0x514008,null))[_0x346f('0x2d')](function(_0x1f37b2){var _0x2b5bde=_['map'](_0x1f37b2,'id');var _0x5d8a31=[];var _0xd89dbb=[];var _0x1b37de=squel[_0x346f('0x83')]();_0x1b37de[_0x346f('0x84')]('tq.TeamId')[_0x346f('0x85')](_0x346f('0x86'),'tq')[_0x346f('0x87')](_0x346f('0x88'),'ut',_0x346f('0x89'))[_0x346f('0x4b')](_0x346f('0x8a'),_0x59182a[_0x346f('0x54')]['id']);for(var _0x22c2d4=0x0;_0x22c2d4<_0x1f37b2[_0x346f('0x45')];_0x22c2d4+=0x1){let _0x295ea3=_0x1f37b2[_0x22c2d4];for(var _0x77f940=0x0;_0x77f940<_0x295ea3[_0x346f('0x72')][_0x346f('0x45')];_0x77f940+=0x1){let _0x9df2d4=_0x295ea3[_0x346f('0x72')][_0x77f940];var _0x337e14=_0x1b37de[_0x346f('0x5f')]();_0x337e14[_0x346f('0x4b')](_0x346f('0x8b'),_0x9df2d4['id']);_0xd89dbb[_0x346f('0x8c')](db[_0x346f('0x77')][_0x346f('0x40')](_0x337e14[_0x346f('0x8d')](),{'type':db[_0x346f('0x77')][_0x346f('0x8e')][_0x346f('0x8f')]})['then'](function(_0x472cf2){if(_0x472cf2[_0x346f('0x45')]===0x1){return _0x9df2d4['id'];}else{var _0x57e69b=_['every'](_[_0x346f('0x34')](_0x472cf2,'TeamId'),function(_0x42c97a){return _['includes'](_0x2b5bde,_0x42c97a);});if(_0x57e69b){return _0x9df2d4['id'];}}}));}}return BPromise[_0x346f('0x90')](_0xd89dbb)[_0x346f('0x2d')](function(_0x106b58){_0x5d8a31=_(_0x5d8a31)['union'](_0x106b58)[_0x346f('0x91')]()[_0x346f('0x35')]();return db[_0x346f('0x3c')][_0x346f('0x55')]({'where':{'id':_0x59182a[_0x346f('0x54')]['id']}})[_0x346f('0x2d')](function(_0x8d73c){return db[_0x346f('0x77')][_0x346f('0x78')](function(_0x3bc903){return _0x8d73c[_0x346f('0x82')](_0x59182a[_0x346f('0x40')]['ids'],{'transaction':_0x3bc903})['then'](function(){if(!_['isEmpty'](_0x5d8a31)){return _0x8d73c[_0x346f('0x92')](_0x5d8a31,{'transaction':_0x3bc903})[_0x346f('0x2d')](function(){return db[_0x346f('0x7c')][_0x346f('0x2e')]({'where':{'VoiceQueueId':_0x59182a[_0x346f('0x54')]['id'],'UserId':_0x5d8a31},'transaction':_0x3bc903});});}})[_0x346f('0x2d')](function(){_0x5d8a31[_0x346f('0x93')](function(_0x2fb725){socket['emit']('userVoiceQueue:remove',{'UserId':_0x2fb725,'VoiceQueueId':_0x8d73c['id']});});});});});});})[_0x346f('0x2d')](respondWithStatusCode(_0x514008,null))['catch'](handleError(_0x514008,null));};exports[_0x346f('0x94')]=function(_0x525222,_0x41306f,_0x3d99f2){var _0x3bd1bd,_0x21f863;return db[_0x346f('0x3c')][_0x346f('0x55')]({'where':{'id':_0x525222[_0x346f('0x54')]['id']}})[_0x346f('0x2d')](handleEntityNotFound(_0x41306f,null))[_0x346f('0x2d')](function(_0x5e779b){if(_0x5e779b){_0x21f863=_0x5e779b;return _0x5e779b[_0x346f('0x94')](_0x525222[_0x346f('0x57')][_0x346f('0x95')],_[_0x346f('0x60')](_0x525222[_0x346f('0x57')],['ids','id'])||{})[_0x346f('0x96')](function(_0x464bc3){for(var _0x4f3981=0x0;_0x4f3981<_0x525222[_0x346f('0x57')][_0x346f('0x95')][_0x346f('0x45')];_0x4f3981+=0x1){socket[_0x346f('0x80')](_0x346f('0x81'),{'UserId':_0x525222[_0x346f('0x57')]['ids'][_0x4f3981],'VoiceQueueId':_0x525222[_0x346f('0x54')]['id']});}return _0x464bc3;});}})['then'](function(_0x31d4fa){_0x3bd1bd=_0x31d4fa||[];if(_0x21f863){return db[_0x346f('0x71')][_0x346f('0x51')]({'where':{'id':_0x525222['body'][_0x346f('0x95')]},'attributes':['id',_0x346f('0x39'),_0x346f('0x73'),_0x346f('0x74'),_0x346f('0x7e')],'raw':!![]});}})[_0x346f('0x2d')](function(_0x2c5bc7){if(!_[_0x346f('0x97')](_0x2c5bc7)){var _0x3d872d=[];for(var _0x5bfcf3=0x0;_0x5bfcf3<_0x2c5bc7[_0x346f('0x45')];_0x5bfcf3++){if(_0x2c5bc7[_0x5bfcf3][_0x346f('0x73')]){_0x3d872d['push'](db[_0x346f('0x7c')]['upsert']({'membername':_0x2c5bc7[_0x5bfcf3][_0x346f('0x39')],'UserId':_0x2c5bc7[_0x5bfcf3]['id'],'queue_name':_0x21f863[_0x346f('0x39')],'VoiceQueueId':_0x21f863['id'],'interface':_['isNil'](_0x2c5bc7[_0x5bfcf3]['interface'])?util['format'](_0x346f('0x98'),_0x2c5bc7[_0x5bfcf3][_0x346f('0x39')]):_0x2c5bc7[_0x5bfcf3][_0x346f('0x7e')],'paused':_0x2c5bc7[_0x5bfcf3][_0x346f('0x74')]||![],'penalty':_0x525222[_0x346f('0x57')][_0x346f('0x76')]||0x0}));}}return BPromise[_0x346f('0x90')](_0x3d872d);}})[_0x346f('0x2d')](function(){return _0x3bd1bd;})[_0x346f('0x2d')](respondWithResult(_0x41306f,null))[_0x346f('0x53')](handleError(_0x41306f,null));};exports[_0x346f('0x92')]=function(_0x42a0e4,_0x2ff3e4,_0x5bc502){return db[_0x346f('0x3c')][_0x346f('0x55')]({'where':{'id':_0x42a0e4[_0x346f('0x54')]['id']}})[_0x346f('0x2d')](handleEntityNotFound(_0x2ff3e4,null))[_0x346f('0x2d')](function(_0x5e1231){if(_0x5e1231){return _0x5e1231[_0x346f('0x92')](_0x42a0e4[_0x346f('0x40')][_0x346f('0x95')])[_0x346f('0x2d')](function(){if(_[_0x346f('0x99')](_0x42a0e4[_0x346f('0x40')][_0x346f('0x95')])){for(var _0x2b4c7d=0x0;_0x2b4c7d<_0x42a0e4[_0x346f('0x40')][_0x346f('0x95')][_0x346f('0x45')];_0x2b4c7d+=0x1){socket[_0x346f('0x80')]('userVoiceQueue:remove',{'UserId':Number(_0x42a0e4[_0x346f('0x40')][_0x346f('0x95')][_0x2b4c7d]),'VoiceQueueId':Number(_0x42a0e4[_0x346f('0x54')]['id'])});}}else{socket['emit']('userVoiceQueue:remove',{'UserId':Number(_0x42a0e4[_0x346f('0x40')][_0x346f('0x95')]),'VoiceQueueId':Number(_0x42a0e4[_0x346f('0x54')]['id'])});}});}})[_0x346f('0x2d')](function(_0x566149){return db[_0x346f('0x7c')][_0x346f('0x2e')]({'where':{'VoiceQueueId':_0x42a0e4[_0x346f('0x54')]['id'],'UserId':_0x42a0e4[_0x346f('0x40')][_0x346f('0x95')]}})['then'](function(){return _0x566149;});})[_0x346f('0x2d')](respondWithStatusCode(_0x2ff3e4,null))['catch'](handleError(_0x2ff3e4,null));};exports[_0x346f('0x9a')]=function(_0x3c9bdd,_0x34c808,_0x18e276){var _0x543161={};var _0x281f29={};var _0x18a39e;var _0x95bac9;return db[_0x346f('0x3c')][_0x346f('0x66')]({'where':{'id':_0x3c9bdd[_0x346f('0x54')]['id']}})[_0x346f('0x2d')](handleEntityNotFound(_0x34c808,null))['then'](function(_0x5ca303){if(_0x5ca303){_0x18a39e=_0x5ca303;_0x281f29['model']=_[_0x346f('0x41')](db[_0x346f('0x71')][_0x346f('0x3d')]);_0x281f29['query']=_[_0x346f('0x41')](_0x3c9bdd['query']);_0x281f29[_0x346f('0x49')]=_[_0x346f('0x42')](_0x281f29[_0x346f('0x3f')],_0x281f29[_0x346f('0x40')]);_0x543161[_0x346f('0x43')]=_[_0x346f('0x42')](_0x281f29['model'],qs[_0x346f('0x44')](_0x3c9bdd[_0x346f('0x40')][_0x346f('0x44')]));_0x543161['attributes']=_0x543161[_0x346f('0x43')][_0x346f('0x45')]?_0x543161[_0x346f('0x43')]:_0x281f29['model'];_0x543161['order']=qs[_0x346f('0x48')](_0x3c9bdd['query']['sort']);_0x543161[_0x346f('0x4b')]=qs['filters'](_['pick'](_0x3c9bdd[_0x346f('0x40')],_0x281f29[_0x346f('0x49')]));if(_0x3c9bdd['query'][_0x346f('0x33')]){_0x543161[_0x346f('0x4b')]=_[_0x346f('0x4c')](_0x543161[_0x346f('0x4b')],{'$or':_[_0x346f('0x34')](_0x543161[_0x346f('0x43')],function(_0x47f6a5){var _0x557455={};_0x557455[_0x47f6a5]={'$like':'%'+_0x3c9bdd[_0x346f('0x40')][_0x346f('0x33')]+'%'};return _0x557455;})});}_0x543161=_[_0x346f('0x4c')]({},_0x543161,_0x3c9bdd['options']);return _0x18a39e['getAgents'](_0x543161);}})[_0x346f('0x2d')](function(_0x15702f){if(_0x15702f){_0x95bac9=_0x15702f[_0x346f('0x45')];if(!_0x3c9bdd[_0x346f('0x40')][_0x346f('0x46')]('nolimit')){_0x543161[_0x346f('0x26')]=qs[_0x346f('0x26')](_0x3c9bdd[_0x346f('0x40')][_0x346f('0x26')]);_0x543161[_0x346f('0x25')]=qs[_0x346f('0x25')](_0x3c9bdd[_0x346f('0x40')][_0x346f('0x25')]);}return _0x18a39e['getAgents'](_0x543161);}})[_0x346f('0x2d')](function(_0x1f1b15){if(_0x1f1b15){return _0x1f1b15?{'count':_0x95bac9,'rows':_0x1f1b15}:null;}})[_0x346f('0x2d')](respondWithResult(_0x34c808,null))['catch'](handleError(_0x34c808,null));};exports[_0x346f('0x9b')]=function(_0x1d1d00,_0xfaf597,_0x443e1a){var _0x21c490={};var _0x3fd31b={};var _0x224cab;var _0xa5ebca;return db['VoiceQueue'][_0x346f('0x66')]({'where':{'id':_0x1d1d00[_0x346f('0x54')]['id']}})[_0x346f('0x2d')](handleEntityNotFound(_0xfaf597,null))[_0x346f('0x2d')](function(_0xb19752){if(_0xb19752){_0x224cab=_0xb19752;_0x3fd31b[_0x346f('0x3f')]=_[_0x346f('0x41')](db[_0x346f('0x7c')][_0x346f('0x3d')]);_0x3fd31b[_0x346f('0x40')]=_['keys'](_0x1d1d00['query']);_0x3fd31b['filters']=_['intersection'](_0x3fd31b[_0x346f('0x3f')],_0x3fd31b[_0x346f('0x40')]);_0x21c490['attributes']=_[_0x346f('0x42')](_0x3fd31b[_0x346f('0x3f')],qs['fields'](_0x1d1d00[_0x346f('0x40')][_0x346f('0x44')]));_0x21c490[_0x346f('0x43')]=_0x21c490[_0x346f('0x43')][_0x346f('0x45')]?_0x21c490[_0x346f('0x43')]:_0x3fd31b[_0x346f('0x3f')];_0x21c490[_0x346f('0x47')]=qs[_0x346f('0x48')](_0x1d1d00['query'][_0x346f('0x48')]);_0x21c490['where']=qs[_0x346f('0x49')](_[_0x346f('0x4a')](_0x1d1d00['query'],_0x3fd31b[_0x346f('0x49')]));if(_0x1d1d00['query'][_0x346f('0x33')]){_0x21c490['where']=_['merge'](_0x21c490['where'],{'$or':_[_0x346f('0x34')](_0x21c490[_0x346f('0x43')],function(_0x57fae4){var _0x3b8b0d={};_0x3b8b0d[_0x57fae4]={'$like':'%'+_0x1d1d00[_0x346f('0x40')]['filter']+'%'};return _0x3b8b0d;})});}_0x21c490=_[_0x346f('0x4c')]({},_0x21c490,_0x1d1d00[_0x346f('0x4e')]);return _0x224cab[_0x346f('0x9b')](_0x21c490);}})[_0x346f('0x2d')](function(_0x4d73e0){if(_0x4d73e0){_0xa5ebca=_0x4d73e0[_0x346f('0x45')];if(!_0x1d1d00[_0x346f('0x40')][_0x346f('0x46')](_0x346f('0x68'))){_0x21c490[_0x346f('0x26')]=qs[_0x346f('0x26')](_0x1d1d00['query'][_0x346f('0x26')]);_0x21c490[_0x346f('0x25')]=qs[_0x346f('0x25')](_0x1d1d00[_0x346f('0x40')][_0x346f('0x25')]);}return _0x224cab[_0x346f('0x9b')](_0x21c490);}})[_0x346f('0x2d')](function(_0x2c7f84){return _0x2c7f84?{'count':_0xa5ebca,'rows':_0x2c7f84}:null;})[_0x346f('0x2d')](respondWithResult(_0xfaf597,null))[_0x346f('0x53')](handleError(_0xfaf597,null));};exports[_0x346f('0x9c')]=function(_0x313dca,_0x512c2b,_0xcbc53d){var _0x222e84={};var _0x43eeaa={};var _0x29e2e1;var _0x2ecbec;return db[_0x346f('0x3c')][_0x346f('0x66')]({'where':{'id':_0x313dca[_0x346f('0x54')]['id']}})[_0x346f('0x2d')](handleEntityNotFound(_0x512c2b,null))[_0x346f('0x2d')](function(_0x5848a5){if(_0x5848a5){_0x29e2e1=_0x5848a5;_0x43eeaa['model']=_[_0x346f('0x41')](db[_0x346f('0x9d')][_0x346f('0x3d')]);_0x43eeaa['query']=_[_0x346f('0x41')](_0x313dca['query']);_0x43eeaa[_0x346f('0x49')]=_[_0x346f('0x42')](_0x43eeaa[_0x346f('0x3f')],_0x43eeaa[_0x346f('0x40')]);_0x222e84['attributes']=_[_0x346f('0x42')](_0x43eeaa[_0x346f('0x3f')],qs[_0x346f('0x44')](_0x313dca['query'][_0x346f('0x44')]));_0x222e84[_0x346f('0x43')]=_0x222e84[_0x346f('0x43')][_0x346f('0x45')]?_0x222e84[_0x346f('0x43')]:_0x43eeaa['model'];_0x222e84[_0x346f('0x47')]=qs[_0x346f('0x48')](_0x313dca[_0x346f('0x40')][_0x346f('0x48')]);_0x222e84[_0x346f('0x4b')]=qs[_0x346f('0x49')](_[_0x346f('0x4a')](_0x313dca[_0x346f('0x40')],_0x43eeaa[_0x346f('0x49')]));if(_0x313dca[_0x346f('0x40')][_0x346f('0x33')]){_0x222e84[_0x346f('0x4b')]=_['merge'](_0x222e84['where'],{'$or':_['map'](_0x222e84[_0x346f('0x43')],function(_0x45c261){var _0x3b9b56={};_0x3b9b56[_0x45c261]={'$like':'%'+_0x313dca['query'][_0x346f('0x33')]+'%'};return _0x3b9b56;})});}_0x222e84=_[_0x346f('0x4c')]({},_0x222e84,_0x313dca[_0x346f('0x4e')]);return _0x29e2e1[_0x346f('0x9c')](_0x222e84);}})[_0x346f('0x2d')](function(_0x3715cc){if(_0x3715cc){_0x2ecbec=_0x3715cc[_0x346f('0x45')];if(!_0x313dca['query'][_0x346f('0x46')](_0x346f('0x68'))){_0x222e84[_0x346f('0x26')]=qs[_0x346f('0x26')](_0x313dca['query'][_0x346f('0x26')]);_0x222e84[_0x346f('0x25')]=qs[_0x346f('0x25')](_0x313dca[_0x346f('0x40')]['offset']);}return _0x29e2e1[_0x346f('0x9c')](_0x222e84);}})[_0x346f('0x2d')](function(_0x32f8ba){if(_0x32f8ba){return _0x32f8ba?{'count':_0x2ecbec,'rows':_0x32f8ba}:null;}})[_0x346f('0x2d')](respondWithResult(_0x512c2b,null))[_0x346f('0x53')](handleError(_0x512c2b,null));};exports[_0x346f('0x9e')]=function(_0x2260ef,_0x5f9695,_0x21daad){var _0x1b33fd,_0x363d80;return db['VoiceQueue'][_0x346f('0x55')]({'where':{'id':_0x2260ef[_0x346f('0x54')]['id']}})[_0x346f('0x2d')](handleEntityNotFound(_0x5f9695,null))['then'](function(_0x5577c6){if(_0x5577c6){_0x363d80=_0x5577c6;return _0x5577c6[_0x346f('0x9e')](_0x2260ef['body']['ids'],_[_0x346f('0x60')](_0x2260ef['body'],[_0x346f('0x95'),'id'])||{});}return null;})[_0x346f('0x96')](function(_0x5b31f4){var _0x3fb82d;_0x1b33fd=_0x5b31f4||[];var _0x2222b1=[];if(_0x5b31f4){for(var _0x3c1150=0x0;_0x3c1150<_0x5b31f4[_0x346f('0x45')];_0x3c1150+=0x1){var _0x5943df=_0x5b31f4[_0x3c1150][_0x346f('0x2f')]({'plain':!![]});_0x363d80[_0x346f('0x9f')]=_0x2260ef[_0x346f('0x57')][_0x346f('0x9f')]?_0x2260ef[_0x346f('0x57')][_0x346f('0x9f')]:_0x363d80[_0x346f('0x9f')];switch(_0x363d80[_0x346f('0x9f')]){case _0x346f('0xa0'):_0x3fb82d=squel[_0x346f('0xa1')]()[_0x346f('0xa2')](_0x346f('0xa3'))[_0x346f('0xa4')]([_0x346f('0xa5'),'scheduledAt',_0x346f('0xa6'),_0x346f('0xa7'),_0x346f('0x69'),'createdAt',_0x346f('0x62')],squel[_0x346f('0x83')]()['field'](_0x346f('0xa5'),_0x346f('0xa5'))[_0x346f('0x84')](_0x346f('0xa8'),_0x346f('0xa9'))['field']('id',_0x346f('0xa6'))[_0x346f('0x84')](_0x5943df[_0x346f('0xaa')][_0x346f('0x8d')](),_0x346f('0xa7'))['field'](_0x2260ef[_0x346f('0x54')]['id'][_0x346f('0x8d')](),'VoiceQueueId')[_0x346f('0x84')]('NOW()',_0x346f('0x61'))[_0x346f('0x84')]('NOW()','updatedAt')['from'](_0x346f('0xab'))[_0x346f('0x4b')](_0x346f('0xac'))['where'](_0x346f('0xad'),_0x5943df[_0x346f('0xaa')][_0x346f('0x8d')]())[_0x346f('0x4b')]('phone\x20IS\x20NOT\x20NULL')[_0x346f('0x4b')](_0x346f('0xae'),squel[_0x346f('0x83')]()['field'](_0x346f('0xaf'))[_0x346f('0x85')](_0x346f('0xb0'))[_0x346f('0x4b')](_0x346f('0x8a'),_0x2260ef[_0x346f('0x54')]['id'][_0x346f('0x8d')]()))[_0x346f('0x4b')]('phone\x20NOT\x20IN\x20(?)',squel[_0x346f('0x83')]()[_0x346f('0x84')](_0x346f('0xb1'))['from'](_0x346f('0xa3'))[_0x346f('0x4b')](_0x346f('0x8a'),_0x2260ef[_0x346f('0x54')]['id'][_0x346f('0x8d')]())))[_0x346f('0x8d')]();break;case _0x346f('0xb2'):_0x3fb82d=squel[_0x346f('0xa1')]()[_0x346f('0xa2')](_0x346f('0xa3'))['fromQuery']([_0x346f('0xa5'),_0x346f('0xa9'),_0x346f('0xa6'),_0x346f('0xa7'),_0x346f('0x69'),'createdAt',_0x346f('0x62')],squel['select']()[_0x346f('0x84')]('phone','phone')[_0x346f('0x84')]('NOW()',_0x346f('0xa9'))[_0x346f('0x84')]('id','ContactId')[_0x346f('0x84')](_0x5943df[_0x346f('0xaa')][_0x346f('0x8d')](),_0x346f('0xa7'))[_0x346f('0x84')](_0x2260ef['params']['id']['toString'](),_0x346f('0x69'))['field'](_0x346f('0xa8'),_0x346f('0x61'))[_0x346f('0x84')](_0x346f('0xa8'),_0x346f('0x62'))['from'](_0x346f('0xab'))['where'](_0x346f('0xac'))[_0x346f('0x4b')]('ListId\x20=\x20?',_0x5943df[_0x346f('0xaa')][_0x346f('0x8d')]())[_0x346f('0x4b')](_0x346f('0xb3'))[_0x346f('0x4b')](_0x346f('0xae'),squel[_0x346f('0x83')]()[_0x346f('0x84')](_0x346f('0xb1'))[_0x346f('0x85')](_0x346f('0xa3'))[_0x346f('0x4b')](_0x346f('0x8a'),_0x2260ef['params']['id'][_0x346f('0x8d')]())))[_0x346f('0x8d')]();break;default:_0x3fb82d=squel[_0x346f('0xa1')]()[_0x346f('0xa2')](_0x346f('0xa3'))['fromQuery']([_0x346f('0xa5'),'scheduledAt',_0x346f('0xa6'),_0x346f('0xa7'),'VoiceQueueId',_0x346f('0x61'),_0x346f('0x62')],squel[_0x346f('0x83')]()[_0x346f('0x84')](_0x346f('0xa5'),_0x346f('0xa5'))['field'](_0x346f('0xa8'),_0x346f('0xa9'))[_0x346f('0x84')]('id',_0x346f('0xa6'))['field'](_0x5943df[_0x346f('0xaa')]['toString'](),_0x346f('0xa7'))[_0x346f('0x84')](_0x2260ef[_0x346f('0x54')]['id'][_0x346f('0x8d')](),_0x346f('0x69'))[_0x346f('0x84')]('NOW()',_0x346f('0x61'))['field']('NOW()',_0x346f('0x62'))[_0x346f('0x85')](_0x346f('0xab'))[_0x346f('0x4b')](_0x346f('0xac'))[_0x346f('0x4b')]('ListId\x20=\x20?',_0x5943df[_0x346f('0xaa')][_0x346f('0x8d')]())['where'](_0x346f('0xb3')))[_0x346f('0x8d')]();}_0x2222b1['push'](db['sequelize'][_0x346f('0x40')](_0x3fb82d));}return BPromise[_0x346f('0x90')](_0x2222b1);}})[_0x346f('0x2d')](function(){return _0x1b33fd;})['then'](respondWithResult(_0x5f9695,null))[_0x346f('0x53')](handleError(_0x5f9695,null));};exports[_0x346f('0xb4')]=function(_0x53f1b7,_0x298c26,_0x3ae85d){return db[_0x346f('0x3c')][_0x346f('0x55')]({'where':{'id':_0x53f1b7[_0x346f('0x54')]['id']}})['then'](handleEntityNotFound(_0x298c26,null))[_0x346f('0x2d')](function(_0x5c0a7c){if(_0x5c0a7c){return _0x5c0a7c[_0x346f('0xb4')](_0x53f1b7[_0x346f('0x40')]['ids']);}})['then'](function(_0x9986ec){if(_0x9986ec){return db['CmHopper'][_0x346f('0x2e')]({'where':{'ListId':_0x53f1b7['query'][_0x346f('0x95')],'VoiceQueueId':_0x53f1b7[_0x346f('0x54')]['id']}})[_0x346f('0x2d')](function(){return _0x9986ec;});}})['then'](respondWithStatusCode(_0x298c26,null))[_0x346f('0x53')](handleError(_0x298c26,null));};exports['getBlackLists']=function(_0x359539,_0x183dd4,_0x5546b5){var _0x43bf56={};var _0x3698e3={};var _0x27e555;var _0x1c4413;return db['VoiceQueue'][_0x346f('0x66')]({'where':{'id':_0x359539[_0x346f('0x54')]['id']}})['then'](handleEntityNotFound(_0x183dd4,null))[_0x346f('0x2d')](function(_0x509170){if(_0x509170){_0x27e555=_0x509170;_0x3698e3[_0x346f('0x3f')]=_[_0x346f('0x41')](db[_0x346f('0x9d')][_0x346f('0x3d')]);_0x3698e3[_0x346f('0x40')]=_['keys'](_0x359539[_0x346f('0x40')]);_0x3698e3[_0x346f('0x49')]=_[_0x346f('0x42')](_0x3698e3[_0x346f('0x3f')],_0x3698e3[_0x346f('0x40')]);_0x43bf56[_0x346f('0x43')]=_['intersection'](_0x3698e3[_0x346f('0x3f')],qs[_0x346f('0x44')](_0x359539['query'][_0x346f('0x44')]));_0x43bf56['attributes']=_0x43bf56[_0x346f('0x43')]['length']?_0x43bf56[_0x346f('0x43')]:_0x3698e3['model'];_0x43bf56[_0x346f('0x47')]=qs['sort'](_0x359539[_0x346f('0x40')][_0x346f('0x48')]);_0x43bf56[_0x346f('0x4b')]=qs[_0x346f('0x49')](_['pick'](_0x359539['query'],_0x3698e3['filters']));if(_0x359539[_0x346f('0x40')][_0x346f('0x33')]){_0x43bf56[_0x346f('0x4b')]=_[_0x346f('0x4c')](_0x43bf56[_0x346f('0x4b')],{'$or':_[_0x346f('0x34')](_0x43bf56[_0x346f('0x43')],function(_0x1fb7a9){var _0x57dc7c={};_0x57dc7c[_0x1fb7a9]={'$like':'%'+_0x359539[_0x346f('0x40')]['filter']+'%'};return _0x57dc7c;})});}_0x43bf56=_[_0x346f('0x4c')]({},_0x43bf56,_0x359539['options']);return _0x27e555[_0x346f('0xb5')](_0x43bf56);}})[_0x346f('0x2d')](function(_0x5a0a1f){if(_0x5a0a1f){_0x1c4413=_0x5a0a1f[_0x346f('0x45')];if(!_0x359539[_0x346f('0x40')][_0x346f('0x46')](_0x346f('0x68'))){_0x43bf56[_0x346f('0x26')]=qs[_0x346f('0x26')](_0x359539[_0x346f('0x40')][_0x346f('0x26')]);_0x43bf56['offset']=qs[_0x346f('0x25')](_0x359539[_0x346f('0x40')]['offset']);}return _0x27e555[_0x346f('0xb5')](_0x43bf56);}})[_0x346f('0x2d')](function(_0x1ea7ab){if(_0x1ea7ab){return _0x1ea7ab?{'count':_0x1c4413,'rows':_0x1ea7ab}:null;}})[_0x346f('0x2d')](respondWithResult(_0x183dd4,null))[_0x346f('0x53')](handleError(_0x183dd4,null));};exports['addBlackLists']=function(_0x528d36,_0x133a9c,_0x933aac){var _0x5d80e0,_0x4bddd4;return db[_0x346f('0x3c')][_0x346f('0x55')]({'where':{'id':_0x528d36[_0x346f('0x54')]['id']}})[_0x346f('0x2d')](handleEntityNotFound(_0x133a9c,null))[_0x346f('0x2d')](function(_0x23831c){if(_0x23831c){_0x4bddd4=_0x23831c;return _0x23831c['addBlackLists'](_0x528d36[_0x346f('0x57')][_0x346f('0x95')],_['omit'](_0x528d36[_0x346f('0x57')],[_0x346f('0x95'),'id'])||{});}return null;})[_0x346f('0x96')](function(_0x445165){var _0x3023a7;_0x5d80e0=_0x445165||[];var _0x323eaf=[];if(_0x445165){for(var _0x2797a2=0x0;_0x2797a2<_0x445165[_0x346f('0x45')];_0x2797a2+=0x1){var _0x5cff76=_0x445165[_0x2797a2][_0x346f('0x2f')]({'plain':!![]});_0x3023a7=squel['insert']()[_0x346f('0xa2')](_0x346f('0xb6'))[_0x346f('0xa4')](['phone',_0x346f('0xa6'),_0x346f('0xa7'),_0x346f('0x69'),'createdAt',_0x346f('0x62')],squel[_0x346f('0x83')]()[_0x346f('0x84')](_0x346f('0xa5'),'phone')[_0x346f('0x84')]('id','ContactId')[_0x346f('0x84')](_0x5cff76[_0x346f('0xaa')][_0x346f('0x8d')](),_0x346f('0xa7'))[_0x346f('0x84')](_0x528d36['params']['id'][_0x346f('0x8d')](),'VoiceQueueId')[_0x346f('0x84')](_0x346f('0xa8'),_0x346f('0x61'))[_0x346f('0x84')](_0x346f('0xa8'),'updatedAt')[_0x346f('0x85')]('cm_contacts')[_0x346f('0x4b')]('deletedAt\x20IS\x20NULL')['where'](_0x346f('0xad'),_0x5cff76[_0x346f('0xaa')][_0x346f('0x8d')]())[_0x346f('0x4b')](_0x346f('0xb3')))['toString']();_0x323eaf['push'](db[_0x346f('0x77')][_0x346f('0x40')](_0x3023a7));}return BPromise['all'](_0x323eaf);}})[_0x346f('0x2d')](function(){return _0x5d80e0;})[_0x346f('0x2d')](respondWithResult(_0x133a9c,null))[_0x346f('0x53')](handleError(_0x133a9c,null));};exports[_0x346f('0xb7')]=function(_0x371bf1,_0xe53827,_0xe19558){return db[_0x346f('0x3c')]['find']({'where':{'id':_0x371bf1[_0x346f('0x54')]['id']}})[_0x346f('0x2d')](handleEntityNotFound(_0xe53827,null))[_0x346f('0x2d')](function(_0xaff884){if(_0xaff884){return _0xaff884[_0x346f('0xb7')](_0x371bf1[_0x346f('0x40')][_0x346f('0x95')]);}})[_0x346f('0x2d')](function(_0x5b8d81){if(_0x5b8d81){return db[_0x346f('0x6c')]['destroy']({'where':{'ListId':_0x371bf1['query'][_0x346f('0x95')],'VoiceQueueId':_0x371bf1[_0x346f('0x54')]['id']}})[_0x346f('0x2d')](function(){return _0x5b8d81;});}})[_0x346f('0x2d')](respondWithStatusCode(_0xe53827,null))[_0x346f('0x53')](handleError(_0xe53827,null));};