Skip to main content

HappyOyster-Acting-Enter Travel API リファレンス

クライアントは ticket を使用して実際の Travel を作成し、RTC 参加設定、Acting 機能バージョン、およびプレーヤーのアスペクト比を取得します。呼び出しが成功すると Travel が作成されます。

スコープ

クライアントは ticket を使用して実際の Travel を作成し、RTC 参加設定、Acting 機能バージョン、およびプレーヤーのアスペクト比を取得します。呼び出す前に、以下を確認してください:
  • 認証:プライマリ API Key は必須ではありません。ticket が入室検証を完了します。取得方法については、認証情報の取得 を参照してください。
  • 前提条件:ticket は Travel 資格情報の取得 から取得したものであり、未期限切れかつ未使用で、World のステータスが ready である必要があります。
  • 呼び出し元:クライアントから呼び出します。

HTTP リクエスト

  • Singapore
  • 米国(バージニア)
POST https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v2/apps/happyoyster-1.0-acting/openapi/v1/travels/enter-travel{WorkspaceId} を実際の ワークスペースID に置き換えます。

リクエストパラメーター

  • Travel への入室(クライアント)
curl --location 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v2/apps/happyoyster-1.0-acting/openapi/v1/travels/enter-travel' \
    -H "Authorization: Bearer $DASHSCOPE_API_KEY" \
    -H 'Content-Type: application/json' \
    -d '{
    "ticket": "{ticket}"
}'
Content-Typestring(必須)リクエストのコンテンツタイプ。このパラメータは application/json に設定する必要があります。
Authorization string (必須)API キー認証です。プライマリ API キーは必須ではなく、プライマリまたは一時 API キーのいずれかで呼び出せます。
  • プライマリ API Key:sk- で始まります(例:sk-xxx)。
  • 一時 API キー:st- で始まり、例は st-xxx です。
リクエストボディ
ticket string (必須)Travel 資格情報の取得 から取得した、未期限切れかつ未使用の単発資格情報です。同じ ticket を再利用すると 401011 が返されます。
Acting は maxExperienceTimeSec を消費しません。渡さないでください。無効なティアが渡された場合でも、モデルルーティングの前に 400000 が返されます。

レスポンスパラメーター

  • 入室成功
{
    "code": 0,
    "message": null,
    "data": {
        "encryptedTravelId": "trvl_a1b2****",
        "encryptedWorldId": "enc_a1b2****",
        "mode": 3,
        "creationModel": "simple",
        "playUrl": null,
        "firstFrame": "https://cdn.happyoyster.com/frames/acting_world_xyz789.jpg",
        "rtcConfig": {
            "channelId": "stream_abc123",
            "appId": "18bca2e3218c46aebf8ff3a32fb12311",
            "token": "007eJxTYOh...",
            "userId": "user_1"
        },
        "version": "actingV2",
        "aspectRatio": "9:16",
        "noStreamAutoEndTimeoutSec": 30,
        "maxExperienceTimeSec": null
    }
}
code integerリターンコード。0 は成功を意味し、ゼロ以外の値はエラーコードです。
message stringエラーメッセージ。成功時は null です。
data objectレスポンスデータ。失敗時は null です。

プロパティ

encryptedTravelId string新しく作成された暗号化 Travel ID です。後続の Travel ステータスのクエリ、一時停止、再開、終了、およびアーティファクトクエリに使用されます。encryptedWorldId stringこの Travel に対応する暗号化 World ID です。mode integerActing では常に 3 です。creationModel stringActing では常に simple です。playUrl nullまだ利用できません。null に固定されています。firstFrame stringWorld の初回フレーム URL です。rtcConfig objectRTC 参加設定です。利用可能なストリーミングチャンネルがない場合は null となり、その場合クライアントはそれに基づいて再生を開始できません。
  • channelId:RTC チャンネル ID
  • appId:プラットフォームによって割り当てられた RTC アプリケーション ID
  • token:RTC 参加トークン
  • userId:RTC 参加ユーザー ID、user_1 に固定
version stringActing の入室バージョンで、actingV2 に固定されています。制御インターフェースはこのバージョンに従って呼び出す必要があります。aspectRatio stringアスペクト比です。クライアントはストリームのプル前に、これに応じてプレーヤーの向きを設定する必要があります:
  • 9:16(縦向き)
  • 16:9(横向き)
noStreamAutoEndTimeoutSec integerストリームなし自動終了タイムアウト(秒単位)、デフォルトは 30 です。実際のレスポンスが優先されます。入室後この時間内に rtcStatus がストリーミング状態にならない場合、failCode=TRAVEL_NO_STREAM_AUTO_END を指定して End Travel を呼び出してください。maxExperienceTimeSec nullActing は最大体験時間を使用しません。null に固定されています。

前提条件となるステータスと呼び出しに関する注意事項

  • ticket に対応する World は ready である必要があり、チケットは未期限切れかつ未使用である必要があります。
  • 呼び出しが成功すると Travel が作成されます。同じ ticket を再利用すると 401011 が返されます。
  • Acting 機能または仕様が有効になっていない場合、403007 が返され、Travel は作成されません。
  • version は actingV2 として扱う必要があります。別の機能バージョンに従って制御インターフェースを呼び出さないでください。
  • クライアントは、ストリームプルまたはレンダリングコンテナの確立前に aspectRatio を読み取る必要があります。9:16 の場合は縦向きコンテナを、16:9 の場合は横向きコンテナを使用してください。
  • maxExperienceTimeSec を渡さないでください。Acting はこのフィールドによって自動終了せず、クライアントはこれを使用してカウントダウンを実装してはなりません。
  • rtcConfig=null は、現在利用可能なストリーミングチャンネルがないことを意味し、クライアントはそれに基づいて再生を開始できません。

エラーコード

モデルの呼び出しに失敗してエラーが返された場合は、HappyOyster エラーコードを参照して解決してください。

次のステップ

入室成功後: