noscript-discord/server.js
2024-02-29 17:05:40 +13:00

45 lines
1.2 KiB
JavaScript

const express = require("express")
const { Client } = require("discord.js-selfbot-v13");
const { readFileSync } = require("node:fs");
const cfg = require("./config.json");
const client = new Client();
const app = express();
let resStream;
let channel;
app.use(express.static("assets"));
app.get("/send", async (req, res) => {
res.redirect(req.headers.referer);
channel.send(req.query.content);
});
app.get("/channels/:channel", async (req, res) => {
channel = await client.channels.fetch(req.params.channel);
resStream = res;
resStream.writeHead(200, {
"Content-Type": "text/html",
});
resStream.write(readFileSync("pages/index.html"));
(await channel.messages.search()).messages.reverse().each(msg => {
resStream.write(constructMessage(msg));
});
});
function constructMessage(msg) {
return `<div>
<span>${msg.author.username}</span>: ${msg.content}
</div>`;
}
client.on("messageCreate", (msg) => {
if(!resStream || !channel || msg.channel.id !== channel.id) return;
resStream.write(constructMessage(msg));
});
app.listen(cfg.port);
client.login(cfg.token);