Lingara'yı gömmek
Bu sayfa İngilizceden çevrilmiştir. İkisi arasında fark varsa İngilizce sayfa doğrudur. İngilizce sayfayı oku
Lingara, oyununuzun veya web sitenizin içinde yaşayabilir. Dünyanızdaki bir karakter oyuncunun seviyesinde bir sohbet sürdürebilir ve oyuncunuzun tamamladığı alıştırma, Lingara alıştırması olarak sayılır. Gömme iki yarıdan oluşur ve ilk karara bağlanması gereken şey, hangi yarının nerede çalıştığıdır.
Kim neyi tutar
Sunucunuz OAuth istemcinizin gizli anahtarını ve webhook imzalama anahtarınızı tutar. İkisi de oradan hiçbir zaman çıkmaz.
Oyuncunun cihazı tek bir şey tutar: lgr_et_ ile başlayan bir gömme belirteci. Bir oyun ikili dosyasının veya bir web sayfasının içinde gönderdiğiniz her şey herkese açıktır; bu yüzden cihaz hiçbir zaman bir istemci gizli anahtarı, bir webhook gizli anahtarı ya da kendi istemcinize ait bir erişim belirteci tutmaz. Bir gömme belirteci yalnızca tek bir oyuncu adına hareket eder, saatler değil dakikalar boyunca geçerlidir ve yalnızca sunucunuzun ona verdiği kapsamları taşır.
Bir oyuncunun Lingara hesabına ihtiyacı yoktur. Sunucunuzun bir oyuncu için ürettiği ilk belirteç, onun için bir misafir öğrenci oluşturur ve sonraki her belirteç aynı öğrenciye ulaşır. Zaten bir Lingara hesabı olan bir oyuncu onu getirebilir: sunucu kitleri sayfası, sunucunuzun ikisini nasıl bağladığını anlatır.
Bir belirteç oyuncuya nasıl ulaşır
- Oyununuzdaki veya sayfanızdaki oyuncu kiti bir belirtece ihtiyaç duyar ve belirteç kaynağı aracılığıyla sunucunuza sorar.
- Sunucunuz o oyuncu için kendi oturumunu kontrol eder ve sunucu kitiyle onun için bir belirteç üretir.
- Sunucunuz belirteci iki alan olarak, yani belirteç ve son kullanma zamanı olarak, kendi oturumunuz üzerinden ve hiçbir zaman bir URL içinde olmadan geri verir.
- Oyuncu kiti belirteci son kullanma zamanı yaklaşana kadar kullanır, ardından sunucunuza yeniden sorar. Lingara hiçbir zaman bir belirteci yenilemez.
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 ─────────────────────▶
Bir web sitesi için belirteç tek bir kökene bağlıdır: sayfanın kendi şeması, ana makinesi ve bağlantı noktası. Widget’ınızın çalıştığı her kökeni, onun için belirteç üretmeden önce sunucu kitleri sayfasında anlatıldığı gibi kaydedin. Bir oyun için belirtecin kökeni yoktur.
Bir belirteç neler yapabilir
Sunucunuz her belirtecin kapsamlarını onu üretirken şu beş kapsam arasından seçer: events:read, events:write, lesson_plans:read, lesson_plans:write ve embed:play. Bir belirteç yalnızca kendi istemcinizin zaten sahip olduğu kapsamları taşıyabilir. embed:play, oyuncunun karakterlerinizle sohbet etmesine ve tamamladığı alıştırmayı bildirmesine izin verir.
Kim öder
Yalnızca ölçümlü plandaki bir istemci belirteç üretebilir. Bir oyuncunun bir belirteçle yaptığı her şey istemcinizin kullanımı olarak sayılır ve oyuncuya değil, size faturalandırılır.
Bir oyuncuyu silmek
Bir oyuncu oyununuzdaki hesabını sildiğinde, sunucunuz onu Lingara’da da siler. Bu, öğrencisini ve Lingara’nın onun için tuttuğu her şeyi kaldırır ve sahip olduğu her belirteci iptal eder.
Hangi kite ihtiyacınız var
Her entegrasyon iki kit kullanır: sunucunuzda bir sunucu kiti ve oyuncunun oynadığı yerde bir oyuncu kiti.
| Ne geliştiriyorsunuz | Sunucunuz | Oyuncunun oynadığı yer |
|---|---|---|
| Bir Bevy oyunu | Sunucu kitleri | Bevy |
| Bir Unity oyunu | Sunucu kitleri | Unity |
| Bir Godot oyunu | Sunucu kitleri | Godot |
| Bir Unreal oyunu | Sunucu kitleri | Unreal |
| JVM veya Android üzerinde bir oyun | Sunucu kitleri | JVM ve Android |
| Bir web sitesi | Sunucu kitleri | Web sitesi widget’ı |
Ardından her kitte aynı şekilde çalışan NPC diyaloğu ve alıştırma sonuçları sayfalarını okuyun.
Başlarken
- Sunucu kitleri
Kendi sunucunuzdan oyuncularınız için belirteç üretin, olaylarını yönlendirin ve onları silin.
Nerede çalışır
- Bevy
Lingara eklentisini bir Bevy oyununa ekleyin, belirteç isteklerini yanıtlayın ve olaylarını Message olarak okuyun.
- Unity
Lingara.Embed paketini NuGetForUnity ile kurun, belirteçleri sunucunuzdan alın ve olayları Update içinde boşaltın.
- Godot
Bir Godot 4 oyununda, GDScript'ten veya C#'tan Lingara; belirteçler kendi sunucunuzdan.
- Unreal
Oyuncu çekirdeğinin C arayüzü üzerine kurulu, Unreal Engine 5 için Lingara eklentisi.
- JVM ve Android
Kotlin oyuncu kiti ve onun Java cephesi, masaüstünde ve Android'de; örnek olarak libGDX.
- Web sitesi widget'ı
lingara-embed öğesini sayfanıza yerleştirin ve ona kendi sunucunuzdan belirteç verin.
Kendi dünyanızda öğrenmek
- NPC diyaloğu
Dünyanızda, oyuncunun hedef dilini onun seviyesinde konuşan bir karakter; her seferinde akışla gelen tek bir tur.
- Alıştırma sonuçları
Oyununuzun içinde bir ders planıyla alıştırma yapın, nasıl geçtiğini bildirin ve bunu sunucunuzda öğrenin.