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 _0x00e0=['loginMailFrequency','catch','log','bluebird','./server','./realtime','./rpc/mailAccount','resolve','then','refresh','listen','Setting'];(function(_0x325b13,_0x378e3e){var _0x1697fe=function(_0x16441c){while(--_0x16441c){_0x325b13['push'](_0x325b13['shift']());}};_0x1697fe(++_0x378e3e);}(_0x00e0,0x1e3));var _0x000e=function(_0x5ef75e,_0x51c47c){_0x5ef75e=_0x5ef75e-0x0;var _0x25ff08=_0x00e0[_0x5ef75e];return _0x25ff08;};'use strict';var BPromise=require(_0x000e('0x0'));var server=require(_0x000e('0x1'));var Realtime=require(_0x000e('0x2'));var EmailChannel=require('./lib/email');var mailAccount=require(_0x000e('0x3'));var realtime=new Realtime();var email=new EmailChannel(realtime);var db=require('../../mysqldb')['db'];function initRealtime(){return BPromise[_0x000e('0x4')]()['then'](mailAccount['getMailAccounts']())['then'](realtime['initMailAccounts']())[_0x000e('0x5')](function(){email[_0x000e('0x6')](realtime['mailAccounts']);return realtime;});}function main(){return server[_0x000e('0x7')](realtime,email)[_0x000e('0x5')](function(_0x3a2025){return initRealtime();})[_0x000e('0x5')](function(_0x4974e1){return db[_0x000e('0x8')]['findOne']({'attributes':['id',_0x000e('0x9')],'raw':!![]});})[_0x000e('0x5')](function(_0x2612d1){return setInterval(initRealtime,_0x2612d1[_0x000e('0x9')]*0x3e8);})[_0x000e('0xa')](function(_0x22cbee){console[_0x000e('0xb')](_0x22cbee);});}main();