Added minecraft to discord messages

This commit is contained in:
2023-08-05 12:21:30 +02:00
parent 1e72ecdf53
commit 0f54fbf07e
6 changed files with 74 additions and 5 deletions

View File

@@ -0,0 +1,56 @@
const express = require('express');
const { WebhookClient, EmbedBuilder } = require('discord.js');
const { getUsername } = require('../functions/utils.js');
const { Users } = require('../functions/models.js');
const router = express.Router();
const webhookClient = new WebhookClient({ url: process.env.MINECRAFT_WEBHOOK_URL });
router.post('/player', async (req, res) => {
const { content, uuid } = req.body;
if (!uuid || !content) return res.status(400).send({ errorMessage: 'uuid and content are required' });
try {
const user = await Users.findOne({ where: { minecraftUUID: uuid } });
const username = getUsername(user);
webhookClient.send({
content,
username,
avatarURL: 'https://api.mineatar.io/face/' + uuid + '?scale=8',
});
res.send({ status: 'ok' });
} catch (error) {
console.log(error);
res.status(500).send({ errorMessage: 'Error while sending player message' });
}
});
router.post('/game', async (req, res) => {
const { content, uuid } = req.body;
if (!uuid || !content) return res.status(400).send({ errorMessage: 'uuid and content are required' });
try {
const messageEmbed = new EmbedBuilder()
.setColor(process.env.EMBED_COLOR)
.setAuthor({ name: content, iconURL: 'https://api.mineatar.io/face/' + uuid + '?scale=8' });
webhookClient.send({
embeds: [messageEmbed],
username: 'Server',
});
res.send({ status: 'ok' });
} catch (error) {
console.log(error);
res.status(500).send({ errorMessage: 'Error while sending player message' });
}
});
module.exports = router;

View File

@@ -1,5 +1,6 @@
const express = require('express');
const { Minecraft } = require('../functions/models.js');
const { Minecraft, Users } = require('../functions/models.js');
const { getUsername } = require('../functions/utils.js');
const router = express.Router();
@@ -16,7 +17,10 @@ router.post('/', async (req, res) => {
},
});
res.send({ code: minecraftCol[0].code, whitelisted: minecraftCol[0].whitelisted, username: 'Username', rawUsername: 'RawUsername' });
const user = await Users.findOne({ where: { minecraftUUID: uuid } });
const username = getUsername(user);
res.send({ code: minecraftCol[0].code, whitelisted: minecraftCol[0].whitelisted, username, rawUsername: user.rawUsername });
} catch (error) {
console.log(error);