started with simple rcon code
This commit is contained in:
25
main.js
25
main.js
@@ -1,17 +1,19 @@
|
||||
|
||||
/*
|
||||
Imports
|
||||
*/
|
||||
|
||||
|
||||
|
||||
import { runCommand } from "./minecraft";
|
||||
const express = require('express')
|
||||
require('dotenv').config()
|
||||
|
||||
|
||||
/*
|
||||
Constant declaration
|
||||
*/
|
||||
const app = express();
|
||||
app.use(express.json())
|
||||
|
||||
|
||||
|
||||
const port = process.env.PORT || 3000;
|
||||
|
||||
|
||||
/*
|
||||
@@ -27,9 +29,22 @@ Passport.js OAuth2/OICD handler
|
||||
/*
|
||||
Express Routes
|
||||
*/
|
||||
app.post("/api/command", (req,res)=>{
|
||||
const body = req.body;
|
||||
|
||||
if (!body["command"]) return res.sendStatus(400);
|
||||
|
||||
let commandResponse = runCommand(body["command"]);
|
||||
|
||||
res.send({
|
||||
response: commandResponse
|
||||
})
|
||||
})
|
||||
|
||||
|
||||
/*
|
||||
Run Express
|
||||
*/
|
||||
app.listen(() => {
|
||||
console.log("Running Server!")
|
||||
}, port)
|
||||
18
minecraft.js
18
minecraft.js
@@ -1,13 +1,25 @@
|
||||
|
||||
/*
|
||||
Imports
|
||||
*/
|
||||
|
||||
const { Rcon } = require("rcon-client");
|
||||
require('dotenv').config()
|
||||
|
||||
/*
|
||||
helper functions (eg, getOnlinePlayers())
|
||||
*/
|
||||
export async function runCommand(command){
|
||||
if (typeof command != String) return;
|
||||
|
||||
const rcon = await Rcon.connect({
|
||||
host: process.env.MC_HOST, port: process.env.MC_RCON_PORT, password: process.env.MC_RCON_PASSWORD
|
||||
})
|
||||
|
||||
let response = await rcon.send(command);
|
||||
|
||||
rcon.end();
|
||||
|
||||
return response;
|
||||
}
|
||||
|
||||
/*
|
||||
module.exports all those functions
|
||||
*/
|
||||
Reference in New Issue
Block a user