update_health_check

Para configurar los ajustes de diagnóstico de una unidad, utilice el método unit/update_health_check.

En Wialon Local, este método está disponible a partir de la versión 2504.

Endpoint

Copied!
svc=unit/update_health_check&params={
    "itemId": <long>,
    "settings": <object>
}

Parámetros

La solicitud debe contener los siguientes parámetros:

Parámetro Descripción
itemId ID de la unidad.
settings Objeto con los ajustes de diagnóstico. Consulte Criterios de diagnóstico.

Criterios de diagnóstico

El objeto settings puede contener las siguientes claves. Todas las claves son opcionales. Si omite una clave, se aplican los ajustes predeterminados de este criterio. Las demás claves se ignoran.

Clave Criterio
missing_position_data No hay datos GPS
insufficient_satellite_coverage Cantidad de satélites
low_battery Carga de batería de dispositivo
voltage_out_of_range Nivel de voltaje. Se aplica a todos los sensores de voltaje de la unidad.
max_messages_last_hour Cantidad de mensajes por hora
max_distance_between_messages Distancia entre mensajes. El valor se especifica en metros.
no_data No hay mensajes
stuck_fls Datos de combustible no cambian. Se aplica a todos los sensores de nivel de combustible de la unidad.
ignition_is_off Ignición apagada. Se aplica a todos los sensores de ignición de la unidad.

Para obtener la descripción de cada criterio, consulte Lista de criterios.

Para obtener los ajustes de diagnóstico actuales de una unidad, solicite los datos de la unidad con el flag Propiedades avanzadas 0x00000100 (256). Los ajustes se devuelven en la clave hch.

Cada clave contiene un objeto con los siguientes parámetros:

Parámetro Descripción
period Obligatorio. Período después del cual se registra un incidente para la unidad: 1m, 10m, 1h, 1d, <N>s (número de segundos de 0 a 2592000) o none para desactivar el criterio. En Wialon Local, el formato <N>s está disponible a partir de la versión 2604.
unhealthy_conditions Opcional. Array de condiciones. Cada condición contiene type (less, greater, equal, not_equal o unchanged) y value (double).

Ejemplo de JSON

A continuación se muestra un ejemplo del objeto settings.

Copied!
{
    "low_battery": {
        "period": "1h",
        "unhealthy_conditions": [
            {
                "type": "less",  // less, greater, equal, not_equal, unchanged
                "value": 20.0
            }
        ]
    },
    "max_messages_last_hour": {
        "period": "1m",
        "unhealthy_conditions": [
            {
                "type": "greater",  // less, greater, equal, not_equal, unchanged
                "value": 1000.0
            }
        ]
    },
    "no_data": {
        "period": "1d"
    },
    "missing_position_data": {
        "period": "1m"
    },
    "insufficient_satellite_coverage": {
        "period": "1m",
        "unhealthy_conditions": [
            {
                "type": "less",  // less, greater, equal, not_equal, unchanged
                "value": 4.0
            }
        ]
    },
    "max_distance_between_messages": {
        "period": "1h",
        "unhealthy_conditions": [
            {
                "type": "greater",  // less, greater, equal, not_equal, unchanged
                "value": 100000.0 // m
            }
        ]
    },
    "voltage_out_of_range": {
        "period": "1m",
        "unhealthy_conditions": [
            {
                "type": "less",  // less, greater, equal, not_equal, unchanged
                "value": 12.0
            },
            {
                "type": "greater",  // less, greater, equal, not_equal, unchanged
                "value": 13.0
            }
        ]
    },
    "stuck_fls": {
        "period": "1m",
        "unhealthy_conditions": [
            {
                "type": "unchanged",  // less, greater, equal, not_equal, unchanged
                "value": 0.0  // no se utiliza
            }
        ]
    },
    "ignition_is_off": {
        "period": "1m",
        "unhealthy_conditions": [
            {
                "type": "equal",  // equal, not_equal
                "value": 0.0  // 0.0: apagado, 1.0: encendido
            }
        ]
    }
}

Ejemplo

A continuación se muestra un ejemplo de la solicitud unit/update_health_check.

Copied!
svc=unit/update_health_check&params={
    "itemId": 1583,
    "settings": {
        "low_battery": {
            "period": "1h",
            "unhealthy_conditions": [
                {
                    "type": "less",
                    "value": 20.0
                }
            ]
        },
        "max_messages_last_hour": {
            "period": "1m",
            "unhealthy_conditions": [
                {
                    "type": "greater",
                    "value": 1000.0
                }
            ]
        },
        "no_data": {
            "period": "1d"
        },
        "missing_position_data": {
            "period": "1m"
        },
        "insufficient_satellite_coverage": {
            "period": "1m",
            "unhealthy_conditions": [
                {
                    "type": "less",
                    "value": 4.0
                }
            ]
        },
        "max_distance_between_messages": {
            "period": "1h",
            "unhealthy_conditions": [
                {
                    "type": "greater",
                    "value": 100000.0
                }
            ]
        },
        "voltage_out_of_range": {
            "period": "1m",
            "unhealthy_conditions": [
                {
                    "type": "less",
                    "value": 12.0
                },
                {
                    "type": "greater",
                    "value": 13.0
                }
            ]
        },
        "stuck_fls": {
            "period": "1m",
            "unhealthy_conditions": [
                {
                    "type": "unchanged",
                    "value": 0.0
                }
            ]
        },
        "ignition_is_off": {
            "period": "1m",
            "unhealthy_conditions": [
                {
                    "type": "equal",
                    "value": 0.0
                }
            ]
        }
    }
}

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, o el valor period de un criterio falta o no es válido.
6 Error al actualizar los ajustes de diagnóstico.
7 La unidad no existe, el servicio Unidades: Diagnóstico no está habilitado o el usuario no tiene el derecho de acceso Modificar propiedades no mencionadas a la unidad.

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