Compare commits

...

2 Commits

Author SHA1 Message Date
440b1c278a Merge pull request 'fix error 500' (#2) from Paul/Fichero:main into main
Some checks failed
Deploy to GitHub Pages / build (push) Has been cancelled
Deploy to GitHub Pages / deploy (push) Has been cancelled
Reviewed-on: #2
2026-03-07 12:52:15 +00:00
paul2212
99c2fb79d7 fix error 500 2026-03-07 13:51:17 +01:00
5 changed files with 23 additions and 3 deletions

View File

@@ -95,7 +95,7 @@ def _address(address: str | None) -> str | None:
@app.get("/", include_in_schema=False) @app.get("/", include_in_schema=False)
async def root(): async def root():
"""Redirect root to interactive API docs.""" """Redirect root to interactive API docs."""
return RedirectResponse(url="/docs") return RedirectResponse(url="docs")
@app.get( @app.get(

View File

@@ -162,6 +162,16 @@ class RFCOMMClient:
loop.sock_connect(sock, (self._address, self._channel)), loop.sock_connect(sock, (self._address, self._channel)),
timeout=10.0, timeout=10.0,
) )
except asyncio.TimeoutError as exc:
sock.close()
raise PrinterTimeout(
f"Classic Bluetooth connection timed out to {self._address} (channel {self._channel})."
) from exc
except OSError as exc:
sock.close()
raise PrinterError(
f"Classic Bluetooth connection failed for '{self._address}' (channel {self._channel}): {exc}"
) from exc
except Exception: except Exception:
sock.close() sock.close()
raise raise

View File

@@ -18,7 +18,7 @@ ingress: true
ingress_port: 8765 ingress_port: 8765
panel_icon: mdi:printer panel_icon: mdi:printer
panel_title: Fichero Printer panel_title: Fichero Printer
webui: "http://[HOST]:[PORT:8765]/docs" webui: "http://[HOST]:[PORT:8765]/"
host_network: true host_network: true
host_dbus: true host_dbus: true

View File

@@ -95,7 +95,7 @@ def _address(address: str | None) -> str | None:
@app.get("/", include_in_schema=False) @app.get("/", include_in_schema=False)
async def root(): async def root():
"""Redirect root to interactive API docs.""" """Redirect root to interactive API docs."""
return RedirectResponse(url="/docs") return RedirectResponse(url="docs")
@app.get( @app.get(

View File

@@ -162,6 +162,16 @@ class RFCOMMClient:
loop.sock_connect(sock, (self._address, self._channel)), loop.sock_connect(sock, (self._address, self._channel)),
timeout=10.0, timeout=10.0,
) )
except asyncio.TimeoutError as exc:
sock.close()
raise PrinterTimeout(
f"Classic Bluetooth connection timed out to {self._address} (channel {self._channel})."
) from exc
except OSError as exc:
sock.close()
raise PrinterError(
f"Classic Bluetooth connection failed for '{self._address}' (channel {self._channel}): {exc}"
) from exc
except Exception: except Exception:
sock.close() sock.close()
raise raise