Lingara Lingara مستندات راهنماها API کتابخانه‌ها برنامه‌ها ساخت جاسازی نسخهٔ وب
زبان: فارسی

جاسازی Lingara

این صفحه از انگلیسی ترجمه شده است. اگر این دو با هم تفاوت داشته باشند، صفحهٔ انگلیسی درست است. خواندن صفحهٔ انگلیسی

Lingara می‌تواند درون بازی یا وب‌سایت شما کار کند. یک شخصیت در دنیای شما می‌تواند در سطح بازیکن گفت‌وگو کند، و تمرینی که بازیکن شما به پایان می‌رساند به‌عنوان تمرین Lingara شمرده می‌شود. جاسازی دو نیمه دارد، و نخستین چیزی که باید روشن شود این است که کدام نیمه کجا اجرا می‌شود.

چه کسی چه چیزی را نگه می‌دارد

سرور شما رمز کلاینت OAuth و رمز امضای وب‌هوک شما را نگه می‌دارد. هیچ‌یک هرگز از آن خارج نمی‌شود.

دستگاه بازیکن فقط یک چیز را نگه می‌دارد: یک توکن جاسازی که با lgr_et_ شروع می‌شود. هر چیزی که درون فایل اجرایی یک بازی یا یک صفحهٔ وب منتشر می‌کنید عمومی است، پس دستگاه هرگز رمز کلاینت، رمز وب‌هوک یا توکن دسترسیِ کلاینت خودتان را نگه نمی‌دارد. توکن جاسازی فقط از طرف یک بازیکن عمل می‌کند، به‌جای چند ساعت چند دقیقه دوام می‌آورد، و فقط مجوزهایی را دارد که سرور شما به آن داده است.

بازیکن به حساب Lingara نیاز ندارد. نخستین توکنی که سرور شما برای یک بازیکن صادر می‌کند یک زبان‌آموز مهمان برای او می‌سازد، و هر توکن بعدی به همان زبان‌آموز می‌رسد. بازیکنی که از قبل حساب Lingara دارد می‌تواند آن را با خود بیاورد: صفحهٔ کیت‌های سرور توضیح می‌دهد سرور شما چگونه این دو را به هم پیوند می‌دهد.

توکن چگونه به بازیکن می‌رسد

  1. کیت بازیکن، در بازی یا صفحهٔ شما، به توکن نیاز دارد و از طریق منبع توکن خود آن را از سرور شما درخواست می‌کند.
  2. سرور شما نشست خودش را برای آن بازیکن بررسی می‌کند و با کیت سرور یک توکن برای او صادر می‌کند.
  3. سرور شما توکن را در دو فیلد، خود توکن و زمان انقضای آن، از طریق نشست خودتان و هرگز نه در یک URL، برمی‌گرداند.
  4. کیت بازیکن تا نزدیک شدن به زمان انقضا از توکن استفاده می‌کند و سپس دوباره از سرور شما درخواست می‌کند. Lingara هرگز توکنی را تمدید نمی‌کند.
 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 ─────────────────────▶

توکنِ یک وب‌سایت به یک مبدأ گره خورده است: طرح، میزبان و پورت خود صفحه. هر مبدأیی را که ویجت شما روی آن اجرا می‌شود پیش از صادر کردن توکن برای آن ثبت کنید، همان‌طور که صفحهٔ کیت‌های سرور توضیح می‌دهد. توکنِ یک بازی مبدأ ندارد.

توکن چه کارهایی می‌تواند بکند

سرور شما مجوزهای هر توکن را هنگام صادر کردن آن از میان این پنج مورد انتخاب می‌کند: events:read، events:write، lesson_plans:read، lesson_plans:write و embed:play. یک توکن فقط می‌تواند مجوزهایی را داشته باشد که کلاینت خودتان از پیش دارد. embed:play به بازیکن اجازه می‌دهد با شخصیت‌های شما گفت‌وگو کند و تمرینی را که به پایان می‌رساند گزارش دهد.

چه کسی پرداخت می‌کند

فقط کلاینتی که روی طرح مبتنی بر مصرف است می‌تواند توکن صادر کند. هر کاری که بازیکن با یک توکن انجام می‌دهد به‌عنوان مصرف کلاینت شما شمرده می‌شود و هزینه‌اش از شما گرفته می‌شود، نه از بازیکن.

حذف یک بازیکن

وقتی بازیکنی حسابش را در بازی شما حذف می‌کند، سرور شما او را در Lingara هم حذف می‌کند. این کار زبان‌آموز او و هر چیزی را که Lingara برای او نگه می‌دارد حذف می‌کند و همهٔ توکن‌هایی را که دارد باطل می‌کند.

به کدام کیت نیاز دارید

هر یکپارچه‌سازی از دو کیت استفاده می‌کند: یک کیت سرور روی سرور شما، و یک کیت بازیکن جایی که بازیکن بازی می‌کند.

آنچه می‌سازیدسرور شماجایی که بازیکن بازی می‌کند
یک بازی Bevyکیت‌های سرورBevy
یک بازی Unityکیت‌های سرورUnity
یک بازی Godotکیت‌های سرورGodot
یک بازی Unrealکیت‌های سرورUnreal
یک بازی روی JVM یا Androidکیت‌های سرورJVM و Android
یک وب‌سایتکیت‌های سرورویجت وب‌سایت

سپس گفت‌وگوی NPC و نتایج تمرین را بخوانید که در همهٔ کیت‌ها به یک شکل کار می‌کنند.

شروع کار

  • کیت‌های سرور

    از سرور خودتان برای بازیکنانتان توکن صادر کنید، رویدادهایشان را مسیریابی کنید و آن‌ها را حذف کنید.

کجا اجرا می‌شود

  • Bevy

    افزونهٔ Lingara را به یک بازی Bevy اضافه کنید، به درخواست‌های توکن آن پاسخ دهید و رویدادهایش را به‌صورت پیام بخوانید.

  • Unity

    Lingara.Embed را از طریق NuGetForUnity نصب کنید، توکن‌ها را از سرور خود بگیرید و رویدادها را در Update خالی کنید.

  • Godot

    Lingara در یک بازی Godot 4، از GDScript یا از C#، با توکن‌هایی از سرور خودتان.

  • Unreal

    افزونهٔ Lingara برای Unreal Engine 5، روی رابط C هستهٔ بازیکن.

  • JVM و Android

    کیت بازیکن Kotlin و نمای Java آن، روی دسکتاپ و روی Android، با libGDX به‌عنوان نمونهٔ عملی.

  • ویجت وب‌سایت

    عنصر lingara-embed را روی صفحهٔ خود قرار دهید و توکن‌هایش را از سرور خودتان بدهید.

یادگیری در دنیای شما

  • گفت‌وگوی NPC

    شخصیتی در دنیای شما که به زبان هدف بازیکن و در سطح او صحبت می‌کند، هر بار یک نوبت جریانی.

  • نتایج تمرین

    یک برنامهٔ درسی را درون بازی خود تمرین کنید، گزارش دهید که چگونه پیش رفت، و روی سرور خود از آن باخبر شوید.