1 // *************************************************************************
3 // * xCALLY Motion - The Omnichannel Contact Center *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved *
6 // *************************************************************************
8 // * Email: info@xcally.com *
9 // * Website: https://www.xcally.com *
11 // *************************************************************************
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. *
17 // *************************************************************************
18 var _0x7387=['resolve','then','getMailAccounts','refresh','listen','catch','error','Email\x20service\x20initialization','./server','./realtime','./lib/email','./rpc/mailAccount','./rpc/setting'];(function(_0x2ba740,_0x62a305){var _0x358bda=function(_0x16cc07){while(--_0x16cc07){_0x2ba740['push'](_0x2ba740['shift']());}};_0x358bda(++_0x62a305);}(_0x7387,0x140));var _0x7738=function(_0x122ef9,_0x451d2a){_0x122ef9=_0x122ef9-0x0;var _0x42fba0=_0x7387[_0x122ef9];return _0x42fba0;};'use strict';var server=require(_0x7738('0x0'));var Realtime=require(_0x7738('0x1'));var EmailChannel=require(_0x7738('0x2'));var mailAccount=require(_0x7738('0x3'));var setting=require(_0x7738('0x4'));var logger=require('../../config/logger')('email');var realtime=new Realtime();var email=new EmailChannel(realtime);function initRealtime(){return Promise[_0x7738('0x5')]()[_0x7738('0x6')](mailAccount[_0x7738('0x7')]())['then'](realtime['initMailAccounts']())[_0x7738('0x6')](function(){email[_0x7738('0x8')](realtime['mailAccounts']);return realtime;});}function main(){return server[_0x7738('0x9')](realtime,email)['then'](function(){return initRealtime();})[_0x7738('0x6')](function(){return setting['getSettings']();})[_0x7738('0x6')](function(_0x194290){return setInterval(initRealtime,_0x194290['loginMailFrequency']*0x3e8);})[_0x7738('0xa')](function(_0x507c11){logger[_0x7738('0xb')](_0x7738('0xc'),_0x507c11);});}main();