test new arch

This commit is contained in:
Louis Mazin 2026-04-14 22:53:22 +02:00
parent fc1438aceb
commit b6f3ee262b
23 changed files with 31 additions and 31 deletions

View File

@ -1,7 +1,7 @@
# Configuration Discord # Configuration Discord
DISCORD_TOKEN=votre_token_discord DISCORD_TOKEN=votre_token_discord
GUILD_ID=votre_guild_id GUILD_ID=votre_guild_id
BRIDGE_CHANNEL_ID=1467491354924814411 BRIDGE_CHANNEL_ID=1234567891234567891
# Configuration Pterodactyl # Configuration Pterodactyl
PTERODACTYL_API_URL=https://votre-panel.com PTERODACTYL_API_URL=https://votre-panel.com

View File

@ -1,5 +1,5 @@
const { SlashCommandBuilder } = require('discord.js'); const { SlashCommandBuilder } = require('discord.js');
const { checkRAMUsage, getMonitoringStatus } = require('../../ramMonitor.js'); const { checkRAMUsage, getMonitoringStatus } = require('../../src/monitoring/ramMonitor.js');
module.exports = { module.exports = {
data: new SlashCommandBuilder() data: new SlashCommandBuilder()

View File

@ -6,7 +6,7 @@ const path = require('node:path');
const { execFile } = require('node:child_process'); const { execFile } = require('node:child_process');
const { promisify } = require('node:util'); const { promisify } = require('node:util');
const { getAllLinks } = require('../../database.js'); const { getAllLinks } = require('../../src/core/database.js');
const { const {
defaultBaseUrl, defaultBaseUrl,
defaultServerId, defaultServerId,
@ -14,7 +14,7 @@ const {
downloadFile, downloadFile,
uploadSingleFile, uploadSingleFile,
deleteFiles, deleteFiles,
} = require('../../pterodactylFiles.js'); } = require('../../src/pterodactyl/pterodactylFiles.js');
const execFileAsync = promisify(execFile); const execFileAsync = promisify(execFile);

View File

@ -1,7 +1,7 @@
const axios = require('axios'); const axios = require('axios');
const { SlashCommandBuilder } = require('discord.js'); const { SlashCommandBuilder } = require('discord.js');
const { EmbedBuilder } = require('discord.js'); const { EmbedBuilder } = require('discord.js');
const { checkRAMUsage } = require('../../ramMonitor'); const { checkRAMUsage } = require('../../src/monitoring/ramMonitor');
const getPlayersNumberAndFPS = (token) => { const getPlayersNumberAndFPS = (token) => {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {

View File

@ -1,5 +1,5 @@
const { SlashCommandBuilder, EmbedBuilder, MessageFlags } = require('discord.js'); const { SlashCommandBuilder, EmbedBuilder, MessageFlags } = require('discord.js');
const { getAllLinks } = require('../../database.js'); const { getAllLinks } = require('../../src/core/database.js');
module.exports = { module.exports = {
data: new SlashCommandBuilder() data: new SlashCommandBuilder()

View File

@ -1,5 +1,5 @@
const { SlashCommandBuilder, EmbedBuilder, MessageFlags } = require('discord.js'); const { SlashCommandBuilder, EmbedBuilder, MessageFlags } = require('discord.js');
const { getAllLinks } = require('../../database.js'); const { getAllLinks } = require('../../src/core/database.js');
module.exports = { module.exports = {
data: new SlashCommandBuilder() data: new SlashCommandBuilder()

View File

@ -1,5 +1,5 @@
const { SlashCommandBuilder, EmbedBuilder, ActionRowBuilder, ButtonBuilder, ButtonStyle, MessageFlags } = require('discord.js'); const { SlashCommandBuilder, EmbedBuilder, ActionRowBuilder, ButtonBuilder, ButtonStyle, MessageFlags } = require('discord.js');
const { getUserLink, deleteUserLink } = require('../../database.js'); const { getUserLink, deleteUserLink } = require('../../src/core/database.js');
module.exports = { module.exports = {
data: new SlashCommandBuilder() data: new SlashCommandBuilder()

View File

@ -1,5 +1,5 @@
const { SlashCommandBuilder, EmbedBuilder, ActionRowBuilder, ButtonBuilder, ButtonStyle, MessageFlags } = require('discord.js'); const { SlashCommandBuilder, EmbedBuilder, ActionRowBuilder, ButtonBuilder, ButtonStyle, MessageFlags } = require('discord.js');
const { getUserLink, deleteUserLink } = require('../../database.js'); const { getUserLink, deleteUserLink } = require('../../src/core/database.js');
module.exports = { module.exports = {
data: new SlashCommandBuilder() data: new SlashCommandBuilder()

View File

@ -1,5 +1,5 @@
const { SlashCommandBuilder, EmbedBuilder, MessageFlags } = require('discord.js'); const { SlashCommandBuilder, EmbedBuilder, MessageFlags } = require('discord.js');
const { getWebSocketStatus, forceWebSocketReconnect } = require('../../consoleMonitor.js'); const { getWebSocketStatus, forceWebSocketReconnect } = require('../../src/monitoring/consoleMonitor.js');
module.exports = { module.exports = {
data: new SlashCommandBuilder() data: new SlashCommandBuilder()

View File

@ -1,5 +1,5 @@
const { SlashCommandBuilder, EmbedBuilder, MessageFlags } = require('discord.js'); const { SlashCommandBuilder, EmbedBuilder, MessageFlags } = require('discord.js');
const { getUserLink } = require('../../database.js'); const { getUserLink } = require('../../src/core/database.js');
module.exports = { module.exports = {
data: new SlashCommandBuilder() data: new SlashCommandBuilder()

View File

@ -1,5 +1,5 @@
const { SlashCommandBuilder, EmbedBuilder, MessageFlags } = require('discord.js'); const { SlashCommandBuilder, EmbedBuilder, MessageFlags } = require('discord.js');
const { generateLinkCode, getUserLink } = require('../../database.js'); const { generateLinkCode, getUserLink } = require('../../src/core/database.js');
module.exports = { module.exports = {
data: new SlashCommandBuilder() data: new SlashCommandBuilder()

View File

@ -1,5 +1,5 @@
const { SlashCommandBuilder, EmbedBuilder, MessageFlags } = require('discord.js'); const { SlashCommandBuilder, EmbedBuilder, MessageFlags } = require('discord.js');
const { verifyLinkCode, updateUserLinkWithUsername } = require('../../database.js'); const { verifyLinkCode, updateUserLinkWithUsername } = require('../../src/core/database.js');
const axios = require('axios'); const axios = require('axios');
module.exports = { module.exports = {
@ -56,7 +56,7 @@ module.exports = {
} }
// Créer un code temporaire pour la liaison manuelle // Créer un code temporaire pour la liaison manuelle
const { generateLinkCode } = require('../../database.js'); const { generateLinkCode } = require('../../src/core/database.js');
const code = await generateLinkCode(discordUser.id); const code = await generateLinkCode(discordUser.id);
// Effectuer la liaison immédiatement // Effectuer la liaison immédiatement

View File

@ -1,6 +1,6 @@
const { SlashCommandBuilder, EmbedBuilder, ActionRowBuilder, ButtonBuilder, ButtonStyle, StringSelectMenuBuilder } = require('discord.js'); const { SlashCommandBuilder, EmbedBuilder, ActionRowBuilder, ButtonBuilder, ButtonStyle, StringSelectMenuBuilder } = require('discord.js');
const { getConfig, updateConfig, getAllConfig } = require('../../database'); const { getConfig, updateConfig, getAllConfig } = require('../../src/core/database');
const { getMonitoringStatus } = require('../../ramMonitor'); const { getMonitoringStatus } = require('../../src/monitoring/ramMonitor');
module.exports = { module.exports = {
data: new SlashCommandBuilder() data: new SlashCommandBuilder()
@ -137,7 +137,7 @@ async function buildPanelPayload() {
async function buildStatsPayload() { async function buildStatsPayload() {
const config = await getAllConfig(); const config = await getAllConfig();
const monitoringStatus = getMonitoringStatus(); const monitoringStatus = getMonitoringStatus();
const { checkRAMUsage } = require('../../ramMonitor'); const { checkRAMUsage } = require('../../src/monitoring/ramMonitor');
const ramData = await checkRAMUsage(); const ramData = await checkRAMUsage();

View File

@ -2,14 +2,14 @@ require('dotenv').config();
const fs = require('node:fs'); const fs = require('node:fs');
const deepl = require('deepl-node'); const deepl = require('deepl-node');
const path = require('node:path'); const path = require('node:path');
const deploy = require('./deploy_command.js') const deploy = require('./src/discord/deploy_command.js')
const update = require('./displayer.js'); const update = require('./src/pterodactyl/displayer.js');
const clean = require('./cleaner.js'); const clean = require('./src/pterodactyl/cleaner.js');
const { Client, GatewayIntentBits, Collection, Events, Partials } = require('discord.js'); const { Client, GatewayIntentBits, Collection, Events, Partials } = require('discord.js');
const { initDatabase, createTables, cleanExpiredCodes } = require('./database.js'); const { initDatabase, createTables, cleanExpiredCodes } = require('./src/core/database.js');
const { startConsoleMonitoring, forceWebSocketReconnect } = require('./consoleMonitor.js'); const { startConsoleMonitoring, forceWebSocketReconnect } = require('./src/monitoring/consoleMonitor.js');
const { initPalworldBridge } = require('./palworld-bridge.js'); const { initPalworldBridge } = require('./src/bridge/palworld-bridge.js');
const { startRAMMonitoring } = require('./ramMonitor.js'); const { startRAMMonitoring } = require('./src/monitoring/ramMonitor.js');
const client = new Client({ intents: const client = new Client({ intents:
[ [

View File

@ -3,7 +3,7 @@
"version": "1.0.0", "version": "1.0.0",
"main": "index.js", "main": "index.js",
"scripts": { "scripts": {
"deploy": "deploy_command.js" "deploy": "node src/discord/deploy_command.js"
}, },
"keywords": [], "keywords": [],
"author": "", "author": "",

View File

@ -1,5 +1,5 @@
const axios = require('axios'); const axios = require('axios');
const { getUserLink, getAllLinks } = require('./database.js'); const { getUserLink, getAllLinks } = require('../core/database.js');
let bridgeClient = null; let bridgeClient = null;
let bridgeChannelId = null; let bridgeChannelId = null;

View File

@ -4,7 +4,7 @@ const path = require('node:path');
module.exports = (token) => { module.exports = (token) => {
const commands = []; const commands = [];
// Grab all the command folders from the commands directory you created earlier // Grab all the command folders from the commands directory you created earlier
const foldersPath = path.join(__dirname, 'commands'); const foldersPath = path.join(__dirname, '../../commands');
const commandFolders = fs.readdirSync(foldersPath); const commandFolders = fs.readdirSync(foldersPath);
for (const folder of commandFolders) { for (const folder of commandFolders) {

View File

@ -1,7 +1,7 @@
const axios = require('axios'); const axios = require('axios');
const WebSocket = require('ws'); const WebSocket = require('ws');
const { verifyLinkCode, updateUserLinkWithUsername, updateLastConnection } = require('./database.js'); const { verifyLinkCode, updateUserLinkWithUsername, updateLastConnection } = require('../core/database.js');
const { handlePalworldChat } = require('./palworld-bridge.js'); const { handlePalworldChat } = require('../bridge/palworld-bridge.js');
let ws = null; let ws = null;
let reconnectTimeout = null; let reconnectTimeout = null;
@ -236,7 +236,7 @@ const pollPlayersAndDetectDisconnects = async (serverState = null) => {
}; };
const checkAndManageWebSocket = async () => { const checkAndManageWebSocket = async () => {
const { cleanExpiredCodes } = require('./database.js'); const { cleanExpiredCodes } = require('../core/database.js');
try { try {
await cleanExpiredCodes(); await cleanExpiredCodes();

View File

@ -1,5 +1,5 @@
const axios = require('axios'); const axios = require('axios');
const { getConfig } = require('./database'); const { getConfig } = require('../core/database');
let isMonitoring = false; let isMonitoring = false;
let checkInterval = null; let checkInterval = null;