Skip to main content

Referencia de la API de HappyOyster-Directing-Enter Travel

El cliente utiliza el ticket para crear un Viaje real y obtener la configuración de unión RTC y la versión de capacidad de Dirección. creationModel determina las interfaces de control que el Viaje puede llamar.

Ámbito

El cliente utiliza el ticket para crear un Viaje real y obtener la configuración de unión RTC. Antes de realizar la llamada, confirme lo siguiente:
  • Autenticación: La API Key principal no es obligatoria; el ticket completa la validación de entrada a la sala. Para saber cómo obtenerla, consulte Obtener credenciales de autenticación.
  • Requisitos previos: El ticket se obtiene de Obtener credencial de viaje, no ha caducado y no se ha utilizado, y el estado de su mundo es ready.
  • Solicitante: Invocado por su cliente.

Solicitud HTTP

  • Singapore
  • EE. UU. (Virginia)
POST https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v2/apps/happyoyster-1.0-directing/openapi/v1/travels/enter-travelReemplace {WorkspaceId} con su ID de espacio de trabajo real.

Parámetros de solicitud

  • Entrar al viaje (cliente)
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(Requerido)Tipo de contenido de la solicitud. Este parámetro debe establecerse en application/json.
Authorization string (Requerido)Autenticación mediante clave de API. No se requiere la clave de API principal; pueden invocarla tanto la clave principal como una temporal.
  • Clave de API principal: comienza con sk-, por ejemplo, sk-xxx.
  • Clave de API temporal: comienza con st-, por ejemplo, st-xxx.
Cuerpo de la solicitud
ticket string (Obligatorio)Una credencial de un solo uso, no caducada y no utilizada, obtenida de Obtener credencial de viaje. Reutilizar el mismo ticket devuelve 401011.
La entrada al viaje de Dirección no consume maxExperienceTimeSec; no lo pase. Este campo solo tiene efecto para Adventure; si se pasa un nivel no válido, se devuelve 400000 antes del enrutamiento del modelo. La respuesta exitosa sigue siendo null.

Parámetros de respuesta

Entered successfully
{
    "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 integerCódigo de retorno. 0 indica éxito; un valor distinto de cero es un código de error.
message stringMensaje de error. null en caso de éxito.
data objectDatos de respuesta. null en caso de fallo.

Propiedades

encryptedTravelId stringEl ID de Viaje cifrado recién creado. Se utiliza para consultas posteriores de Consultar estado del viaje, rebobinado, pausa, reanudación, finalización y artefactos.encryptedWorldId stringEl ID de mundo cifrado al que corresponde este viaje.mode integerSiempre 2 para Dirección.creationModel stringsimple o scriptlist; determina las interfaces de control que el Viaje puede llamar:
  • simple: instruct, pause, resume, rewind, end
  • scriptlist: update-script, pause, resume, rewind, end (instruct no admitido)
playUrl nullAún no disponible; fijado en null.firstFrame stringURL del primer fotograma del mundo.rtcConfig objectConfiguración de unión RTC; null cuando no hay ningún canal de transmisión disponible, en cuyo caso el cliente no puede iniciar la reproducción basándose en ella.
  • channelId: ID de canal RTC
  • appId: ID de aplicación RTC asignado por la plataforma
  • token: token de unión RTC
  • userId: ID de usuario de unión RTC, fijado en user_1
version stringLa versión de entrada a la sala de Dirección, fijada en storyV2.aspectRatio nullFijado en null para el modelo de Dirección.noStreamAutoEndTimeoutSec integerTiempo de espera de finalización automática sin flujo en segundos, por defecto 30; prevalece la respuesta real. Si rtcStatus no entra en el estado de transmisión dentro de este tiempo después de entrar en la sala, llame a Finalizar viaje con failCode=TRAVEL_NO_STREAM_AUTO_END.maxExperienceTimeSec nullFijado en null para el modelo de Dirección.

Estados previos y notas de llamada

  • El mundo correspondiente al ticket debe estar ready, y el ticket no debe haber caducado ni haber sido utilizado.
  • No pase maxExperienceTimeSec. Dirección no limita el tiempo de experiencia mediante este campo.
  • Una llamada exitosa crea el viaje; reutilizar el mismo ticket devuelve 401011.
  • Cuando creationModel=scriptlist, no llame a instruct; utilice Actualización completa del guion en su lugar.
  • rtcConfig=null significa que actualmente no hay ningún canal de transmisión disponible, y el cliente no puede iniciar la reproducción basándose en él.

Códigos de error

Si la llamada al modelo falla y devuelve un error, consulte Códigos de error de HappyOyster para resolverlo.

Siguientes pasos

Después de entrar en la sala correctamente: