menú

API D1

API HTTP D1

El tipo de dispositivo es diylight (type=diylight) y la versión de la interfaz API del dispositivo es 1 (apivers=1).

Interruptor de encendido/apagado

URL: http://[ip]:[puerto]/zeroconf/switch
Formato del valor de retorno: json
Método: publicación HTTP

 { 
    "deviceid": "", 
    "data": {
        "switch": "on" 
    } 
 }
Atributo Tipo Opcional Descripción
cambiar Cadena No encendido: enciende el interruptor, apagado: apaga el interruptor

Regulable

URL: http://[ip]:[puerto]/zeroconf/dimmable
Formato del valor de retorno: json
Método: publicación HTTP

 { 
    "deviceid": "", 
    "data": {
        "switch": "on", 
        "brightness": 30,
        "mode": 0,
        "brightmin": 10, 
        "brightmax": 255
    } 
 }
Atributo Tipo Opcional Descripción
cambiar Cadena No El campo “interruptor” debe estar “activado”
brillo Número No Brillo de la luz, [1~100], entero positivo
modo Número Modo de dispositivo, [0-255], entero positivo
brightmin Número Brillo mínimo, [0~254], entero positivo
brightmax Número Brillo máximo, [1~255], entero positivo

Nota:

  • Para ajustar el brillo de la luz, la luz debe estar “encendida”, por lo que si envía una solicitud de API de Dimmble con “switch”: “off”, informará el error “400” ya que la operación falló.
  • El parámetro “modo” se utiliza para el desarrollo de aplicaciones para definir diferentes modos con un brillo específico y sincronizar el contenido de modos del dispositivo al compartir la operación del dispositivo con otros.
    Por ejemplo:
    La aplicación del desarrollador define dos modos (modo 1: brillo=5; modo 2: brillo=50) que el dispositivo puede alcanzar un brillo específico mediante botones, el parámetro “modo” proporciona la forma de sincronizar el modo del dispositivo para todos los usuarios compartidos.
  • El valor de brightmin debe ser menor que brightmax.

Estado de encendido

URL: http://[ip]:[puerto]/zeroconf/startup
Formato del valor de retorno: json
Método: publicación HTTP

 { 
    "deviceid": "", 
    "data": {
        "startup": "stay"
    } 
 }
Atributo Tipo Opcional Descripción
puesta en marcha Cadena No encendido: el dispositivo está encendido cuando se recupera el suministro de energía.
apagado: el dispositivo se apaga cuando se recupera el suministro de energía.
Permanecer: el estado del dispositivo se mantiene igual que el estado antes de que se cortara la fuente de alimentación.

Intensidad de la señal WiFi

URL: http://[ip]:[puerto]/zeroconf/signal_strength
Formato del valor de retorno: json
Método: publicación HTTP

Cuerpo de la solicitud

 { 
    "deviceid": "", 
    "data": { } 
 }

Objeto vacío, no se requiere ningún atributo.

Cuerpo de la respuesta

 { 
    "seq": 2, 
    "error": 0, 
    "data": { 
        "signalStrength": -67 
	}
}
Atributo Tipo Opcional Descripción
intensidad de la señal Número No La intensidad de la señal WiFi que recibe actualmente el dispositivo, entero negativo, dBm

Configuración de SSID y contraseña de WiFi

URL: http://[ip]:[puerto]/zeroconf/wifi
Formato del valor de retorno: json
Método: publicación HTTP

 { 
    "deviceid": "", 
    "data": {
        "ssid": "eWeLink", 
        "password": "WeLoveIoT"
    } 
 }
Atributo Tipo Opcional Descripción
SSID Cadena No SSID de la red WiFi a la que se conectará el dispositivo
contraseña Cadena No contraseña de la red WiFi a la que se conectará el dispositivo

Desbloqueo de la función OTA

URL: http://[ip]:[puerto]/zeroconf/ota_unlock
Formato del valor de retorno: json
Método: publicación HTTP

 { 
    "deviceid": "", 
    "data": { } 
 }

Objeto vacío, no se requiere ningún atributo.

Los siguientes códigos de error se agregan al campo de error del cuerpo de la respuesta:
500: La operación falló y el dispositivo presenta errores. Por ejemplo, un error en el ID del dispositivo o en la clave API, que no está autenticado por el servicio de desbloqueo OTA del proveedor.
503: La operación falló y el dispositivo no puede solicitar el servicio de desbloqueo OTA del proveedor. Por ejemplo, el dispositivo no está conectado a Wi-Fi, no está conectado a Internet, el servicio de desbloqueo OTA del fabricante no funciona, etc.

Nuevo firmware OTA

URL: http://[ip]:[puerto]/zeroconf/ota_flash
Formato del valor de retorno: json
Método: publicación HTTP

 { 
    "deviceid": "", 
    "data": {
        "downloadUrl": "http://192.168.1.184/ota/new_rom.bin", 
        "sha256sum": "3213b2c34cecbb3bb817030c7f025396b658634c0cf9c4435fc0b52ec9644667"
    } 
 }
Atributo Tipo Opcional Descripción
URL de descarga Cadena No La dirección de descarga del nuevo firmware, solo admite el protocolo HTTP, el servidor HTTP debe soportar el encabezado de solicitud Range.
suma sha256 Cadena No Suma de comprobación SHA256 (hash) del nuevo firmware, se utiliza para verificar la integridad del nuevo firmware descargado

Los siguientes códigos de error se agregan al campo de error del cuerpo de la respuesta:
403: La operación falló y la función OTA no se desbloqueó. Primero se debe acceder correctamente a la interfaz «3.2.6 Desbloqueo de la función OTA».
408: La operación falló y se agotó el tiempo de espera de la predescarga del firmware. Puede intentar acceder a esta interfaz de nuevo después de optimizar el entorno de red o aumentar la velocidad de la red.
413: La operación falló y el tamaño del cuerpo de la solicitud es demasiado grande. El tamaño del nuevo firmware OTA supera el límite de tamaño de firmware permitido por el dispositivo.
424: La operación falló y no se pudo descargar el firmware. La dirección URL es inaccesible (dirección IP inaccesible, protocolo HTTP inaccesible, firmware inexistente, el servidor no admite el encabezado de solicitud de rango, etc.).
471: La operación falló y la comprobación de integridad del firmware falló. La suma de comprobación SHA256 del nuevo firmware descargado no coincide con el valor del campo "suma SHA256" del cuerpo de la solicitud. Reiniciar el dispositivo provocará un problema de bloqueo.

Nota:

  • El tamaño máximo del firmware es 508 KB.
  • El modo de lectura flash SPI debe ser DOUT.

Obtener información del dispositivo

URL: http://[ip]:[puerto]/zeroconf/info
Formato del valor de retorno: json
Método: publicación HTTP

 { 
    "deviceid": "", 
    "data": { } 
 }

Objeto vacío, no se requiere ningún atributo.

Cuerpo de la respuesta

 { 
    "seq": 2, 
    "error": 0,
    "data": {
        "switch": "off",
        "startup": "off",
        "brightness": 30,
        "mode": 0,
        "brightmin": 10, 
        "brightmax": 255,
        "ssid": "eWeLink",
        "otaUnlock": false,
        "fwVersion": "3.5.0",
        "deviceid": "100000140e",
        "bssid": "ec:17:2f:3d:15:e",
        "signalStrength": -25
	}
 }

Nota:

  • Supervise y analice el registro DNS TXT del dispositivo para obtener la información del dispositivo en tiempo real.
Anterior
API B02-BL/B05-BL
Próximo
API MINIR3
Recientemente modificado: 2025-08-19