Enhancement: add optional token parameter for gamedig (#5245)

Co-authored-by: shamoon <4887959+shamoon@users.noreply.github.com>
This commit is contained in:
InsertDisc 2025-05-05 12:02:47 -04:00 committed by GitHub
parent 7e8752243c
commit 2509d8c235
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 15 additions and 2 deletions

View File

@ -14,4 +14,5 @@ widget:
type: gamedig
serverType: csgo # see https://github.com/gamedig/node-gamedig#games-list
url: udp://server.host.or.ip:port
gameToken: # optional, a token used by gamedig with certain games
```

View File

@ -304,6 +304,9 @@ export function cleanServiceGroups(groups) {
// frigate
enableRecentEvents,
// gamedig
gameToken,
// beszel, glances, immich, komga, mealie, pihole, pfsense, speedtest
version,
@ -487,6 +490,9 @@ export function cleanServiceGroups(groups) {
if (["diskstation", "qnap"].includes(type)) {
if (volume) widget.volume = volume;
}
if (type === "gamedig") {
if (gameToken) widget.gameToken = gameToken;
}
if (type === "kopia") {
if (snapshotHost) widget.snapshotHost = snapshotHost;
if (snapshotPath) widget.snapshotPath = snapshotPath;

View File

@ -12,13 +12,19 @@ export default async function gamedigProxyHandler(req, res) {
const url = new URL(serviceWidget.url);
try {
const serverData = await GameDig.query({
const gamedigOptions = {
type: serviceWidget.serverType,
host: url.hostname,
port: url.port,
givenPortOnly: true,
checkOldIDs: true,
});
};
if (serviceWidget.gameToken) {
gamedigOptions.token = serviceWidget.gameToken;
}
const serverData = await GameDig.query(gamedigOptions);
res.status(200).send({
online: true,