55 lines
2.9 KiB
JSON
55 lines
2.9 KiB
JSON
{
|
|
"$schema": "https://schema.pterodactyl.io/egg.v1.json",
|
|
"meta": {
|
|
"version": "PTDL_v2",
|
|
"update_url": null
|
|
},
|
|
"exported_at": "2026-02-26T12:00:00+00:00",
|
|
"name": "GameDig Server Status API",
|
|
"author": "cap@cap-net.ch",
|
|
"description": "Fragt Gameserver (DayZ, CS2, Rust, ARK u.v.m.) per GameDig ab und stellt die Ergebnisse als JSON-REST-API zur Verfügung. Optionaler API-Key-Schutz. Konfiguration über config.json im Dateimanager.",
|
|
"features": null,
|
|
"docker_images": {
|
|
"Node.js 20": "ghcr.io/pterodactyl/yolks:nodejs_20"
|
|
},
|
|
"file_denylist": [],
|
|
"startup": "bash /home/container/entrypoint.sh",
|
|
"config": {
|
|
"files": "{}",
|
|
"startup": {
|
|
"done": "GameDig Server Status API"
|
|
},
|
|
"logs": "{}",
|
|
"stop": "^C"
|
|
},
|
|
"scripts": {
|
|
"installation": {
|
|
"script": "#!/bin/bash\napt-get update -y && apt-get install -y curl\n\ncd /mnt/server\n\nGITEA_RAW=\"https://gitea.cap-net.ch/Cap/gameserver-status-api/raw/branch/main\"\n\necho \"[INFO] Lade Dateien von Gitea herunter...\"\ncurl -sSL \"${GITEA_RAW}/server.js\" -o server.js || { echo '[FEHLER] server.js konnte nicht geladen werden.'; exit 1; }\ncurl -sSL \"${GITEA_RAW}/entrypoint.sh\" -o entrypoint.sh || { echo '[FEHLER] entrypoint.sh konnte nicht geladen werden.'; exit 1; }\nchmod +x entrypoint.sh\n\necho \"[INFO] Erstelle package.json...\"\ncat > package.json << 'EOF'\n{\n \"name\": \"gameserver-status-api\",\n \"version\": \"1.0.0\",\n \"description\": \"GameDig Server Status API\",\n \"main\": \"server.js\",\n \"dependencies\": {\n \"gamedig\": \"^4.1.0\"\n }\n}\nEOF\n\necho \"[INFO] Installiere npm-Pakete...\"\nnpm install --omit=dev\n\nif [ ! -f 'config.json' ]; then\n echo \"[INFO] Lege Beispiel-config.json an...\"\n curl -sSL \"${GITEA_RAW}/config.json\" -o config.json\n echo \"[WICHTIG] Bitte config.json im Dateimanager mit deinen Serveradressen anpassen!\"\nfi\n\necho \"\"\necho \"[DONE] Installation abgeschlossen.\"\necho \"[INFO] Nächste Schritte:\"\necho \" 1. config.json im Dateimanager mit deinen Serveradressen anpassen\"\necho \" 2. Server starten\"",
|
|
"container": "ghcr.io/pterodactyl/installers:debian",
|
|
"entrypoint": "bash"
|
|
}
|
|
},
|
|
"variables": [
|
|
{
|
|
"name": "Query-Intervall (Sekunden)",
|
|
"description": "Wie oft sollen die Gameserver abgefragt werden? Empfohlen: 60. Minimum: 10.",
|
|
"env_variable": "QUERY_INTERVAL",
|
|
"default_value": "60",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "required|numeric|min:10",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "API Key (optional)",
|
|
"description": "Schützt die API mit einem Key. Abfrage via Header 'X-API-Key' oder URL-Parameter '?key='. Leer lassen = kein Schutz.",
|
|
"env_variable": "API_KEY",
|
|
"default_value": "",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "nullable|string|max:128",
|
|
"field_type": "text"
|
|
}
|
|
]
|
|
}
|