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