Puntos finales de Remoteview de rDWS
Estas APIs se exponen en el servidor WebSocket pero son un conjunto independiente de APIs. Con Remoteview, puede controlar el reproductor de forma remota a través del canal WebSocket. Esta es una ruta entre cada reproductor configurado y la red BSN.
Para usar estas APIs, debe haber confirmado el acceso a un servidor de señalización WebRTC y el acceso a ese servidor mediante un navegador para que pueda usar los endpoints URL necesarios. También debe estar autenticado con el servidor BSN necesario y el reproductor debe estar registrado con esa misma red.
El servidor web debe proporcionar su contenido a través de una conexión HTTPS (esto forma parte de la especificación WebRTC). Si no tiene acceso a dicho servicio, puede usar un proxy para un servidor local (que no sea HTTPS) mediante un servicio remoto. Este servicio no forma parte de BSN.Cloud.
Establecimiento de una conexión de reproductor Remoteview
- Obtenga una accessURL para un servicio de rendezvous que se utilizará con Remoteview.
- Agregue la accessURL a la configuración del reproductor en BSN.Cloud:
- PUT /remoteview/config
- Confirme la configuración:
- Punto de conexión GET /remoteview/config.
- Inicie una sesión:
- POST /remoteview/{:source}/view
- Vaya a un navegador Chrome e introduzca la dirección de reenvío de rendezvous y agregue webrtc_client.html al final de la dirección (por ejemplo: 7a24dceefaa4.ngrok.io/webrtc_client.html)
- Introduzca el número de serie del reproductor que desea visualizar.
- Asegúrese de que todo esté funcionando. El siguiente comando debería devolver un id de sesión:
- GET /remoteview/{:source}/view
- Elimine una sesión:
- ELIMINAR /remoteview/{:source}/view/{:id}
GET /remoteview/config/
Use el endpoint PUT para configurar el reproductor con una URL de acceso. Luego puede usar este endpoint para comprobar que la configuración es correcta.
______________________________________________________________
Cuerpo de respuesta exitosa
200: Esto devolverá la URL de acceso
Ejemplo
{“accessURL”: “http://test-server-url/”}Respuesta de error
400: La solicitud está malformada y, por lo tanto, no es válida
401: El token de acceso no es válido o no se especificó
5XX: Cualquier código 500 es un error interno del servidor
PUT /remoteview/config/
Configura el reproductor con la URL de acceso
Cuerpo de la solicitud
- accessURL string: La URL del servidor de vista remota
______________________________________________________________
Ejemplo de solicitud
{"data": {“accessURL”: “http://test-server-url/”}}______________________________________________________________
Cuerpo de respuesta exitosa
200: Esto devuelve la URL de acceso, el mismo valor que pasó en el cuerpo de la solicitud al reproductor
Respuesta de error
400: La solicitud o el cuerpo de la solicitud están malformados y, por lo tanto, no son válidos
401: El token de acceso no es válido o no se especificó
5XX: Cualquier código 500 es un error interno del servidor
GET /remoteview/{:source}/view/
Devuelve la información sobre todas las sesiones activas de vista remota.
Cuerpo de la solicitud
- fuente string: Este valor siempre será "escritorio"
______________________________________________________________
Cuerpo de la respuesta exitosa
200: Devuelve un array de objetos de sesión. Cada objeto contiene los siguientes parámetros:
- identificación string: El id de la sesión
- mediaSource string: El valor siempre es "escritorio"
- disponible bool: Este valor siempre es verdadero cuando la sesión está activa.
- visualización bool: Esto indica que la sesión está activa. El valor siempre será verdadero.
Ejemplo
{
id: "9e61ac20-2014-11ee-a14d-73a9c31db7cd",
mediaSource: "desktop",
available: true,
viewing: true
}Respuesta de error
400: La solicitud está malformada y, por lo tanto, no es válida
401: El token de acceso no es válido o no se especificó
5XX: Cualquier código 500 es un error interno del servidor
GET /remoteview/{:source}/view/:id/
Devuelve información sobre la sesión de vista remota especificada usando su id de sesión
Cuerpo de la solicitud
- fuente string: Este valor siempre será "escritorio"
- identificación string: El identificador único de la sesión
______________________________________________________________
Cuerpo de la respuesta exitosa
200: Devuelve el siguiente objeto de sesión especificado:
- identificación string: El id de la sesión
- mediaSource string: El valor siempre es "escritorio"
- disponible bool: Este valor siempre es verdadero cuando la sesión está activa.
- visualización bool: Esto indica que la sesión está activa. El valor siempre será verdadero.
Ejemplo
{
id: "9e61ac20-2014-11ee-a14d-73a9c31db7cd",
mediaSource: "desktop",
available: true,
viewing: true
}Respuesta de error
400: La solicitud está malformada y, por lo tanto, no es válida
401: El token de acceso no es válido o no se especificó
404: No se encontró el id de sesión especificado
5XX: Cualquier código 500 es un error interno del servidor
POST /remoteview/{:source}/view/
Inicia una nueva sesión y devuelve un id para la sesión (en este punto, el servidor de señalización se ha inicializado y ha realizado una conexión WebSocket con el reproductor)
Cuerpo de la solicitud
- fuente string: Este valor siempre será "escritorio"
______________________________________________________________
Cuerpo de la respuesta exitosa
200: Una respuesta exitosa devuelve el id de sesión.
Ejemplo
{sessionID: "9e61ac20-2014-11ee-a14d-73a9c31db7cd"}Respuesta de error
400: La solicitud o el cuerpo de la solicitud tienen un formato incorrecto y, por lo tanto, no son válidos
401: El token de acceso no es válido o no se especificó
5XX: Cualquier código 500 es un error interno del servidor
DELETE /remoteview/{:source}/view/:id/
Detiene la sesión de vista remota especificada usando su id de sesión
Cuerpo de la solicitud
- fuente string: Este valor siempre será "escritorio"
- identificación string: El identificador único de la sesión que desea detener
______________________________________________________________
Cuerpo de la respuesta exitosa
200: La sesión especificada se detuvo
Ejemplo
{ stopped : true }Respuesta de error
400: La solicitud tiene un formato incorrecto y, por lo tanto, no es válida
401: El token de acceso no es válido o no se especificó
404: No se encontró el id de sesión especificado
5XX: Cualquier código 500 es un error interno del servidor