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