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