Beam Bench Dokumentation

Verwenden der HTTP-API

Steuern Sie Beam Bench mit jedem HTTP-Client. Dieselben Vorgänge wie mit der CLI, integrationsfreundlich.

Die HTTP-/WebSocket-API von Beam Bench ist dieselbe Schnittstelle, mit der die CLI kommuniziert. Wenn Ihr Anwendungsfall Beam Bench in einer Umgebung ohne CLI benötigt (Web-App, Integrationsserver, mobile App), verwenden Sie die HTTP-API direkt.

Was Sie benötigen

  • Beam Bench installiert.
  • Die lokale API ist unter Bearbeiten → Einstellungen → Allgemein aktiviert. Sie ist standardmäßig deaktiviert.
  • Einen HTTP-Client (curl, die HTTP-Bibliothek Ihrer Programmiersprache, Postman usw.).

Prüfen, ob die API aktiviert ist

Die Standardwerte im aktuellen Build sind bewusst restriktiv eingestellt:

  • Lokale API: aus.
  • API-Port: 5900.
  • Netzwerkgeräte zulassen: aus. Solange die Option deaktiviert bleibt, akzeptiert der Server Verbindungen nur von diesem Computer.

Öffnen Sie die Desktop-App, gehen Sie zu Bearbeiten → Einstellungen → Allgemein und aktivieren Sie Lokale API. Lassen Sie Netzwerkgeräte zulassen für Skripte, die auf demselben Computer ausgeführt werden, deaktiviert. Die Einstellungen werden sofort wirksam.

Lesen Sie die HTTP-API-Seite, bevor Sie die Bindung an das Netzwerk in einem gemeinsam genutzten WLAN vornehmen. Die API verfügt über keine Authentifizierung und kann die Maschine bewegen und den Laser auslösen.

Basis-URL

http://localhost:5900/api/v1

(Oder die LAN-IP Ihrer Maschine anstelle von localhost, wenn Netzwerkgeräte zulassen aktiviert ist.)

Schritte

1. Prüfen, ob die API verfügbar ist

curl -s http://localhost:5900/api/v1/agent/capabilities | jq .

Gibt das Fähigkeitsschema zurück. (Ersetzen Sie 5900 durch Ihren konfigurierten Port, falls Sie ihn geändert haben.)

2. Status prüfen

curl -s http://localhost:5900/api/v1/agent/state | jq .

3. Ein Projekt öffnen

curl -s -X POST http://localhost:5900/api/v1/projects/open \
  -H 'Content-Type: application/json' \
  -d '{"path":"/abs/path/to/file.lzrproj"}'

4. Das Design rendern (ohne Benutzeroberfläche)

curl -s -X POST http://localhost:5900/api/v1/design/render \
  -H 'Content-Type: application/json' \
  -d '{"format":"png","pixels_per_mm":4,"output_path":"/tmp/out.png"}'

5. Kamerastatus abrufen

curl -s http://localhost:5900/api/v1/camera/state | jq .

6. Kamera-Overlay rendern (App erforderlich)

curl -s -X POST http://localhost:5900/api/v1/camera/overlay/render \
  -H 'Content-Type: application/json' \
  -d '{"output_path":"/tmp/overlay.png","view":"fit","keep":true}'

Verfügbare Endpoint-Gruppen

Im Abschnitt API-Referenz (sobald er ausgefüllt ist) finden Sie die vollständige Schnittstelle. Wichtige Gruppen:

  • /agent, Funktionen, Status, Anleitung.
  • /camera, Geräte, Status, Aufnahme, Overlay (Anzeige, Transformation, Rendern), Kalibrierung, Ausrichtung.
  • /design, beschreiben, rendern, Transaktionen.
  • /projects, öffnen, speichern, schließen, Ebenen, Objekte, Rückgängig/Wiederholen, importieren.
  • /export, svg, dxf, pdf, eps, ai.

Sicherheit

Der API-Server verfügt über keine Authentifizierung. Er setzt voraus, dass das Netzwerk, in dem er sich befindet, vertrauenswürdig ist.

  • Eine Bindung nur an localhost begrenzt die Gefährdung auf den lokalen Computer.
  • Die Netzwerkbindung ist eine separate Opt-in-Option und öffnet die API für alle Personen im selben LAN. Aktivieren Sie sie nur in einem vertrauenswürdigen Netzwerk.

Prüfen, ob es funktioniert hat

  • curl agent/capabilities gibt JSON zurück.
  • Ein Render-Aufruf erzeugt die angeforderte Datei.

Verwandte Themen

On this page