クライアントはticketを使用して実際のTravelを作成し、RTC参加設定とDirecting機能バージョンを取得します。creationModelはTravelが呼び出せる制御インターフェースを決定します。
スコープ
クライアントはticketを使用して実際のTravelを作成し、RTC参加設定を取得します。呼び出し前に、以下を確認してください:
- 認証:プライマリ API Key は必須ではありません。
ticket が入室検証を完了します。取得方法については、認証情報の取得 を参照してください。
- 前提条件:
ticket は Travel 資格情報の取得 から取得したものであり、未期限切れかつ未使用で、World のステータスが ready である必要があります。
- 呼び出し元:クライアントから呼び出します。
HTTP リクエスト
Singapore
POST https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v2/apps/happyoyster-1.0-directing/openapi/v1/travels/enter-travel
{WorkspaceId} を実際の ワークスペースID に置き換えます。
米国(バージニア)
POST https://{WorkspaceId}.us-east-1.maas.aliyuncs.com/api/v2/apps/happyoyster-1.0-directing/openapi/v1/travels/enter-travel
{WorkspaceId} を実際の ワークスペースID に置き換えます。
リクエストパラメーター | Travel への入室(クライアント)curl --location 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v2/apps/happyoyster-1.0-directing/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 が返されます。 注記Directingの入室Travelは maxExperienceTimeSecを消費しないため、これを渡さないでください。このフィールドはAdventureでのみ有効です。無効なティアが渡された場合、モデルルーティングの前に 400000が返されます。成功時のレスポンスは引き続き nullです。 |
レスポンスパラメーター | {
"code": 0,
"message": null,
"data": {
"encryptedTravelId": "trvl_a1b2****",
"encryptedWorldId": "enc_a1b2****",
"mode": 2,
"creationModel": "simple",
"playUrl": null,
"firstFrame": "https://cdn.happyoyster.com/frames/world_xyz789.jpg",
"rtcConfig": {
"channelId": "stream_abc123",
"appId": "18bca2e3218c46aebf8ff3a32fb12311",
"token": "007eJxTYOh...",
"userId": "user_1"
},
"version": "storyV2",
"aspectRatio": null,
"noStreamAutoEndTimeoutSec": 30,
"maxExperienceTimeSec": null
}
}
|
code integer リターンコード。0 は成功を意味し、ゼロ以外の値はエラーコードです。 |
message string エラーメッセージ。成功時は null です。 |
data object レスポンスデータ。失敗時は null です。 プロパティ encryptedTravelId string 新しく作成された暗号化済みTravel IDです。後続のTravel Statusのクエリ、巻き戻し、一時停止、再開、終了、およびアーティファクトのクエリに使用されます。 encryptedWorldId string この Travel に対応する暗号化 World ID です。 mode integer Directingの場合は常に2です。 creationModel string simpleまたはscriptlist。Travelが呼び出せる制御インターフェースを決定します:
simple: instruct, pause, resume, rewind, end
scriptlist:update-script、pause、resume、rewind、end(instructはサポートされていません)
playUrl null まだ利用できません。null に固定されています。 firstFrame string World の初回フレーム URL です。 rtcConfig object RTC 参加設定です。利用可能なストリーミングチャンネルがない場合は null となり、その場合クライアントはそれに基づいて再生を開始できません。
channelId:RTC チャンネル ID
appId:プラットフォームによって割り当てられた RTC アプリケーション ID
token:RTC 参加トークン
userId:RTC 参加ユーザー ID、user_1 に固定
version string Directingの入室バージョンであり、storyV2に固定されています。 aspectRatio null Directingモデルではnullに固定されています。 noStreamAutoEndTimeoutSec integer ストリームなし自動終了タイムアウト(秒単位)、デフォルトは 30 です。実際のレスポンスが優先されます。入室後この時間内に rtcStatus がストリーミング状態にならない場合、failCode=TRAVEL_NO_STREAM_AUTO_END を指定して End Travel を呼び出してください。 maxExperienceTimeSec null Directingモデルではnullに固定されています。 |
前提条件となるステータスと呼び出しに関する注意事項
ticket に対応する World は ready である必要があり、チケットは未期限切れかつ未使用である必要があります。
maxExperienceTimeSecを渡さないでください。Directingはこのフィールドによって体験時間を制限しません。
- 呼び出しが成功すると Travel が作成されます。同じ
ticket を再利用すると 401011 が返されます。
creationModel=scriptlistの場合、instructを呼び出さず、代わりにフルスクリプト更新を使用してください。
rtcConfig=null は、現在利用可能なストリーミングチャンネルがないことを意味し、クライアントはそれに基づいて再生を開始できません。
エラーコード
モデルの呼び出しに失敗してエラーが返された場合は、HappyOyster エラーコードを参照して解決してください。
次のステップ
入室成功後: