Lingara Lingara Documentation Guides API Bibliothèques Applications Créer Intégration Application web
Langue: Français

Intégrer Lingara

Cette page est traduite de l'anglais. En cas de différence, la page anglaise fait foi. Lire la page en anglais

Lingara peut vivre dans votre jeu ou votre site web. Un personnage de votre monde peut tenir une conversation au niveau du joueur, et la pratique que votre joueur termine compte comme pratique Lingara. L’intégration comporte deux moitiés, et la première chose à décider est quelle moitié s’exécute où.

Qui détient quoi

Votre serveur détient le secret de votre client OAuth et votre secret de signature des webhooks. Aucun des deux ne le quitte jamais.

L’appareil du joueur détient une seule chose : un jeton d’intégration, qui commence par lgr_et_. Tout ce que vous livrez dans un binaire de jeu ou une page web est public : l’appareil ne détient donc jamais de secret client, de secret de webhook ni de jeton d’accès de votre propre client. Un jeton d’intégration n’agit que pour un seul joueur, dure des minutes plutôt que des heures, et ne détient que les scopes que votre serveur lui a donnés.

Un joueur n’a besoin d’aucun compte Lingara. Le premier jeton que votre serveur émet pour un joueur crée pour lui un apprenant invité, et chaque jeton ultérieur atteint le même apprenant. Un joueur qui possède déjà un compte Lingara peut l’apporter : la page kits serveur décrit comment votre serveur relie les deux.

Comment un jeton parvient au joueur

  1. Le kit joueur, dans votre jeu ou sur votre page, a besoin d’un jeton et le demande à votre serveur via sa source de jetons.
  2. Votre serveur vérifie sa propre session pour ce joueur et émet un jeton pour lui avec le kit serveur.
  3. Votre serveur renvoie le jeton sous forme de deux champs, le jeton et son expiration, via votre propre session et jamais dans une URL.
  4. Le kit joueur utilise le jeton jusqu’à l’approche de son expiration, puis redemande à votre serveur. Lingara ne renouvelle jamais un jeton.
 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 ─────────────────────▶

Un jeton destiné à un site web est lié à une seule origine : le schéma, l’hôte et le port propres à la page. Enregistrez chaque origine sur laquelle votre widget s’exécute avant d’émettre un jeton pour elle, comme le décrit la page kits serveur. Un jeton destiné à un jeu n’a pas d’origine.

Ce qu’un jeton peut faire

Votre serveur choisit les scopes de chaque jeton au moment où il l’émet, parmi ces cinq : events:read, events:write, lesson_plans:read, lesson_plans:write et embed:play. Un jeton ne peut détenir que des scopes que votre propre client détient déjà. embed:play permet au joueur de tenir des conversations avec vos personnages et de signaler la pratique qu’il termine.

Qui paie

Seul un client sur le forfait au compteur peut émettre des jetons. Tout ce qu’un joueur fait avec un jeton est compté comme l’utilisation de votre client et vous est facturé, à vous et non au joueur.

Supprimer un joueur

Lorsqu’un joueur supprime son compte dans votre jeu, votre serveur le supprime aussi chez Lingara. Cela supprime son apprenant et tout ce que Lingara détient pour lui, et révoque chaque jeton qu’il détient.

De quel kit avez-vous besoin

Chaque intégration utilise deux kits : un kit serveur sur votre serveur, et un kit joueur là où le joueur joue.

Vous créezVotre serveurLà où le joueur joue
Un jeu BevyKits serveurBevy
Un jeu UnityKits serveurUnity
Un jeu GodotKits serveurGodot
Un jeu UnrealKits serveurUnreal
Un jeu sur la JVM ou AndroidKits serveurJVM et Android
Un site webKits serveurWidget de site web

Lisez ensuite Dialogue de PNJ et résultats de pratique, qui fonctionnent de la même manière dans chaque kit.

Bien démarrer

  • Kits serveur

    Émettez des jetons pour vos joueurs, acheminez leurs événements et supprimez-les, depuis votre propre serveur.

Où il s'exécute

  • Bevy

    Ajoutez le plugin Lingara à un jeu Bevy, répondez à ses demandes de jeton et lisez ses événements sous forme de Messages.

  • Unity

    Installez Lingara.Embed via NuGetForUnity, récupérez des jetons depuis votre serveur et videz les événements dans Update.

  • Godot

    Lingara dans un jeu Godot 4, depuis GDScript ou depuis C#, avec des jetons fournis par votre propre serveur.

  • Unreal

    Le plugin Lingara pour Unreal Engine 5, construit sur l'interface C du cœur joueur.

  • JVM et Android

    Le kit joueur Kotlin et sa façade Java, sur ordinateur et sur Android, avec libGDX comme exemple détaillé.

  • Widget de site web

    Montez l'élément lingara-embed sur votre page, et donnez-lui des jetons depuis votre propre serveur.

Apprendre dans votre monde

  • Dialogue de PNJ

    Un personnage de votre monde qui parle la langue cible du joueur à son niveau, un tour diffusé en flux à la fois.

  • Résultats de pratique

    Pratiquez un plan de cours dans votre jeu, signalez son déroulement et soyez-en informé sur votre serveur.