mirror of
https://github.com/maziggy/bambuddy.git
synced 2026-10-17 19:36:28 +02:00
- Add subnet scanning for printer discovery in Docker environments
- Detect Docker environment automatically via /.dockerenv and cgroup - Show subnet input field in Add Printer dialog when running in Docker - Scan IP range for Bambu printer ports (8883 MQTT, 990 FTPS) - Query SSDP to get printer name/serial/model from discovered IPs - Map raw SSDP model codes to friendly names (BL-P001→X1C, O1D→H2D)
This commit is contained in:
@@ -2190,8 +2190,22 @@ export interface DiscoveryStatus {
|
||||
running: boolean;
|
||||
}
|
||||
|
||||
export interface DiscoveryInfo {
|
||||
is_docker: boolean;
|
||||
ssdp_running: boolean;
|
||||
scan_running: boolean;
|
||||
}
|
||||
|
||||
export interface SubnetScanStatus {
|
||||
running: boolean;
|
||||
scanned: number;
|
||||
total: number;
|
||||
}
|
||||
|
||||
// Discovery API
|
||||
export const discoveryApi = {
|
||||
getInfo: () => request<DiscoveryInfo>('/discovery/info'),
|
||||
|
||||
getStatus: () => request<DiscoveryStatus>('/discovery/status'),
|
||||
|
||||
startDiscovery: (duration: number = 10) =>
|
||||
@@ -2202,4 +2216,16 @@ export const discoveryApi = {
|
||||
|
||||
getDiscoveredPrinters: () =>
|
||||
request<DiscoveredPrinter[]>('/discovery/printers'),
|
||||
|
||||
// Subnet scanning (for Docker environments)
|
||||
startSubnetScan: (subnet: string, timeout: number = 1.0) =>
|
||||
request<SubnetScanStatus>('/discovery/scan', {
|
||||
method: 'POST',
|
||||
body: JSON.stringify({ subnet, timeout }),
|
||||
}),
|
||||
|
||||
getScanStatus: () => request<SubnetScanStatus>('/discovery/scan/status'),
|
||||
|
||||
stopSubnetScan: () =>
|
||||
request<SubnetScanStatus>('/discovery/scan/stop', { method: 'POST' }),
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user