mirror of
https://github.com/hwanny1128/HGZero.git
synced 2025-12-06 17:16:25 +00:00
- 회의시작및실시간회의록작성.puml 병합 완료 - .gitignore 업데이트 - stt-ai 디렉토리 추가 - requirements.txt, .env.example 추가 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
122 lines
2.5 KiB
Plaintext
122 lines
2.5 KiB
Plaintext
@startuml
|
|
!theme mono
|
|
|
|
title 회의시작및실시간회의록작성 외부 시퀀스
|
|
|
|
actor "사용자" as User
|
|
participant "Web App" as Frontend
|
|
participant "API Gateway" as Gateway
|
|
participant "Meeting Service" as Meeting
|
|
participant "STT Service" as STT
|
|
participant "AI Service" as AI
|
|
database "Redis Cache" as Cache
|
|
queue "Azure Event Hubs" as EventHub
|
|
|
|
== 회의 시작 ==
|
|
|
|
User -> Frontend: 회의 시작 버튼 클릭
|
|
activate Frontend
|
|
|
|
Frontend -> Gateway: POST /api/meetings/{meetingId}/start
|
|
activate Gateway
|
|
|
|
Gateway -> Meeting: POST /meetings/{meetingId}/start
|
|
activate Meeting
|
|
|
|
Meeting -> Meeting: 회의 세션 생성
|
|
|
|
Meeting -> EventHub: MeetingStarted 이벤트 발행
|
|
activate EventHub
|
|
|
|
Meeting --> Gateway: 201 Created
|
|
deactivate Meeting
|
|
|
|
Gateway --> Frontend: 201 Created
|
|
deactivate Gateway
|
|
|
|
Frontend -> Frontend: 회의 화면으로 전환
|
|
|
|
Frontend --> User: 회의 진행 화면 표시
|
|
deactivate Frontend
|
|
|
|
== 음성 녹음 시작 ==
|
|
|
|
EventHub -> STT: MeetingStarted 이벤트 구독
|
|
activate STT
|
|
|
|
STT -> STT: 음성 녹음 준비
|
|
|
|
STT --> EventHub: 녹음 준비 완료
|
|
deactivate STT
|
|
deactivate EventHub
|
|
|
|
== 실시간 회의록 작성 (반복) ==
|
|
|
|
loop 5초 간격 배치 처리
|
|
|
|
User -> Frontend: 발언 (음성 입력)
|
|
activate Frontend
|
|
|
|
Frontend -> STT: 음성 데이터 스트리밍
|
|
activate STT
|
|
|
|
STT -> STT: 음성 인식 처리
|
|
|
|
STT -> EventHub: TranscriptReady 이벤트 발행
|
|
activate EventHub
|
|
|
|
STT --> Frontend: 음성 처리 중 표시
|
|
deactivate STT
|
|
deactivate Frontend
|
|
|
|
== AI 병렬 처리 ==
|
|
|
|
EventHub -> AI: TranscriptReady 이벤트 구독
|
|
activate AI
|
|
|
|
AI -> AI: [1] 회의록 내용 정리 (LLM)
|
|
AI -> AI: [2] 전문용어 추출 (RAG)
|
|
AI -> AI: [3] 관련 자료 검색
|
|
|
|
AI -> AI: AI 분석 결과 저장
|
|
|
|
AI -> EventHub: TranscriptSummaryCreated 발행
|
|
|
|
AI --> EventHub: AI 분석 완료
|
|
deactivate AI
|
|
|
|
== 회의록 저장 및 실시간 동기화 ==
|
|
|
|
EventHub -> Meeting: TranscriptSummaryCreated 구독
|
|
activate Meeting
|
|
|
|
Meeting -> Meeting: 회의록 데이터 저장
|
|
|
|
Meeting -> Cache: 캐시 무효화
|
|
activate Cache
|
|
Cache --> Meeting: 캐시 삭제 완료
|
|
deactivate Cache
|
|
|
|
Meeting -> Frontend: WebSocket 메시지 전송
|
|
activate Frontend
|
|
|
|
Meeting --> EventHub: 동기화 완료
|
|
deactivate Meeting
|
|
deactivate EventHub
|
|
|
|
Frontend -> Frontend: 회의록 화면 업데이트
|
|
|
|
Frontend --> User: 실시간 회의록 표시
|
|
deactivate Frontend
|
|
|
|
end
|
|
|
|
note over User, EventHub
|
|
처리 시간:
|
|
- STT 변환: 1-3초
|
|
- AI 병렬 처리: 5-8초
|
|
- 회의록 저장: 1-2초
|
|
- 총 처리 시간: 7-13초
|
|
end note
|
|
@enduml
|