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
- 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.
- Votre serveur vérifie sa propre session pour ce joueur et émet un jeton pour lui avec le kit serveur.
- Votre serveur renvoie le jeton sous forme de deux champs, le jeton et son expiration, via votre propre session et jamais dans une URL.
- 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éez | Votre serveur | Là où le joueur joue |
|---|---|---|
| Un jeu Bevy | Kits serveur | Bevy |
| Un jeu Unity | Kits serveur | Unity |
| Un jeu Godot | Kits serveur | Godot |
| Un jeu Unreal | Kits serveur | Unreal |
| Un jeu sur la JVM ou Android | Kits serveur | JVM et Android |
| Un site web | Kits serveur | Widget 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.