load_interval

Para cargar mensajes correspondientes a un intervalo determinado, utilice el método messages/load_interval.

Endpoint

Copied!
svc=messages/load_interval&params={
  "itemId": <long>,
  "timeFrom": <uint>,
  "timeTo": <uint>,
  "flags": <uint>,
  "flagsMask": <uint>,
  "loadCount": <uint>,
  "calcSensors": <uint>,
  "measure": <uint>,
  "sensorId": <long>,
  "filter": "<text>"
}

Parámetros

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

Parámetro Descripción
itemId* ID de la unidad o del recurso (depende del tipo de mensaje que quiera obtener).
timeFrom* Inicio del intervalo.
timeTo* Fin del intervalo. Si timeFrom es mayor que timeTo, no se devuelve ningún mensaje y count es 0.
flags* Flags para cargar mensajes. Ver la descripción más abajo.
flagsMask* Máscara. Ver la descripción más abajo.
loadCount* Cantidad de mensajes a devolver, a partir del inicio del intervalo (es decir, primero se devuelven los mensajes más antiguos). 0xffffffff significa todos los encontrados. Si se indica 0, la matriz messages está vacía.
calcSensors Cálculo de los valores de los sensores. Si el valor es distinto de 0, cada mensaje de la respuesta contiene el objeto sensors con los valores de los sensores de la unidad. Las claves de este objeto son los ID de los sensores. En Wialon Local, este parámetro está disponible a partir de la versión 2604.
measure Sistema de medidas para los valores de los sensores: 0 para métrico (SI), 1 para estadounidense, 2 para imperial, 3 para métrico con galones. Se usa solo junto con calcSensors. Si no se especifica, se usa el valor establecido para la sesión actual (los dos bits más bajos del parámetro flags de render/set_locale). En Wialon Local, este parámetro está disponible a partir de la versión 2604.
sensorId ID del sensor. Se usa solo junto con calcSensors. Si se especifica, el objeto sensors contiene solo el valor de este sensor. Si no se especifica o es 0, se calculan los valores de todos los sensores. En Wialon Local, este parámetro está disponible a partir de la versión 2604.
filter Filtro para los parámetros pos y p de los mensajes: lista de máscaras separadas por comas, por ejemplo, pos.x,p.pre*. Solo se devuelven los parámetros que coinciden. Para obtener más información, consulte messages/get_messages.

Ejemplos de uso de máscaras y flags

Máscara Flag Resultado
0xFF00 0x0000 Todos los mensajes de datos.
0xFF10 0x0010 Mensajes de datos que contienen el bit de alarma (0x10).
0xFFF0 0x0010 Mensajes de datos que contienen el bit de alarma (0x10), pero no contienen información sobre el código del conductor (0x20).
0xFFF2 0x0022 Mensajes de datos que contienen información sobre el código del conductor (0x20) e información de datos de entrada (0x02), pero no contienen el bit de alarma (0x10).
0xFF01 0x0601 Eventos considerados infracciones.
0xFF00 0x4000 Mensajes de activación de notificación.
0xFF00 0x5000 Asuntos. Para obtener más información, consulte Asunto.

Respuesta

Si la solicitud se completa correctamente, la respuesta es la siguiente:

Copied!
{
  "count": <uint>,  /* cantidad de mensajes encontrados en el intervalo; no depende de loadCount */
  "messages": [     /* matriz de mensajes */
    {
      ...
    }
  ]
}

Para ver los formatos de mensajes, las máscaras y los flags, consulte Mensajes.

Si la solicitud no se completa correctamente, se devuelve un código de error.

Códigos de error

Código de error Descripción
4 Parámetros de entrada incorrectos: falta un parámetro obligatorio o su tipo es incorrecto (por ejemplo, timeFrom es negativo).
6 Error interno: no se pudieron obtener los mensajes del intervalo o los datos de la sesión necesarios para darles formato.
7 El elemento no existe o no almacena mensajes, o el usuario no tiene el derecho de acceso Solicitar informes y mensajes a este elemento.
1003 El encabezado de la solicitud Accept-Encoding no contiene gzip.
1004 Se alcanzó el límite de mensajes cargados (LIMIT msgs_count). Consulte Códigos de error. En Wialon Local, este error se devuelve a partir de la versión 2604.

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