جاسازی Lingara
این صفحه از انگلیسی ترجمه شده است. اگر این دو با هم تفاوت داشته باشند، صفحهٔ انگلیسی درست است. خواندن صفحهٔ انگلیسی
Lingara میتواند درون بازی یا وبسایت شما کار کند. یک شخصیت در دنیای شما میتواند در سطح بازیکن گفتوگو کند، و تمرینی که بازیکن شما به پایان میرساند بهعنوان تمرین Lingara شمرده میشود. جاسازی دو نیمه دارد، و نخستین چیزی که باید روشن شود این است که کدام نیمه کجا اجرا میشود.
چه کسی چه چیزی را نگه میدارد
سرور شما رمز کلاینت OAuth و رمز امضای وبهوک شما را نگه میدارد. هیچیک هرگز از آن خارج نمیشود.
دستگاه بازیکن فقط یک چیز را نگه میدارد: یک توکن جاسازی که با lgr_et_ شروع میشود. هر چیزی که درون فایل اجرایی یک بازی یا یک صفحهٔ وب منتشر میکنید عمومی است، پس دستگاه هرگز رمز کلاینت، رمز وبهوک یا توکن دسترسیِ کلاینت خودتان را نگه نمیدارد. توکن جاسازی فقط از طرف یک بازیکن عمل میکند، بهجای چند ساعت چند دقیقه دوام میآورد، و فقط مجوزهایی را دارد که سرور شما به آن داده است.
بازیکن به حساب Lingara نیاز ندارد. نخستین توکنی که سرور شما برای یک بازیکن صادر میکند یک زبانآموز مهمان برای او میسازد، و هر توکن بعدی به همان زبانآموز میرسد. بازیکنی که از قبل حساب Lingara دارد میتواند آن را با خود بیاورد: صفحهٔ کیتهای سرور توضیح میدهد سرور شما چگونه این دو را به هم پیوند میدهد.
توکن چگونه به بازیکن میرسد
- کیت بازیکن، در بازی یا صفحهٔ شما، به توکن نیاز دارد و از طریق منبع توکن خود آن را از سرور شما درخواست میکند.
- سرور شما نشست خودش را برای آن بازیکن بررسی میکند و با کیت سرور یک توکن برای او صادر میکند.
- سرور شما توکن را در دو فیلد، خود توکن و زمان انقضای آن، از طریق نشست خودتان و هرگز نه در یک URL، برمیگرداند.
- کیت بازیکن تا نزدیک شدن به زمان انقضا از توکن استفاده میکند و سپس دوباره از سرور شما درخواست میکند. 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
شخصیتی در دنیای شما که به زبان هدف بازیکن و در سطح او صحبت میکند، هر بار یک نوبت جریانی.
- نتایج تمرین
یک برنامهٔ درسی را درون بازی خود تمرین کنید، گزارش دهید که چگونه پیش رفت، و روی سرور خود از آن باخبر شوید.