From dd451a03a8ea4f41dc3c959bafa8fe73682448c1 Mon Sep 17 00:00:00 2001 From: Daniel Roth Date: Fri, 3 Jul 2026 14:22:56 +0000 Subject: [PATCH] =?UTF-8?q?Abri=20log=5Fjob=20returns=20the=20OpenHousing?= =?UTF-8?q?=20job=20number=20from=20the=20relay=20success=20response=20?= =?UTF-8?q?=F0=9F=9F=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Fable 5 --- infrastructure/abri/abri_client.py | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/infrastructure/abri/abri_client.py b/infrastructure/abri/abri_client.py index 2579ba341..a5c9ffaef 100644 --- a/infrastructure/abri/abri_client.py +++ b/infrastructure/abri/abri_client.py @@ -1,6 +1,8 @@ +import xml.etree.ElementTree as ET + import requests -from domain.abri.models import LogJobRequest, LogJobResult +from domain.abri.models import JobLogged, LogJobRequest, LogJobResult from infrastructure.abri.config import AbriConfig @@ -10,4 +12,12 @@ class AbriClient: self._session = requests.Session() def log_job(self, request: LogJobRequest) -> LogJobResult: - raise NotImplementedError + response = self._session.post(self._config.endpoint_url, data=b"") + root = ET.fromstring(response.content) + job_logged = root.find("Jobs/Job_logged") + if job_logged is None: + raise ValueError("Job_logged element missing from relay response") + return JobLogged( + job_no=job_logged.attrib["job_no"], + logged_info=job_logged.attrib["logged_info"], + )