From e9a91f5741c21d106fb62c761013be39304579d4 Mon Sep 17 00:00:00 2001 From: kohlerpop1 Date: Mon, 19 May 2025 14:40:41 -0400 Subject: [PATCH] Add TikTok Target Identity Data Center cookie to make sessionid effective and verifiable. --- .../tiktok/data/settings/LiveClientSettings.java | 11 +++++++++-- .../jwdeveloper/tiktok/TikTokLiveHttpClient.java | 2 ++ 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/API/src/main/java/io/github/jwdeveloper/tiktok/data/settings/LiveClientSettings.java b/API/src/main/java/io/github/jwdeveloper/tiktok/data/settings/LiveClientSettings.java index 34789f7..201bee4 100644 --- a/API/src/main/java/io/github/jwdeveloper/tiktok/data/settings/LiveClientSettings.java +++ b/API/src/main/java/io/github/jwdeveloper/tiktok/data/settings/LiveClientSettings.java @@ -90,11 +90,18 @@ public class LiveClientSettings { private boolean throwOnAgeRestriction; /** - * Optional: Sometimes not every messages from chat are send to TikTokLiveJava to fix this issue you can set sessionId - * @see Documentation: How to obtain sessionId + * Optional: Sometimes not every messages from chat are send to TikTokLiveJava to fix this issue you can set sessionId. + *

This requires {@link #ttTargetIdc} also being set correctly for sessionid to be effective. + * @apiNote This cookie is supplied by TikTok and can be found in your browser cookies. */ private String sessionId; + /** + * Used with {@link #sessionId} to verify it is valid and return extra chat messages and 18+ content. + * @apiNote This cookie is supplied by TikTok and can be found in your browser cookies. + */ + private String ttTargetIdc; + /** * Optional: By default roomID is fetched before connect to live, but you can set it manually */ diff --git a/Client/src/main/java/io/github/jwdeveloper/tiktok/TikTokLiveHttpClient.java b/Client/src/main/java/io/github/jwdeveloper/tiktok/TikTokLiveHttpClient.java index 8d4fd39..61b67f3 100644 --- a/Client/src/main/java/io/github/jwdeveloper/tiktok/TikTokLiveHttpClient.java +++ b/Client/src/main/java/io/github/jwdeveloper/tiktok/TikTokLiveHttpClient.java @@ -113,6 +113,7 @@ public class TikTokLiveHttpClient implements LiveHttpClient .withParam("uniqueId", request.getUserName()) .withParam("sourceType", "54") //MAGIC NUMBER, WHAT 54 means? .withCookie("sessionid", clientSettings.getSessionId()) + .withCookie("tt-target-idc", clientSettings.getTtTargetIdc()) .build() .toJsonResponse(); @@ -141,6 +142,7 @@ public class TikTokLiveHttpClient implements LiveHttpClient var result = httpFactory.client(url) .withParam("room_id", request.getRoomId()) .withCookie("sessionid", clientSettings.getSessionId()) + .withCookie("tt-target-idc", clientSettings.getTtTargetIdc()) .build() .toJsonResponse();