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 _0x0650=['then','initMailAccounts','mailAccounts','findOne','loginMailFrequency','log','bluebird','./server','./realtime','./lib/email','../../mysqldb','getMailAccounts'];(function(_0x3a7e42,_0x58e47d){var _0x7122b7=function(_0x42acab){while(--_0x42acab){_0x3a7e42['push'](_0x3a7e42['shift']());}};_0x7122b7(++_0x58e47d);}(_0x0650,0x1aa));var _0x0065=function(_0x422fa5,_0x4fc338){_0x422fa5=_0x422fa5-0x0;var _0x132d59=_0x0650[_0x422fa5];return _0x132d59;};'use strict';var BPromise=require(_0x0065('0x0'));var server=require(_0x0065('0x1'));var Realtime=require(_0x0065('0x2'));var EmailChannel=require(_0x0065('0x3'));var mailAccount=require('./rpc/mailAccount');var realtime=new Realtime();var email=new EmailChannel(realtime);var db=require(_0x0065('0x4'))['db'];function initRealtime(){return BPromise['resolve']()['then'](mailAccount[_0x0065('0x5')]())[_0x0065('0x6')](realtime[_0x0065('0x7')]())['then'](function(){email['refresh'](realtime[_0x0065('0x8')]);return realtime;});}function main(){return server['listen'](realtime,email)['then'](function(_0x49d04d){return initRealtime();})['then'](function(_0x25892a){return db['Setting'][_0x0065('0x9')]({'attributes':['id',_0x0065('0xa')],'raw':!![]});})['then'](function(_0x2afe89){return setInterval(initRealtime,_0x2afe89[_0x0065('0xa')]*0x3e8);})['catch'](function(_0x535a92){console[_0x0065('0xb')](_0x535a92);});}main();