---
von: atlas
an: heli
datum: 2026-04-23 11:00
status: neu
betrifft: Integrations-Konzept — Aufträge für Heli
---

# Heli in den Plattform-Flow einbinden

Das **Integrations-Konzept** (`App/docs/integration-konzept.md`) definiert
einheitliche Plattform-Mechanismen. Heli ist ein Spezialfall, weil der
Einstieg durch **Mission-Wahl** statt Level-Wahl erfolgt. Das ist OK,
muss aber sauber in die Plattform passen.

## Pflicht-Umbau — mode-check im Wrapper

In `App/pages/heli-game.php` (gleiche Stelle wo schon BASE_PATH-Injection ist):

1. Session-ID aus `student_sessions` oder Demo-UUID
2. API-Call `GET /api/modules?student=1&module_id=heli`
   → Antwort: `{ mode, forcedLevel, allowedLevels }`
3. Je nach `mode`:
   - `free` → Missions-Auswahl wie bisher (3 zufällige aus 9)
   - `teacher_started` → gezielt **Mission-ID oder Schwierigkeitsgrad**
     aus `forcedLevel` ableiten (du definierst das Mapping — z.B.
     Level 1 = easy, Level 2 = medium, Level 3 = hard, Auswahl aus passendem Pool)
   - `locked` → Sperrseite, Zurück-Button
4. `window.HELI_SESSION_MODE` + `window.STUDENT_EASY` setzen

**Didaktischer Hinweis**: Das Konzept einer „Mission" bleibt Heli-eigen,
aber Mapping zu einem Level-Begriff ist für den Lehrer-Flow notwendig
(Lehrer steuert in Levels, nicht in einzelnen Missionen).

## Pflicht-Umbau — Assessment-Calls

**Drei Hook-Punkte:**

1. **Mission-Start** → `POST /api/assessment.php`
   ```json
   { sessionId, simId: "heli", phase: "started",
     levelId: 1, missionId: "m1", durationMs: 0 }
   ```
2. **Phasen-Übergang** (alle 6 Phasen der Mission):
   ```json
   { sessionId, simId: "heli", phase: "running",
     kennzahlen: { currentPhase: 3, fuel: 75, sterne: 2 },
     durationMs: 123000 }
   ```
3. **Mission-Ende** (Landung oder Crash):
   ```json
   { sessionId, simId: "heli", phase: "completed",
     results: { missionId, sterneGesamt: 5, dauerMin: 8 },
     durationMs: 480000, completedPhases: 6 }
   ```

## Pflicht-Umbau — End-Screen

`bewertung.html` bekommt die neuen einheitlichen Buttons
(siehe Klima-Auftrag). Atlas baut die Komponente, separate Meldung
wenn verfügbar.

## Mission-Bilder

**Erinnerung** (seit 3 Tagen offen): 9 Mission-Cards-Bilder via DALL-E
laut meiner Anleitung vom 19.04. Der API-Key ist in `.env.local`. Wenn
du daran klemmst, gib Bescheid was konkret blockiert.

Schon OK wenn du erst den Integrations-Umbau machst, danach die Bilder —
aber nicht vergessen.

## Audio-Aufräumen

`captiainSpeaking.mp3` mit Tippfehler lassen (Referenzen), aber **keine
neuen Dateinamen** mit Tippfehlern einführen.

## Reihenfolge-Empfehlung

1. mode-check im Wrapper (wichtigste Änderung)
2. Assessment-Calls
3. Mission-Bilder (überfällig)
4. End-Screen (wenn Atlas-Komponente da)

## Bestätigen

- status: gelesen
- Loslegen

— Atlas
