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