Mensajes
Esta página describe los formatos de todos los tipos de mensajes. Puede solicitar mensajes de un tipo específico utilizando flags.
Para saber cómo indicar los flags en las solicitudes, consulte Formato de datos.
Cada mensaje también contiene el campo tns (<long>): la hora del mensaje en nanosegundos (UTC). En Wialon Local, el campo tns está disponible a partir de la versión 2604.
Tipos de mensajes
Los siguientes tipos de mensajes están disponibles:
| Flag en HEX | Flag en DEC | Descripción |
|---|---|---|
| 0x0000 | 0 | Mensaje de datos |
| 0x0100 | 256 | SMS |
| 0x0200 | 512 | Comando |
| 0x0300 | 768 | Notificación en línea |
| 0x0400 | 1024 | Historial de usuario |
| 0x0500 | 1280 | Mensaje de facturación |
| 0x0600 | 1536 | Evento |
| 0x0700 | 1792 | Cultivo de parcela |
| 0x0800 | 2048 | Registro de servicio WDC |
| 0x0900 | 2304 | SMS al conductor y del conductor |
| 0x1000 | 4096 | Registro de historial |
| 0x2000 | 8192 | Uso de vídeo |
| 0x4000 | 16384 | Mensaje de activación de notificación |
| 0x5000 | 20480 | Asunto |
Para eliminar un mensaje, utilice el método messages/delete_message. Solo puede eliminar los mensajes de una unidad. El derecho de acceso a la unidad que necesita depende del flag del mensaje f. Las condiciones se comprueban en el siguiente orden:
| Condición | Tipos de mensajes | Derecho de acceso HEX (DEC) |
|---|---|---|
f & 0x0600 es igual a 0x0600 |
Eventos, registros de historial de una unidad (0x1FE12) |
Administrar eventos 0x2000000 (33554432) |
f & 0x1000 es igual a 0x1000 |
Asuntos | Gestionar registros del objeto 0x800 (2048) |
| Cualquier otro valor | Mensajes de datos, SMS, comandos y otros tipos de mensajes | Eliminar mensajes 0x800000 (8388608) |
No puede eliminar el último mensaje ni la última posición de una unidad. En este caso, se devuelve el error 4.
La eliminación de un asunto no se registra en el historial de la unidad.
Para obtener más información sobre los flags ACL, consulte la sección Flags de acceso.
Todos los tipos de mensajes, excepto los asuntos, contienen el parámetro rt, que almacena la hora en que el servidor registró el mensaje (UTC). Se completa en los mensajes que provienen de una unidad, como los mensajes de datos y los resultados de comandos. También se completa en los eventos. En los registros de historial y los mensajes de activación de notificación, rt es 0.
Mensaje de datos
El flag de los mensajes de datos es 0x0000 (0).
{
"t": <uint>, /* Hora del mensaje (UTC) */
"f": <uint>, /* Flags (ver abajo) */
"tp": "ud", /* Tipo de mensaje ('ud' denota un mensaje de datos) */
"pos": { /* Ubicación. null si el mensaje no contiene datos de ubicación */
"y": <double>, /* Latitud */
"x": <double>, /* Longitud */
"z": <int>, /* Altitud */
"s": <uint>, /* Velocidad */
"c": <uint>, /* Rumbo */
"sc": <ubyte> /* Cantidad de satélites */
},
"i": <uint>, /* Datos de entrada. Presente solo si el flag 0x02 está establecido */
"o": <uint>, /* Datos de salida. Presente solo si el flag 0x04 está establecido */
"dr": <text>, /* Código del conductor. Presente solo si el flag 0x20 está establecido */
"p": { /* Parámetros */
<text>: <double>
...
},
"sensors": { /* Presente solo cuando se utiliza el parámetro calcSensors */
"<sensor_id>": {
"value": <double|text>, /* Valor bruto del sensor */
"format": {
"value": <text> /* Valor del sensor con formato y unidades */
}
}
},
"lc": <int>, /* Suma de verificación del mensaje LBS */
"rt": <uint> /* Hora de registro del mensaje (UTC) */
}
El objeto sensors está presente solo si la solicitud contiene el parámetro calcSensors con un valor distinto de 0. Este parámetro lo aceptan los métodos messages/load_interval y render/get_messages.
Los valores de los sensores se calculan únicamente a partir de los mensajes de datos. En los mensajes de los demás tipos, las fórmulas de los sensores no reciben datos, por lo que un sensor numérico devuelve -348201.3876 y un sensor de texto devuelve la cadena "---".
Flags de mensaje de datos:
| Valor HEX | Valor DEC | Descripción |
|---|---|---|
| 0x01 | 1 | Los datos de ubicación están disponibles. |
| 0x02 | 2 | La información sobre datos de entrada está disponible. |
| 0x04 | 4 | La información sobre datos de salida está disponible. |
| 0x10 | 16 | El mensaje contiene un bit de alarma. |
| 0x20 | 32 | El mensaje contiene información sobre el código del conductor en el parámetro avl_driver. |
| 0x20000 | 131072 | El mensaje fue corregido por LBS. |
| 0x40000 | 262144 | El mensaje se registró durante un viaje privado, por lo que sus datos de ubicación no están disponibles. |
SMS
El flag de los mensajes SMS es 0x0100 (256).
{
"t": <uint>, /* Hora del mensaje (UTC) */
"f": 256, /* Flags: 256 (0x0100) denota un mensaje SMS */
"tp": "us", /* Tipo de mensaje ('us' denota un mensaje SMS) */
"st": <text>, /* Texto del mensaje */
"mp": <text>, /* Número de teléfono del módem */
"rt": <uint>, /* Hora de registro del mensaje (UTC) */
"p": {} /* Parámetros */
}
Comando
El flag de los comandos es 0x0200 (512).
{
"t": <uint>, /* Hora del mensaje (UTC) */
"f": 512, /* Flags: 512 (0x0200) denota un comando */
"tp": "ucr", /* Tipo de mensaje ('ucr' denota un comando) */
"ca": <text>, /* Nombre del comando */
"cn": <text>, /* Tipo de comando */
"cp": <text>, /* Parámetros del comando */
"ui": <long>, /* ID de usuario */
"ln": <text>, /* Nombre del enlace */
"lt": <text>, /* Tipo de enlace */
"et": <uint>, /* Hora de ejecución */
"rt": <uint>, /* Hora de registro del mensaje (UTC) */
"p": {} /* Parámetros */
}
Los tipos de enlace se describen en la página update_command_definition.
Evento
El flag de los eventos es 0x0600 (1536).
{
"t": <uint>, /* Hora del mensaje (UTC) */
"f": <uint>, /* Flags (ver a continuación) */
"tp": "evt", /* Tipo de mensaje ('evt' denota un evento) */
"et": <text>, /* Texto del evento */
"x": <double>, /* Longitud. 0 si el evento no tiene posición */
"y": <double>, /* Latitud. 0 si el evento no tiene posición */
"rt": <uint>, /* Hora de registro del mensaje (UTC) */
"p": { /* Parámetros */
"evt_name": <text>, /* Nombre del evento */
"evt_sub_type": <uint>, /* Subtipo del evento (ver a continuación) */
"evt_reg_type": <uint>, /* Tipo de registro (ver a continuación) */
"executed_branch": <text>, /* Condiciones que se cumplieron, unidas por AND */
...
}
}
Flags de eventos:
| Valor HEX | Valor DEC | Descripción |
|---|---|---|
| 0x1 | 1 | Infracción. |
| 0x2 | 2 | Servicio de mantenimiento o llenado de combustible. |
| 0x4 | 4 | Progreso de ruta. |
| 0x10 | 16 | Servicio de mantenimiento. Este flag se establece además de 0x2. |
| 0x20 | 32 | Llenado de combustible. Este flag se establece además de 0x2. |
Si f es 0, el evento es un evento simple.
Los parámetros evt_name, evt_sub_type y evt_reg_type están presentes en la mayoría de los eventos. No están presentes en los eventos registrados por el método unit/registry_insurance_event ni en los eventos que registra el método unit/update_traffic_counter al reiniciar el contador de tráfico.
El parámetro executed_branch solo está presente en los eventos registrados por notificaciones, por el control de rutas y por los métodos unit/registry_maintenance_event, unit/registry_fuel_filling_event y unit/registry_charge_event. Los eventos registrados por los métodos unit/registry_status_event y unit/registry_custom_event no lo contienen. El parámetro executed_branch no está disponible en Wialon Local.
Los demás parámetros dependen de lo que registró el evento.
| Registrado por | Parámetros adicionales |
|---|---|
| Notificación | avl_trigger_type, expression |
| Estado de la unidad | ui_text |
| Control de rutas | counter, flags, rt_name, rt_round, rt_code, rt_index, rt_pt_name, rt_zone, y rt_pt_tm con rt_pt_tmd para una llegada o una salida, o rt_pt_tm_i, rt_pt_tmd_i, rt_pt_tm_o y rt_pt_tmd_o para un punto de control omitido |
| Mantenimiento | comment, cost, duration (en segundos), eh (en segundos), mileage, place |
Para conocer los valores de evt_sub_type, consulte Subtipos de eventos y asuntos. Para conocer los valores de evt_reg_type, consulte Tipos de registro de eventos y asuntos.
En los eventos registrados antes de que los asuntos se separaran de los eventos, los parámetros
evt_name,evt_sub_typeyevt_reg_typese llamantask_evt_name,task_sub_typeytask_reg_type. Para obtener más información, consulte Tasks no longer tied to registered events.El parámetro
executed_branchno está presente en los eventos registrados antes de la actualización del sistema de notificaciones. Para obtener más información, consulte Notification system redesign.
Notificación en línea
El flag de las notificaciones en línea es 0x0300 (768).
Una notificación en línea se crea mediante la acción Mostrar notificación en línea en una ventana emergente. A diferencia de un mensaje de activación de notificación, no se almacena en el servidor y se entrega únicamente a la sesión como un evento.
Para recibir notificaciones en línea, suscríbase al recurso con el flag de mensajes 0x00000020 (32) mediante core/update_data_flags y lea los eventos con avl_evts. El evento proviene del recurso, no de la unidad.
{
"t": <uint>, /* Hora del mensaje (UTC) */
"f": <uint>, /* Flags (ver a continuación) */
"tp": "unm", /* Tipo de mensaje */
"name": <text>, /* Nombre de la notificación */
"txt": <text>, /* Texto de la notificación */
"color": <text>, /* Color de la notificación en notación HTML, por ejemplo, #ff9a05 */
"url": <text>, /* Dirección URL del sonido de la notificación */
"unit": <long>, /* ID de la unidad para la cual se activó la notificación */
"blink": <uint>, /* Parpadeo del minimapa al activarse: 1 si está habilitado, 0 si está deshabilitado */
"x": <double>, /* Longitud */
"y": <double>, /* Latitud */
"expression": <text>, /* Condiciones de la notificación, unidas por AND y OR, por ejemplo, speed AND geozone */
"executed_branch": <text>, /* Condiciones que se cumplieron, unidas por AND. Una parte de expression */
"nid": <long>, /* ID de la notificación */
"rt": <uint>, /* Hora de registro del mensaje (UTC) */
"p": {} /* Parámetros */
}
A diferencia de otros tipos de mensajes, una notificación en línea almacena sus parámetros en la raíz del objeto y el objeto p siempre está vacío.
Todos los parámetros están siempre presentes en el mensaje. Si un valor no está definido, un parámetro de texto está vacío y un número es 0. Si el mensaje que activó la notificación no tiene coordenadas, tanto x como y son 0.
El valor de f siempre es 0x380 (896): 0x0300 (768) para el tipo de mensaje y 0x80 (128) para un mensaje que no se almacena en el servidor.
Para obtener la configuración completa de la notificación, indique nid en el método resource/get_notification_data.
Los métodos messages/load_interval y messages/load_last nunca devuelven mensajes de este tipo. Para obtener los registros almacenados de las activaciones de notificaciones de un período de tiempo, utilice el flag
0x4000(16384) descrito en Mensaje de activación de notificación.
Historial de usuario
El flag de los registros de historial de usuario es 0x0400 (1024). Estos registros almacenan el historial de inicios y cierres de sesión de un usuario. Pertenecen a un usuario, no a una unidad ni a un recurso.
{
"t": <uint>, /* Hora del mensaje (UTC) */
"f": 1024, /* Flags: 1024 denota un registro de historial de usuario */
"tp": "xx", /* Tipo de mensaje */
"rt": <uint>, /* Hora de registro del mensaje (UTC) */
"p": { /* Parámetros */
"type": <text>, /* Tipo de registro (ver a continuación) */
"host": <text>, /* Host desde el cual se conectó el usuario */
"service": <text>, /* Servicio donde se abrió la sesión */
"app": <text>, /* Aplicación donde se abrió la sesión */
"sid": <text> /* ID de la sesión, 32 caracteres */
}
}
Todos los parámetros están siempre presentes.
Tipos de registro:
| Valor | Descripción |
|---|---|
login |
El usuario inició sesión. |
logout |
El usuario cerró sesión. |
Los parámetros service y app contienen el nombre del servicio o de la aplicación donde se abrió la sesión, por ejemplo, web/hosting.wialon.com para la interfaz web o hst-api.wialon.com para una solicitud a la API. En un registro del tipo login, ambos parámetros contienen siempre el mismo valor. En un registro del tipo logout, proceden de fuentes distintas y pueden diferir.
En un registro del tipo logout, t es la hora de la última actividad en la sesión, no la hora en que la sesión finalizó.
Un registro del tipo
loginno siempre tiene un registro del tipologoutcorrespondiente.
Para obtener estos registros, utilice messages/load_interval o messages/load_last con el ID del usuario en el parámetro
itemId,0x0400(1024) en el parámetroflagsy0xFF00(65280) en el parámetroflagsMask. Se requiere el derecho de acceso al usuario Solicitar informes y mensajes0x200(512).Para recibir registros nuevos como eventos, suscríbase al usuario con el flag de mensajes
0x00000020(32) mediante core/update_data_flags y lea los eventos con avl_evts.
Para obtener los registros de las acciones realizadas con un elemento, utilice el tipo de mensajes Registro de historial.
Mensaje de facturación
El flag de los mensajes de facturación es 0x0500 (1280).
{
"t": <uint>, /* Hora del mensaje (UTC) */
"f": <uint>, /* Flags: 0x1 se establece cuando el mensaje contiene información de pago */
"tp": "xx", /* Tipo de mensaje */
"rt": <uint>, /* Hora de registro del mensaje (UTC) */
"p": {} /* Parámetros */
}
SMS al conductor y del conductor
El flag de los mensajes SMS al conductor y del conductor es 0x0900 (2304). Los mensajes de ambas direcciones tienen este tipo. El flag 0x1 en el parámetro f se establece si el mensaje se envía al conductor y no se establece si el mensaje se recibe del conductor.
{
"t": <uint>, /* Hora del mensaje (UTC) */
"f": <uint>, /* Flags: 0x1 se establece para un mensaje enviado al conductor */
"tp": "xx", /* Tipo de mensaje */
"rt": <uint>, /* Hora de registro del mensaje (UTC) */
"p": { /* Parámetros */
"phone": <text>, /* Número de teléfono del conductor */
"sms_text": <text>, /* Texto del SMS */
"driver_name": <text>, /* Nombre del conductor */
"driver_id": <uint>, /* ID del conductor */
"modem_phone": <text> /* Número de teléfono del módem. Presente solo en los mensajes recibidos del conductor */
}
}
Registro de historial
El flag de los registros de historial es 0x1000 (4096).
{
"t": <uint>, /* Hora del mensaje (UTC) */
"f": <uint>, /* Flags (ver a continuación) */
"tp": "xx", /* Tipo de mensaje */
"rt": <uint>, /* Hora de registro del mensaje (UTC) */
"p": { /* Parámetros */
"user": <text>, /* Nombre del usuario que realizó la acción */
"action": <text>, /* ID de la acción */
"host": <text>, /* Host desde el cual se realizó la acción */
"p1": <text>, /* Parámetro específico de la acción */
"p2": <text>, /* Parámetro específico de la acción */
"p3": <text>, /* Tipo del elemento, por ejemplo, avl_unit */
...
}
}
En la respuesta, el valor de f no depende de la acción. Para las unidades, siempre es 0x1FE12 (130578). Para todos los demás elementos, siempre es 0x1000 (4096).
No utilice 0x1FE12 (130578) en las solicitudes. Para solicitar los registros de historial de cualquier elemento, indique 0x1000 (4096) en el parámetro flags y 0xFF00 (65280) en el parámetro flagsMask.
Los ID de acciones disponibles y sus parámetros (p1, p2) se describen en la página item/add_log_record.
Para obtener el historial de inicios y cierres de sesión de un usuario, utilice el tipo de mensajes Historial de usuario.
Para recibir los registros de historial, se requieren dos derechos de acceso: Solicitar informes y mensajes
0x200(512) para llamar a messages/load_interval o messages/load_last, y Gestionar registros del objeto0x800(2048) al elemento que solicita. Sin el derecho Gestionar registros del objeto, la respuesta no contiene registros de historial y no se devuelve ningún error. Para ver la lista completa de derechos, consulte la sección Flags de acceso.
Uso de vídeo
El flag de los mensajes de uso de vídeo es 0x2000 (8192). Estos mensajes registran el tráfico de vídeo de una unidad.
Los mensajes de uso de vídeo solo están disponibles en Wialon Hosting.
El dispositivo no envía estos mensajes. El servidor recopila los registros del servicio de vídeo y los almacena en el historial de mensajes de la unidad cada 15 minutos, por lo que un mensaje puede aparecer con ese retraso. La hora del mensaje es la hora del registro del tráfico de vídeo, no la hora en que el servidor lo almacenó.
{
"t": <uint>, /* Hora del mensaje (UTC) */
"f": 8192, /* Flags: 8192 denota un mensaje de uso de vídeo */
"tp": "xx", /* Tipo de mensaje */
"rt": <uint>, /* Hora de registro del mensaje (UTC) */
"p": { /* Parámetros */
"cha_n": <uint>, /* Número del canal de la cámara */
"bytes_in": <long>, /* Cantidad de tráfico de vídeo en bytes */
"action": <uint>, /* Operación que consumió el tráfico (ver a continuación) */
"conn_id": <uint>, /* ID de la conexión asignado por el servicio de vídeo */
"hw_id": <long> /* ID del tipo de dispositivo de la unidad */
}
}
Todos los parámetros están siempre presentes.
El parámetro action indica qué operación consumió el tráfico y qué códec utiliza el vídeo:
| Valor | Operación | Códec |
|---|---|---|
| 1 | Visualización de transmisión en directo | H.264 |
| 2 | Visualización de grabación | H.264 |
| 3 | Descarga de vídeo | H.264 |
| 4 | Visualización de transmisión en directo | H.265 |
| 5 | Visualización de grabación | H.265 |
| 6 | Descarga de vídeo | H.265 |
Los valores disponibles dependen del códec compatible con el dispositivo de la unidad.
Varios mensajes pueden tener el mismo conn_id si una misma conexión generó varios registros de tráfico. El servicio de vídeo numera las conexiones con un contador que vuelve a empezar cuando el servicio se reinicia, por lo que no utilice conn_id como clave única.
El parámetro cha_n contiene el número del canal de la cámara que indica el dispositivo. La numeración proviene del protocolo del dispositivo, por lo que puede diferir entre los tipos de dispositivos. Para obtener los nombres de las cámaras configuradas para una unidad, utilice el método unit/get_video_settings.
El parámetro hw_id contiene el mismo valor que la propiedad hw de la unidad, que se describe en Propiedades avanzadas. Para obtener el nombre del tipo de dispositivo según este valor, utilice el método core/get_hw_types.
El sistema suma los valores de bytes_in de una unidad para calcular su consumo de tráfico de vídeo.
Para obtener estos mensajes, utilice messages/load_interval o messages/load_last con el ID de la unidad en el parámetro
itemId,0x2000(8192) en el parámetroflagsy0xFF00(65280) en el parámetroflagsMask. Se requiere el derecho de acceso a la unidad Solicitar informes y mensajes0x200(512). Los derechos sobre los datos de vídeo no son necesarios.Estos mensajes aparecen solo para las unidades con la videovigilancia habilitada. Para habilitar la facturación de vídeo para una unidad, utilice el método unit/update_video_status.
Mensajes WLN
Los mensajes WLN tienen el siguiente formato:
REG;time;lon;lat;speed;course;double params;int params;text params;long params;boolean params;
Dentro de la sección, los parámetros están separados por comas. Ejemplo:
REG;1466585078;30.4367027283;59.7207145691;1;273;ALT:24.0,adc1:0.0,adc2:25.57,adc3:0.0,adc4:0.0,adc5:0.0,adc6:0.0,fuel1:0.0,fuel2:170.0,fuel3:0.0,odometer:7293607.0,acc:0.0,pwr_int:0.731,pwr_ext:25.751,hdop:1.7;in13:1,,SATS:5,count1:1,count2:0,temp1:0,temp2:23,temp3:0,sats_glonass:0,sats_gps:5;soft_version:"44";;;
Mensaje de activación de notificación
Cuando se activa una notificación, el sistema almacena un mensaje con el flag 0x4000 (16384). Estos mensajes contienen información detallada sobre el evento de activación de la notificación.
Para obtener estos mensajes, utilice messages/load_interval o messages/load_last con 0x4000 (16384) en el parámetro flags y 0xFF00 (65280) en el parámetro flagsMask. No utilice 0x4000 como máscara: también coincide con los asuntos, porque su flag 0x5000 contiene el mismo bit.
{
"t": <uint>, /* Hora de activación (UTC) */
"f": 16384, /* Flags: 16384 denota una activación de notificación */
"tp": "xx", /* Tipo de mensaje */
"rt": <uint>, /* Hora de registro del mensaje (UTC) */
"p": { /* Parámetros */
"name": <text>, /* Nombre de la notificación */
"resource_id": <uint>, /* ID del recurso donde está configurada la notificación */
"trigger_type": <text>, /* Tipo de activación, por ejemplo, speed, geozone o expression */
"actions": <text>, /* Tipos de acciones, separados por comas, por ejemplo, message,event */
"unit_id": <uint>, /* ID de la unidad para la cual se activó la notificación */
"text": <text>, /* Texto del mensaje de la notificación */
"trigger_time": <uint>, /* Hora de activación (UTC) */
"alarm_msg_time": <uint>, /* Hora del mensaje que activó la notificación (UTC). 0 si no hubo tal mensaje */
"notification_id": <uint>, /* ID de la notificación */
"x": <double>, /* Longitud. Presente solo si el mensaje que activó la notificación tiene posición */
"y": <double>, /* Latitud. Presente solo si el mensaje que activó la notificación tiene posición */
"expression": <text>, /* Condiciones de la notificación, unidas por AND y OR, por ejemplo, speed AND geozone. Puede estar vacío */
"executed_branch": <text>, /* Condiciones que se cumplieron, unidas por AND. Una parte de expression */
"account_id": <uint> /* ID de la cuenta del recurso. Ausente si el recurso no tiene cuenta de facturación */
}
}
Los parámetros notification_id, expression y executed_branch no están presentes en los mensajes registrados antes de la actualización del sistema de notificaciones. No están disponibles en Wialon Local. Para conocer los cambios en el sistema de notificaciones, consulte Notification system redesign.
Asunto
El flag de los asuntos es 0x5000 (20480).
En Wialon Local, los mensajes de asuntos están disponibles a partir de la versión 2504.
{
"t": <uint>, /* Hora del mensaje (UTC) */
"f": 20480, /* Flags: 20480 denota un asunto */
"tp": "task", /* Tipo de mensaje */
"task_id": <text>, /* ID del asunto */
"p": { /* Parámetros */
"task_id": <text>, /* ID del asunto */
"task_sub_type": <uint>, /* Subtipo del asunto. Un número o un texto (ver a continuación) */
"task_reg_type": <uint>, /* Tipo de registro (ver a continuación) */
"task_account": <long>, /* ID de la cuenta o del usuario que creó la unidad (ver a continuación) */
"task_status": <uint>, /* Estado del asunto (ver a continuación) */
"task_description": <text>, /* Descripción del asunto */
"task_priority": <uint>, /* Prioridad del asunto (ver a continuación) */
"task_assignee": <long>, /* ID del usuario al que se asigna el asunto. 0 si el asunto no está asignado */
"task_evt_name": <text>, /* Nombre del asunto */
"task_tags": <text>, /* Texto con un objeto JSON que contiene las etiquetas de la notificación que creó el asunto. Vacío para los asuntos creados manualmente */
"task_comments": [ /* Comentarios */
{
"id": <uint>, /* ID del comentario */
"timestamp": <uint>, /* Hora en que se añadió el comentario (UTC) */
"assignee": <long>, /* ID del usuario que añadió el comentario */
"last_edited_by": <long>, /* ID del usuario que editó el comentario por última vez */
"last_edit_time": <uint>, /* Hora de la última edición (UTC) */
"comment": <text> /* Texto del comentario */
}
],
"task_update_time": <uint>, /* Hora de la última actualización (UTC). 0 para un asunto registrado por una notificación y nunca actualizado */
"task_address_x": <double>, /* Longitud. 0 si el asunto no tiene posición */
"task_address_y": <double>, /* Latitud. 0 si el asunto no tiene posición */
"task_done_rejected": <uint>, /* Hora en que el asunto se marcó como hecho o rechazado (UTC). 0 para los demás estados */
"task_params": { /* Parámetros adicionales del asunto. Cada parámetro está presente solo si su valor está definido */
"filled": <double>, /* Cantidad de combustible llenado */
"charged": <double>, /* Cantidad de energía cargada */
"cost": <double>, /* Coste del asunto */
"engine_hours": <double>, /* Horas de motor */
"mileage": <double>, /* Kilometraje */
"duration": <uint> /* Duración en segundos */
}
}
}
A diferencia de otros tipos de mensajes, un mensaje de asunto no tiene el parámetro rt. El método messages/get_task_messages devuelve el mismo objeto p, pero en lugar de tp y task_id devuelve el parámetro item_id con el ID de la unidad.
El parámetro task_account depende de cómo se creó el asunto: para un asunto creado manualmente, contiene el ID de la cuenta a la que pertenece la unidad (la propiedad bact de la unidad) y, para un asunto registrado por una notificación, el ID del usuario que creó la unidad (la propiedad crt). Para obtener más información sobre estas propiedades, consulte Información de facturación.
El parámetro task_tags es un texto, no un objeto. Contiene {} si la notificación no tiene etiquetas y está vacío para los asuntos creados manualmente.
Los comentarios se devuelven en el orden en que se indicaron en la última solicitud unit/update_task. No dé por hecho que están ordenados por id o por timestamp.
Estados de los asuntos:
| Valor | Descripción |
|---|---|
| 1 | Nuevo. |
| 2 | Por hacer. |
| 3 | En progreso. |
| 4 | Pausado. |
| 5 | Rechazado. |
| 6 | Hecho. |
Prioridades de los asuntos:
| Valor | Descripción |
|---|---|
| 1 | Baja. |
| 2 | Media. |
| 3 | Alta. |
Para conocer los valores de task_sub_type y task_reg_type, consulte Subtipos de eventos y asuntos y Tipos de registro de eventos y asuntos.
En las respuestas de messages/get_task_messages y en los eventos de avl_evts, los valores filled y mileage se expresan en el sistema de medidas de la unidad, que se define en su propiedad mu. Para obtener más información, consulte Propiedades básicas. En las respuestas de messages/load_interval y messages/load_last, estos valores siempre se expresan en el sistema métrico (SI): litros y kilómetros.
Los asuntos se crean mediante el método unit/create_task y mediante la acción Crear un asunto de una notificación. Para cambiar el estado, la prioridad, el responsable o los comentarios de un asunto, utilice el método unit/update_task.
Para obtener los asuntos de una unidad de un período de tiempo, utilice el método messages/get_task_messages. Para recibir asuntos nuevos como eventos, suscríbase a la unidad con el flag de asuntos
0x01000000(16777216) mediante core/update_data_flags y lea los eventos con avl_evts.En ambos casos, necesita los derechos de acceso Ver objeto y sus propiedades básicas
0x1(1) y Solicitar informes y mensajes0x200(512) a la unidad, y el servicio Asuntos debe estar habilitado y activo para la cuenta.También puede cargar los asuntos de una unidad con messages/load_interval o messages/load_last. Para ello, indique
0x5000(20480) en el parámetroflagsy0xFF00(65280) en el parámetroflagsMask. Necesita el derecho de acceso Solicitar informes y mensajes0x200(512) a la unidad.
Subtipos de eventos y asuntos
El parámetro evt_sub_type de un Evento y el parámetro task_sub_type de un Asunto tienen el mismo conjunto de valores.
Para los eventos y asuntos registrados por una notificación, el subtipo corresponde al tipo de control de la notificación:
| Valor | Descripción |
|---|---|
| 1 | Velocidad. |
| 2 | Alarma (SOS). |
| 3 | Parámetro en un mensaje. |
| 4 | Pérdida de conexión. |
| 5 | SMS. |
| 6 | Dirección. |
| 7 | Llenado de combustible o recarga de batería. |
| 8 | Progreso de ruta. |
| 9 | Remolque. |
| 10 | Alarma de pasajero. |
| 11 | Geocerca. |
| 12 | Entrada digital. |
| 13 | Valor del sensor. |
| 14 | Inactividad. |
| 15 | Proximidad de unidad. |
| 16 | Exceso de mensajes. |
| 17 | Descarga de combustible. |
| 18 | Conductor. |
| 19 | Actividad de pasajeros. |
| 20 | Mantenimiento. |
| 31 | Estado de dispositivo. |
| 32 | Combinación de varias condiciones. |
Para un evento registrado por una notificación, el tipo de control también está disponible como texto en el parámetro avl_trigger_type.
Para los eventos y asuntos registrados por otras fuentes, el subtipo indica la fuente:
| Valor | Descripción |
|---|---|
| 21 | Personalizado. |
| 22 | Llenado de combustible. |
| 23 | Recarga de batería. |
| 24 | Registro en el historial. |
| 25 | Estado de la unidad. |
| 26 | Trabajo de mantenimiento. |
| 27 | Contabilización del tráfico GPRS. |
| 28 | Contabilización del kilometraje. |
| 29 | Contabilización de las horas de motor. |
| 30 | Progreso de ruta. |
Los valores 22, 23 y 26 se utilizan cuando un llenado de combustible, una recarga de batería o un servicio de mantenimiento se registran directamente, sin una notificación. Cuando el mismo evento se registra mediante una notificación, el subtipo es 7 o 20.
Subtipo del asunto como texto
El parámetro task_sub_type de un asunto puede contener un número o un valor de texto, por lo que debe procesar ambos tipos.
En las cuentas con el sistema de notificaciones actualizado (para obtener más información, consulte Notification system redesign), se devuelve el valor de texto en lugar del número. Para un asunto registrado por una notificación, contiene las condiciones que se cumplieron, unidas por AND, igual que en el parámetro executed_branch de un Evento. Por ejemplo, outage para una notificación de pérdida de conexión, o speed AND driver_unassigned para una notificación con varias condiciones. Para conocer los nombres de las condiciones que se pueden combinar en una misma notificación, consulte Tipos de condiciones admitidas. Las notificaciones con varias condiciones no están disponibles en Wialon Local.
Para los demás asuntos, incluidos los asuntos creados manualmente y los asuntos registrados antes de la actualización del sistema de notificaciones, el valor de texto se forma a partir del subtipo numérico. Si un subtipo numérico abarca varias condiciones, los nombres se unen por OR.
| Valor numérico | Valor de texto |
|---|---|
| 1 | speed OR speeding_gis |
| 2 | alarm |
| 3 | msg_param |
| 4 | outage |
| 5 | sms |
| 6 | address |
| 7 | fuel_filling OR battery_charge |
| 8, 30 | route_control |
| 9 | trailer |
| 10 | tag_alarm |
| 11 | geozone_inside OR geozone_outside |
| 12 | digital_input |
| 13 | sensor_range OR sensor_change |
| 14 | idling |
| 15 | interposition |
| 16 | msgs_counter |
| 17 | fuel_theft |
| 18 | driver |
| 19 | tag |
| 20, 26 | service_intervals |
| 21 | custom |
| 22 | fuel_filling |
| 23 | battery_charge |
| 31 | health_check |
Los subtipos 24, 25, 27, 28 y 29 no tienen valor de texto y siempre se devuelven como números. El subtipo 32 (combinación de varias condiciones) se devuelve como número solo para los asuntos registrados antes de la actualización del sistema de notificaciones.
Esto se aplica solo a los asuntos. El parámetro
evt_sub_typede un Evento siempre es un número.
Tipos de registro de eventos y asuntos
El parámetro evt_reg_type de un evento y el parámetro task_reg_type de un asunto indican cómo se registró el evento o el asunto: 1 para manualmente y 2 para automáticamente.