diff --git a/Dockerfile b/Dockerfile index 3562b0d..56dbc78 100755 --- a/Dockerfile +++ b/Dockerfile @@ -5,5 +5,4 @@ WORKDIR /usr/src/app COPY package.json ./ RUN npm install COPY . . -# CMD ["/bin/sh", "-c", "node main.js 2> /logs/silvanus.err 1> /logs/silvanus.log"] -CMD ["/bin/sh", "-c", "node main.js 2> /logs/error/$(date +%Y-%m-%d_%H-%M-%S).txt 1> /logs/status/$(date +%Y-%m-%d_%H-%M-%S).txt"] +CMD ["/bin/sh", "-c", "node main.js 2>&1 > /logs/$(date +%Y-%m-%d_%H-%M-%S).txt"] diff --git a/TODO.md b/TODO.md index ddbfebb..1de4969 100755 --- a/TODO.md +++ b/TODO.md @@ -1,10 +1,3 @@ -## In Progress -☑ Switch `/setup` to ask for the tree and leaderboard channels -* Switch `/compare` to check for newer trees and leaderboards when run **and** on every refresh - -## Future Ideas -* Go through and comment the code - ## Variable Structures guildInfo = { @@ -21,7 +14,18 @@ guildInfo = { reminderOptIn: 0, } -## Expected Behaviors +## New Table Planning +Table: `silvanus`.timers -* Run `/compare` before `/setup`: `/compare` will search the current channel for tree and leaderboard messages, then create a comparison embed. If it can't find `/tree` or `/top trees` messages, it'll return an error saying as much. -* Run `/compare` after `/setup`: ``/compare` will search the current channel for tree and leaderboard messages, then create a comparison embed. If it can't find `/tree` or `/top trees` messages, it'll just use old data silently (odds are `/compare` is being run from another channel, that's fine) +id | INT | NOT NULL | AUTO INCREMENT | PRIMARY KEY +status | VARCHAR(10) | NOT NULL | DEFAULT "WAITING" +dc_timecode | INT | NOT NULL | Discord timecode +guild_id | INT UNSIGNED | NOT NULL | Discord guild ID for referencing `silvanus`.guildInfo + + +Table: `silvanus`.auto_role_status + +id | INT | NOT NULL | AUTO INCREMENT | PRIMARY KEY +user_id | INT UNSIGNED | NOT NULL +guild_id | INT UNSIGNED | NOT NULL +status | VARCHAR(10) | NOT NULL | DEFAULT "REMOVED" | OPTION: {"REMOVED", "ADDED"} \ No newline at end of file diff --git a/main.js b/main.js index 1778c9c..6727767 100755 --- a/main.js +++ b/main.js @@ -28,7 +28,7 @@ const fn = require('./modules/functions.js'); const strings = require('./data/strings.json'); const dbfn = require('./modules/dbfn.js'); const { GuildInfo } = require('./modules/CustomClasses.js'); -const isDev = process.env.DEBUG; +const isDev = process.env.DEBUG === "true"; let statusChannel; client.once('ready', async () => { @@ -52,6 +52,8 @@ client.once('ready', async () => { fn.sendHeartbeat(heartbeatUrl); }, 30000); if (isDev) console.log("Heartbeat interval set."); + } else { + if (isDev) console.log("No heartbeat URL set, will not send heartbeats for uptime monitoring."); } }); diff --git a/modules/functions.js b/modules/functions.js index 82f3e49..c10491e 100755 --- a/modules/functions.js +++ b/modules/functions.js @@ -1145,13 +1145,14 @@ const functions = { return errorId; }, async sendHeartbeat(url) { - console.log(url); https.get(url, async (response) => { + if (isDev) console.log("Sent Heartbeat Request: " + url); let data = ''; response.on('data', (chunk) => data += chunk); response.on('end', () => { + if (isDev) console.log("Received Heartbeat Response: " + data); parsedData = JSON.parse(data); if ( !(parsedData.ok) ) console.error("Heartbeat failed"); }); diff --git a/package.json b/package.json index e0bcb61..86a974d 100755 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "silvanus", - "version": "1.2.7", + "version": "1.2.8", "description": "Grow A Tree Companion Bot", "main": "main.js", "scripts": {