upload_tacho_file

El método resource/upload_tacho_file se usa para cargar archivos del tacógrafo en el servidor.

Para cargar un archivo del tacógrafo y obtener el resultado de su análisis, use la firma 1:

Copied!
svc=resource/upload_tacho_file&params={
    "outputFlag": <uint>,
    "eventHash": "<text>"
}

Envíe esta solicitud como una solicitud POST de varias partes (multipart/form-data): una parte contiene los parámetros y la otra, el archivo DDD.

Para vincular el contenido del archivo cargado a un conductor especificado, use la firma 2:

Copied!
svc=resource/upload_tacho_file&params={
    "itemId": <long>,
    "driverCode": "<text>",
    "guid": "<text>",
    "outputFlag": <uint>
}

Parámetros

A continuación se describen los parámetros de la solicitud.

Parámetro Descripción
itemId ID del recurso.
driverCode Código del conductor.
guid Identificador del archivo cargado. Puede obtenerlo del evento que se genera después de una solicitud con la firma 1 (consulte Respuesta).
outputFlag Flag de la respuesta: 1 para obtener el encabezado DDD, 2 para obtener el encabezado y activity. Es obligatorio en ambas firmas.
eventHash Nombre del evento que se genera después de procesar el archivo.

Respuesta

Si una solicitud con la firma 1 se completa con éxito, se devuelve un objeto vacío:

Copied!
{}

El resultado del análisis se entrega como un evento. Para obtenerlo, use el método avl_evts:

Copied!
{
    "tm": <uint>,
    "events": [
        {
            "i": -1,
            "d": {
                "hash": "<text>",                   // Valor del parámetro eventHash.
                "result": {
                    "svc_error": 0,
                    "svc_result": {
                        "guid": "<text>",           // Identificador del archivo cargado.
                        "parseResult": {...}        // Resultado del análisis (ver abajo).
                    }
                }
            }
        }
    ]
}

Si no se puede cargar el archivo, la solicitud devuelve el error 5 y el evento contiene "result": {"svc_error": 5}.

Si no se puede analizar el archivo, la solicitud devuelve el error 4. En este caso, el evento contiene "result": {"svc_error": 4} o no se genera, por lo que también debe comprobar la respuesta a la solicitud.

Si una solicitud con la firma 2 se completa con éxito, la respuesta contiene el resultado del análisis sin la clave guid.

El resultado del análisis tiene el siguiente formato:

Copied!
{
    "an": <text>,                       // Autoridad emisora.
    "c": <text>,                        // País.
    "dc": <text>,                       // Código del conductor, 16 caracteres: el número de tarjeta de 14 caracteres seguido de los índices de sustitución y renovación de la tarjeta.
    "dn": <text>,                       // Nombre del conductor.
    "la": <long>,                       // Fecha de la última actividad.
    "ed": <long>,                       // Fecha de vencimiento.
    "fa": <long>,                       // Fecha de la primera actividad.
    "id": <long>,                       // ID.
    "vb": <long>,                       // Inicio del período de validez.
    "vl": [<text>],                     // Matrícula del vehículo.
    "activity": {                       // Actividad del conductor. Se muestra si se establece outputFlag:2.
        "Availability": {
            "a": <uint>,                // Acción del conductor: 0: pausa/descanso, 1: disponibilidad, 2: trabajo, 3: conducción.
            "cs": <uint>,               // Estado de la tarjeta: 0: insertada; 1: no insertada.
            "s": <uint>,                // Ranura del conductor: 0: conductor, 1: segundo conductor.
            "st": <uint>,               // Cantidad de conductores: 0: un conductor, 1: tripulación.
            "t": <uint>                 // Tiempo.
        },
        "Break/Rest": {
            "a": <uint>,
            "cs": <uint>,
            "s": <uint>,
            "st": <uint>,
            "t": <uint>
        },
        "Driving": {
            "a": <uint>,
            "cs": <uint>,
            "s": <uint>,
            "st": <uint>,
            "t": <uint>
        },
        "Work": {
            "a": <uint>,
            "cs": <uint>,
            "s": <uint>,
            "st": <uint>,
            "t": <uint>
        }
    }
}

Si la solicitud falla, se devuelve un código de error.

Códigos de error

Código de error Descripción
4 Uno de los siguientes errores:
  • Parámetros de entrada no válidos.
  • No se encontró el conductor (para la firma 2).
  • Error al analizar el archivo cargado (para la firma 1) o el archivo con el guid (para la firma 2).
5 Uno de los siguientes errores:
  • Error al cargar el archivo DDD (para la firma 1).
  • Error al escribir el archivo DDD (para la firma 2).
  • Error al leer un archivo con el guid del sistema de archivos (para la firma 2).
7 Uno de los siguientes errores (para la firma 2):
  • Falta el derecho de acceso Crear, modificar y eliminar conductores al recurso.
  • No se encontró el recurso con el ID especificado.

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