Por qué un comando permanece en cola, agota el tiempo, caduca, falla o se rechaza: estados de los comandos, persistencia y caducidad, niveles y permisos, sesiones sin cifrar y límites.
Esta página ayuda cuando un comando enviado desde la página del dispositivo, un control del panel, un símbolo SCADA, una regla, un flujo o la API no hace lo que esperas. Empieza por el historial del comando: abre la pestaña Commands del dispositivo y el comando en History. Su estado y su Progress suelen indicar qué ha ocurrido.
Lee el estado
Estado
Significado
Siguiente paso
Queued
Almacenado, esperando al dispositivo
Consulta «Stays queued» más abajo
Sent
Enviado, aún no confirmado por el dispositivo
Espera; si se mantiene, es posible que el dispositivo no gestione el topic
Delivered
El dispositivo lo ha recibido
Espera la respuesta
Successful
El dispositivo respondió con éxito
Si nada ha cambiado físicamente, revisa el lado del dispositivo
Failed
El dispositivo respondió con un error
Lee la Response
Timed out
No llegó ninguna respuesta a tiempo
El comando puede haberse ejecutado igualmente: «No answer: the outcome is unknown». Revisa el dispositivo antes de volver a enviarlo.
Expired
Caducó antes de poder entregarse
El dispositivo estuvo desconectado más tiempo que Give up after
Cancelled
Alguien lo canceló
Permanece en cola o caduca
Causa
Solución
El dispositivo está desconectado y el comando es persistent
Espera hasta que el dispositivo vuelva, como máximo hasta Give up after (24 horas por defecto, como máximo 7 días)
El dispositivo está desconectado y el comando no es persistente
Falla de inmediato: «The device is offline: without «persistent» the command fails at once.» Envíalo como persistente, o cuando el dispositivo esté en línea.
El dispositivo no se ha suscrito a v1/rpc/req/+ en esta conexión
Los comandos solo se entregan después de esa suscripción. El dispositivo debe suscribirse de nuevo tras cada conexión.
La sesión no está cifrada (MQTT o HTTP sin TLS)
Los comandos viajan solo por sesiones TLS, salvo los listados en Commands allowed without TLS del perfil. Los demás esperan a una sesión TLS o a su caducidad.
El dispositivo está detrás de una pasarela
Los comandos a dispositivos detrás de una pasarela están en desarrollo. Envía los comandos a la pasarela, o a dispositivos que se conecten por sí mismos. Consulta Commands to devices behind a gateway.
Un dispositivo HTTP no consulta
Los dispositivos HTTP esperan comandos con GET /api/v1/rpc (long poll). Solo puede haber una consulta abierta por dispositivo (409). Consulta Device HTTP API.
Se agota el tiempo
Causa
Solución
El dispositivo ejecuta el comando pero no responde en v1/rpc/res/{id}
Haz que responda con el mismo id, o envía el comando como unidireccional
El tiempo de espera de respuesta es demasiado corto
Answer timeout (seconds) va de 1 a 600 (10 por defecto)
Una tarea de larga duración
El dispositivo debe aceptarla de inmediato ("accepted": true, "job_id": …) e informar del resultado más tarde en el atributo de cliente rpc_result
La respuesta llegó después del final
Se muestra como Answered after the end
Un comando puede llegar al dispositivo dos veces. El dispositivo debe recordar los últimos 32 ids de petición durante 10 minutos y no ejecutar nunca uno dos veces. Consulta Sending commands to devices.
Se rechaza antes de enviarse
Mensaje o motivo
Causa
Solución
bad_params
Los parámetros no coinciden con el comando
Rellena todos los parámetros obligatorios dentro de su rango
confirm_required, confirm_text_mismatch
Un comando de alto impacto necesita confirmación, o la frase escrita es incorrecta
Confirma; escribe la frase exactamente
method_refused
El restablecimiento de fábrica, el emparejamiento, olvidar la Wi-Fi y olvidar la nube nunca se envían desde la nube
Hazlos en el dispositivo
rpc_method_reserved
El método pertenece a un módulo propio (por ejemplo, acceso remoto)
Usa ese módulo
rpc_not_supported_by_profile
El perfil usa solo el esquema de topics Legacy compatible, que no transporta comandos
Envía los ajustes como atributos compartidos, o pasa el perfil al esquema actual
device_not_active
El dispositivo está deshabilitado o en cuarentena
Habilítalo o actívalo
payload_too_large
La petición es mayor de lo que acepta el dispositivo (64 KiB por defecto, 4 KiB para dispositivos licenciados)
Envía menos
device_rate_limited
Más de 10 comandos a este dispositivo en un minuto
Espera un minuto
«Too many requests for your plan…»
Más de 600 comandos en la organización en un minuto
Un botón que falta o un error de permisos significan que tu rol o tus grupos no tienen el permiso del nivel. Consulta Groups and permissions.
Desde un panel, una regla o un flujo
Dónde
Causa habitual
Un control del panel
A los controles del panel solo se ofrecen comandos Basic. Un comando que no está en la lista no pertenece al catálogo del perfil o es de un nivel superior. Un control en gris tiene una lectura antigua o desconocida, o no tienes el permiso. Consulta Control cards.
Un control del panel que parece no hacer nada
El control pide confirmación antes de enviar (Ask before running está activado por defecto); el comando se ejecuta solo tras Confirm
Una regla de la tarjeta Rules
History muestra «skipped: device is in Manual» cuando el dispositivo o un elemento superior está en Manual, o un paso de comando fallido. Consulta Manual and auto modes.
Un flujo
Los comandos y ajustes de flujos a un dispositivo están limitados a 30 por minuto por defecto. El comando se busca en el perfil de cada dispositivo; los dispositivos cuyo perfil no lo tiene no reciben nada. Los mensajes tardíos no envían comandos. Consulta Alarm, command and notify blocks.
Un símbolo SCADA
El comando de un símbolo siempre pide confirmación. Consulta Commands on symbols.
Un dispositivo LoRaWAN
Solo downlinks raw (lora.downlink). Los dispositivos Clase A los reciben tras su siguiente uplink. Consulta Sending downlinks.
Usamos cookies necesarias para que el sitio funcione. Con tu permiso, también usamos cookies de analítica y de marketing. Puedes cambiar tu elección en cualquier momento. Política de cookies