diff --git a/src/main/java/ctbrec/recorder/server/HttpServer.java b/src/main/java/ctbrec/recorder/server/HttpServer.java index ccf47cde..a83c0025 100644 --- a/src/main/java/ctbrec/recorder/server/HttpServer.java +++ b/src/main/java/ctbrec/recorder/server/HttpServer.java @@ -20,6 +20,7 @@ import ctbrec.Config; import ctbrec.recorder.LocalRecorder; import ctbrec.recorder.Recorder; import ctbrec.sites.Site; +import ctbrec.sites.camsoda.Camsoda; import ctbrec.sites.chaturbate.Chaturbate; import ctbrec.sites.mfc.MyFreeCams; @@ -52,7 +53,9 @@ public class HttpServer { } recorder = new LocalRecorder(config); for (Site site : sites) { - site.init(); + if(site.isEnabled()) { + site.init(); + } } startHttpServer(); } @@ -60,6 +63,7 @@ public class HttpServer { private void createSites() { sites.add(new Chaturbate()); sites.add(new MyFreeCams()); + sites.add(new Camsoda()); } private void addShutdownHook() { diff --git a/src/main/java/ctbrec/sites/camsoda/CamsodaModel.java b/src/main/java/ctbrec/sites/camsoda/CamsodaModel.java index c5b3483a..5f0d58bb 100644 --- a/src/main/java/ctbrec/sites/camsoda/CamsodaModel.java +++ b/src/main/java/ctbrec/sites/camsoda/CamsodaModel.java @@ -170,7 +170,16 @@ public class CamsodaModel extends AbstractModel { @Override public void setSite(Site site) { - this.site = site; + if(site instanceof Camsoda) { + this.site = site; + } else { + throw new IllegalArgumentException("Site has to be an instance of Camsoda"); + } + } + + @Override + public Site getSite() { + return site; } public void setStreamUrl(String streamUrl) { diff --git a/src/main/java/ctbrec/sites/camsoda/CamsodaTabProvider.java b/src/main/java/ctbrec/sites/camsoda/CamsodaTabProvider.java index 30e9b771..190daa89 100644 --- a/src/main/java/ctbrec/sites/camsoda/CamsodaTabProvider.java +++ b/src/main/java/ctbrec/sites/camsoda/CamsodaTabProvider.java @@ -24,7 +24,7 @@ public class CamsodaTabProvider extends TabProvider { @Override public List getTabs(Scene scene) { List tabs = new ArrayList<>(); - tabs.add(createTab("Featured", BASE_URI + "/api/v1/browse/online")); + tabs.add(createTab("Online", BASE_URI + "/api/v1/browse/online")); // ChaturbateFollowedTab followedTab = new ChaturbateFollowedTab("Followed", BASE_URI + "/followed-cams/", chaturbate); // followedTab.setRecorder(recorder); // followedTab.setScene(scene); diff --git a/src/main/java/ctbrec/sites/camsoda/CamsodaUpdateService.java b/src/main/java/ctbrec/sites/camsoda/CamsodaUpdateService.java index b5832798..6b745f4a 100644 --- a/src/main/java/ctbrec/sites/camsoda/CamsodaUpdateService.java +++ b/src/main/java/ctbrec/sites/camsoda/CamsodaUpdateService.java @@ -70,14 +70,14 @@ public class CamsodaUpdateService extends PaginatedScheduledService { model.setPreview(preview); models.add(model); } else { - LOG.debug("{}", result.toString(2)); + //LOG.debug("{}", result.toString(2)); String name = result.getString("username"); CamsodaModel model = (CamsodaModel) camsoda.createModel(name); - JSONArray edgeServers = result.getJSONArray("edge_servers"); - String streamName = result.getString("stream_name"); if(result.has("server_prefix")) { String serverPrefix = result.getString("server_prefix"); + String streamName = result.getString("stream_name"); + JSONArray edgeServers = result.getJSONArray("edge_servers"); model.setStreamUrl("https://" + edgeServers.getString(0) + "/cam/mp4:" + streamName + "_h264_aac_480p/playlist.m3u8"); if(result.has("tsize")) {