updated some stuff

This commit is contained in:
RealFascinated 2022-04-22 14:15:34 +01:00
parent 5d8d878c90
commit db5db0ceab

44
src/index.js Normal file

@ -0,0 +1,44 @@
const WebSocket = require('ws');
const webhook = require("webhook-discord")
const Config = require('../config.json')
if (!Config.webhook) {
console.log("Please set your webhook in config.json")
process.exit(1)
}
if (!Config.countryOnly) {
console.log("Please set the countryOnly in config.json")
console.log("ALL or country (eg: UK)")
process.exit(1)
}
const Hook = new webhook.Webhook(Config.webhook);
const socket = new WebSocket('wss://scoresaber.com/ws');
socket.addEventListener('message', (event) => {
if (event.data == "Connected to the ScoreSaber WSS") {
console.log("Connected to ScoreSabers WebSocket!")
return;
}
const data = JSON.parse(event.data);
const playerInfo = data.commandData.score.leaderboardPlayerInfo;
const leaderboard = data.commandData.leaderboard;
const score = data.commandData.score;
if (score.rank == 1 && score.pp) { // Checks if the score is the first place and if the map is ranked
if (Config.countryOnly != "ALL" && Config.countryOnly != playerInfo.country) {
return;
}
const msg = new webhook.MessageBuilder()
.setName("Score Feed")
.setColor("#00FF00")
.setAuthor(`${playerInfo.name} has set a #1 on ${leaderboard.songName}!`, null, `https://scoresaber.com/u/${playerInfo.id}`)
.addField("Score", score.baseScore, true)
if (score.pp) {
msg.addField("PP", score.pp, true)
}
msg.addField("Leaderboard", `[${leaderboard.songName}](https://scoresaber.com/leaderboard/${leaderboard.id})`, true)
Hook.send(msg); // Sends the score to the webhook
}
});