Lingara Lingara Dokumentation Ratgeber API Bibliotheken Apps Erstellen Einbetten Web-App
Sprache: Deutsch

Lingara einbetten

Diese Seite ist aus dem Englischen übersetzt. Wenn die beiden voneinander abweichen, ist die englische Seite maßgeblich. Englische Seite lesen

Lingara kann in Ihrem Spiel oder auf Ihrer Website zu Hause sein. Eine Figur in Ihrer Welt kann ein Gespräch auf der Stufe des Spielers führen, und Übungen, die Ihr Spieler abschließt, zählen als Lingara-Übungen. Die Einbettung hat zwei Hälften, und als Erstes ist zu klären, welche Hälfte wo läuft.

Wer was hält

Ihr Server hält das Secret Ihres OAuth-Clients und Ihr Webhook-Signatur-Secret. Keines von beiden verlässt ihn jemals.

Das Gerät des Spielers hält genau eine Sache: ein Embed-Token, das mit lgr_et_ beginnt. Alles, was Sie in einer Spiel-Binärdatei oder auf einer Webseite ausliefern, ist öffentlich, daher hält das Gerät nie ein Client-Secret, ein Webhook-Secret oder ein Zugriffstoken Ihres eigenen Clients. Ein Embed-Token handelt nur für einen Spieler, gilt Minuten statt Stunden und hält nur die Scopes, die Ihr Server ihm gegeben hat.

Ein Spieler braucht kein Lingara-Konto. Das erste Token, das Ihr Server für einen Spieler ausstellt, legt einen Gast-Lernenden für ihn an, und jedes spätere Token erreicht denselben Lernenden. Ein Spieler, der bereits ein Lingara-Konto hat, kann es mitbringen: Die Seite Server-Kits beschreibt, wie Ihr Server die beiden verknüpft.

Wie ein Token zum Spieler gelangt

  1. Das Spieler-Kit in Ihrem Spiel oder auf Ihrer Seite braucht ein Token und fragt Ihren Server über seine Token-Quelle.
  2. Ihr Server prüft seine eigene Sitzung für diesen Spieler und stellt mit dem Server-Kit ein Token für ihn aus.
  3. Ihr Server gibt das Token als zwei Felder zurück, das Token und seinen Ablaufzeitpunkt, über Ihre eigene Sitzung und nie in einer URL.
  4. Das Spieler-Kit verwendet das Token, bis es sich seinem Ablauf nähert, und fragt dann erneut Ihren Server. Lingara erneuert nie ein Token.
 player's device                your server                    Lingara
 ───────────────                ───────────                    ───────
 player kit ── needs a token ──▶ your token route
                                 server kit ── mint ─────────▶ token for one player
 player kit ◀── token, expiry ── your token route ◀──────────
 player kit ── API calls with the token ─────────────────────▶

Ein Token für eine Website ist an einen Origin gebunden: Schema, Host und Port der Seite selbst. Registrieren Sie jeden Origin, auf dem Ihr Widget läuft, bevor Sie dafür ein Token ausstellen, wie es die Seite Server-Kits beschreibt. Ein Token für ein Spiel hat keinen Origin.

Was ein Token darf

Ihr Server wählt die Scopes jedes Tokens beim Ausstellen, aus diesen fünf: events:read, events:write, lesson_plans:read, lesson_plans:write und embed:play. Ein Token kann nur Scopes halten, die Ihr eigener Client bereits hält. embed:play erlaubt dem Spieler, Gespräche mit Ihren Figuren zu führen und die Übungen zu melden, die er abschließt.

Wer bezahlt

Nur ein Client mit nutzungsbasiertem Tarif darf Tokens ausstellen. Alles, was ein Spieler mit einem Token tut, wird als Nutzung Ihres Clients gezählt und Ihnen in Rechnung gestellt, nicht dem Spieler.

Einen Spieler löschen

Wenn ein Spieler sein Konto in Ihrem Spiel löscht, löscht Ihr Server ihn auch bei Lingara. Das entfernt seinen Lernenden und alles, was Lingara für ihn speichert, und widerruft jedes Token, das er hält.

Welches Kit Sie brauchen

Jede Integration verwendet zwei Kits: ein Server-Kit auf Ihrem Server und ein Spieler-Kit dort, wo der Spieler spielt.

Sie entwickelnIhr ServerWo der Spieler spielt
Ein Bevy-SpielServer-KitsBevy
Ein Unity-SpielServer-KitsUnity
Ein Godot-SpielServer-KitsGodot
Ein Unreal-SpielServer-KitsUnreal
Ein Spiel auf der JVM oder unter AndroidServer-KitsJVM und Android
Eine WebsiteServer-KitsWebsite-Widget

Lesen Sie danach NPC-Dialoge und Übungsergebnisse, die in jedem Kit gleich funktionieren.

Erste Schritte

  • Server-Kits

    Stellen Sie Tokens für Ihre Spieler aus, leiten Sie ihre Events weiter und löschen Sie sie, von Ihrem eigenen Server aus.

Wo es läuft

  • Bevy

    Fügen Sie das Lingara-Plugin zu einem Bevy-Spiel hinzu, beantworten Sie seine Token-Anfragen und lesen Sie seine Events als Messages.

  • Unity

    Installieren Sie Lingara.Embed über NuGetForUnity, holen Sie Tokens von Ihrem Server und leeren Sie Events in Update.

  • Godot

    Lingara in einem Godot-4-Spiel, aus GDScript oder aus C#, mit Tokens von Ihrem eigenen Server.

  • Unreal

    Das Lingara-Plugin für Unreal Engine 5, über der C-Schnittstelle des Spieler-Kerns.

  • JVM und Android

    Das Kotlin-Spieler-Kit und seine Java-Fassade, auf dem Desktop und unter Android, mit libGDX als ausgearbeitetem Beispiel.

  • Website-Widget

    Binden Sie das Element lingara-embed in Ihre Seite ein und geben Sie ihm Tokens von Ihrem eigenen Server.

Lernen in Ihrer Welt

  • NPC-Dialoge

    Eine Figur in Ihrer Welt, die die Zielsprache des Spielers auf seiner Stufe spricht, Zug für Zug gestreamt.

  • Übungsergebnisse

    Üben Sie einen Lektionsplan in Ihrem Spiel, melden Sie, wie es gelaufen ist, und erfahren Sie davon auf Ihrem Server.