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