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