fad3c3f24d7f8215c2325edf1d2235839553a508
[motion2.git] / server / app.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 _0x9a6b=['./mysqldb','./config/seedDB','./config/license','./rpc','./config/environment','app','./config/pm2/config','./config/schedule','./config/schedule/chat','./config/schedule/whatsapp','./config/schedule/transcribe','./config/schedule/cloud-provider','sequelize','sync','then','seedDB','default','listen','info','start','exitCode','number','length','\x20processes\x20failed\x20at\x20startup:\x20','map','pm2_env','name','Online\x20apps:','online','join','filter','status','None','log','catch','Server\x20failed\x20to\x20start\x20due\x20to\x20error!','error','Server\x20failed\x20to\x20start\x20due\x20to\x20error:\x20%s','exit','lodash'];(function(_0x21ba8d,_0xc0373d){var _0x50374b=function(_0x51b03e){while(--_0x51b03e){_0x21ba8d['push'](_0x21ba8d['shift']());}};_0x50374b(++_0xc0373d);}(_0x9a6b,0x77));var _0xb9a6=function(_0x5f26ab,_0x1c61d3){_0x5f26ab=_0x5f26ab-0x0;var _0x504dc6=_0x9a6b[_0x5f26ab];return _0x504dc6;};'use strict';var _=require(_0xb9a6('0x0'));var db=require(_0xb9a6('0x1'))['db'];var seedDb=require(_0xb9a6('0x2'));var checkLicense=require(_0xb9a6('0x3'));var rpc=require(_0xb9a6('0x4'));var config=require(_0xb9a6('0x5'));var logger=require('./config/logger')(_0xb9a6('0x6'));var pm2=require('./config/pm2');var pm2Config=require(_0xb9a6('0x7'));var schedule=require(_0xb9a6('0x8'));var chat=require(_0xb9a6('0x9'));var whatsapp=require(_0xb9a6('0xa'));var transcribe=require(_0xb9a6('0xb'));var provider=require(_0xb9a6('0xc'));function main(){return db[_0xb9a6('0xd')][_0xb9a6('0xe')]()[_0xb9a6('0xf')](function(){if(config[_0xb9a6('0x10')]){return seedDb['default']();}})[_0xb9a6('0xf')](function(){return checkLicense[_0xb9a6('0x11')]();})['then'](function(){return rpc[_0xb9a6('0x12')]();})[_0xb9a6('0xf')](function(_0x296a91){logger[_0xb9a6('0x13')](_0x296a91);return chat['start']();})['then'](function(){return whatsapp['start']();})[_0xb9a6('0xf')](function(){return schedule['start']();})[_0xb9a6('0xf')](function(){return transcribe['start']();})[_0xb9a6('0xf')](function(){return provider[_0xb9a6('0x14')]();})[_0xb9a6('0xf')](function(_0x220d2f){logger[_0xb9a6('0x13')](_0x220d2f);return pm2[_0xb9a6('0x14')](pm2Config);})[_0xb9a6('0xf')](function(_0x158d6c){var _0x243086=_0x158d6c['filter'](function(_0x463f33){return typeof _0x463f33[_0xb9a6('0x15')]===_0xb9a6('0x16')&&_0x463f33[_0xb9a6('0x15')]>=0x0;});if(_0x243086['length']>0x0){throw new Error(_0x243086[_0xb9a6('0x17')]+_0xb9a6('0x18')+_[_0xb9a6('0x19')](_0x243086,function(_0x5b3395){return'\x22'+_0x5b3395[_0xb9a6('0x1a')][_0xb9a6('0x1b')]+'\x22';}));}logger[_0xb9a6('0x13')](_0xb9a6('0x1c'),_[_0xb9a6('0x19')](_['filter'](_0x158d6c,{'status':_0xb9a6('0x1d')}),_0xb9a6('0x1b'))[_0xb9a6('0x1e')]());logger[_0xb9a6('0x13')]('Offline\x20apps:',_['map'](_[_0xb9a6('0x1f')](_0x158d6c,function(_0x449b39){return _0x449b39[_0xb9a6('0x20')]!=='online';}),_0xb9a6('0x1b'))['join']()||_0xb9a6('0x21'));console[_0xb9a6('0x22')]('App\x20Ready!');})[_0xb9a6('0x23')](function(_0x4dfc8c){console['log'](_0xb9a6('0x24'),_0x4dfc8c);logger[_0xb9a6('0x25')](_0xb9a6('0x26'),_0x4dfc8c);process[_0xb9a6('0x27')](0x1);});}main();