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