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