メインコンテンツまでスキップ

Vivox 認証サービス

Last updated on February 4, 2026

注釈:本資料はAI技術を用いて翻訳されています。

概要

AccelByte Gaming Services (AGS) Extend Service Extension を使用して Vivox 認証サービスを実装し、AGS、Vivox、およびゲームクライアント間のシームレスな統合を実現できます。この Vivox 認証サービスは、ゲームクライアントが Vivox とやり取りするために必要な署名付き Vivox トークンを生成します。各トークンの有効期限は 90 秒であるため、ゲームクライアントは定期的にサービスから新しいトークンをリクエストする必要があります。

前提条件

  1. 以下のツールがインストールされた Windows 11 WSL2、Linux Ubuntu 22.04、または macOS 14+:

    a. Docker (Docker Desktop 4.30+/Docker Engine v23.0+)

    • Linux Ubuntu の場合:

      1. Ubuntu リポジトリからインストールするには、sudo apt update && sudo apt install docker.io docker-buildx docker-compose-v2 を実行します。
      2. docker グループにユーザーを追加します: sudo usermod -aG docker $USER
      3. ログアウトして再度ログインし、変更を反映させます。
    • Windows または macOS の場合:

      Windows または macOS への Docker Desktop のインストールに関する Docker のドキュメントに従ってください。

      docker version

      ...
      Server: Docker Desktop
      Engine:
      Version: 24.0.5
      ...

    b. extend-helper-cli

  2. AGS Admin Portal 環境へのアクセス。

    • ベース URL: <環境のドメイン URL>

      • AGS Shared Cloud のお客様の例: https://spaceshooter.prod.gamingservices.accelbyte.io
      • AGS Private Cloud のお客様の例: https://dev.customer.accelbyte.io
    • まだ持っていない場合は、ゲーム Namespace を作成します。Namespace ID をメモしてください。

    • 以下の権限を含む confidential クライアントタイプで OAuth クライアントを作成します:

      • AGS Private Cloud のお客様の場合:
        • ADMIN:ROLE [READ]
        • ADMIN:NAMESPACE:{namespace}:NAMESPACE [READ]
      • AGS Shared Cloud のお客様の場合:
        • IAM > Roles (Read)
        • Basic > Namespace (Read)

      Client IDClient Secret を保管してください。

  3. Vivox の設定。

    • Vivox アプリケーション固有の発行者名
    • Vivox ドメイン名
    • Vivox 署名キー

アプリリポジトリのクローン

git clone https://github.com/AccelByte/extend-vivox-authorization-service-csharp

AGS へのデプロイ

AGS に Extend アプリをデプロイするには、Admin Portal で以下の手順を実行します:

  1. Extend アプリを作成
  2. Extend アプリをアップロード
  3. Extend アプリを設定
  4. Extend アプリをデプロイ

Extend アプリを作成

  1. AGS Admin Portal で、Extend Override アプリを作成する Namespace に移動します。
  2. サイドバーメニューの ADD-ONS の下にある Extend > Service Extension に移動します。
  3. Service Extension ページで、+ Create New ボタンをクリックします。
  4. Create App フォームで、Extend アプリの名前と説明(オプション)を入力します。
  5. Create をクリックします。新しい Extend アプリが Service Extension アプリリストに追加されます。

Extend アプリをアップロード

  1. extend-helper-cli 用の IAM クライアントをセットアップします。クライアントタイプ confidentialIAM クライアントを作成し、以下にリストされている必要な権限を割り当てます。Client IDClient Secret のコピーを保管してください。

    • AGS Private Cloud のお客様の場合:
      • ADMIN:NAMESPACE:{namespace}:EXTEND:REPOCREDENTIALS [READ]
      • ADMIN:NAMESPACE:{namespace}:EXTEND:APP [READ]
    • AGS Shared Cloud のお客様の場合:
      • Extend > Extend app image repository access (Read)
      • Extend > App (Read)
  2. 必要な環境変数をエクスポートし、extend-helper-cli を使用して Extend アプリコンテナイメージをビルドして AGS にアップロードします。

    • <project-dir> が Extend アプリプロジェクトディレクトリを指していることを確認してください
    • <namespace><app-name> の値は、Extend アプリの App Detail ページで確認できます
    • 適切なイメージタグ(例: v0.0.1)を使用してください
    # AGS 環境のベース URL (例: https://spaceshooter.prod.gamingservices.accelbyte.io、https://dev.accelbyte.io など)
    export AB_BASE_URL='https://xxxxxxxxxx'
    # extend-helper-cli 用の OAuth クライアントのクライアント ID (ステップ 1 より)
    export AB_CLIENT_ID='xxxxxxxxxx'
    # extend-helper-cli 用の OAuth クライアントのクライアントシークレット (ステップ 1 より)
    export AB_CLIENT_SECRET='xxxxxxxxxx'

    ./extend-helper-cli-linux_amd64 image-upload --login --work-dir <project-dir> --namespace <namespace> --app <app-name> --image-tag v0.0.1
    important
    • 上記のコマンドは、Extend アプリプロジェクトとは別のターミナルおよび異なる作業ディレクトリから実行することをお勧めします。これにより、extend-helper-cli が Extend アプリ用の環境変数を誤って使用することを防ぎます。
    • 以下のエラーが発生した場合は、トラブルシューティング: Docker ログインが失敗するを参照して解決手順を確認してください。
      Error saving credentials: error storing credentials - err: exit status 1, out: `error storing credentials - err: exit status 1, out: `The stub received bad data.`

    イメージが正常にアップロードされると、Image Version History ページにバージョン v0.0.1 のイメージが表示されます。

    AGS Admin Portal のイメージ履歴

Extend アプリを設定

アップロードした Extend アプリをデプロイする前に、アプリに必要な環境変数を設定する必要があります。アプリの詳細ページで、前提条件セクションで準備した値を使用して、以下の環境変数を設定します。

  • AB_CLIENT_ID
  • AB_CLIENT_SECRET
  • VIVOX_ISSUER
  • VIVOX_DOMAIN
  • VIVOX_SIGNING_KEY

Extend アプリをデプロイ

Extend アプリをデプロイするには、Deploy Latest Image をクリックします。アプリのステータスが RUNNING に更新されるまで待ちます。これは、Extend アプリが正常にデプロイされたことを示します。

サンプルゲームクライアントの実行

AccelByte は、Vivox 認証サービスを試すためのサンプルゲームクライアントを提供しています。以下の手順に従ってください:

  1. プロジェクトをクローンします。

    git clone https://github.com/AccelByte/extend-vivox-authorization-sample-game-unreal
  2. Unreal 用の AGS SDK を設定します。AGS Game SDK のインストールガイドの IAM クライアント用の AGS Game SDK の設定セクションの手順に従ってください。

  3. Vivox Unreal SDK を設定します。

    1. VivoxGameInstance.cpp ファイルの VIVOX_VOICE_SERVERVIVOX_VOICE_DOMAINVIVOX_ISSUER の値を、Unreal Dashboard プロジェクトの Vivox 認証情報にある値で設定します。
    2. VivoxTokenProvider.cppVIVOX_TOKEN_PROVIDER_URL の値を設定します。
    3. Token Provider Url フィールドと Inspector フィールドを見つけて変更します。
  4. IDE でプロジェクト(Client/ShooterGame.uproject)を開きます。

  5. Windows (64-bit) 用にビルドしてパッケージ化します。

  6. ビルドの 1 つ以上のインスタンスを起動します。実行可能ファイル名は ShooterGame.exe です。

  7. 1 つのクライアントをホストとし、他のクライアントを参加させます。

次のステップ

この Vivox 認証サービスを要件に合わせてカスタマイズする必要がある場合は、このガイドを参照してください。