exec_cmd

Para enviar un comando a una unidad, utilice el método unit/exec_cmd.

Endpoint

Copied!
svc=unit/exec_cmd&params={
  "itemId": <long>,
  "commandName": "<text>",
  "linkType": "<text>",
  "param": "<text>",
  "timeout": <uint>,
  "flags": <uint>
}

Parámetros

Los parámetros obligatorios están marcados con un asterisco (*).

Parámetro Descripción
itemId* ID de la unidad.
commandName* Nombre del comando.
linkType* Tipo de enlace (ver unit/update_command_definition). Si el tipo de enlace está especificado en las propiedades del comando, el comando se envía por ese tipo de enlace y el valor de este parámetro se ignora. Si el tipo de enlace está vacío tanto en la solicitud como en las propiedades del comando, el tipo de enlace se selecciona automáticamente entre aquellos por los que el comando está disponible en ese momento.
param* Parámetros del comando. Si el comando no tiene parámetros, especifique una cadena vacía. Si los parámetros están especificados en las propiedades del comando, se utilizan estos y el valor de este parámetro se ignora.
timeout* Tiempo durante el cual el comando puede permanecer en la cola de comandos, en segundos.
flags Flags para seleccionar el número de teléfono por el que se ejecuta el comando:
  • 0: utilizar cualquiera (primero el principal, luego el secundario);
  • 0x1: utilizar el principal;
  • 0x2: utilizar el secundario;
  • 0x10: enviar param en formato JSON.
Si el valor no es 0, sustituye el byte inferior (0x01–0xFF) de los flags especificados en las propiedades del comando, y los demás flags se toman de las propiedades del comando. Si el parámetro no se especifica o es 0, se utilizan los flags de las propiedades del comando.

Respuesta

Si la solicitud se completa correctamente, se devuelve un objeto vacío:

Copied!
{}

Si la solicitud falla, se devuelve un código de error.

Códigos de error

Código de error Descripción
4 Parámetros de entrada incorrectos, por ejemplo, falta uno de los parámetros obligatorios.
5 No se pudo ejecutar el comando. Este error se devuelve en los siguientes casos:
  • la unidad no tiene ningún comando con el nombre especificado;
  • el usuario no tiene los derechos de acceso necesarios para ejecutar este comando (establecidos en las propiedades del comando);
  • el comando no está disponible en ese momento por el tipo de enlace utilizado, por ejemplo, el tipo de enlace no existe, la unidad no tiene un número de teléfono válido para enviar SMS o el tipo de dispositivo no admite este comando por este tipo de enlace;
  • no se pudo poner el comando en la cola, por ejemplo, porque la unidad no está conectada por TCP.
7 La unidad no existe o el usuario no tiene el derecho de acceso Enviar comandos a ella.

Si nota un error en el texto, por favor resáltelo y presione Ctrl+Intro.