e9a53eabfa91f4dde0554347f8dc186bdffe8762
[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 _0x70c9=['filter','status','None','default','./config/license','catch','error','exit','lodash','./rpc','./config/environment','./config/logger','./config/pm2','./config/pm2/config','./config/schedule/chat','./config/schedule/whatsapp','sync','then','info','start','Online\x20apps:','map','online','name','join','Offline\x20apps:'];(function(_0x10a187,_0xd916cd){var _0x505e94=function(_0x351e24){while(--_0x351e24){_0x10a187['push'](_0x10a187['shift']());}};_0x505e94(++_0xd916cd);}(_0x70c9,0xa4));var _0x970c=function(_0x32a377,_0x4ef27c){_0x32a377=_0x32a377-0x0;var _0x116ed7=_0x70c9[_0x32a377];return _0x116ed7;};'use strict';var _=require(_0x970c('0x0'));var mysqldb=require('./mysqldb');var rpc=require(_0x970c('0x1'));var config=require(_0x970c('0x2'));var logger=require(_0x970c('0x3'))('app');var pm2=require(_0x970c('0x4'));var pm2Config=require(_0x970c('0x5'));var schedule=require('./config/schedule');var chat=require(_0x970c('0x6'));var whatsapp=require(_0x970c('0x7'));var transcribe=require('./config/schedule/transcribe');var provider=require('./config/schedule/cloud-provider');function main(){return mysqldb['db']['sequelize'][_0x970c('0x8')]()[_0x970c('0x9')](function(){return rpc['listen']();})['then'](function(_0x487e16){logger[_0x970c('0xa')](_0x487e16);return chat[_0x970c('0xb')]();})['then'](function(){return whatsapp['start']();})[_0x970c('0x9')](function(){return schedule[_0x970c('0xb')]();})[_0x970c('0x9')](function(){return transcribe['start']();})['then'](function(){return provider[_0x970c('0xb')]();})[_0x970c('0x9')](function(_0x14a69a){logger[_0x970c('0xa')](_0x14a69a);return pm2['start'](pm2Config);})[_0x970c('0x9')](function(_0x2f21f1){logger[_0x970c('0xa')](_0x970c('0xc'),_[_0x970c('0xd')](_['filter'](_0x2f21f1,{'status':_0x970c('0xe')}),_0x970c('0xf'))[_0x970c('0x10')]());logger['info'](_0x970c('0x11'),_[_0x970c('0xd')](_[_0x970c('0x12')](_0x2f21f1,function(_0x50b7fe){return _0x50b7fe[_0x970c('0x13')]!==_0x970c('0xe');}),_0x970c('0xf'))[_0x970c('0x10')]()||_0x970c('0x14'));config['seedDB']&&require('./config/seedDB')[_0x970c('0x15')]();require(_0x970c('0x16'))[_0x970c('0x15')]();})[_0x970c('0x17')](function(_0x5ed003){logger[_0x970c('0x18')]('Server\x20failed\x20to\x20start\x20due\x20to\x20error:\x20%s',_0x5ed003);process[_0x970c('0x19')](0x1);});}main();