forked from j62/ctbrec
1
0
Fork 0

Extend regex to support more model URLs

This commit is contained in:
0xb00bface 2020-12-17 18:49:08 +01:00
parent 04ee553c1a
commit 809d86f5a2
2 changed files with 44 additions and 30 deletions

View File

@ -1,5 +1,19 @@
package ctbrec.sites.manyvids;
import static ctbrec.io.HttpConstants.*;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import java.util.Locale;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import org.json.JSONArray;
import org.json.JSONObject;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
import ctbrec.Config;
import ctbrec.Model;
import ctbrec.Model.State;
@ -11,19 +25,6 @@ import okhttp3.FormBody;
import okhttp3.Request;
import okhttp3.RequestBody;
import okhttp3.Response;
import org.json.JSONArray;
import org.json.JSONObject;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import java.util.Locale;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import static ctbrec.io.HttpConstants.*;
public class MVLive extends AbstractSite {
@ -243,7 +244,7 @@ public class MVLive extends AbstractSite {
@Override
public Model createModelFromUrl(String url) {
Matcher m = Pattern.compile("https://live.manyvids.com/stream/(.*?)(?:/.*?)?").matcher(url.trim());
Matcher m = Pattern.compile("https://live.manyvids.com/(?:stream/)?(.*?)(?:/.*?)?").matcher(url.trim());
if(m.matches()) {
return createModel(m.group(1));
}

View File

@ -1,26 +1,39 @@
package ctbrec.sites.manyvids;
import com.google.common.base.Objects;
import ctbrec.Config;
import ctbrec.sites.manyvids.wsmsg.*;
import okhttp3.Response;
import okhttp3.*;
import okio.ByteString;
import static ctbrec.StringUtil.*;
import static ctbrec.io.HttpConstants.*;
import static ctbrec.sites.manyvids.MVLive.*;
import java.io.IOException;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.Random;
import java.util.UUID;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.ScheduledThreadPoolExecutor;
import java.util.concurrent.TimeUnit;
import org.json.JSONArray;
import org.json.JSONObject;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.IOException;
import java.util.*;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.ScheduledThreadPoolExecutor;
import java.util.concurrent.TimeUnit;
import com.google.common.base.Objects;
import static ctbrec.StringUtil.isNotBlank;
import static ctbrec.io.HttpConstants.*;
import static ctbrec.sites.manyvids.MVLive.WS_ORIGIN;
import static ctbrec.sites.manyvids.MVLive.WS_URL;
import ctbrec.Config;
import ctbrec.sites.manyvids.wsmsg.GetBroadcastHealth;
import ctbrec.sites.manyvids.wsmsg.Message;
import ctbrec.sites.manyvids.wsmsg.Ping;
import ctbrec.sites.manyvids.wsmsg.RegisterMessage;
import ctbrec.sites.manyvids.wsmsg.SendMessage;
import okhttp3.Cookie;
import okhttp3.Request;
import okhttp3.Response;
import okhttp3.WebSocket;
import okhttp3.WebSocketListener;
import okio.ByteString;
public class MVLiveClient {
@ -67,7 +80,7 @@ public class MVLiveClient {
public void stop() {
running = false;
scheduler.shutdown();
Optional.ofNullable(scheduler).ifPresent(ScheduledExecutorService::shutdown);
ws.close(1000, "Good Bye"); // terminate normally (1000)
ws = null;
}