Implement YouTube music playback workflow #2

Merged
myong merged 1 commits from myong_dev into main 2026-03-30 17:14:17 +00:00
Collaborator

요약

이번 PR에서는 Kord에 YouTube 음악 재생 워크플로우를 추가했습니다.

주요 포함 내용:

  • /music 슬래시 명령어 추가
  • YouTube 검색/URL 기반 곡 추가
  • 재생목록 URL 추가 지원
  • 대기열 조회 및 인덱스 삭제
  • 재생/정지/건너뛰기/퇴장 컨트롤
  • 일시정지/재개 기능
  • 재생 메시지 진행 바 및 다음 곡 표시
  • 관련 i18n 및 문서 반영

변경 사항

  • @discordjs/voice 기반 음악 재생 구조 추가
  • MusicService 추가
    • YouTube 검색 및 메타데이터 처리
    • 길드별 메모리 큐 관리
    • 음성 채널 자동 입장 및 재생
    • 재생목록 URL 처리
    • 진행 바 및 현재 재생 메시지 갱신
    • 버튼 컨트롤 처리
  • /music add, /music queue, /music remove, /music pause, /music resume, /music skip, /music stop, /music leave 구현
  • 재생 메시지에 다음 곡 미리보기 추가
  • 버튼 UI를 이모지 기반으로 정리
  • 오래된 버튼 클릭 시 비활성화 처리 개선
  • EN/KO 번역 키 추가 및 정리
  • Docs/Plans, Docs/WorkDone, Docs/index.md 업데이트

테스트한 기능

  • 검색어로 곡 추가
  • YouTube 영상 URL로 곡 추가
  • YouTube 재생목록 URL 추가
  • /music queue
  • /music remove index
  • /music pause, /music resume
  • /music skip, /music stop, /music leave
  • 진행 바 및 다음 곡 표시
  • 오래된 버튼 비활성화 동작

검증

  • yarn build
  • yarn test --runInBand

두 명령 모두 정상 통과했습니다.

참고 사항

  • 음악 세션은 현재 길드별 메모리 기반으로 관리됩니다.
  • 중복 봇 인스턴스가 떠 있으면 세션 불일치가 발생할 수 있어, 단일 인스턴스 실행이 중요합니다.
  • YouTube 스트림 추출은 환경 권한 상태에 영향을 받을 수 있어 실행 컨텍스트가 중요합니다.
## 요약 이번 PR에서는 Kord에 YouTube 음악 재생 워크플로우를 추가했습니다. 주요 포함 내용: - `/music` 슬래시 명령어 추가 - YouTube 검색/URL 기반 곡 추가 - 재생목록 URL 추가 지원 - 대기열 조회 및 인덱스 삭제 - 재생/정지/건너뛰기/퇴장 컨트롤 - 일시정지/재개 기능 - 재생 메시지 진행 바 및 다음 곡 표시 - 관련 i18n 및 문서 반영 ## 변경 사항 - `@discordjs/voice` 기반 음악 재생 구조 추가 - `MusicService` 추가 - YouTube 검색 및 메타데이터 처리 - 길드별 메모리 큐 관리 - 음성 채널 자동 입장 및 재생 - 재생목록 URL 처리 - 진행 바 및 현재 재생 메시지 갱신 - 버튼 컨트롤 처리 - `/music add`, `/music queue`, `/music remove`, `/music pause`, `/music resume`, `/music skip`, `/music stop`, `/music leave` 구현 - 재생 메시지에 다음 곡 미리보기 추가 - 버튼 UI를 이모지 기반으로 정리 - 오래된 버튼 클릭 시 비활성화 처리 개선 - EN/KO 번역 키 추가 및 정리 - `Docs/Plans`, `Docs/WorkDone`, `Docs/index.md` 업데이트 ## 테스트한 기능 - 검색어로 곡 추가 - YouTube 영상 URL로 곡 추가 - YouTube 재생목록 URL 추가 - `/music queue` - `/music remove index` - `/music pause`, `/music resume` - `/music skip`, `/music stop`, `/music leave` - 진행 바 및 다음 곡 표시 - 오래된 버튼 비활성화 동작 ## 검증 - `yarn build` - `yarn test --runInBand` 두 명령 모두 정상 통과했습니다. ## 참고 사항 - 음악 세션은 현재 길드별 메모리 기반으로 관리됩니다. - 중복 봇 인스턴스가 떠 있으면 세션 불일치가 발생할 수 있어, 단일 인스턴스 실행이 중요합니다. - YouTube 스트림 추출은 환경 권한 상태에 영향을 받을 수 있어 실행 컨텍스트가 중요합니다.
myong added 1 commit 2026-03-30 17:13:43 +00:00
myong merged commit d51eadb8c4 into main 2026-03-30 17:14:17 +00:00
Sign in to join this conversation.
No reviewers
No Label
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: art/Kord#2
No description provided.