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