백엔드 이식 작업목록

OWVEZOOM — Zoom 연동 백엔드 이식 시 수행해야 할 작업 목록

1. 반입 파일 목록

zip 파일 zoom-adapted.zip 안의 zoom-adapted/ 폴더 전체를 프로젝트에 복사한다.

Controller (4개)

ZoomTokenController.javaOWVEZOOM01 — SDK JWT 토큰 발급
ZoomWidgetConfigController.javaOWVEZOOM01 — 위젯 초기화 파라미터
ZoomMeetingController.javaOWVEZOOM02 — 회의 생성·조회·종료·Co-host
ZoomPlatformController.javaOWVEZOOM03 — 브릿지·제어상태·녹화·로그

Service (4개)

ZoomTokenService.javaJWT 서명
ZoomMeetingService.java회의 상태 관리 (SessionUtils 포함)
ZoomPlatformService.java브릿지 이벤트·녹화·리포트·로그
ZoomControlStateService.java제어 상태 조회·변경 (SessionUtils 포함)

DTO — 입력 (9개)

ZoomTokenInputCDto.java
ZoomWidgetConfigInputCDto.java
ZoomMeetingCreateInputCDto.java
ZoomCohostInputCDto.java
ZoomBridgeEventInputCDto.java
ZoomControlStateCommandDto.java
ZoomRecordingsInputCDto.java
ZoomReportInputCDto.java
ZoomLogInputCDto.java

DTO — 응답 (11개)

ZoomWidgetConfigResultCDto.java
ZoomMeetingResultCDto.java
ZoomMeetingEndResultCDto.java
ZoomBridgeEventResultDto.java
ZoomRaiseHandsResultDto.java
ZoomRecordingsResultDto.java
ZoomRecordingItemDto.java
ZoomReportResultDto.java
ZoomControlStateSnapshotDto.java
ZoomActiveSpeakerDto.java
ZoomExitRecommendationDto.java

Model / Store (3개)

ZoomControlState.java
ZoomControlStateStore.javainterface
InMemoryZoomControlStateStore.java납품 스텁 — in-memory 구현

2. 패키지 배치

파일 종류배치 패키지
Controllerksd.sweb.wve.wveem.zoom.controller
Serviceksd.sweb.wve.wveem.zoom.service
DTOksd.sweb.wve.wveem.zoom.dto
Model / Store interfaceksd.sweb.wve.wveem.zoom.model
Store implksd.sweb.wve.wveem.zoom.store

3. 프레임워크 의존성 확인

의존성용도확인 항목
devonboot-enterprise-ext-telegram @Telegram, TelegramView, ITelegramData pom.xml/build.gradle에 추가됐는지 확인
ksd-framework-session ksd.framework.session.SessionUtils, UserSession Service 레이어에서만 참조. 컨트롤러에서 참조하지 않을 것
io.jsonwebtoken (jjwt) 또는 com.auth0:java-jwt ZoomTokenService — JWT 서명 라이브러리 버전에 맞게 ZoomTokenService.java 내부 서명 코드 조정 필요
Lombok @Getter @Setter @RequiredArgsConstructor 이미 적용돼 있으면 무관
SpringDoc / Swagger @Tag @Operation @ApiResponse swagger-ui 미사용 환경이면 어노테이션 제거해도 무방

4. 교체·연동이 필요한 스텁

파일현재 구현운영 시 교체 대상
InMemoryZoomControlStateStore.java ConcurrentHashMap (in-memory) 운영 DB 기반 구현체로 교체. ZoomControlStateStore interface 구현
ZoomPlatformService.java — listRecordings() 빈 리스트 반환 (스텁) Zoom REST Recording API 연동
ZoomPlatformService.java — buildMeetingReport() 메모리 집계 후 결과 반환 DB/WORM 저장 연동
ZoomPlatformService.java — listRaiseHands() 메모리 리스트 운영 DB 연동

5. 이식 대상 제외 항목

EGM 메타 API (GET/PATCH /egm/:topic)는 이식 대상이 아닙니다.
이 API는 EPT 포털의 기존 회의 메타 데이터(회순·참여정보·총괄주식수)를 다루며, Zoom 연동과 무관하게 EPT 포털 백엔드에 이미 구현돼 있습니다. 목 서버의 /api/egm/:topic은 개발용 더미이고, 내부망에서는 포털 실 API를 그대로 사용합니다.

6. API 목록

API IDAPI명Endpoint URIMethod
OWVEZOOM0101Zoom SDK JWT 토큰 발급/telegram/wveem/zoom/tokenPOST
OWVEZOOM0102Zoom 위젯 초기화 파라미터 조회/telegram/wveem/zoom/widget-configPOST
OWVEZOOM0201활성 Zoom 회의 목록 조회/telegram/wveem/zoom/meetingsGET
OWVEZOOM0202Zoom 회의 생성 (Host 전용)/telegram/wveem/zoom/meetingsPOST
OWVEZOOM0203Zoom 회의 단건 조회/telegram/wveem/zoom/meetings/{topic}GET
OWVEZOOM0204Zoom 회의 종료/telegram/wveem/zoom/meetings/{topic}/endPOST
OWVEZOOM0205Co-host 지정/telegram/wveem/zoom/meetings/{topic}/cohostsPOST
OWVEZOOM0206Co-host 해제/telegram/wveem/zoom/meetings/{topic}/cohosts/{userId}DELETE
OWVEZOOM0301Zoom 위젯 브릿지 이벤트 수신/telegram/wveem/zoom/bridge/eventsPOST
OWVEZOOM0302손들기 목록 조회/telegram/wveem/zoom/bridge/raise-hands/{topic}GET
OWVEZOOM0303Zoom 회의 제어 상태 조회/telegram/wveem/zoom/meetings/{topic}/control-stateGET
OWVEZOOM0304Zoom 회의 제어 상태 변경/telegram/wveem/zoom/meetings/{topic}/control-statePOST
OWVEZOOM0305Zoom 녹화 목록 (스텁)/telegram/wveem/zoom/recordingsPOST
OWVEZOOM0306Zoom 회의 종료 리포트/telegram/wveem/zoom/meetings/{topic}/reportPOST
OWVEZOOM0307Zoom 플랫폼 로그 추가/telegram/wveem/zoom/logsPOST
OWVEZOOM0308Zoom 플랫폼 로그 목록/telegram/wveem/zoom/logsGET