From 867e500fbdadc5384d5f8303d7ae5ff26f9a96bd Mon Sep 17 00:00:00 2001 From: 0xb00bface <0xboobface@gmail.com> Date: Sun, 20 Dec 2020 00:08:07 +0100 Subject: [PATCH] Fix MVLive recordings --- CHANGELOG.md | 4 +- .../java/ctbrec/sites/manyvids/MVLive.java | 3 +- .../ctbrec/sites/manyvids/MVLiveModel.java | 50 +++++++++++-------- 3 files changed, 34 insertions(+), 23 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9d39e8b9..7460318b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,7 +1,9 @@ 3.10.10 ======================== -* Fix: "Check URLs" button stays inactive +* Fixed MVLive recordings once again +* Fix: "Check URLs" button stays inactive after the first run * Fix: recordings for some Cam4 models still didn't start +* Some smaller tweaks here and there 3.10.9 ======================== diff --git a/common/src/main/java/ctbrec/sites/manyvids/MVLive.java b/common/src/main/java/ctbrec/sites/manyvids/MVLive.java index 0532d0ed..7b7b2a78 100644 --- a/common/src/main/java/ctbrec/sites/manyvids/MVLive.java +++ b/common/src/main/java/ctbrec/sites/manyvids/MVLive.java @@ -28,7 +28,8 @@ import okhttp3.Response; public class MVLive extends AbstractSite { - public static final String WS_URL = "wss://app-v2.live.manyvids.com"; + public static final String APP_HOST = "app-v1.live.manyvids.com"; + public static final String WS_URL = "wss://" + APP_HOST; public static final String WS_ORIGIN = "https://live.manyvids.com"; public static final String BASE_URL = "https://www.manyvids.com/MVLive/"; diff --git a/common/src/main/java/ctbrec/sites/manyvids/MVLiveModel.java b/common/src/main/java/ctbrec/sites/manyvids/MVLiveModel.java index f5b2de30..bbca090a 100644 --- a/common/src/main/java/ctbrec/sites/manyvids/MVLiveModel.java +++ b/common/src/main/java/ctbrec/sites/manyvids/MVLiveModel.java @@ -1,21 +1,9 @@ package ctbrec.sites.manyvids; -import com.iheartradio.m3u8.*; -import com.iheartradio.m3u8.data.MasterPlaylist; -import com.iheartradio.m3u8.data.Playlist; -import com.iheartradio.m3u8.data.PlaylistData; -import ctbrec.AbstractModel; -import ctbrec.Config; -import ctbrec.Model; -import ctbrec.StringUtil; -import ctbrec.io.HttpException; -import ctbrec.recorder.download.Download; -import ctbrec.recorder.download.StreamSource; -import okhttp3.Request; -import okhttp3.Response; -import org.json.JSONObject; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; +import static ctbrec.Model.State.*; +import static ctbrec.io.HttpConstants.*; +import static ctbrec.sites.manyvids.MVLive.*; +import static java.nio.charset.StandardCharsets.*; import java.io.ByteArrayInputStream; import java.io.IOException; @@ -26,9 +14,29 @@ import java.util.List; import java.util.Locale; import java.util.concurrent.ExecutionException; -import static ctbrec.Model.State.ONLINE; -import static ctbrec.io.HttpConstants.*; -import static java.nio.charset.StandardCharsets.UTF_8; +import org.json.JSONObject; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import com.iheartradio.m3u8.Encoding; +import com.iheartradio.m3u8.Format; +import com.iheartradio.m3u8.ParseException; +import com.iheartradio.m3u8.ParsingMode; +import com.iheartradio.m3u8.PlaylistException; +import com.iheartradio.m3u8.PlaylistParser; +import com.iheartradio.m3u8.data.MasterPlaylist; +import com.iheartradio.m3u8.data.Playlist; +import com.iheartradio.m3u8.data.PlaylistData; + +import ctbrec.AbstractModel; +import ctbrec.Config; +import ctbrec.Model; +import ctbrec.StringUtil; +import ctbrec.io.HttpException; +import ctbrec.recorder.download.Download; +import ctbrec.recorder.download.StreamSource; +import okhttp3.Request; +import okhttp3.Response; public class MVLiveModel extends AbstractModel { @@ -109,8 +117,8 @@ public class MVLiveModel extends AbstractModel { } public void updateCloudFlareCookies() throws IOException, InterruptedException { - String url = "https://app-v2.live.manyvids.com/api/" + getRoomNumber() + "/player-settings/" + getDisplayName(); - LOG.trace("Getting CF cookies: {}", url); + String url = "https://" + APP_HOST + "/api/" + getRoomNumber() + "/player-settings/" + getDisplayName(); + LOG.debug("Getting CF cookies: {}", url); Request req = new Request.Builder() .url(url) .header(USER_AGENT, Config.getInstance().getSettings().httpUserAgent)