cardápio

API D1

API HTTP D1

O tipo de dispositivo é diylight (type=diylight) e a versão da interface da API do dispositivo é 1 (apivers=1).

Interruptor liga/desliga

URL: http://[ip]:[porta]/zeroconf/switch
Formato do valor de retorno: json
Método: postagem HTTP

 { 
    "deviceid": "", 
    "data": {
        "switch": "on" 
    } 
 }
Atributo Tipo Opcional Descrição
trocar Corda Não on: ligar o interruptor, off: desligar o interruptor

Regulável

URL: http://[ip]:[porta]/zeroconf/dimmable
Formato do valor de retorno: json
Método: postagem HTTP

 { 
    "deviceid": "", 
    "data": {
        "switch": "on", 
        "brightness": 30,
        "mode": 0,
        "brightmin": 10, 
        "brightmax": 255
    } 
 }
Atributo Tipo Opcional Descrição
trocar Corda Não O campo “switch” deve estar “on”
brilho Número Não Brilho da luz, [1~100], inteiro positivo
modo Número Sim Modo de dispositivo, [0-255], inteiro positivo
Brightmin Número Sim Brilho mínimo, [0~254], inteiro positivo
Brightmax Número Sim Brilho máximo, [1~255], inteiro positivo

Observação:

  • Para ajustar o brilho da luz, ela deve estar “ligada”, então se enviar uma solicitação da API Dimmble com “switch”: “off”, ela reportará o erro “400” como falha na operação.
  • O parâmetro “modo” é usado no desenvolvimento de APP para definir diferentes modos com brilho específico e sincronizar o conteúdo dos modos do dispositivo ao compartilhar a operação do dispositivo com outras pessoas.
    Por exemplo:
    O APP do desenvolvedor define dois modos (modo 1: brilho=5; modo 2: brilho=50) que o dispositivo pode atingir um brilho específico por meio de botões. O parâmetro “modo” fornece uma maneira de sincronizar o modo do dispositivo para todos os usuários compartilhados.
  • O valor de brightmin deve ser menor que brightmax.

Estado de energia ligada

URL: http://[ip]:[porta]/zeroconf/startup
Formato do valor de retorno: json
Método: postagem HTTP

 { 
    "deviceid": "", 
    "data": {
        "startup": "stay"
    } 
 }
Atributo Tipo Opcional Descrição
comece Corda Não ligado: o dispositivo está ligado quando a alimentação elétrica é recuperada.
desligado: o dispositivo está desligado quando a alimentação elétrica é recuperada.
permanecer: o status do dispositivo permanece o mesmo que o estado antes do corte de energia

Intensidade do sinal WiFi

URL: http://[ip]:[porta]/zeroconf/signal_strength
Formato do valor de retorno: json
Método: postagem HTTP

Corpo da solicitação

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

Objeto vazio, nenhum atributo é necessário.

Corpo de resposta

 { 
    "seq": 2, 
    "error": 0, 
    "data": { 
        "signalStrength": -67 
	}
}
Atributo Tipo Opcional Descrição
força do sinal Número Não A intensidade do sinal WiFi atualmente recebido pelo dispositivo, inteiro negativo, dBm

Configuração de SSID e senha do WiFi

URL: http://[ip]:[porta]/zeroconf/wifi
Formato do valor de retorno: json
Método: postagem HTTP

 { 
    "deviceid": "", 
    "data": {
        "ssid": "eWeLink", 
        "password": "WeLoveIoT"
    } 
 }
Atributo Tipo Opcional Descrição
SSID Corda Não SSID da rede WiFi à qual o dispositivo irá se conectar
senha Corda Não senha da rede WiFi à qual o dispositivo irá se conectar

Desbloqueio de função OTA

URL: http://[ip]:[porta]/zeroconf/ota_unlock
Formato do valor de retorno: json
Método: postagem HTTP

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

Objeto vazio, nenhum atributo é necessário.

Os seguintes códigos de falha são adicionados ao campo de erro do corpo da resposta:
500: A operação falhou e o dispositivo apresenta erros. Por exemplo, erro de ID do dispositivo ou chave de API que não foi autenticado pelo serviço de desbloqueio OTA do fornecedor;
503: A operação falhou e o dispositivo não consegue solicitar o serviço de desbloqueio OTA do fornecedor. Por exemplo, o dispositivo não está conectado ao Wi-Fi, não está conectado à internet, o serviço de desbloqueio OTA do fabricante está inativo, etc.

Novo firmware OTA

URL: http://[ip]:[porta]/zeroconf/ota_flash
Formato do valor de retorno: json
Método: postagem HTTP

 { 
    "deviceid": "", 
    "data": {
        "downloadUrl": "http://192.168.1.184/ota/new_rom.bin", 
        "sha256sum": "3213b2c34cecbb3bb817030c7f025396b658634c0cf9c4435fc0b52ec9644667"
    } 
 }
Atributo Tipo Opcional Descrição
URL de download Corda Não O endereço de download do novo firmware suporta apenas o protocolo HTTP, o servidor HTTP deve suportar o cabeçalho de solicitação Range.
sha256sum Corda Não Soma de verificação SHA256 (hash) do novo firmware, é usado para verificar a integridade do novo firmware baixado

Os seguintes códigos de falha são adicionados ao campo de erro do corpo da resposta:
403: A operação falhou e a função OTA não foi desbloqueada. A interface “3.2.6 Desbloqueio da função OTA” deve ser chamada com sucesso primeiro.
408: A operação falhou e o tempo limite do firmware de pré-download expirou. Você pode tentar chamar esta interface novamente após otimizar o ambiente de rede ou aumentar a velocidade da rede.
413: A operação falhou e o tamanho do corpo da solicitação é muito grande. O tamanho do novo firmware OTA excede o limite de tamanho de firmware permitido pelo dispositivo.
424: A operação falhou e o firmware não pôde ser baixado. O endereço URL está inacessível (endereço IP inacessível, protocolo HTTP inacessível, firmware inexistente, servidor não suporta cabeçalho de solicitação Range, etc.)
471: A operação falhou e a verificação de integridade do firmware falhou. A soma de verificação SHA256 do novo firmware baixado não corresponde ao valor do campo sha256sum do corpo da solicitação. Reiniciar o dispositivo causará problemas de bricking.

Observação:

  • O tamanho máximo do firmware é 508 KB.
  • O modo de leitura flash SPI deve ser DOUT.

Obter informações do dispositivo

URL: http://[ip]:[porta]/zeroconf/info
Formato do valor de retorno: json
Método: postagem HTTP

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

Objeto vazio, nenhum atributo é necessário.

Corpo de resposta

 { 
    "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
	}
 }

Observação:

  • Monitore e analise o registro DNS TXT do dispositivo para obter informações do dispositivo em tempo real.
Anterior
API B02-BL/B05-BL
Próximo
API MINIR3
última modificação: 2025-08-19