Built motion from commit 775e2a94.|2.6.3
[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 _0x46e1=['info','start','filter','exitCode','number','length','map','pm2_env','name','Online\x20apps:','online','join','Offline\x20apps:','status','Server\x20failed\x20to\x20start\x20due\x20to\x20error!','Server\x20failed\x20to\x20start\x20due\x20to\x20error:\x20%s','exit','lodash','./mysqldb','./config/seedDB','./config/license','./rpc','./config/environment','./config/logger','app','./config/pm2','./config/pm2/config','./config/schedule/chat','./config/schedule/whatsapp','./config/schedule/transcribe','./config/schedule/cloud-provider','sequelize','sync','then','default','listen'];(function(_0x344796,_0x126296){var _0x1b7ce4=function(_0x3b1275){while(--_0x3b1275){_0x344796['push'](_0x344796['shift']());}};_0x1b7ce4(++_0x126296);}(_0x46e1,0x155));var _0x146e=function(_0x11caa2,_0x47c75a){_0x11caa2=_0x11caa2-0x0;var _0x453f97=_0x46e1[_0x11caa2];return _0x453f97;};'use strict';var _=require(_0x146e('0x0'));var db=require(_0x146e('0x1'))['db'];var seedDb=require(_0x146e('0x2'));var checkLicense=require(_0x146e('0x3'));var rpc=require(_0x146e('0x4'));var config=require(_0x146e('0x5'));var logger=require(_0x146e('0x6'))(_0x146e('0x7'));var pm2=require(_0x146e('0x8'));var pm2Config=require(_0x146e('0x9'));var schedule=require('./config/schedule');var chat=require(_0x146e('0xa'));var whatsapp=require(_0x146e('0xb'));var transcribe=require(_0x146e('0xc'));var provider=require(_0x146e('0xd'));function main(){return db[_0x146e('0xe')][_0x146e('0xf')]()[_0x146e('0x10')](function(){if(config['seedDB']){return seedDb[_0x146e('0x11')]();}})['then'](function(){return checkLicense[_0x146e('0x11')]();})[_0x146e('0x10')](function(){return rpc[_0x146e('0x12')]();})[_0x146e('0x10')](function(_0x15cea1){logger[_0x146e('0x13')](_0x15cea1);return chat['start']();})['then'](function(){return whatsapp[_0x146e('0x14')]();})[_0x146e('0x10')](function(){return schedule[_0x146e('0x14')]();})[_0x146e('0x10')](function(){return transcribe[_0x146e('0x14')]();})[_0x146e('0x10')](function(){return provider[_0x146e('0x14')]();})[_0x146e('0x10')](function(_0x524209){logger['info'](_0x524209);return pm2[_0x146e('0x14')](pm2Config);})[_0x146e('0x10')](function(_0x18e9bc){var _0x547342=_0x18e9bc[_0x146e('0x15')](function(_0x21c564){return typeof _0x21c564[_0x146e('0x16')]===_0x146e('0x17')&&_0x21c564[_0x146e('0x16')]>=0x0;});if(_0x547342[_0x146e('0x18')]>0x0){throw new Error(_0x547342[_0x146e('0x18')]+'\x20processes\x20failed\x20at\x20startup:\x20'+_[_0x146e('0x19')](_0x547342,function(_0x1a8a20){return'\x22'+_0x1a8a20[_0x146e('0x1a')][_0x146e('0x1b')]+'\x22';}));}logger[_0x146e('0x13')](_0x146e('0x1c'),_[_0x146e('0x19')](_['filter'](_0x18e9bc,{'status':_0x146e('0x1d')}),'name')[_0x146e('0x1e')]());logger[_0x146e('0x13')](_0x146e('0x1f'),_['map'](_[_0x146e('0x15')](_0x18e9bc,function(_0x559f54){return _0x559f54[_0x146e('0x20')]!=='online';}),_0x146e('0x1b'))[_0x146e('0x1e')]()||'None');console['log']('App\x20Ready!');})['catch'](function(_0x4d0ee3){console['log'](_0x146e('0x21'),_0x4d0ee3);logger['error'](_0x146e('0x22'),_0x4d0ee3);process[_0x146e('0x23')](0x1);});}main();