fix: UUID→fichier via API photobooth (created_at/processed), photo_id dans print_queue
This commit is contained in:
@@ -53,6 +53,29 @@ class PhotoboothService:
|
||||
items = await self.get_media_collection(limit=1)
|
||||
return items[0] if items else None
|
||||
|
||||
async def get_media_item(self, media_id: str) -> dict | None:
|
||||
"""Retourne les détails complets d'un item (id, created_at, processed, ...)."""
|
||||
try:
|
||||
r = await self._client.get(f"/api/mediacollection/{media_id}")
|
||||
if r.status_code == 404:
|
||||
return None
|
||||
r.raise_for_status()
|
||||
return r.json()
|
||||
except Exception as e:
|
||||
logger.error("Erreur récupération item %s: %s", media_id, e)
|
||||
return None
|
||||
|
||||
def media_file_path(self, item: dict) -> Path | None:
|
||||
"""Retourne le chemin absolu du fichier traité depuis le champ 'processed' d'un item.
|
||||
|
||||
photobooth-app retourne 'processed': 'media/processed_full/YYYYMMDD-HHMMSS-xxx.jpg'
|
||||
On préfixe avec data_dir pour obtenir le chemin complet.
|
||||
"""
|
||||
processed = item.get("processed")
|
||||
if not processed:
|
||||
return None
|
||||
return Path(self._cfg.data_dir) / processed
|
||||
|
||||
async def delete_media(self, media_id: str) -> bool:
|
||||
"""Supprime une photo via l'API photobooth-app."""
|
||||
try:
|
||||
|
||||
Reference in New Issue
Block a user