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