diff --git a/common/src/main/java/ctbrec/sites/bonga/BongaCamsModel.java b/common/src/main/java/ctbrec/sites/bonga/BongaCamsModel.java index 839b4068..9f10abd6 100644 --- a/common/src/main/java/ctbrec/sites/bonga/BongaCamsModel.java +++ b/common/src/main/java/ctbrec/sites/bonga/BongaCamsModel.java @@ -64,22 +64,30 @@ public class BongaCamsModel extends AbstractModel { setDisplayName(performerData.optString("displayName")); String chatType = performerData.optString("showType"); boolean isAway = performerData.optBoolean("isAway"); + + // looks like isOnline key is new. Treat it's absence as true (old behavior) + boolean jsonIsOnline = performerData.optBoolean("isOnline", true); - onlineState = mapState(chatType); - if (onlineState == ONLINE) { - if (isStreamAvailable()) { - if (isAway) { - onlineState = AWAY; - online = false; + if (!jsonIsOnline) { + onlineState = OFFLINE; + online = false; + } else { + onlineState = mapState(chatType); + if (onlineState == ONLINE) { + if (isStreamAvailable()) { + if (isAway) { + onlineState = AWAY; + online = false; + } else { + online = true; + } } else { - online = true; + online = false; + onlineState = AWAY; } } else { online = false; - onlineState = AWAY; } - } else { - online = false; } return online; }