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