Built motion from commit fe909640.|2.6.8
[motion2.git] / server / services / ami / index.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 _0xb53e=['initFreshdeskAccounts','getDeskAccounts','initDeskAccounts','initZohoAccounts','getVtigerAccounts','initVtigerAccounts','getFreshsalesAccounts','initFreshsalesAccounts','getServicenowAccounts','getDynamics365Accounts','getCampaigns','initCampaigns','initVoiceExtensions','getFaxAccounts','resolve','getVoiceQueueReports','getVoiceQueueHopperHistory','initVoiceQueueHopperHistory','getCampaignHopperHistory','initCampaignHopperHistory','initVoiceCallReports','error','[index.js][initParams]','inspect','listen','catch','[index.js][main]','bluebird','util','moment','./server','./realtime','./report','./acw','./trigger','./rpc/user','./rpc/voiceQueue','./rpc/voiceQueueReport','./rpc/trunk','./rpc/trigger','./rpc/template','./rpc/cmHopperHistory','./rpc/voiceExtension','./rpc/integrations/zendesk','./rpc/integrations/salesforce','./rpc/integrations/freshdesk','./rpc/integrations/zoho','./rpc/integrations/freshsales','get','hour','then','initAgents','getTelephones','getTrunks','initTrunks','initVoiceQueues','getTriggers','initTriggers','initTemplates','initZendeskAccounts','getSalesforceAccounts','initSalesforceAccounts','getSugarcrmAccounts','initSugarcrmAccounts','getFreshdeskAccounts'];(function(_0x568e7c,_0x5ea152){var _0x4682a7=function(_0x868695){while(--_0x868695){_0x568e7c['push'](_0x568e7c['shift']());}};_0x4682a7(++_0x5ea152);}(_0xb53e,0xde));var _0xeb53=function(_0x3e5bff,_0x12659e){_0x3e5bff=_0x3e5bff-0x0;var _0x4b6453=_0xb53e[_0x3e5bff];return _0x4b6453;};'use strict';var BPromise=require(_0xeb53('0x0'));var util=require(_0xeb53('0x1'));var moment=require(_0xeb53('0x2'));var server=require(_0xeb53('0x3'));var Realtime=require(_0xeb53('0x4'));var Report=require(_0xeb53('0x5'));var Acw=require(_0xeb53('0x6'));var Trigger=require(_0xeb53('0x7'));var Dialer=require('./dialer');var Preview=require('./preview');var Fax=require('./fax');var user=require(_0xeb53('0x8'));var voiceQueue=require(_0xeb53('0x9'));var voiceQueueReport=require(_0xeb53('0xa'));var voiceCallReport=require('./rpc/voiceCallReport');var trunk=require(_0xeb53('0xb'));var trigger=require(_0xeb53('0xc'));var template=require(_0xeb53('0xd'));var cmHopperHistory=require(_0xeb53('0xe'));var campaign=require('./rpc/campaign');var voiceExtension=require(_0xeb53('0xf'));var faxAccount=require('./rpc/faxAccount');var zendesk=require(_0xeb53('0x10'));var salesforce=require(_0xeb53('0x11'));var sugarcrm=require('./rpc/integrations/sugarcrm');var freshdesk=require(_0xeb53('0x12'));var desk=require('./rpc/integrations/desk');var zoho=require(_0xeb53('0x13'));var vtiger=require('./rpc/integrations/vtiger');var freshsales=require(_0xeb53('0x14'));var servicenow=require('./rpc/integrations/servicenow');var dynamics365=require('./rpc/integrations/dynamics365');var realtime=new Realtime();var report=new Report(realtime);var acw=new Acw(realtime);var channelTrigger=new Trigger(realtime);var preview=new Preview(realtime);var dialer=new Dialer(realtime,preview);var fax=new Fax(realtime);var logger=require('../../config/logger')('ami');var isTrue=!![];var initP=!![];function ifMidnight(){if(moment()[_0xeb53('0x15')]('hour')===0x0&&initP){initP=![];isTrue=!![];initParams();}if(moment()['get'](_0xeb53('0x16'))===0x1&&isTrue){isTrue=![];initP=!![];}}function initRealtime(){ifMidnight();return BPromise['resolve']()[_0xeb53('0x17')](user['getAgents']())['then'](realtime[_0xeb53('0x18')]())[_0xeb53('0x17')](user[_0xeb53('0x19')]())[_0xeb53('0x17')](realtime['initTelephones']())[_0xeb53('0x17')](trunk[_0xeb53('0x1a')]())['then'](realtime[_0xeb53('0x1b')]())[_0xeb53('0x17')](voiceQueue['getVoiceQueues']())[_0xeb53('0x17')](realtime[_0xeb53('0x1c')]())[_0xeb53('0x17')](trigger[_0xeb53('0x1d')]())[_0xeb53('0x17')](realtime[_0xeb53('0x1e')]())[_0xeb53('0x17')](template['getTemplates']())[_0xeb53('0x17')](realtime[_0xeb53('0x1f')]())[_0xeb53('0x17')](zendesk['getZendeskAccounts']())[_0xeb53('0x17')](realtime[_0xeb53('0x20')]())[_0xeb53('0x17')](salesforce[_0xeb53('0x21')]())[_0xeb53('0x17')](realtime[_0xeb53('0x22')]())['then'](sugarcrm[_0xeb53('0x23')]())[_0xeb53('0x17')](realtime[_0xeb53('0x24')]())[_0xeb53('0x17')](freshdesk[_0xeb53('0x25')]())[_0xeb53('0x17')](realtime[_0xeb53('0x26')]())['then'](desk[_0xeb53('0x27')]())[_0xeb53('0x17')](realtime[_0xeb53('0x28')]())[_0xeb53('0x17')](zoho['getZohoAccounts']())[_0xeb53('0x17')](realtime[_0xeb53('0x29')]())['then'](vtiger[_0xeb53('0x2a')]())[_0xeb53('0x17')](realtime[_0xeb53('0x2b')]())[_0xeb53('0x17')](freshsales[_0xeb53('0x2c')]())[_0xeb53('0x17')](realtime[_0xeb53('0x2d')]())['then'](servicenow[_0xeb53('0x2e')]())[_0xeb53('0x17')](realtime['initServicenowAccounts']())['then'](dynamics365[_0xeb53('0x2f')]())[_0xeb53('0x17')](realtime['initDynamics365Accounts']())[_0xeb53('0x17')](campaign[_0xeb53('0x30')]())['then'](realtime[_0xeb53('0x31')]())[_0xeb53('0x17')](voiceExtension['getVoiceExtensions']())[_0xeb53('0x17')](realtime[_0xeb53('0x32')]())[_0xeb53('0x17')](faxAccount[_0xeb53('0x33')]())[_0xeb53('0x17')](realtime['initFaxAccounts']())[_0xeb53('0x17')](function(){return realtime;});}function initParams(){return BPromise[_0xeb53('0x34')]()[_0xeb53('0x17')](voiceQueueReport[_0xeb53('0x35')]())[_0xeb53('0x17')](realtime['initVoiceQueueReports']())['then'](cmHopperHistory[_0xeb53('0x36')]())[_0xeb53('0x17')](realtime[_0xeb53('0x37')]())[_0xeb53('0x17')](cmHopperHistory[_0xeb53('0x38')]())['then'](realtime[_0xeb53('0x39')]())['then'](voiceCallReport['getVoiceCallReports']())[_0xeb53('0x17')](realtime[_0xeb53('0x3a')]())['catch'](function(_0x2c27bd){logger[_0xeb53('0x3b')](_0xeb53('0x3c'),util[_0xeb53('0x3d')](_0x2c27bd,{'showHidden':![],'depth':null}));});}function main(){return server[_0xeb53('0x3e')](realtime,preview,fax)['then'](function(_0x8611d8){return initRealtime();})[_0xeb53('0x17')](function(){return initParams();})[_0xeb53('0x17')](function(){report['sync']();setInterval(initRealtime,0x1388);})[_0xeb53('0x3f')](function(_0x5ea9bf){logger['error'](_0xeb53('0x40'),util[_0xeb53('0x3d')](_0x5ea9bf,{'showHidden':![],'depth':null}));});}main();