این صفحهها چه هستند
بعضی بخشهای بازینس صفحهی وب هستند که بازی شما داخل خودش نشان میدهد؛ مثلاً صفحهی ورود و فروشگاه جایزهی «انتخاب جایزه». آدرس صفحه را در یک وبویوی داخل بازی باز میکنید: روی وب یک iframe، در موتور بازی یک کامپوننت WebView. صفحه با پیام با بازی حرف میزند، مثلاً «بازیکن وارد شد» یا «مرا ببند».
همهی صفحهها روی یک سایت هستند:
| محیط | آدرس پایهی صفحهها {web} |
|---|---|
| توسعه | https://platform-web-dev.karizmastudios.org |
| اصلی | https://baziness.com |
ساختن نمای داخل بازی (شیتی که از پایین بالا میآید و با کشیدن به پایین بسته میشود) در شیت پایین / وبویو آمده است.
پارامترها
مهم
linkCode(کد یکبارمصرف از سرور شما باv2/client/link-code/{userId}) جایlinkedTokenرا میگیرد. در دورهی مهاجرت صفحهها هر دو را قبول میکنند. مهاجرت توکن را ببینید.
| پارامتر | کِی | مقدار | چرا |
|---|---|---|---|
packageName |
همیشه | نام بستهی پلتفرم شما | بازی شما را معرفی میکند |
sdkType |
همیشه | js |
به صفحه میگوید داخل بازی است تا برایتان پیام بفرستد. بدون آن حتی دکمهی بستن خود صفحه هم نمای شما را نمیبندد |
linkedToken |
هر وقت دارید | توکن کاربر بازیکن | صفحه به نام همین بازیکن کار میکند و ورود داخل صفحه به او وصل میشود |
redirect |
پروفایل، جایزه | profile / shop |
صفحه بعد از ورود داخلش به کجا برگردد |
allowGuest |
ورود، پروفایل، پیشنهاد بازی | false |
«ادامه به عنوان مهمان» خود صفحه را پنهان میکند؛ بازی شما این گزینه را دارد |
game_name |
جایزه، پیشنهاد بازی | نام بازی شما، URL-encode شده | جایزهها و پیشنهاد بازی شما را انتخاب میکند |
buildStore |
فقط بیلدهای فروشگاهی | CafeBazaar / Myket |
صفحه لینک فروشگاههای دیگر را پنهان میکند |
همهی مقدارها را encode کنید، چون game_name ممکن است فارسی باشد و توکنها ممکن است + یا / داشته باشند.
صفحهها
| صفحه | مسیر | کِی بازش کنید | پارامترها |
|---|---|---|---|
| ورود | / |
بازیکن «ورود با حساب بازینس» را میزند، یا برای دریافت جایزه باید وارد شود | packageName، sdkType=js، linkedToken، allowGuest=false |
| پروفایل | /profile |
تنظیمات ← اتصال یا مدیریت حساب | packageName، sdkType=js، linkedToken، redirect=profile، allowGuest=false |
| فروشگاه جایزه «انتخاب جایزه» | /shop |
بازیکن دکمهی جایزه را میزند | game_name، packageName، sdkType=js، linkedToken، redirect=shop؛ بدون allowGuest |
| پیشنهاد بازی | /game-offer |
یک بار، وسط آموزش (جزئیات) | game_name، packageName، sdkType=js، linkedToken، allowGuest=false |
Login https://baziness.com/?packageName=com.karizmastudio.example&sdkType=js&linkedToken=eyJ…&allowGuest=false
Profile https://baziness.com/profile?packageName=com.karizmastudio.example&sdkType=js&linkedToken=eyJ…&redirect=profile&allowGuest=false
Rewards https://baziness.com/shop?game_name=example&packageName=com.karizmastudio.example&sdkType=js&linkedToken=eyJ…&redirect=shop
Game offer https://baziness.com/game-offer?game_name=example&packageName=com.karizmastudio.example&sdkType=js&linkedToken=eyJ…&allowGuest=falseمهم
برای فروشگاه جایزه
/shopرا باز کنید، نه ریشهی سایت (/). ریشه بازیکنی را که داخل بازی است به صفحهی ورود میبرد؛/shopاز توکنی که بازیکن دارد استفاده میکند.
پیامهای صفحهها
صفحه با postMessage پیام میفرستد. هر پیام JSON است، به شکل رشته یا شیء، با قالب { "type": "...", "data": ... }:
type |
data |
معنی | کار بازی شما |
|---|---|---|---|
close |
— | دکمهی بستن صفحه زده شد | نما را ببندید |
login |
توکن: "<token>" یا { "token": "<token>" } |
بازیکن وارد یک حساب شد | توکن را به سرور خودتان بفرستید تا بررسیاش کند و حساب را وصل کند یا به حساب دیگر بازیکن جابهجا شود؛ بعد توکن را تازه کنید و نما را ببندید |
login |
(بدون داده) | حساب فعلی بازیکن در همان جا وصل شد | بازیکن را متصل علامت بزنید و توکن را تازه کنید |
token |
توکن | دستدادن بیصدایی که صفحه هنگام بارگذاری میفرستد | نادیده بگیرید؛ ورود نیست |
logout |
— | بازیکن داخل صفحه خارج شد | نما را ببندید، هر چه بازی بهصورت محلی ذخیره کرده پاک کنید و مثل یک بازدیدکنندهی کاملاً جدید از اول شروع کنید |
هشدار
- فقط پیامهایی را بپذیرید که origin آنها صفحهای است که باز کردهاید (
{web}) و بقیه را نادیده بگیرید.- هیچوقت
tokenرا ورود حساب نکنید؛ وگرنه فروشگاه جایزه به محض باز شدن بسته میشود.