This commit is contained in:
Josh Hawkins
2025-03-23 13:51:06 -05:00
committed by GitHub
parent e36fe79782
commit b7fcd41737
3 changed files with 44 additions and 14 deletions

View File

@@ -103,16 +103,24 @@ export function CameraStreamingDialog({
if (!config) {
return;
}
// Get available streams from the config and first stream entry as fallback
const availableStreams = config?.cameras[camera]?.live?.streams || {};
const firstStreamEntry = Object.entries(availableStreams)[0]?.[1] || "";
if (groupStreamingSettings && groupStreamingSettings[camera]) {
const cameraSettings = groupStreamingSettings[camera];
setStreamName(cameraSettings.streamName || "");
const streamNameFromSettings = cameraSettings.streamName || "";
const streamExists =
streamNameFromSettings &&
Object.values(availableStreams).includes(streamNameFromSettings);
setStreamName(streamExists ? streamNameFromSettings : firstStreamEntry);
setStreamType(cameraSettings.streamType || "smart");
setCompatibilityMode(cameraSettings.compatibilityMode || false);
} else {
setStreamName(
Object.entries(config?.cameras[camera]?.live?.streams || {})[0]?.[1] ||
"",
);
setStreamName(firstStreamEntry);
setStreamType("smart");
setCompatibilityMode(false);
}
@@ -150,19 +158,28 @@ export function CameraStreamingDialog({
if (!config) {
return;
}
// Get available streams from the config and first stream entry as fallback
const availableStreams = config?.cameras[camera]?.live?.streams || {};
const firstStreamEntry = Object.entries(availableStreams)[0]?.[1] || "";
if (groupStreamingSettings && groupStreamingSettings[camera]) {
const cameraSettings = groupStreamingSettings[camera];
setStreamName(cameraSettings.streamName || "");
const streamNameFromSettings = cameraSettings.streamName || "";
const streamExists =
streamNameFromSettings &&
Object.values(availableStreams).includes(streamNameFromSettings);
setStreamName(streamExists ? streamNameFromSettings : firstStreamEntry);
setStreamType(cameraSettings.streamType || "smart");
setCompatibilityMode(cameraSettings.compatibilityMode || false);
} else {
setStreamName(
Object.entries(config?.cameras[camera]?.live?.streams || {})[0]?.[1] ||
"",
);
setStreamName(firstStreamEntry);
setStreamType("smart");
setCompatibilityMode(false);
}
setIsDialogOpen(false);
}, [groupStreamingSettings, camera, config, setIsDialogOpen]);