- 0.0.12 이하 버전을 사용하신다면, 과거 버전의 문서 파일을 확인해주세요!
/
예시 마인크래프트 플러그인 /
디스코드 서버 /
SDK 문서
치지직의 비공식 Java SDK 라이브러리입니다.
- 이 라이브러리는 아직 완성되지 않았습니다. 많은 풀 리퀘스트 부탁드립니다!!
- 이슈가 생기면 언제나 깃허브 이슈로 알려주세요!
Warning
Maven Central에서 r2turntrue와 R2turnTrue를 다르게 취급합니다!!
Group ID로 io.github.r2turntrue를 사용하세요!
0.1.1 버전 이하의 경우, Group ID로 io.github.R2turnTrue를 사용해야 합니다.
repositories {
mavenCentral()
}
dependencies {
implementation("io.github.r2turntrue:chzzk4j:0.1.4")
}문서에서 확인하세요!
ChzzkClient client = new ChzzkClientBuilder() // 레거시 챗은 비공개 API이기 때문에, API 키가 필요하지 않습니다.
.build();
ChzzkChat chat = new ChzzkChatBuilder(client,
"CHANNEL_ID")
.build();
chat.on(ConnectEvent.class, (evt) -> {
System.out.println("connected to chat :)");
});
chat.on(ChatMessageEvent.class, (evt) -> {
ChatMessage msg = evt.getMessage();
if (msg.getProfile() == null) {
System.out.println(String.format("익명: %s", msg.getContent()));
return;
}
System.out.println(
String.format("[Chat] %s: %s",
msg.getProfile().getNickname(),
msg.getContent()));
});
chat.connectBlocking();var adapter = new ChzzkOauthLoginAdapter(5000);
var client = new ChzzkClientBuilder(apiClientId, apiSecret)
.withDebugMode()
.withLoginAdapter(adapter)
.build();
System.out.println(adapter.getAccountInterlockUrl(apiClientId, false)); // Show Login URL
client.loginAsync().join(); // Wait for the user to login by the interlock URL
var session = new ChzzkSessionBuilder(client)
.buildUserSession();
session.subscribeAsync(ChzzkSessionSubscriptionType.CHAT).join();
session.on(SessionConnectedEvent.class, (event) -> {
System.out.println("Connected!");
});
session.on(SessionDisconnectedEvent.class, (event) -> {
System.out.println("Disconnected :(");
});
session.on(SessionChatMessageEvent.class, (event) -> {
var msg = event.getMessage();
System.out.printf("[CHAT] %s: %s [at %s]%n", msg.getProfile().getNickname(), msg.getContent(), msg.getMessageTime());
});
session.on(SessionRecreateEvent.class, (event) -> {
System.out.println("Recreating the session...");
});
session.on(SessionSubscribedEvent.class, (event) -> {
System.out.println("Yeah I subscribed to: " + event.getEventType());
});
session.on(SessionUnsubscribedEvent.class, (event) -> {
System.out.println("Yeah I unsubscribed to: " + event.getEventType());
});
session.createAndConnectAsync().join();ChzzkChatSettings settings = client.fetchChatSettings().join();
// 본인인증 여부 설정 조건을 변경합니다.
settings.setChatAvailableCondition(ChzzkChatSettings.ChatAvailableCondition.REAL_NAME);
// 채팅 참여 범위 설정 조건을 변경합니다.
settings.setChatAvailableGroup(ChzzkChatSettings.ChatAvailableGroup.FOLLOWER);
// (위 ChatAvailableGroup이 FOLLOWER일 경우) 최소 팔로잉 기간을 설정합니다.
settings.setMinFollowerMinute(ChzzkChatSettings.MinFollowerMinute.M_60);
// (위 ChatAvailableGroup이 FOLLOWER일 경우) 구독자는 최소 팔로잉 기간 조건 대상에서 제외/허용 할지 여부를 설정합니다.
settings.setAllowSubscriberInFollowerMode(false);
// 변경된 방송 설정을 서버에 전송합니다.
client.modifyChatSettings(settings).join();- 채널 이름, 규칙 불러오기
- 현재 사용자의 정보 불러오기
- 채널 팔로잉 상태 불러오기
- 비동기 채팅 연동
- 추천 채널 받아오기
- 잘못된 JSON 고치기 (채팅)
- 이모지 팩 불러오기
- 실시간 상태 받아오기 (live status)
- 실시간 상태 받아오기 (live detail)
- 모든 메소드, 클래스 등등 Javadoc 완성하기
- 채팅 메시지에서 이모지 파싱하기
- 로그인된 유저의 팔로잉 목록 가져오기
- 동영상 정보 가져오기
- 치즈 후원 랭킹 가져오기
