Puntos finales de información de rDWS
URL base para estos endpoints: https://ws.bsn.cloud/rest/v1/
_________________________________________________________________________
GET /info/
Recupera información general sobre el reproductor
Ejemplo de solicitud
GET /rest/v1/info/?destinationType=player&destinationName={{deviceSerial}} HTTP/1.1
Host: ws.bsn.cloud
Authorization: Bearer {{UserAccessToken}}
Accept: application/json, application/vnd.bsn.error+jsonRespuesta
- serie string: El número de serie del reproductor
- modelo string: El número de modelo del dispositivo (p. ej., "XD234")
- tipo de conexión string: La interfaz de red actualmente activa, que puede ser "Ethernet" o "WiFi"
- ethernet object: Un objeto que contiene información sobre la conexión ethernet. Esta propiedad solo estará disponible si hay una conexión ethernet válida en el reproductor. El objeto puede contener las siguientes propiedades:
- IPv4 object: Un objeto que contiene información sobre la configuración IPv4. El objeto puede contener las siguientes propiedades:
- dirección string: La dirección IPv4 asignada
- máscara de red string: La máscara de red IPv4
- familia string: IPv4
- mac string: La dirección MAC de la interfaz de red
- interno bool: verdadero si la interfaz de red es una interfaz loopback o similar a la que no se puede acceder remotamente; de lo contrario falso
- cidr string: La dirección IPv4 asignada con el prefijo de enrutamiento en notación CIDR. Si la máscara de red no es válida, esta propiedad se establece en null.
- IPv6 object: Un objeto que contiene información sobre la configuración IPv6:
- dirección string: La dirección IPv6 asignada
- máscara de red string: La máscara de red IPv6
- familia string: IPv6
- mac string: La dirección MAC de la interfaz de red
- interno bool: verdadero si la interfaz de red es una interfaz loopback o similar a la que no se puede acceder remotamente; de lo contrario falso
- cidr string: La dirección IPv4 asignada con el prefijo de enrutamiento en notación CIDR. Si la máscara de red no es válida, esta propiedad se establece en null.
- bootVersion string: La versión actual del cargador de arranque
- fwVersion string: La versión actual del firmware instalado en el reproductor
- upTime string: La cantidad de tiempo (como una cadena legible para humanos) durante la cual el reproductor ha estado encendido y funcionando correctamente
- upTimeSeconds int: La cantidad de tiempo (en segundos) durante la cual el reproductor ha estado encendido y funcionando correctamente
- extensiones extension[ ]: Un arreglo de objetos Extension que describen las Firmware Extensions actualmente instaladas en el reproductor
- bendiciones blessing[ ]: Un arreglo de objetos Blessing que describen los códecs propietarios que actualmente están autorizados en el reproductor
Ejemplo de respuesta
{
"route": "/v1/info",
"method": "GET",
"data": {
"result": {
"serial": "RE433D006644",
"upTime": "30 minutes",
"upTimeSeconds": 1832,
"model": "XD1035",
"FWVersion": "9.0.97",
"bootVersion": "9.0.85",
"family": "cobra",
"isPlayer": true,
"power": {
"result": {
"battery": "absent",
"source": "AC",
"switch_mode": "hard"
}
},
"poe": {
"result": {
"status": "inactive"
}
},
"extensions": {
"result": {
"extensions": []
}
},
"blessings": {
"result": {
"ac3": false,
"eac3": false
}
},
"networking": {
"result": {
"description": "Test_player",
"name": "XD5-RE433D006644"
}
},
"bvnPipelines": {
"result": {
"pipelines": []
}
},
"bvnComponents": {
"result": {
"components": []
}
},
"hardware_features": {
"hdmi": true,
"component video": false,
"vga": false,
"two channel audio": true,
"ethernet": true,
"usb": true,
"serial port 0": true,
"serial port 1": false,
"gpio connector": true,
"svc button": true,
"reset button": true,
"rtc": true,
"settings rom": false,
"microsd": false,
"sdhc": true,
"six channel audio": false,
"ir blaster": true,
"wifi": false,
"serial port 2": false,
"audio input": false,
"cec": true,
"battery": false,
"portrait lcd": false,
"hdmi input": false,
"digital tuner": false,
"spdif": true,
"audio input loopback": false,
"msata": false,
"ac3": false,
"eac3": false,
"onboard storage": true,
"no 4k decode": false,
"no bluetooth": false,
"no poe": false,
"internal storage only": false,
"disable packet capture": false,
"disable bsn cloud": false,
"brightear": false,
"disable dws": false
},
"api_features": {
"video": true
},
"active_features": {
"legacyDWS": true
},
"connectionType": "eth0",
"ethernet": [
{
"interfaceName": "eth0",
"interfaceType": "Ethernet",
"IPv4": [
{
"address": "123.456.7.890",
"netmask": "255.255.255.0",
"family": "IPv4",
"mac": "90:ac:3f:2a:01:79",
"internal": false,
"cidr": "192.168.1.174/24"
}
],
"IPv6": [
{
"address": "2600:1700:dac0:2060::23",
"netmask": "ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff",
"family": "IPv6",
"mac": "90:ac:3f:2a:01:79",
"internal": false,
"cidr": "2600:1700:dac0:2060::23/128",
"scopeid": 0
},
{
"address": "2600:1700:dac0:2060:92ac:3fff:fe2a:179",
"netmask": "ffff:ffff:ffff:ffff::",
"family": "IPv6",
"mac": "90:ac:3f:2a:01:79",
"internal": false,
"cidr": "2600:1700:dac0:2060:92ac:3fff:fe2a:179/64",
"scopeid": 0
},
{
"address": "fe80::92ac:3fff:fe2a:179",
"netmask": "ffff:ffff:ffff:ffff::",
"family": "IPv6",
"mac": "90:ac:3f:2a:01:79",
"internal": false,
"cidr": "fe80::92ac:3fff:fe2a:179/64",
"scopeid": 2
}
]
}
],
"wireless": [],
"interfaces": [],
"bsnce": true
}
}
}GET /time/
Recupera la fecha y la hora configuradas en el reproductor. El valor de fecha/hora tiene el formato "yyyy-mm-dd hh:mm:ss <timezone>". Esta llamada es idéntica al uso de la API time de Node.js®.
Ejemplo de solicitud
GET /rest/v1/time/?destinationType=player&destinationName={{deviceSerial}} HTTP/1.1
Host: ws.bsn.cloud
Authorization: Bearer {{UserAccessToken}}
Accept: application/json, application/vnd.bsn.error+jsonEjemplo de respuesta
{
"route": "/v1/time",
"method": "GET",
"data": {
"result": {
"time": "2018-10-18 14:34:34 PDT",
"timezone_mins": null,
"timezone_name": "America/Los_Angeles",
"timezone_abbr": "PDT",
"year": 2018,
"month": 10,
"date": 18,
"hour": 14,
"minute": 34,
"second": 34,
"millisecond": 569
}
}
}PUT /time/
Establece la fecha/hora en el reproductor
Cuerpo de la solicitud
- tiempo string: La hora que se establecerá en el reproductor, con el formato "hh:mm:ss <zona horaria>"
- fecha string: La fecha que se establecerá en el reproductor, con el formato "aaaa-mm-dd"
- applyTimezone bool: Una marca que especifica si la fecha y la hora deben aplicarse utilizando la zona horaria configurada en el reproductor (verdadero) o la zona horaria UTC (falso)
Ejemplo de solicitud
PUT /rest/v1/time/?destinationType=player&destinationName={{deviceSerial}} HTTP/1.1
Host: ws.bsn.cloud
Authorization: Bearer {{UserAccessToken}}
Accept: application/json, application/vnd.bsn.error+json
Content-Type: application/json
Content-Length: 117Este es el cuerpo de la solicitud de ejemplo:
{
"data": {
"time": "22:00:00",
"date": "2023-11-07",
"applyTimezone": true
}
}Ejemplo de respuesta
Una respuesta correcta tendría un código de estado 200 con el siguiente cuerpo:
{
"data": {
"result": true
}
}GET /health/
Recupera el estado actual del reproductor. Actualmente, este endpoint solo se utiliza para determinar si un reproductor puede responder a una solicitud de WebSockets; no puede determinar el estado de error de un reproductor.
Ejemplo de solicitud
GET /rest/v1/health/?destinationType=player&destinationName={{deviceSerial}} HTTP/1.1
Host: ws.bsn.cloud
Authorization: Bearer {{UserAccessToken}}
Accept: application/json, application/vnd.bsn.error+jsonCuerpo de la respuesta
- estado string: El estado del reproductor. El único valor posible es "active".
- statusTime string: La fecha y la hora en que el reproductor respondió a la solicitud de estado. La fecha/hora tiene el formato "yyyy-mm-dd hh:mm:ss <timezone>".
Ejemplo de respuesta
{
"route": "/v1/health",
"method": "GET",
"data": {
"result": {
"status": "active",
"statusTime": "2024-01-30 07:38:05 PST"
}
}
}