From f9212d0aec7415026b900115be45051028d2bd9c Mon Sep 17 00:00:00 2001 From: Myx Date: Tue, 27 Aug 2024 10:51:09 +0200 Subject: [PATCH] Add custom port support --- client/webserver.ts | 10 +++++++++- package.json | 2 +- readme.md | 1 + 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/client/webserver.ts b/client/webserver.ts index 8077b03..498b132 100644 --- a/client/webserver.ts +++ b/client/webserver.ts @@ -6,12 +6,15 @@ import fs from 'fs'; import bodyParser from 'body-parser'; import https from 'https'; import ip from 'ip'; +import * as dotenv from 'dotenv'; import { Handlers } from "./handlers/index" import { loadAvoidList } from '../helpers/load-avoid-list'; import { LoggerColors } from '../helpers/logger-colors'; import { generateFileName } from '../helpers/generate-file-name'; +dotenv.config(); + const app = express(); const storage = diskStorage({ destination: 'sounds/', @@ -100,7 +103,7 @@ app.get('/avoidlist', (_req, res) => { * @returns void */ export function startServer() { - let port: 80 | 443 = 80; + let port: number = 80; let server; let ssl: "https" | "http" = "http"; @@ -111,6 +114,7 @@ export function startServer() { key: fs.readFileSync(path.join(__dirname, '/certs/key.pem')), cert: fs.readFileSync(path.join(__dirname, '/certs/cert.pem')), }; + server = https.createServer(options, app); ssl = "https"; port = 443; @@ -120,6 +124,10 @@ export function startServer() { ssl = "http"; } + if (process.env.WEBPORT) { + port = parseInt(process.env.WEBPORT, 10); + } + server.listen(port, () => { console.log(`Server started at ${ssl}://${ip.address()}:${port}`); }); diff --git a/package.json b/package.json index 020a722..2c1c6ce 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,7 @@ "description": "Discord bot randomly plays sounds", "scripts": { "start": "ts-node bot.ts", - "create": "node -e \"require('fs').writeFileSync('.env', 'TOKEN=MY-API-TOKEN\\nINTERVALMIN_MINUTES=10\\nINTERVALMAX_HOURS=6\\nVOICECHANNELRETRIES=12')\"", + "create": "node -e \"require('fs').writeFileSync('.env', 'TOKEN=MY-API-TOKEN\\nINTERVALMIN_MINUTES=10\\nINTERVALMAX_HOURS=6\\nVOICECHANNELRETRIES=12')\" && mkdir sounds", "test": "echo \"Error: no test specified\" && exit 1" }, "author": "SocksOnHead", diff --git a/readme.md b/readme.md index 9cfe631..53cca02 100644 --- a/readme.md +++ b/readme.md @@ -32,6 +32,7 @@ TOKEN= INTERVALMIN_MINUTES= INTERVALMAX_HOURS= VOICECHANNELRETRIES= +WEBPORT= ``` replace `` with your actual Discord bot token. replace ``, ``, and `` with your desired values.