move superstream

This commit is contained in:
alex 2024-01-17 04:20:08 +07:00
parent 1a341e6cf1
commit 0465f91c71
12 changed files with 1135 additions and 37 deletions

View file

@ -65,7 +65,7 @@ class StremioC : MainAPI() {
val loadData = parseJson<LoadData>(data)
val request = app.get(
"${mainUrl}/stream/${loadData.type}/${loadData.id}.json",
interceptor = interceptor
timeout = 120L
)
if (request.isSuccessful) {
val res = request.parsedSafe<StreamsResponse>()
@ -110,7 +110,7 @@ class StremioC : MainAPI() {
sites.filter { it.parentJavaClass == "StremioX" }.apmap { site ->
val res = app.get(
"${site.url.fixSourceUrl()}/stream/${type}/${id}.json",
interceptor = interceptor
timeout = 120L
).parsedSafe<StreamsResponse>()
res?.streams?.forEach { stream ->
stream.runCallback(subtitleCallback, callback)
@ -154,7 +154,7 @@ class StremioC : MainAPI() {
types.forEach { type ->
val res = app.get(
"${provider.mainUrl}/catalog/${type}/${id}/search=${query}.json",
interceptor = interceptor
timeout = 120L
).parsedSafe<CatalogResponse>()
res?.metas?.forEach { entry ->
entries.add(entry.toSearchResponse(provider))
@ -168,7 +168,7 @@ class StremioC : MainAPI() {
types.forEach { type ->
val res = app.get(
"${provider.mainUrl}/catalog/${type}/${id}.json",
interceptor = interceptor
timeout = 120L
).parsedSafe<CatalogResponse>()
res?.metas?.forEach { entry ->
entries.add(entry.toSearchResponse(provider))

View file

@ -238,7 +238,7 @@ class StremioX : TmdbProvider() {
} else {
"$fixMainUrl/stream/series/$imdbId:$season:$episode.json"
}
val res = app.get(url, interceptor = interceptor).parsedSafe<StreamsResponse>()
val res = app.get(url, timeout = 120L).parsedSafe<StreamsResponse>()
res?.streams?.forEach { stream ->
stream.runCallback(subtitleCallback, callback)
}

View file

@ -20,7 +20,7 @@ object SubsExtractors {
} else {
"series/$imdbId:$season:$episode"
}
app.get("${openSubAPI}/subtitles/$slug.json", interceptor = interceptor).parsedSafe<OsResult>()?.subtitles?.map { sub ->
app.get("${openSubAPI}/subtitles/$slug.json", timeout = 120L).parsedSafe<OsResult>()?.subtitles?.map { sub ->
subtitleCallback.invoke(
SubtitleFile(
SubtitleHelper.fromThreeLettersToLanguage(sub.lang ?: "") ?: sub.lang
@ -42,7 +42,7 @@ object SubsExtractors {
"${watchSomuchAPI}/Watch/ajMovieTorrents.aspx", data = mapOf(
"index" to "0",
"mid" to "$id",
"wsk" to "f6ea6cde-e42b-4c26-98d3-b4fe48cdd4fb",
"wsk" to "30fb68aa-1c71-4b8c-b5d4-4ca9222cfb45",
"lid" to "",
"liu" to ""
), headers = mapOf("X-Requested-With" to "XMLHttpRequest")

View file

@ -9,21 +9,6 @@ import java.text.SimpleDateFormat
import java.util.Locale
import java.util.concurrent.TimeUnit
val interceptor = TimeOutInterceptor()
class TimeOutInterceptor : Interceptor {
override fun intercept(chain: Interceptor.Chain): Response {
val call = chain
.withConnectTimeout(60, TimeUnit.SECONDS)
.withReadTimeout(60, TimeUnit.SECONDS)
.withWriteTimeout(60, TimeUnit.SECONDS)
.request()
.newBuilder()
.build()
return chain.proceed(call)
}
}
fun String.fixSourceUrl(): String {
return this.replace("/manifest.json", "").replace("stremio://", "https://")
}