Notice: fwrite(): Write of 22 bytes failed with errno=28 No space left on device in /var/www/wiki/mediawiki-1.45.3-sms/includes/libs/uuid/GlobalIdGenerator.php on line 539
API-Dokumentation – Social Media Simulator Wiki
Menü aufrufen
Toggle preferences menu
Persönliches Menü aufrufen
Nicht angemeldet
Ihre IP-Adresse wird öffentlich sichtbar sein, wenn Sie Änderungen vornehmen.
Version vom 16. Juni 2026, 20:25 Uhr von FeGmbH (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „__NOTOC__ Mit dieser API-Schnittstelle kommuniziert der Client (Frontend) des Social Media Simulators mit dem Spring Boot-Backend, um Spielstände zu initialisieren und abzurufen. == Endpunkte Übersicht == {| class="wikitable" style="width:100%; border-radius: 8px; overflow: hidden;" ! style="width: 15%;" | Methode ! style="width: 35%;" | Endpunkt ! Beschreibung |- | style="background-color: #28a745; color: white; font-weight: bold; text-align: center;…“)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)

Mit dieser API-Schnittstelle kommuniziert der Client (Frontend) des Social Media Simulators mit dem Spring Boot-Backend, um Spielstände zu initialisieren und abzurufen.

Endpunkte Übersicht

Methode Endpunkt Beschreibung
GET /api/init Generiert eine neue Spieler-UUID (UTF-16).
GET /api/game Ruft den aktuellen Spielstand für eine UUID ab.
POST /api/game/init_recall Initialisiert ein neues Spiel mit einer Konfiguration.

---

Dokumentation der Endpunkte

1. Spieler-UUID generieren

  • Endpunkt: /api/init
  • Methode: GET
  • Format: text/plain;charset=utf-16

Diese Methode generiert eine neue, eindeutige V4-UUID, registriert sie im RAM des Servers in der aktiven Spielerliste und gibt sie als Byte-Array im UTF-16-Format zurück.

Rückgabe (Response) (Bsp.!)

4f3b89a2-1e4d-4c6a-9b88-123456789abc

---

2. Spielstand abrufen

  • Endpunkt: /api/game
  • Methode: GET
  • Format: application/json

Gibt den aktuellen Zustand der laufenden Simulation für die übergebene UUID zurück. Der Client nutzt diesen Endpunkt für den regelmäßigen Sync oder beim Neuladen des Dashboards.

Query-Parameter

Parameter Typ Pflichtfeld Beschreibung
id UUID Ja Die eindeutige Kennung des Spielers, die über /api/init generiert wurde.

Rückgabe (Response)

  • Status 200 (Erfolgreich): Gibt das GameResponse-JSON-Objekt zurück, wenn die UUID existiert. Falls die ID nicht in der aktiven Spielerliste registriert ist, wird null zurückgegeben.
{
  "playerId": "4f3b89a2-1e4d-4c6a-9b88-123456789abc",
  "companyName": "QuatschStudio Tech",
  "money": 50000,
  "employees": 1,
  "researchPoints": 0
}
Parameter-Spezifikation
Feld Typ Beschreibung
playerId String (UUID) Die UUID des Spielers zur Validierung auf Client-Seite.
companyName String Der Name des Social-Media-Unternehmens.
money Integer Der aktuelle Kontostand des Unternehmens im Spiel.
employees Integer Die Anzahl der derzeit eingestellten Mitarbeiter.
researchPoints Integer Die aktuell angesammelten Forschungspunkte für neue Features oder Algorithmen-Upgrades.

---

3. Spiel initialisieren

  • Endpunkt: /api/game/init_recall
  • Methode: POST
  • Format: application/json

Initialisiert die Spielmechaniken für eine bereits generierte UUID auf Basis der übergebenen Unternehmenseinstellungen im Request-Body.

Query-Parameter

Parameter Typ Pflichtfeld Beschreibung
id UUID Ja Die ID des Spielers, für den das Spiel gestartet wird.

Payload (Request Body)

Übergabe des GameConfigDTO als JSON-Objekt:

{
  "companyName": "QuatschStudio Tech",
  "infiniteMoney": false,
  "startMoney": 50000,
  "startEmployees": 1,
  "startResearch": 0
}
Parameter-Spezifikation
Feld Typ Beschreibung
companyName String Der Name des zu gründenden Social-Media-Unternehmens.
infiniteMoney Boolean Sandbox-Modus. Wenn true, ist das Startkapital unbegrenzt.
startMoney Integer Das verfügbare Startkapital bei Spielbeginn.
startEmployees Integer Die Anzahl der Mitarbeiter, mit denen das Unternehmen startet.
startResearch Integer Der initiale Wert für bereits generierte Forschungspunkte.

Server-Log (SLF4J)

Beim Aufruf triggert der Controller einen Log-Eintrag auf dem Server (Bsp.!):

2026-06-16T20:23:28.789+02:00  INFO 523700 --- [nio-8080-exec-6] o.r.smsim.api.controller.GameController  : Setting up Game for 737e1e57-3e1d-4f0e-b1a8-1fcad8c145d0:GameConfigDTO [companyName=adsf, infiniteMoney=false, startMoney=1000, startEmployees=1, startResearch=0]