-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathserver.js
29 lines (23 loc) · 998 Bytes
/
server.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
const app = require('./src/app')
const { baseWebhookURL, enableWebHook, enableWebSocket } = require('./src/config')
const { logger } = require('./src/logger')
const { handleUpgrade } = require('./src/websocket')
require('dotenv').config()
// Start the server
const port = process.env.PORT || 3000
// Check if BASE_WEBHOOK_URL environment variable is available when WebHook is enabled
if (!baseWebhookURL && enableWebHook) {
logger.error('BASE_WEBHOOK_URL environment variable is not set. Exiting...')
process.exit(1) // Terminate the application with an error code
}
const server = app.listen(port, () => {
logger.info(`Server running on port ${port}`)
})
if (enableWebSocket) {
server.on('upgrade', (request, socket, head) => {
handleUpgrade(request, socket, head)
})
}
// puppeteer uses subscriptions to SIGINT, SIGTERM, and SIGHUP to know when to close browser instances
// this disables the warnings when you starts more than 10 browser instances
process.setMaxListeners(0)