get_messages

Para obtener mensajes del cargador de mensajes, utilice el método messages/get_messages. Antes, cargue los mensajes en la sesión con messages/load_interval.

Endpoint

Copied!
svc=messages/get_messages&params={
  "indexFrom": <uint>,
  "indexTo": <uint>,
  "timeFrom": <uint>,
  "timeTo": <uint>,
  "filter": "<text>",
  "flags": <uint>,
  "flagsMask": <uint>,
  "loadCount": <uint>
}

Parámetros

Los parámetros son opcionales.

Parámetro Descripción
indexFrom Índice del primer mensaje solicitado. El valor predeterminado es 0.
indexTo Índice que sigue al último mensaje solicitado: el mensaje con este índice no se devuelve. Por ejemplo, "indexFrom":8,"indexTo":9 devuelve un mensaje con el índice 8. Si el valor es mayor que la cantidad de mensajes cargados, se devuelven los mensajes hasta el último. Si indexFrom es igual o mayor que indexTo o que la cantidad de mensajes cargados, se devuelve una matriz vacía.
timeFrom Inicio del intervalo.
timeTo Fin del intervalo.
filter Filtro, búsqueda en los parámetros pos y p. Consulte Filtrado de parámetros de mensajes.
flags Máscara que se aplica a los flags del mensaje para excluir mensajes de la respuesta. Consulte Exclusión de mensajes por flags. El valor predeterminado es 0.
flagsMask Valor que se compara con el resultado de aplicar flags a los flags del mensaje. Consulte Exclusión de mensajes por flags. El valor predeterminado es 0.
loadCount Cantidad de mensajes a devolver (0xffffffff significa todos los encontrados).

La lógica del método está ampliada: puede usar tanto la lógica anterior de indexFrom/indexTo como la nueva:

Lógica Descripción
timeFrom/timeTo Determinan la hora de inicio y fin de los mensajes.
timeFrom/loadCount Determinan la hora de inicio de los mensajes. El método devuelve los primeros loadCount mensajes a partir de timeFrom.
timeTo/loadCount Determinan la hora de fin de los mensajes. El método devuelve los últimos loadCount mensajes hasta timeTo inclusive.

Exclusión de mensajes por flags

En este método, los parámetros flags y flagsMask funcionan de forma distinta que en messages/load_interval: excluyen mensajes de la respuesta en lugar de seleccionarlos. Un mensaje no se devuelve si flags no es 0 y el resultado de la operación AND bit a bit entre los flags del mensaje (f) y flags es igual a flagsMask. Si flags es 0, no se excluye ningún mensaje.

flags flagsMask Mensajes excluidos
0xFF00 0x0000 Mensajes de datos.
0xFF00 0x0600 Eventos.
0xFF00 0x4000 Mensajes de activación de notificaciones.

Para ver los flags de los mensajes, consulte Mensajes.

Filtrado de parámetros de mensajes

La opción filter se puede usar con cualquier lógica. La búsqueda está disponible en los parámetros pos y p. El filtro no afecta a los demás campos del mensaje (por ejemplo, t, f, tp, i, o): siempre se devuelven. Si ningún parámetro del objeto pos coincide con el filtro, pos se devuelve como un objeto vacío.

Ejemplo de respuesta (sin filtrado):

Copied!
[
    {
	"t": 1426233861,
	"f": 7,
	"tp": "ud",
	"pos": {
		"y": 53.84541,
		"x": 27.4470783333,
		"z": 0,
		"s": 25,
		"c": 285,
		"sc": 255
		},
	"i": 0,
	"o": 0,
	"p": {
		"adc1": 0,
		"pre2": 123,
		"param": 24,
		"param5": 43
	}
    }
]

Ejemplo de filtro:

Copied!
"filter":"pos.x,p.pre*,p.param?"

Respuesta filtrada:

Copied!
[
       {
		"t": 1426233861,
		"f": 7,
		"tp": "ud",
		"pos": {
			"x": 27.4470783333
			},
		"i": 0,
		"o": 0,
		"p": {
			"pre2": 123,
			"param5": 43
		}
	}
]

Después del filtrado vemos el valor de pos.x, los valores de los parámetros del objeto p que comienzan con pre y los valores de los parámetros del objeto p que comienzan con param y tienen un símbolo más al final (por ejemplo, param1 es válido, pero param no es válido para la búsqueda).
La cantidad de parámetros definidos, separados por coma, es ilimitada. El asterisco (*) se usa como comodín para 0 o más símbolos, y el signo de interrogación (?) como comodín para un símbolo.

Respuesta

Copied!
[	/* matriz de mensajes */
	{ ... },	/* mensaje */
	{ ... }		/* mensaje */
]

Para ver los formatos de mensajes, consulte Mensajes.

Códigos de error

Código de error Descripción
4 Parámetros de entrada no válidos (no se especificó ninguno de los pares de parámetros) o no hay mensajes cargados en la sesión.

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