refactor(desktop): session-scoped voice runtime, STT/LLM ports, caption ownership and meeting export fixes
This commit is contained in:
parent
0adedf5e7b
commit
83cf9133ac
39 changed files with 4787 additions and 1061 deletions
|
|
@ -187,17 +187,24 @@ class MeetingSummaryService extends EventEmitter {
|
|||
/**
|
||||
* CaptionService 세션 종료 시 자동 요약 (옵션)
|
||||
*/
|
||||
async onCaptionSessionSaved(sessionSummary: { sessionId: string }): Promise<void> {
|
||||
// caption 모드 히스토리에서 해당 세션 찾기
|
||||
async onCaptionSessionSaved(sessionSummary: { sessionId: string; historyId?: string | null }): Promise<void> {
|
||||
// caption 모드 히스토리에서 해당 세션 찾기.
|
||||
// 히스토리 행 id 는 HistoryService 가 따로 만든다 — 자막 세션 id 와 절대 같지 않으므로
|
||||
// CaptionService 가 실어 준 historyId 로 찾는다(없으면 저장되지 않은 세션).
|
||||
const historyId = sessionSummary.historyId
|
||||
if (!historyId) {
|
||||
logger.info(`Caption session was not saved to history, skipping summary: ${sessionSummary.sessionId}`)
|
||||
return
|
||||
}
|
||||
const db = getDatabase()
|
||||
const rows = db
|
||||
.select()
|
||||
.from(history)
|
||||
.where(eq(history.id, sessionSummary.sessionId))
|
||||
.where(eq(history.id, historyId))
|
||||
.all()
|
||||
|
||||
if (rows.length === 0) {
|
||||
logger.warn(`Caption session not found in history: ${sessionSummary.sessionId}`)
|
||||
logger.warn(`Caption session not found in history: ${historyId}`)
|
||||
return
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue