Commit 3a1d1ad4 by Lucía Elizo Gómez

Variable state en diccionario y etiqueta (completa - incompleta)

parent 30cbdf0e
...@@ -13,7 +13,7 @@ Endpoint: ...@@ -13,7 +13,7 @@ Endpoint:
POST /api/biaprint/folder POST /api/biaprint/folder
Autenticación: Autenticación:
Authorization: Bearer <personal_access_token> (scope: record.create) Authorization: Bearer <personal_access_token> (scope: record.create + collection.create)
Form-data: Form-data:
folder_name (str) nombre de la carpeta / sesion folder_name (str) nombre de la carpeta / sesion
...@@ -73,7 +73,7 @@ def _analizar_sesion(samples: list) -> dict: ...@@ -73,7 +73,7 @@ def _analizar_sesion(samples: list) -> dict:
ultimo = samples[-1] ultimo = samples[-1]
def vals(key_path): def vals(key_path):
"""Extrae una lista de valores siguiendo una ruta de claves.""" """Extrae una lista de valores siguiendo la ruta de claves de cada sample."""
resultado = [] resultado = []
for s in samples: for s in samples:
obj = s.get("printer", {}) obj = s.get("printer", {})
...@@ -147,6 +147,9 @@ def _analizar_sesion(samples: list) -> dict: ...@@ -147,6 +147,9 @@ def _analizar_sesion(samples: list) -> dict:
"filamento_usado_mm": safe_max(vals(["estado", "filament_used_mm"])), "filamento_usado_mm": safe_max(vals(["estado", "filament_used_mm"])),
"progreso_max_pct": safe_max(vals(["sdcard", "progress_pct"])), "progreso_max_pct": safe_max(vals(["sdcard", "progress_pct"])),
# Estado
"state": ultimo.get("printer", {}).get("estado", {}).get("state", ""),
# Movimiento # Movimiento
"velocidad_max_mms": safe_max(vals(["movimiento", "max_velocity_mms"])), "velocidad_max_mms": safe_max(vals(["movimiento", "max_velocity_mms"])),
"aceleracion_max_mms2": safe_max(vals(["movimiento", "max_accel_mms2"])), "aceleracion_max_mms2": safe_max(vals(["movimiento", "max_accel_mms2"])),
...@@ -202,6 +205,13 @@ def _generar_tags(metricas: dict) -> list: ...@@ -202,6 +205,13 @@ def _generar_tags(metricas: dict) -> list:
else: else:
tags.append("impresion-larga") tags.append("impresion-larga")
# Estado de la sesion
state = metricas.get("state")
if state == "complete":
tags.append("Impresion-completa")
elif state in ("cancelled", "error"):
tags.append("Impresion-incompleta")
# Filamento # Filamento
fil = metricas.get("filamento_usado_mm") fil = metricas.get("filamento_usado_mm")
if fil: if fil:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment