diff --git a/client/src/main/java/ctbrec/ui/sites/streamate/StreamateFollowedService.java b/client/src/main/java/ctbrec/ui/sites/streamate/StreamateFollowedService.java index f19f0eed..de8b295d 100644 --- a/client/src/main/java/ctbrec/ui/sites/streamate/StreamateFollowedService.java +++ b/client/src/main/java/ctbrec/ui/sites/streamate/StreamateFollowedService.java @@ -76,7 +76,7 @@ public class StreamateFollowedService extends PaginatedScheduledService { StreamateModel model = (StreamateModel) streamate.createModel(nickname); model.setId(p.getLong("id")); model.setPreview(p.getString("thumbnail")); - boolean online = p.optBoolean("online"); + boolean online = p.optBoolean("online") && notPrivateEtc(p); model.setOnline(online); if (online == showOnline) { models.add(model); @@ -91,6 +91,19 @@ public class StreamateFollowedService extends PaginatedScheduledService { } } } + + private boolean notPrivateEtc(JSONObject p) { + if (p.has("liveState")) { + JSONObject liveState = p.getJSONObject("liveState"); + boolean offline = liveState.optBoolean("onBreak") + || liveState.optBoolean("privateChat") + || liveState.optBoolean("exclusiveShow") + || liveState.optBoolean("specialShow") + || liveState.optBoolean("goldShow"); + return !offline; + } + return false; + } }; }