치지직, 씨미(CiMe), 숲(SOOP, 구 아프리카TV/아프리카티비), 유튜브(YouTube), 투네이션 — 5개 스트리밍 플랫폼의 채팅과 후원을 하나의 API로 다루는 Java 라이브러리입니다.
이 프로젝트는 chzzk4j에서 출발하여, 치지직 외 4개 플랫폼(씨미·숲·유튜브·투네이션)을 추가 지원하도록 확장한 라이브러리입니다.
스트리밍 플랫폼마다 채팅 연결 방식, 후원 이벤트 구조, 인증 방법이 모두 다릅니다. 여러 플랫폼을 동시에 운영하려면 각각의 API를 따로 연동해야 하는데, stream4j는 이 과정을 하나의 통합 API로 해결합니다.
- 플랫폼별 URL을 넣으면 자동으로 플랫폼을 감지합니다
- 채팅 메시지와 후원 이벤트를 공통 형식으로 받을 수 있습니다
- 연결이 끊어지면 자동으로 재연결합니다
- 멀티플랫폼 통합 채팅 뷰어를 만들고 싶은 개발자
- 여러 플랫폼의 후원 알림 봇을 구축하려는 팀
- 스트리밍 관련 자동화 도구를 기획하는 PM
- 다중 플랫폼 방송 운영에 필요한 기술을 검토하는 분
| 플랫폼 | 채팅 | 후원 | 방송 종료 감지 | 인증 필요 |
|---|---|---|---|---|
| 치지직 (Chzzk) | ✅ | ✅ | ✅ | 선택 |
| 씨미 (CiMe) | ✅ | ✅ | ✅ | 불필요 |
| 숲 (SOOP, 구 아프리카TV / 아프리카티비) | ✅ | ✅ | ✅ | 선택 |
| 유튜브 (YouTube) | ✅ | ✅ | ✅ | 불필요 |
| 투네이션 (Toonation) | — | ✅ | — | 불필요 |
URL만 넣으면 바로 동작합니다.
StreamChat chat = new StreamChatBuilder()
.add("https://chzzk.naver.com/live/924a636224c9203259af46ad7d8b70ca")
.add("https://ci.me/@lyn")
.add("https://play.sooplive.co.kr/tjrdbs999/292536969")
.add("https://www.youtube.com/watch?v=Qv6o6WACJ60")
.add("https://toon.at/widget/alertbox/abc123")
.withListener(new StreamChatEventListener() {
@Override
public void onDonation(Donation donation) {
System.out.println("[" + donation.platform() + "] "
+ donation.nickname() + ": "
+ donation.formattedAmount() + " - "
+ donation.message());
}
@Override
public void onChat(DonationPlatform platform, String channelId, String nickname, String message) {
System.out.println("[" + platform + "] " + nickname + ": " + message);
}
})
.build();
chat.connectAll();repositories {
mavenCentral()
}
dependencies {
implementation("io.github.bbobbogi:stream4j:1.0.1-SNAPSHOT")
}- 플랫폼 자동 감지 — URL을 넣으면 어떤 플랫폼인지 자동으로 판별합니다
- 통합 후원 모델 — 치즈, 별풍선, 슈퍼챗 등 플랫폼별 후원을 하나의 형식으로 통합합니다
- 안정적인 연결 유지 — 장시간 연결을 안정적으로 유지하고, 끊어지면 자동으로 재연결합니다
- 방송 종료 감지 — 각 플랫폼에 맞는 방식으로 방송 종료를 자동 감지합니다
- 원화 환산 — 각 플랫폼의 후원 단위(치즈, 빔, 별풍선 등)를 원화로 환산할 수 있습니다
- 🖥️ 여러 플랫폼의 채팅을 한 화면에 모아보는 통합 채팅 뷰어
- 🔔 후원이 들어오면 알려주는 멀티플랫폼 후원 알림 봇
- 📊 채팅/후원 데이터를 수집·분석하는 방송 관리 대시보드
- 🎮 마인크래프트 서버 연동 — 후원 시 보스 소환·아이템 지급·이펙트 발동 등 게임 내 이벤트를 자동으로 트리거 (치즈·별풍선·슈퍼챗·빔 등 후원 단위 통합 처리)
- 🤖 디스코드 봇 연동 — 치지직·숲·유튜브의 채팅과 후원을 디스코드 채널로 실시간 중계
- 🎬 OBS 오버레이 연동 — 후원·구독·미션 알림을 방송 화면에 커스텀 오버레이로 표시
- 🔊 TTS(음성 알림) 연동 — 후원 메시지를 자동으로 음성 변환해 방송 중 재생
- Java 11 이상이 필요합니다
- 일부 플랫폼(치지직, SOOP)은 로그인 정보가 있어야 모든 기능을 사용할 수 있습니다
- 각 플랫폼의 정책 변경에 따라 일부 기능이 영향을 받을 수 있습니다
- 투네이션은 후원 알림 전용으로, 채팅 기능은 지원하지 않습니다
더 자세한 사용법은 아래 문서를 참고하세요.
- 상세 사용 가이드 — Raw ID 사용법, 후원 데이터 상세, 설정 옵션
- 치지직 (Chzzk)
- 씨미 (CiMe)
- 숲 (SOOP, 구 아프리카TV / 아프리카티비)
- 유튜브 (YouTube)
- 투네이션 (Toonation)
- 인증 가이드 — 네이버 로그인, 숲(SOOP) 로그인
이 프로젝트는 MIT License로 배포됩니다.