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