events

Esta sección describe métodos para trabajar con eventos, incluyendo la carga del historial de eventos, el monitoreo de actualizaciones de eventos y la obtención de estados actuales de eventos.

Los métodos de la sección events pueden ser utilizados en los siguientes flujos de trabajo.

Obtener eventos pasados

Para obtener eventos de un elemento durante un período especificado:

  1. Utilice events/load para cargar eventos en la sesión.

  2. Utilice events/get para obtener los eventos cargados.

  3. Utilice events/unload antes de cargar eventos para otro período.

Para unidades, los métodos devuelven eventos registrados por detectores de unidades (por ejemplo, trips, ignition, sensors, lls, speedings). Para recursos, devuelven eventos de asignación de conductores registrados por el detector resource_drivers.

Recibir actualizaciones de eventos

Para monitorear eventos de elementos seleccionados en tiempo real, seleccione uno de los dos modos: solicitar las actualizaciones periódicamente o recibirlas a través del canal avl_evts.

En ambos modos, agregue elementos a la sesión y configure los detectores de eventos con events/update_items. Solo para unidades, también puede usar events/update_units, pero para nuevas integraciones utilice events/update_items.

Recibir actualizaciones bajo solicitud

  1. Utilice events/update_items para agregar elementos a la sesión y configurar los detectores de eventos para cada uno de ellos. Deje el parámetro evt_flags en su valor predeterminado 0.
  2. Llame a events/check_updates de forma regular, por ejemplo cada pocos segundos. Cada llamada devuelve solo los cambios desde la llamada anterior. Si no hay cambios, el método devuelve un objeto vacío.

Utilice este modo si su integración no puede mantener una conexión continua con el servidor.

Recibir actualizaciones a través de avl_evts

  1. Utilice core/update_data_flags para especificar qué elementos y qué datos de elementos (propiedades generales, posición, último mensaje, etc.) desea recibir a través de avl_evts. Este método configura el canal de datos pero no suscribe a detectores de eventos.
  2. Utilice events/update_items para configurar los detectores de eventos y establezca el parámetro evt_flags en 0x200. Combínelo con los flags de detalle para controlar el nivel de detalle (por ejemplo, 0x207).
  3. Lea tanto los datos de elementos como las actualizaciones de eventos desde avl_evts. Las actualizaciones de eventos se devuelven en el campo units_update.

En este modo, no llame a events/check_updates. Devuelve una respuesta vacía.

Obtener el estado actual o último del evento

Para obtener el estado actual o el último estado del evento sin cargar eventos en la sesión, use events/get_last.

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