Skip to content

Commit 42748b5

Browse files
committed
feat: auto-extract tasks immediately when meeting ends
- Automatically trigger task extraction when meeting-ended IPC event fires - No need to wait for upload - extract tasks from local transcript segments - Only auto-extracts if OpenAI API key is configured - Users see tasks instantly when they return to check the recording This creates a magical UX - tasks are already extracted by the time users look at their recordings!
1 parent 79d12c0 commit 42748b5

File tree

1 file changed

+23
-3
lines changed

1 file changed

+23
-3
lines changed

src/renderer/features/notetaker/components/LiveTranscriptView.tsx

Lines changed: 23 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -79,21 +79,41 @@ export function LiveTranscriptView({
7979
return cleanup;
8080
}, [posthogRecordingId, addSegment]);
8181

82-
// Listen for meeting-ended event to force upload remaining segments
82+
// Listen for meeting-ended event to force upload remaining segments and extract tasks
8383
useEffect(() => {
8484
console.log(
8585
`[LiveTranscript] Setting up meeting-ended listener for ${posthogRecordingId}`,
8686
);
8787

8888
const cleanup = window.electronAPI.onMeetingEnded((event) => {
8989
if (event.posthog_recording_id === posthogRecordingId) {
90-
console.log(`[LiveTranscript] Meeting ended, force uploading segments`);
90+
console.log(
91+
`[LiveTranscript] Meeting ended, force uploading segments and extracting tasks`,
92+
);
9193
forceUpload();
94+
95+
// Automatically extract tasks when meeting ends (if OpenAI key is configured)
96+
if (openaiApiKey && segments.length > 0) {
97+
console.log(
98+
`[LiveTranscript] Auto-extracting tasks for ${segments.length} segments`,
99+
);
100+
const fullText = segments.map((s) => s.text).join(" ");
101+
extractTasksMutation.mutate({
102+
recordingId: posthogRecordingId,
103+
transcriptText: fullText,
104+
});
105+
}
92106
}
93107
});
94108

95109
return cleanup;
96-
}, [posthogRecordingId, forceUpload]);
110+
}, [
111+
posthogRecordingId,
112+
forceUpload,
113+
openaiApiKey,
114+
segments,
115+
extractTasksMutation,
116+
]);
97117

98118
// Detect manual scroll to disable auto-scroll
99119
const handleScroll = () => {

0 commit comments

Comments
 (0)