Built motion from commit 953226e6.|2.6.32
[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 _0xcb41=['listen','start','info','filter','exitCode','number','length','map','Online\x20apps:','online','name','join','status','log','Server\x20failed\x20to\x20start\x20due\x20to\x20error!','Server\x20failed\x20to\x20start\x20due\x20to\x20error:\x20%s','exit','lodash','./mysqldb','./config/seedDB','./config/license','./config/environment','app','./config/pm2','./config/pm2/config','./config/schedule','./config/schedule/chat','./config/schedule/whatsapp','./config/schedule/transcribe','./config/schedule/cloud-provider','sync','then','default'];(function(_0x1cb18a,_0x33167a){var _0x22442e=function(_0x46c611){while(--_0x46c611){_0x1cb18a['push'](_0x1cb18a['shift']());}};_0x22442e(++_0x33167a);}(_0xcb41,0x1df));var _0x1cb4=function(_0x257f90,_0x8dc2c4){_0x257f90=_0x257f90-0x0;var _0x27efb2=_0xcb41[_0x257f90];return _0x27efb2;};'use strict';var _=require(_0x1cb4('0x0'));var db=require(_0x1cb4('0x1'))['db'];var seedDb=require(_0x1cb4('0x2'));var checkLicense=require(_0x1cb4('0x3'));var rpc=require('./rpc');var config=require(_0x1cb4('0x4'));var logger=require('./config/logger')(_0x1cb4('0x5'));var pm2=require(_0x1cb4('0x6'));var pm2Config=require(_0x1cb4('0x7'));var schedule=require(_0x1cb4('0x8'));var chat=require(_0x1cb4('0x9'));var whatsapp=require(_0x1cb4('0xa'));var transcribe=require(_0x1cb4('0xb'));var provider=require(_0x1cb4('0xc'));function main(){return db['sequelize'][_0x1cb4('0xd')]()[_0x1cb4('0xe')](function(){if(config['seedDB']){return seedDb[_0x1cb4('0xf')]();}})[_0x1cb4('0xe')](function(){return checkLicense[_0x1cb4('0xf')]();})['then'](function(){return rpc[_0x1cb4('0x10')]();})[_0x1cb4('0xe')](function(_0x30c281){logger['info'](_0x30c281);return chat['start']();})[_0x1cb4('0xe')](function(){return whatsapp['start']();})[_0x1cb4('0xe')](function(){return schedule[_0x1cb4('0x11')]();})[_0x1cb4('0xe')](function(){return transcribe[_0x1cb4('0x11')]();})[_0x1cb4('0xe')](function(){return provider['start']();})[_0x1cb4('0xe')](function(_0x4cb3c9){logger[_0x1cb4('0x12')](_0x4cb3c9);return pm2[_0x1cb4('0x11')](pm2Config);})[_0x1cb4('0xe')](function(_0xb01aec){var _0x147d0e=_0xb01aec[_0x1cb4('0x13')](function(_0x34e04e){return typeof _0x34e04e[_0x1cb4('0x14')]===_0x1cb4('0x15')&&_0x34e04e[_0x1cb4('0x14')]>=0x0;});if(_0x147d0e['length']>0x0){throw new Error(_0x147d0e[_0x1cb4('0x16')]+'\x20processes\x20failed\x20at\x20startup:\x20'+_[_0x1cb4('0x17')](_0x147d0e,function(_0x10326c){return'\x22'+_0x10326c['pm2_env']['name']+'\x22';}));}logger[_0x1cb4('0x12')](_0x1cb4('0x18'),_[_0x1cb4('0x17')](_[_0x1cb4('0x13')](_0xb01aec,{'status':_0x1cb4('0x19')}),_0x1cb4('0x1a'))[_0x1cb4('0x1b')]());logger[_0x1cb4('0x12')]('Offline\x20apps:',_[_0x1cb4('0x17')](_[_0x1cb4('0x13')](_0xb01aec,function(_0x5a24ec){return _0x5a24ec[_0x1cb4('0x1c')]!==_0x1cb4('0x19');}),_0x1cb4('0x1a'))[_0x1cb4('0x1b')]()||'None');console[_0x1cb4('0x1d')]('App\x20Ready!');})['catch'](function(_0x20afe0){console[_0x1cb4('0x1d')](_0x1cb4('0x1e'),_0x20afe0);logger['error'](_0x1cb4('0x1f'),_0x20afe0);process[_0x1cb4('0x20')](0x1);});}main();