Built motion from commit a61a4a20.|2.5.46
[motion2.git] / server / api / cmHopper / cmHopper.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 _0x59a2=['Queue','dialActive','getPreviewRecall','hopperId','recallme','LOCK','CmList','List','isNumber','CmHopper,\x20%s,\x20%s,\x20%s','entity\x20not\x20found','timezones','push','utcOffset','eml-format','rimraf','zip-dir','request-promise','bluebird','util','path','to-csv','ejs','lodash','squel','crypto','desk.js','querystring','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/license/util','../../mysqldb','sendStatus','end','status','json','limit','undefined','offset','count','set','apply','reject','update','then','name','CmHopper','fieldName','type','model','map','query','keys','filters','concat','$and','$or','$gt','$gte','$lte','$eq','$not','$between','$notBetween','$in','$notIn','$notLike','$iLike','$like','$overlap','$contains','$contained','$any','attributes','intersection','fields','length','hasOwnProperty','nolimit','order','sort','pick','filter','where','VIRTUAL','merge','includeAll','include','findAll','rows','catch','params','rawAttributes','find','create','body','describe','destroy','VoiceQueueId','VoiceQueue','CampaignId','omit','createdAt','state','statedesc','deleted','user','UserId','format','calleridnum','phone','campaigntype','queue','ivr','CmContact','ContactId','firstName','lastName','isNil','calleridname','finally','CmHopperFinal','getPreview','getVoiceQueues','outbound','preview','dialOrderByScheduledAt','dialPreviewAutoRecallMe','sequelize','transaction','YYYY-MM-DD\x20HH:mm:ss','value','direction','prev','isEmpty','hopperIds','priority','scheduledAt','ASC','DESC','literal','COALESCE(CmHopper.UserId,\x200)\x20ASC','COALESCE(CmHopper.UserId,\x200)\x20DESC','findOne','scheduledat','UPDATE','Contact','CmCompany','Company'];(function(_0x3d851a,_0xe4bd42){var _0x3f33e0=function(_0x1c614f){while(--_0x1c614f){_0x3d851a['push'](_0x3d851a['shift']());}};_0x3f33e0(++_0xe4bd42);}(_0x59a2,0x1dc));var _0x259a=function(_0x3e5f45,_0x119593){_0x3e5f45=_0x3e5f45-0x0;var _0x2b73ee=_0x59a2[_0x3e5f45];return _0x2b73ee;};'use strict';var emlformat=require(_0x259a('0x0'));var rimraf=require(_0x259a('0x1'));var zipdir=require(_0x259a('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0x259a('0x3'));var moment=require('moment');var BPromise=require(_0x259a('0x4'));var Mustache=require('mustache');var util=require(_0x259a('0x5'));var path=require(_0x259a('0x6'));var sox=require('sox');var csv=require(_0x259a('0x7'));var ejs=require(_0x259a('0x8'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x259a('0x9'));var squel=require(_0x259a('0xa'));var crypto=require(_0x259a('0xb'));var jsforce=require('jsforce');var deskjs=require(_0x259a('0xc'));var toCsv=require(_0x259a('0x7'));var querystring=require(_0x259a('0xd'));var Papa=require('papaparse');var Redis=require(_0x259a('0xe'));var authService=require('../../components/auth/service');var qs=require(_0x259a('0xf'));var as=require(_0x259a('0x10'));var hardwareService=require(_0x259a('0x11'));var logger=require(_0x259a('0x12'))(_0x259a('0x13'));var utils=require(_0x259a('0x14'));var config=require('../../config/environment');var shared=require('../../config/environment');var licenseUtil=require(_0x259a('0x15'));var db=require(_0x259a('0x16'))['db'];function respondWithStatusCode(_0x406990,_0x261860){_0x261860=_0x261860||0xcc;return function(_0x2f54d8){if(_0x2f54d8){return _0x406990[_0x259a('0x17')](_0x261860);}return _0x406990['status'](_0x261860)[_0x259a('0x18')]();};}function respondWithResult(_0x49076f,_0x2fa140){_0x2fa140=_0x2fa140||0xc8;return function(_0x533598){if(_0x533598){return _0x49076f[_0x259a('0x19')](_0x2fa140)[_0x259a('0x1a')](_0x533598);}};}function respondWithFilteredResult(_0x5444fa,_0x3bf9c9){return function(_0x4c2e8d){if(_0x4c2e8d){var _0x5c510a=typeof _0x3bf9c9['offset']==='undefined'&&typeof _0x3bf9c9[_0x259a('0x1b')]===_0x259a('0x1c');var _0x90b8b4=_0x4c2e8d['count'];var _0x398f22=_0x5c510a?0x0:_0x3bf9c9[_0x259a('0x1d')];var _0x9c9265=_0x5c510a?_0x4c2e8d[_0x259a('0x1e')]:_0x3bf9c9[_0x259a('0x1d')]+_0x3bf9c9['limit'];var _0x3ea1b8;if(_0x9c9265>=_0x90b8b4){_0x9c9265=_0x90b8b4;_0x3ea1b8=0xc8;}else{_0x3ea1b8=0xce;}_0x5444fa['status'](_0x3ea1b8);return _0x5444fa[_0x259a('0x1f')]('Content-Range',_0x398f22+'-'+_0x9c9265+'/'+_0x90b8b4)[_0x259a('0x1a')](_0x4c2e8d);}return null;};}function patchUpdates(_0x45af09){return function(_0x1dfa1c){try{jsonpatch[_0x259a('0x20')](_0x1dfa1c,_0x45af09,!![]);}catch(_0x5e445e){return BPromise[_0x259a('0x21')](_0x5e445e);}return _0x1dfa1c['save']();};}function saveUpdates(_0x589105,_0x310791){return function(_0x27782e){if(_0x27782e){return _0x27782e[_0x259a('0x22')](_0x589105)[_0x259a('0x23')](function(_0x5e6915){return _0x5e6915;});}return null;};}function removeEntity(_0x180c56,_0x25c1e4){return function(_0x1d5dc1){if(_0x1d5dc1){return _0x1d5dc1['destroy']()[_0x259a('0x23')](function(){_0x180c56[_0x259a('0x19')](0xcc)[_0x259a('0x18')]();});}};}function handleEntityNotFound(_0x16b366,_0x2d49ec){return function(_0x20f828){if(!_0x20f828){_0x16b366['sendStatus'](0x194);}return _0x20f828;};}function handleError(_0x334b24,_0x27727c){_0x27727c=_0x27727c||0x1f4;return function(_0x1b94b1){logger['error'](_0x1b94b1['stack']);if(_0x1b94b1[_0x259a('0x24')]){delete _0x1b94b1[_0x259a('0x24')];}_0x334b24[_0x259a('0x19')](_0x27727c)['send'](_0x1b94b1);};}exports['index']=function(_0x39a4bb,_0x60d49d){var _0x27da7f={},_0x59c796={},_0x3612dd={'count':0x0,'rows':[]};var _0x342826=_['map'](db[_0x259a('0x25')]['rawAttributes'],function(_0x54a226){return{'name':_0x54a226[_0x259a('0x26')],'type':_0x54a226[_0x259a('0x27')]['key']};});_0x59c796[_0x259a('0x28')]=_[_0x259a('0x29')](_0x342826,'name');_0x59c796[_0x259a('0x2a')]=_[_0x259a('0x2b')](_0x39a4bb['query']);_0x59c796[_0x259a('0x2c')]=_['intersection'](_0x59c796[_0x259a('0x28')],_0x59c796[_0x259a('0x2a')]);_0x59c796[_0x259a('0x2c')]=_[_0x259a('0x2d')](_0x59c796[_0x259a('0x2c')],[_0x259a('0x2e'),_0x259a('0x2f'),_0x259a('0x30'),_0x259a('0x31'),'$lt',_0x259a('0x32'),'$ne',_0x259a('0x33'),_0x259a('0x34'),_0x259a('0x35'),_0x259a('0x36'),_0x259a('0x37'),_0x259a('0x38'),'$like',_0x259a('0x39'),_0x259a('0x3a'),'$notILike',_0x259a('0x3b'),_0x259a('0x3c'),_0x259a('0x3d'),_0x259a('0x3e'),_0x259a('0x3f')]);_0x27da7f[_0x259a('0x40')]=_[_0x259a('0x41')](_0x59c796[_0x259a('0x28')],qs[_0x259a('0x42')](_0x39a4bb[_0x259a('0x2a')]['fields']));_0x27da7f[_0x259a('0x40')]=_0x27da7f[_0x259a('0x40')][_0x259a('0x43')]?_0x27da7f[_0x259a('0x40')]:_0x59c796[_0x259a('0x28')];if(!_0x39a4bb[_0x259a('0x2a')][_0x259a('0x44')](_0x259a('0x45'))){_0x27da7f[_0x259a('0x1b')]=qs['limit'](_0x39a4bb['query'][_0x259a('0x1b')]);_0x27da7f[_0x259a('0x1d')]=qs[_0x259a('0x1d')](_0x39a4bb['query'][_0x259a('0x1d')]);}_0x27da7f[_0x259a('0x46')]=qs[_0x259a('0x47')](_0x39a4bb[_0x259a('0x2a')][_0x259a('0x47')]);_0x27da7f['where']=qs[_0x259a('0x2c')](_[_0x259a('0x48')](_0x39a4bb[_0x259a('0x2a')],_0x59c796['filters']),_0x342826);if(_0x39a4bb[_0x259a('0x2a')][_0x259a('0x49')]){_0x27da7f[_0x259a('0x4a')]=_['merge'](_0x27da7f['where'],{'$or':_[_0x259a('0x29')](_0x342826,function(_0x93db0e){if(_0x93db0e[_0x259a('0x27')]!==_0x259a('0x4b')){var _0x29679b={};_0x29679b[_0x93db0e[_0x259a('0x24')]]={'$like':'%'+_0x39a4bb[_0x259a('0x2a')][_0x259a('0x49')]+'%'};return _0x29679b;}})});}_0x27da7f=_[_0x259a('0x4c')]({},_0x27da7f,_0x39a4bb['options']);var _0x54a36d={'where':_0x27da7f[_0x259a('0x4a')]};return db[_0x259a('0x25')][_0x259a('0x1e')](_0x54a36d)[_0x259a('0x23')](function(_0x42bee9){_0x3612dd['count']=_0x42bee9;if(_0x39a4bb[_0x259a('0x2a')][_0x259a('0x4d')]){_0x27da7f[_0x259a('0x4e')]=[{'all':!![]}];}return db[_0x259a('0x25')][_0x259a('0x4f')](_0x27da7f);})[_0x259a('0x23')](function(_0x27fd2b){_0x3612dd[_0x259a('0x50')]=_0x27fd2b;return _0x3612dd;})[_0x259a('0x23')](respondWithFilteredResult(_0x60d49d,_0x27da7f))[_0x259a('0x51')](handleError(_0x60d49d,null));};exports['show']=function(_0x3e308a,_0x20da3c){var _0x30840d={'raw':!![],'where':{'id':_0x3e308a[_0x259a('0x52')]['id']}},_0x5e9d0c={};_0x5e9d0c[_0x259a('0x28')]=_[_0x259a('0x2b')](db[_0x259a('0x25')][_0x259a('0x53')]);_0x5e9d0c[_0x259a('0x2a')]=_[_0x259a('0x2b')](_0x3e308a['query']);_0x5e9d0c[_0x259a('0x2c')]=_['intersection'](_0x5e9d0c['model'],_0x5e9d0c['query']);_0x30840d[_0x259a('0x40')]=_[_0x259a('0x41')](_0x5e9d0c[_0x259a('0x28')],qs[_0x259a('0x42')](_0x3e308a[_0x259a('0x2a')]['fields']));_0x30840d['attributes']=_0x30840d[_0x259a('0x40')][_0x259a('0x43')]?_0x30840d['attributes']:_0x5e9d0c['model'];if(_0x3e308a[_0x259a('0x2a')][_0x259a('0x4d')]){_0x30840d[_0x259a('0x4e')]=[{'all':!![]}];}_0x30840d=_[_0x259a('0x4c')]({},_0x30840d,_0x3e308a['options']);return db[_0x259a('0x25')][_0x259a('0x54')](_0x30840d)[_0x259a('0x23')](handleEntityNotFound(_0x20da3c,null))[_0x259a('0x23')](respondWithResult(_0x20da3c,null))[_0x259a('0x51')](handleError(_0x20da3c,null));};exports[_0x259a('0x55')]=function(_0x313fe6,_0x2cc408){return db[_0x259a('0x25')][_0x259a('0x55')](_0x313fe6['body'],{})[_0x259a('0x23')](respondWithResult(_0x2cc408,0xc9))[_0x259a('0x51')](handleError(_0x2cc408,null));};exports[_0x259a('0x22')]=function(_0x5bd052,_0x2244b7){if(_0x5bd052['body']['id']){delete _0x5bd052['body']['id'];}return db[_0x259a('0x25')][_0x259a('0x54')]({'where':{'id':_0x5bd052[_0x259a('0x52')]['id']}})['then'](handleEntityNotFound(_0x2244b7,null))[_0x259a('0x23')](saveUpdates(_0x5bd052[_0x259a('0x56')],null))[_0x259a('0x23')](respondWithResult(_0x2244b7,null))[_0x259a('0x51')](handleError(_0x2244b7,null));};exports[_0x259a('0x57')]=function(_0x14322,_0x4126da){return db[_0x259a('0x25')]['describe']()['then'](respondWithResult(_0x4126da,null))[_0x259a('0x51')](handleError(_0x4126da,null));};exports[_0x259a('0x58')]=function(_0x300705,_0x3b85c8){var _0x1b044a;return db[_0x259a('0x25')][_0x259a('0x54')]({'where':{'id':_0x300705[_0x259a('0x52')]['id']}})[_0x259a('0x23')](handleEntityNotFound(_0x3b85c8,null))['then'](function(_0x52cabf){if(_0x52cabf){return _0x52cabf['destroy']()['then'](function(_0x367a08){return _0x367a08;});}})[_0x259a('0x23')](function(_0x1c0754){_0x1b044a=_0x1c0754;if(_0x1c0754){if(_0x1c0754['VoiceQueueId']||_0x1c0754['CampaignId']){return db[_0x1c0754[_0x259a('0x59')]?_0x259a('0x5a'):'Campaign'][_0x259a('0x54')]({'where':{'id':_0x1c0754[_0x259a('0x59')]?_0x1c0754[_0x259a('0x59')]:_0x1c0754[_0x259a('0x5b')]},'attributes':['id','name'],'raw':!![]});}}})[_0x259a('0x23')](function(_0x4a6997){var _0x43195b={};if(_0x4a6997){_[_0x259a('0x4c')](_0x43195b,_[_0x259a('0x5c')](_0x1b044a['dataValues'],[_0x259a('0x5d'),'updatedAt','id']));_0x43195b[_0x259a('0x5e')]=0x15;_0x43195b[_0x259a('0x5f')]=_0x259a('0x60');_0x43195b['campaign']=_0x4a6997[_0x259a('0x24')];_0x43195b['membername']=_0x300705[_0x259a('0x61')][_0x259a('0x24')];_0x43195b[_0x259a('0x62')]=_0x300705[_0x259a('0x61')]['id'];_0x43195b[_0x259a('0x60')]=!![];_0x43195b['deletedat']=moment()[_0x259a('0x63')]('YYYY-MM-DD\x20HH:mm:ss');_0x43195b[_0x259a('0x64')]=_0x1b044a[_0x259a('0x65')];_0x43195b[_0x259a('0x66')]=_0x1b044a['VoiceQueueId']?_0x259a('0x67'):_0x259a('0x68');return db[_0x259a('0x69')]['find']({'where':{'id':_0x43195b[_0x259a('0x6a')]},'attributes':[_0x259a('0x6b'),_0x259a('0x6c')]})[_0x259a('0x23')](function(_0x2fb91a){if(!_[_0x259a('0x6d')](_0x3b85c8)&&!_[_0x259a('0x6d')](_0x2fb91a[_0x259a('0x6b')])){_0x43195b[_0x259a('0x6e')]=_0x2fb91a[_0x259a('0x6b')];if(!_[_0x259a('0x6d')](_0x2fb91a[_0x259a('0x6c')])){_0x43195b[_0x259a('0x6e')]+='\x20'+_0x2fb91a[_0x259a('0x6c')];}}})[_0x259a('0x6f')](function(){return db[_0x259a('0x70')][_0x259a('0x55')](_0x43195b);});}})[_0x259a('0x23')](function(){return _0x3b85c8[_0x259a('0x19')](0xcc)[_0x259a('0x18')]();})['catch'](handleError(_0x3b85c8,null));};exports[_0x259a('0x71')]=function(_0x3aa12f,_0x23dba7,_0x37d28a){var _0x19a7fd=[];return db[_0x259a('0x69')][_0x259a('0x57')]()[_0x259a('0x23')](function(_0x133919){_0x19a7fd=_[_0x259a('0x2b')](_0x133919);return _0x3aa12f[_0x259a('0x61')][_0x259a('0x72')]({'where':{'type':_0x259a('0x73'),'dialActive':!![],'dialMethod':_0x259a('0x74')},'attributes':['id',_0x259a('0x75'),_0x259a('0x76')],'raw':!![]});})['then'](function(_0x31fd85){if(_0x31fd85&&_0x31fd85[_0x259a('0x43')]){return db[_0x259a('0x77')][_0x259a('0x78')](function(_0x369cb9){var _0x2b8731={'active':![],'recallme':![],'scheduledAt':{'$lte':moment()['format'](_0x259a('0x79'))},'VoiceQueueId':{'$in':_[_0x259a('0x29')](_0x31fd85,'id')},'$or':[{'UserId':null},{'UserId':_0x3aa12f[_0x259a('0x61')]['id']}]};var _0x4a4bfa={'active':![],'recallme':!![],'VoiceQueueId':{'$in':_(_0x31fd85)[_0x259a('0x49')]([_0x259a('0x76'),0x0])[_0x259a('0x29')]('id')[_0x259a('0x7a')]()},'$or':[{'UserId':null},{'UserId':_0x3aa12f[_0x259a('0x61')]['id']}]};var _0x1fc73e={'$or':[_0x2b8731,_0x4a4bfa]};var _0x53dfb3=[];if(_0x3aa12f[_0x259a('0x56')][_0x259a('0x7b')]&&_0x3aa12f['body'][_0x259a('0x7b')]===_0x259a('0x7c')){if(!_[_0x259a('0x7d')](_0x3aa12f[_0x259a('0x56')][_0x259a('0x7e')])){_0x1fc73e['id']={'$in':_0x3aa12f[_0x259a('0x56')][_0x259a('0x7e')]};}_0x53dfb3=[[_0x259a('0x7f'),'ASC'],[_0x259a('0x80'),_0x31fd85[0x0][_0x259a('0x75')]===_0x259a('0x81')?_0x259a('0x82'):_0x259a('0x81')],db[_0x259a('0x77')][_0x259a('0x83')](_0x259a('0x84')),['id',_0x259a('0x82')]];}else{if(!_[_0x259a('0x7d')](_0x3aa12f[_0x259a('0x56')]['hopperIds'])){_0x1fc73e['id']={'$notIn':_0x3aa12f[_0x259a('0x56')]['hopperIds']};}_0x53dfb3=[[_0x259a('0x7f'),_0x259a('0x82')],['scheduledAt',_0x31fd85[0x0][_0x259a('0x75')]],db[_0x259a('0x77')]['literal'](_0x259a('0x85')),['id','ASC']];}return db[_0x259a('0x25')][_0x259a('0x86')]({'attributes':['id',_0x259a('0x87'),'recallme'],'where':_0x1fc73e,'order':_0x53dfb3,'transaction':_0x369cb9,'lock':_0x369cb9['LOCK'][_0x259a('0x88')],'include':[{'model':db['CmContact'],'as':_0x259a('0x89'),'attributes':_0x19a7fd,'include':[{'model':db[_0x259a('0x8a')],'as':_0x259a('0x8b'),'attributes':['id',_0x259a('0x24')]}]},{'model':db['CmList'],'as':'List','attributes':['id',_0x259a('0x24')]},{'model':db['VoiceQueue'],'as':_0x259a('0x8c'),'attributes':['id',_0x259a('0x24'),_0x259a('0x8d')]}]})[_0x259a('0x23')](function(_0x5a8321){if(_0x5a8321){return _0x5a8321[_0x259a('0x22')]({'UserId':_0x3aa12f[_0x259a('0x61')]['id']},{'transaction':_0x369cb9});}});});}})[_0x259a('0x23')](handleEntityNotFound(_0x23dba7,null))[_0x259a('0x23')](respondWithResult(_0x23dba7,null))[_0x259a('0x51')](handleError(_0x23dba7,null));};exports[_0x259a('0x8e')]=function(_0x53d3fd,_0x3b7295,_0x50f79a){var _0x53e0e6=[];return db[_0x259a('0x69')][_0x259a('0x57')]()['then'](function(_0x44ebfb){_0x53e0e6=_[_0x259a('0x2b')](_0x44ebfb);return _0x53d3fd[_0x259a('0x61')][_0x259a('0x72')]({'where':{'type':_0x259a('0x73'),'dialActive':!![],'dialMethod':'preview'},'attributes':['id',_0x259a('0x75'),_0x259a('0x76')],'raw':!![]});})[_0x259a('0x23')](function(_0x50dc39){if(_0x50dc39&&_0x50dc39['length']){return db[_0x259a('0x77')][_0x259a('0x78')](function(_0x11e020){var _0x301212={'active':![],'recallme':!![],'id':_0x53d3fd[_0x259a('0x56')][_0x259a('0x8f')]};return db[_0x259a('0x25')][_0x259a('0x86')]({'attributes':['id','scheduledat',_0x259a('0x90')],'where':_0x301212,'transaction':_0x11e020,'lock':_0x11e020[_0x259a('0x91')][_0x259a('0x88')],'include':[{'model':db[_0x259a('0x69')],'as':_0x259a('0x89'),'attributes':_0x53e0e6,'include':[{'model':db[_0x259a('0x8a')],'as':_0x259a('0x8b'),'attributes':['id',_0x259a('0x24')]}]},{'model':db[_0x259a('0x92')],'as':_0x259a('0x93'),'attributes':['id',_0x259a('0x24')]},{'model':db[_0x259a('0x5a')],'as':_0x259a('0x8c'),'attributes':['id',_0x259a('0x24'),_0x259a('0x8d')]}]})[_0x259a('0x23')](function(_0x56b04a){if(_0x56b04a){return _0x56b04a[_0x259a('0x22')]({'UserId':_0x53d3fd[_0x259a('0x61')]['id']},{'transaction':_0x11e020});}});});}})['then'](handleEntityNotFound(_0x3b7295,null))[_0x259a('0x23')](respondWithResult(_0x3b7295,null))[_0x259a('0x51')](handleError(_0x3b7295,null));};exports['getOpenContacts']=function(_0x3b0903,_0x44bd8d,_0x416df8){return _0x3b0903[_0x259a('0x61')]['getVoiceQueues']({'where':{'type':_0x259a('0x73'),'dialActive':!![],'dialMethod':_0x259a('0x74')},'attributes':['id'],'raw':!![]})['then'](function(_0x5a6df3){if(_0x5a6df3&&_0x5a6df3['length']){return db[_0x259a('0x25')][_0x259a('0x1e')]({'where':{'active':![],'recallme':![],'scheduledAt':{'$lte':moment()[_0x259a('0x63')](_0x259a('0x79'))},'VoiceQueueId':{'$in':_['map'](_0x5a6df3,'id')},'$or':[{'UserId':null},{'UserId':_0x3b0903[_0x259a('0x61')]['id']}]}});}return 0x0;})[_0x259a('0x23')](function(_0x1b8a7a){if(!_['isNil'](_0x1b8a7a)&&_[_0x259a('0x94')](_0x1b8a7a)){return _0x44bd8d['status'](0xc8)[_0x259a('0x1a')]({'contacts':_0x1b8a7a});}else{logger['error'](_0x259a('0x95'),'getOpenContacts',0x194,_0x259a('0x96'));_0x44bd8d[_0x259a('0x17')](0x194);}})[_0x259a('0x51')](handleError(_0x44bd8d,null));};exports['getTimezones']=function(_0x3fea0e,_0x331d25,_0x121a91){var _0x5ae0f3=shared[_0x259a('0x97')];var _0x596a93=[];_[_0x259a('0x29')](_0x5ae0f3,function(_0x18dea8){_0x596a93[_0x259a('0x98')]({'id':_0x18dea8[_0x259a('0x24')],'name':_0x18dea8[_0x259a('0x24')],'utcOffset':_0x18dea8[_0x259a('0x99')]});});return _0x331d25[_0x259a('0x19')](0xc8)[_0x259a('0x1a')]({'tz':_0x596a93});};exports['getTimezone']=function(_0x335f90,_0x394e07,_0x1262d9){var _0x4b3879=shared[_0x259a('0x97')];var _0x1a608a={};if(!_[_0x259a('0x6d')](_0x4b3879[_0x335f90['body']['id']]))_0x1a608a=_0x4b3879[_0x335f90['body']['id']];return _0x394e07[_0x259a('0x19')](0xc8)[_0x259a('0x1a')](_0x1a608a);};