diff --git a/ui/src/app/workflow/[workflowId]/components/RecordingsDialog.tsx b/ui/src/app/workflow/[workflowId]/components/RecordingsDialog.tsx index 7c7a0ae..768634a 100644 --- a/ui/src/app/workflow/[workflowId]/components/RecordingsDialog.tsx +++ b/ui/src/app/workflow/[workflowId]/components/RecordingsDialog.tsx @@ -36,6 +36,11 @@ interface RecordingsDialogProps { onOpenChange: (open: boolean) => void; workflowId: number; onRecordingsChange?: (recordings: RecordingResponseSchema[]) => void; + ttsOverrides?: { + provider?: string; + model?: string; + voice?: string; + }; } const MAX_FILE_SIZE = 5 * 1024 * 1024; // 5MB @@ -57,6 +62,7 @@ export const RecordingsDialog = ({ onOpenChange, workflowId, onRecordingsChange, + ttsOverrides, }: RecordingsDialogProps) => { const { userConfig } = useUserConfig(); const [recordings, setRecordings] = useState([]); @@ -77,9 +83,9 @@ export const RecordingsDialog = ({ const languageRef = useRef(language); languageRef.current = language; - const ttsProvider = (userConfig?.tts?.provider as string) ?? ""; - const ttsModel = (userConfig?.tts?.model as string) ?? ""; - const ttsVoiceId = (userConfig?.tts?.voice as string) ?? ""; + const ttsProvider = ttsOverrides?.provider ?? (userConfig?.tts?.provider as string) ?? ""; + const ttsModel = ttsOverrides?.model ?? (userConfig?.tts?.model as string) ?? ""; + const ttsVoiceId = ttsOverrides?.voice ?? (userConfig?.tts?.voice as string) ?? ""; const fetchRecordings = useCallback(async () => { if (!workflowId) return; diff --git a/ui/src/app/workflow/[workflowId]/settings/page.tsx b/ui/src/app/workflow/[workflowId]/settings/page.tsx index 5c2aa28..46acabd 100644 --- a/ui/src/app/workflow/[workflowId]/settings/page.tsx +++ b/ui/src/app/workflow/[workflowId]/settings/page.tsx @@ -914,6 +914,7 @@ function WorkflowSettingsContent({ open={isRecordingsDialogOpen} onOpenChange={setIsRecordingsDialogOpen} workflowId={workflowId} + ttsOverrides={workflowConfigurations?.model_overrides?.tts} />