HTTP API'sini kullanma
Beam Bench'i herhangi bir HTTP istemcisinden yönetin. CLI ile aynı işlemler, entegrasyona uygun.
Beam Bench'in HTTP / WebSocket API'si, CLI'nin iletişim kurduğu API yüzeyinin aynısıdır. Beam Bench'i CLI dışı bir ortamda (web uygulaması, entegrasyon sunucusu, mobil uygulama) kullanmanız gerekiyorsa HTTP API'sini doğrudan kullanın.
Gerekenler
- Beam Bench yüklü olmalıdır.
- Düzenle → Ayarlar → Genel bölümünde Yerel API etkinleştirilmelidir. Varsayılan olarak kapalı gelir.
- Bir HTTP istemcisi (
curl, kullandığınız dilin HTTP kitaplığı, Postman vb.).
API'nin etkin olduğunu doğrulayın
Mevcut derlemedeki varsayılanlar bilinçli olarak sıkı kısıtlanmıştır:
- Yerel API: kapalı.
- API bağlantı noktası: 5900.
- Ağ cihazlarının bağlanmasına izin ver: kapalı. Kapalı kaldığı sürece sunucu yalnızca bu bilgisayardan gelen bağlantıları kabul eder.
Masaüstü uygulamasını açın, Düzenle → Ayarlar → Genel bölümüne gidin ve Yerel API seçeneğini açın. Aynı bilgisayarda çalışan betikler için Ağ cihazlarının bağlanmasına izin ver seçeneğini kapalı bırakın. Ayarlar hemen uygulanır.
Paylaşılan bir Wi-Fi ağında ağ bağlantısını etkinleştirmeden önce HTTP API sayfasını okuyun. API'de kimlik doğrulama yoktur ve makineyi hareket ettirip lazeri ateşleyebilir.
Temel URL
http://localhost:5900/api/v1(Ağ cihazlarının bağlanmasına izin ver açıkken localhost yerine makinenizin LAN IP adresini kullanabilirsiniz.)
Adımlar
1. API'nin çalışır durumda olduğunu doğrulayın
curl -s http://localhost:5900/api/v1/agent/capabilities | jq .Yetenek şemasını döndürür. (5900 değerini değiştirdiyseniz, yapılandırdığınız bağlantı noktasıyla değiştirin.)
2. Durumu inceleyin
curl -s http://localhost:5900/api/v1/agent/state | jq .3. Proje açın
curl -s -X POST http://localhost:5900/api/v1/projects/open \
-H 'Content-Type: application/json' \
-d '{"path":"/abs/path/to/file.lzrproj"}'4. Tasarımı oluşturun (başsız)
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. Kamera durumunu alın
curl -s http://localhost:5900/api/v1/camera/state | jq .6. Kamera kaplamasını oluşturun (uygulama gerekir)
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}'Kullanılabilir uç nokta grupları
Tam yüzey için API başvurusunun (doldurulduğunda) ilgili bölümüne bakın. Başlıca gruplar:
/agent, yetenekler, durum, kılavuz./camera, cihazlar, durum, yakalama, bindirme (görüntüleme, dönüştürme, işleme), kalibrasyon, hizalama./design, açıklama, işleme, işlemler./projects, açma, kaydetme, kapatma, katmanlar, nesneler, geri alma/yineleme, içe aktarma./export, svg, dxf, pdf, eps, ai.
Güvenlik
API sunucusunda kimlik doğrulama yoktur. Sunucu, bağlı olduğu ağa güvenildiğini varsayar.
- Yalnızca localhost'a bağlanmak, görünürlüğü yerel makineyle sınırlar.
- Ağa bağlanma ayrı bir isteğe bağlı ayardır ve API'yi aynı LAN'daki herkese açar. Bunu yalnızca güvenilir bir ağda etkinleştirin.
Çalıştığını doğrulayın
curl agent/capabilitiesJSON döndürür.- Bir oluşturma çağrısı istenen dosyayı üretir.