Open Play SDK API başvurusu
    Preparing search index...

    Interface PlayerSession

    Oyuncu session façade'ı.

    interface PlayerSession {
        state: SessionState;
        changePassword(
            input: ChangePasswordInput,
            options?: SessionOperationOptions,
        ): Promise<SessionState>;
        completeGoogleOAuth(
            code: string,
            state: string,
            options?: SessionOperationOptions,
        ): Promise<AuthenticatedSession>;
        completeOAuth(
            input: { code: string; provider: string; state: string },
            options?: SessionOperationOptions,
        ): Promise<AuthenticatedSession>;
        deleteAccount(
            input: DeleteAccountInput,
            options?: SessionOperationOptions,
        ): Promise<SessionState>;
        linkOAuth(
            provider: string,
            callbackUrl: string,
            options?: SessionOperationOptions,
        ): Promise<OAuthStartResult>;
        listIdentities(
            options?: SessionOperationOptions,
        ): Promise<PlayerIdentities>;
        logout(options?: SessionOperationOptions): Promise<SessionState>;
        refresh(options?: SessionOperationOptions): Promise<SessionState>;
        requestPasswordReset(
            input: PasswordResetRequestInput,
            options?: SessionOperationOptions,
        ): Promise<void>;
        resetPassword(
            input: ResetPasswordInput,
            options?: SessionOperationOptions,
        ): Promise<void>;
        restore(options?: SessionOperationOptions): Promise<SessionState>;
        signInEmail(
            input: SignInEmailInput,
            options?: SessionOperationOptions,
        ): Promise<AuthenticatedSession>;
        signInGuest(
            options?: SessionOperationOptions,
        ): Promise<AuthenticatedSession>;
        signUpEmail(
            input: SignUpEmailInput,
            options?: SessionOperationOptions,
        ): Promise<AuthenticatedSession>;
        startGoogleOAuth(
            callbackUrl: string,
            options?: SessionOperationOptions,
        ): Promise<OAuthStartResult>;
        startIdentityTransfer(
            provider: string,
            callbackUrl: string,
            code: string,
            options?: SessionOperationOptions,
        ): Promise<OAuthStartResult>;
        startOAuth(
            provider: string,
            callbackUrl: string,
            options?: SessionOperationOptions,
        ): Promise<OAuthStartResult>;
        subscribe(listener: SessionListener): () => void;
        upgradeGuest(
            input: UpgradeGuestInput,
            options?: SessionOperationOptions,
        ): Promise<AuthenticatedSession>;
    }
    Index

    Properties

    Güncel auth state; token veya cookie değeri taşımaz.

    Methods

    • OAuth callback kodunu cookie session'a çevirir ve yalnız doğrulanmış session döndürür. provider ve state bekleyen sessionStorage kaydıyla eşleşmezse ağ isteği gönderilmeden CrxError fırlatılır (G10); kayıt ağdan önce silinir (tek kullanım).

      Parameters

      Returns Promise<AuthenticatedSession>

    • Oyuncunun kendi hesabını siler (POST /v1/auth/account/delete); geri alınamaz. Başarıda sunucu tüm oturumları iptal eder, kimlikleri ayırır ve oyuncu verisini siler; state signedOut olur. Bağlı kimlikli (e-posta/Google) hesapta giriş 10 dakikadan eskiyse CrxError(Http, 403, reason: "recent_sign_in_required") döner: uygulama oyuncuyu yeniden giriş yaptırıp çağrıyı tekrarlar. Misafir doğrudan siler.

      Parameters

      Returns Promise<SessionState>

    • Oturumdaki oyuncuya (misafir ya da kayıtlı) bir sağlayıcı kimliği bağlama başlangıcı (POST /v1/auth/link/{provider}). SDK authenticated değilse ağsız CrxError(Auth); kayıt niyeti link.

      Parameters

      Returns Promise<OAuthStartResult>

    • E-postadaki token ile yeni parola yazar (POST /v1/auth/reset-password); token tek kullanımlıktır ve sunucu o oyuncunun TÜM oturumlarını iptal eder. Oturum gerekmez; SDK oturum durumunu değiştirmez, bu istemci o oyuncuyla girişliyse gerçek durumu restore() belirler.

      Parameters

      Returns Promise<void>

    • Tenant-scoped, replay-safe guest bootstrap ile cookie session açar. Bootstrap sırrı saklanır ve kaybedilen oturumdan sonra yeniden sunulur (aynı misafir); sunucu reddederse (süresi dolmuş/emekli) sır bir kez silinip yeni sırla tek yeniden deneme yapılır; account_banned durumu banned olur.

      Parameters

      Returns Promise<AuthenticatedSession>

    • Operatörün verdiği tek kullanımlık kodla kimlik devri başlangıcı (POST /v1/auth/identity-transfer/start/{provider}); oturum gerekmez, kayıt niyeti transfer. Kod hiçbir hataya, duruma ya da kayda girmez.

      Parameters

      Returns Promise<OAuthStartResult>

    • OAuth giriş başlangıcı; provider credential'ı SDK'ya aktarılmaz. Dönen state, {state, provider, intent: signin, startedAt} kaydıyla sessionStorage'a bağlanır (G10); depo yoksa ağ isteği gönderilmeden CrxError(Storage) fırlatılır.

      Parameters

      Returns Promise<OAuthStartResult>

    • Güncel state'i dinler; unsubscribe idempotent'tir.

      Parameters

      Returns () => void