From c51cfb4165b1fcbd8bc1e41dcecbf2a3644b7c51 Mon Sep 17 00:00:00 2001 From: Samantha Date: Thu, 29 Feb 2024 08:07:34 +0700 Subject: [PATCH 1/6] sora: fix m4uhd --- SoraStream/build.gradle.kts | 2 +- .../main/kotlin/com/hexated/SoraExtractor.kt | 56 +++---------------- .../src/main/kotlin/com/hexated/SoraStream.kt | 4 +- settings.gradle.kts | 2 +- 4 files changed, 12 insertions(+), 52 deletions(-) diff --git a/SoraStream/build.gradle.kts b/SoraStream/build.gradle.kts index 4f2c8e13..850450e8 100644 --- a/SoraStream/build.gradle.kts +++ b/SoraStream/build.gradle.kts @@ -1,7 +1,7 @@ import org.jetbrains.kotlin.konan.properties.Properties // use an integer for version numbers -version = 225 +version = 226 android { defaultConfig { diff --git a/SoraStream/src/main/kotlin/com/hexated/SoraExtractor.kt b/SoraStream/src/main/kotlin/com/hexated/SoraExtractor.kt index 3a5873df..be66f63a 100644 --- a/SoraStream/src/main/kotlin/com/hexated/SoraExtractor.kt +++ b/SoraStream/src/main/kotlin/com/hexated/SoraExtractor.kt @@ -202,48 +202,6 @@ object SoraExtractor : SoraStream() { } } - suspend fun invokeMoviefiction( - title: String? = null, - season: Int? = null, - episode: Int? = null, - subtitleCallback: (SubtitleFile) -> Unit, - callback: (ExtractorLink) -> Unit - ) { - val fixTitle = title?.createSlug() - val url = if (season == null) { - "$moviefictionAPI/movies/$fixTitle" - } else { - "$moviefictionAPI/episode/$fixTitle-${season}x${episode}" - } - val req = app.get(url) - val directUrl = getBaseUrl(req.url) - req.document.select("ul.bx-lst.aa-tbs li a").apmap { - val iframe = app.get(base64Decode(it.attr("data-src"))).document.selectFirst("iframe") - ?.attr("src") ?: return@apmap - loadExtractor(iframe, "$directUrl/", subtitleCallback) { link -> - when { - link.name == "Bestx" && link.quality == Qualities.Unknown.value -> { - callback.invoke( - ExtractorLink( - "Moviefiction", - "Moviefiction", - link.url, - link.referer, - Qualities.P1080.value, - link.type, - link.headers, - link.extractorData - ) - ) - } - link.name != "Bestx" -> { - callback.invoke(link) - } - } - } - } - } - suspend fun invokeAoneroom( title: String? = null, year: Int? = null, @@ -1377,14 +1335,16 @@ object SoraExtractor : SoraStream() { ) { val slugTitle = title?.createSlug() val (seasonSlug, episodeSlug) = getEpisodeSlug(season, episode) - val req = app.get("$m4uhdAPI/search/$slugTitle.html", timeout = 20) + val req = app.get("$m4uhdAPI/search/$slugTitle", timeout = 20) val referer = getBaseUrl(req.url) - val media = req.document.select("div.row div.item > a").map { it.attr("href") } - val mediaUrl = if(media.size == 1) { + val media = req.document.select("div.row div.item a").map { it.attr("href") } + val mediaUrl = if (media.size == 1) { media.first() } else { - media.find { it.contains("-$slugTitle-") && it.contains("-$year-") } + media.find { + if(season == null) it.startsWith("movies/$slugTitle-$year.") else it.startsWith("tv-series/$slugTitle-$year.") + } } val link = fixUrl(mediaUrl ?: return, referer) @@ -1398,7 +1358,7 @@ object SoraExtractor : SoraStream() { doc.select("div.le-server span").map { it.attr("data") } } else { val idepisode = - doc.selectFirst("div.season > p:matches((?i)S$seasonSlug-E$episodeSlug) button") + doc.selectFirst("button[class=episode]:matches(S$seasonSlug-E$episodeSlug)") ?.attr("idepisode") ?: return val requestEmbed = app.post( @@ -2420,7 +2380,7 @@ object SoraExtractor : SoraStream() { season: Int? = null, episode: Int? = null, callback: (ExtractorLink) -> Unit, - host: String = "https://dozzlegram-duj-i-280.site", + host: String = "https://guinsters286nedril.com", ) { val res = app.get( "$host/play/$imdbId", diff --git a/SoraStream/src/main/kotlin/com/hexated/SoraStream.kt b/SoraStream/src/main/kotlin/com/hexated/SoraStream.kt index 8df050d4..9c83d5fd 100644 --- a/SoraStream/src/main/kotlin/com/hexated/SoraStream.kt +++ b/SoraStream/src/main/kotlin/com/hexated/SoraStream.kt @@ -90,7 +90,7 @@ open class SoraStream : TmdbProvider() { const val crunchyrollAPI = "https://beta-api.crunchyroll.com" const val kissKhAPI = "https://kisskh.co" const val lingAPI = "https://ling-online.net" - const val m4uhdAPI = "https://m4umv.org" + const val m4uhdAPI = "https://ww1.streamm4u.ws" const val rStreamAPI = "https://remotestream.cc" const val flixonAPI = "https://flixon.lol" const val smashyStreamAPI = "https://embed.smashystream.com" @@ -115,9 +115,9 @@ open class SoraStream : TmdbProvider() { const val mMoviesAPI = "https://multimovies.uno" const val watchCartoonAPI = "https://www1.watchcartoononline.bz" const val moflixAPI = "https://moflix-stream.xyz" - const val moviefictionAPI = "https://moviefiction.com" const val zoechipAPI = "https://zoechip.org" const val nepuAPI = "https://nepu.to" + const val fdMoviesAPI = "https://freedrivemovie.com" const val uhdmoviesAPI = "https://uhdmovies.asia" const val hdmovies4uAPI = "https://hdmovies4u.day" diff --git a/settings.gradle.kts b/settings.gradle.kts index 5df21340..c969792c 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -2,7 +2,7 @@ rootProject.name = "CloudstreamPlugins" // This file sets what projects are included. All new projects should get automatically included unless specified in "disabled" variable. -val disabled = listOf("Animixplay","Kickassanime") +val disabled = listOf("Animixplay","Kickassanime","Hdfilmcehennemi") File(rootDir, ".").eachDir { dir -> if (!disabled.contains(dir.name) && File(dir, "build.gradle.kts").exists()) { From b1895e85c19c01ef76cc303592fc38370231db36 Mon Sep 17 00:00:00 2001 From: Samantha Date: Thu, 29 Feb 2024 09:19:00 +0700 Subject: [PATCH 2/6] fix #597 --- Anichi/build.gradle.kts | 2 +- Kinoger/build.gradle.kts | 2 +- Kinoger/src/main/kotlin/com/hexated/Kinoger.kt | 2 +- SoraStream/build.gradle.kts | 2 +- Superstream/build.gradle.kts | 2 +- TimefourTv/build.gradle.kts | 4 ++-- TimefourTv/src/main/kotlin/com/hexated/TimefourTv.kt | 5 ++--- 7 files changed, 9 insertions(+), 10 deletions(-) diff --git a/Anichi/build.gradle.kts b/Anichi/build.gradle.kts index 4201a7b2..c458c780 100644 --- a/Anichi/build.gradle.kts +++ b/Anichi/build.gradle.kts @@ -38,5 +38,5 @@ cloudstream { "OVA", ) - iconUrl = "https://cdn.discordapp.com/attachments/1109266606292488297/1200425504432472176/Anichi.png" + iconUrl = "https://cdn.discordapp.com/attachments/1109266606292488297/1200425504432472176/Anichi.png?ex=65eb0c5f&is=65d8975f&hm=974898b22b08774a5caa835b40546a6419280446b68255147dd1febb3abe9119&" } \ No newline at end of file diff --git a/Kinoger/build.gradle.kts b/Kinoger/build.gradle.kts index f7decb7b..116c52bd 100644 --- a/Kinoger/build.gradle.kts +++ b/Kinoger/build.gradle.kts @@ -1,5 +1,5 @@ // use an integer for version numbers -version = 3 +version = 4 cloudstream { diff --git a/Kinoger/src/main/kotlin/com/hexated/Kinoger.kt b/Kinoger/src/main/kotlin/com/hexated/Kinoger.kt index d53d819f..245799ee 100644 --- a/Kinoger/src/main/kotlin/com/hexated/Kinoger.kt +++ b/Kinoger/src/main/kotlin/com/hexated/Kinoger.kt @@ -77,7 +77,7 @@ class Kinoger : MainAPI() { it.toSearchResult() } - val script = document.selectFirst("script:containsData(pw.show)")?.data() + val script = document.selectFirst("script:containsData(kinoger.ru)")?.data() val data = script?.substringAfter("[")?.substringBeforeLast("]")?.replace("\'", "\"") val json = AppUtils.tryParseJson>>("[$data]") diff --git a/SoraStream/build.gradle.kts b/SoraStream/build.gradle.kts index 850450e8..09f8b18f 100644 --- a/SoraStream/build.gradle.kts +++ b/SoraStream/build.gradle.kts @@ -42,5 +42,5 @@ cloudstream { "Movie", ) - iconUrl = "https://cdn.discordapp.com/attachments/1109266606292488297/1193122096159674448/2-modified.png" + iconUrl = "https://cdn.discordapp.com/attachments/1109266606292488297/1193122096159674448/2-modified.png?ex=65ec2a0a&is=65d9b50a&hm=f1e0b0165e71101e5440b47592d9e15727a6c00cdeb3512108067bfbdbef1af7&" } diff --git a/Superstream/build.gradle.kts b/Superstream/build.gradle.kts index 2bf7d8a9..057e3884 100644 --- a/Superstream/build.gradle.kts +++ b/Superstream/build.gradle.kts @@ -38,5 +38,5 @@ cloudstream { ) - iconUrl = "https://cdn.discordapp.com/attachments/1109266606292488297/1196694385061003334/icon.png" + iconUrl = "https://cdn.discordapp.com/attachments/1109266606292488297/1196694385061003334/icon.png?ex=65efee7e&is=65dd797e&hm=18fa57323826d0cbf3cf5ce7d3f5705de640f2f8d08739d41f95882d2ae0a3e0&" } \ No newline at end of file diff --git a/TimefourTv/build.gradle.kts b/TimefourTv/build.gradle.kts index a28f5bbf..6ed08fe4 100644 --- a/TimefourTv/build.gradle.kts +++ b/TimefourTv/build.gradle.kts @@ -1,5 +1,5 @@ // use an integer for version numbers -version = 23 +version = 24 cloudstream { @@ -21,5 +21,5 @@ cloudstream { "Live", ) - iconUrl = "https://cdn.discordapp.com/attachments/1109266606292488297/1193088870212976640/Untitled.jpg" + iconUrl = "https://cdn.discordapp.com/attachments/1109266606292488297/1193088870212976640/Untitled.jpg?ex=65ec0b19&is=65d99619&hm=0eaf0f1926b6eb787b80c2eb3000ec9d77e2e706ab0601cad053ad8f677b8cc8&" } diff --git a/TimefourTv/src/main/kotlin/com/hexated/TimefourTv.kt b/TimefourTv/src/main/kotlin/com/hexated/TimefourTv.kt index 53eef45d..d3bbe57f 100644 --- a/TimefourTv/src/main/kotlin/com/hexated/TimefourTv.kt +++ b/TimefourTv/src/main/kotlin/com/hexated/TimefourTv.kt @@ -17,10 +17,9 @@ class TimefourTv : MainAPI() { TvType.Live ) - private val homePoster = - "https://cdn.discordapp.com/attachments/1109266606292488297/1193060449193840681/Screenshot_2024-01-06_at_12-14-16_Logo_Maker_Used_By_2.3_Million_Startups.png" + private val homePoster = "https://cdn.discordapp.com/attachments/1109266606292488297/1193060449193840681/Screenshot_2024-01-06_at_12-14-16_Logo_Maker_Used_By_2.3_Million_Startups.png?ex=65ebf0a1&is=65d97ba1&hm=aa4018534090d5dc69cf16a15ab4663d6f84a742d3f3b5ccad4be779c26517d7&" private val detailPoster = - "https://cdn.discordapp.com/attachments/1109266606292488297/1193060448929595454/Screenshot_2024-01-06_at_12-13-02_Logo_Maker_Used_By_2.3_Million_Startups.png" + "https://cdn.discordapp.com/attachments/1109266606292488297/1193060448929595454/Screenshot_2024-01-06_at_12-13-02_Logo_Maker_Used_By_2.3_Million_Startups.png?ex=65ebf0a1&is=65d97ba1&hm=2dc35d2fcc09530f6d9fc963ecf6b9a28eeec1a7c76a083711379c7280dd34dc&" override val mainPage = mainPageOf( "$mainUrl/24-7-channels.php" to "24/7 Channels", From b7f845d88d68bdcf0d314090ec677eaaed011792 Mon Sep 17 00:00:00 2001 From: adityajd <45625055+adityajd@users.noreply.github.com> Date: Fri, 1 Mar 2024 04:27:45 +0700 Subject: [PATCH 3/6] Adityajd patch 1 (#616) * Update RebahinProvider.kt * Update LayarKacaProvider.kt update main url ="https://tv3.lk21official.wiki" change to "https://tv4.lk21official.wiki" * Update LayarKacaProvider.kt * Update Dubbindo.kt update domain * Update Cgvindo.kt * Update DramaidProvider.kt * Update DutaMovie.kt * Update Ngefilm.kt * Update Pusatfilm.kt * Update LayarKacaProvider.kt * Update build.gradle.kts * Update RebahinProvider.kt * Update DutaMovie.kt Update mainurl * Update build.gradle.kts * Update Ngefilm.kt * Update DramaSerial.kt * Update Nodrakorid.kt update mainurl * Update Pusatfilm.kt update mainurl * Update DramaSerial.kt update serverurl http://31.220.73.179/ * Update build.gradle.kts * Update LayarKacaProvider.kt update mainurl * Update DutaMovie.kt update mainurl * Update Pusatfilm.kt update mainurl * Update Multiplex.kt update mainurl * Update Ngefilm.kt update mainurl * Update Ngefilm.kt update mainurl * Update DutaMovie.kt update mainurl * Update Multiplex.kt update mainurl * Update Ngefilm.kt update mainurl * Update Pusatfilm.kt update mainurl * Update build.gradle.kts * Update LayarKacaProvider.kt update mainUrl update seriesUrl * Update UseeTv.kt update mainurl * Update Multiplex.kt fix indofilm * Update LayarKacaProvider.kt Update main url * Update build.gradle.kts Domain * Update DutaMovie.kt Update mainurl * Update Gomov.kt Update mainurl * Update Multiplex.kt Update mainurl * Update Ngefilm.kt Update mainurl * Update Pusatfilm.kt Update mainurl * Update Cgvindo.kt Update mainurl * Update Kitanonton.kt Update mainurl * Update RebahinProvider.kt Update mainurl * Update Pusatfilm.kt change to old mainurl --- Gomov/src/main/kotlin/com/hexated/DutaMovie.kt | 5 +++-- Gomov/src/main/kotlin/com/hexated/Gomov.kt | 6 ++++-- Gomov/src/main/kotlin/com/hexated/Multiplex.kt | 4 +++- Gomov/src/main/kotlin/com/hexated/Ngefilm.kt | 4 +++- Gomov/src/main/kotlin/com/hexated/Pusatfilm.kt | 2 ++ LayarKacaProvider/build.gradle.kts | 4 +++- .../src/main/kotlin/com/hexated/LayarKacaProvider.kt | 6 ++++-- RebahinProvider/src/main/kotlin/com/hexated/Cgvindo.kt | 4 +++- RebahinProvider/src/main/kotlin/com/hexated/Kitanonton.kt | 2 +- .../src/main/kotlin/com/hexated/RebahinProvider.kt | 4 ++-- UseeTv/src/main/kotlin/com/hexated/UseeTv.kt | 6 +++--- 11 files changed, 31 insertions(+), 16 deletions(-) diff --git a/Gomov/src/main/kotlin/com/hexated/DutaMovie.kt b/Gomov/src/main/kotlin/com/hexated/DutaMovie.kt index 64ebf253..9b62f141 100644 --- a/Gomov/src/main/kotlin/com/hexated/DutaMovie.kt +++ b/Gomov/src/main/kotlin/com/hexated/DutaMovie.kt @@ -6,8 +6,9 @@ import com.lagradost.cloudstream3.utils.httpsify import com.lagradost.cloudstream3.utils.loadExtractor class DutaMovie : Gomov() { - override var mainUrl = "https://yandex.dutamovie21.tech" - override var name = "DutaMovie" + + override var mainUrl = "https://viral.dutamovie21.tech" +override var name = "DutaMovie" override val mainPage = mainPageOf( "category/box-office/page/%d/" to "Box Office", "category/serial-tv/page/%d/" to "Serial TV", diff --git a/Gomov/src/main/kotlin/com/hexated/Gomov.kt b/Gomov/src/main/kotlin/com/hexated/Gomov.kt index 908f2b62..be8f721e 100644 --- a/Gomov/src/main/kotlin/com/hexated/Gomov.kt +++ b/Gomov/src/main/kotlin/com/hexated/Gomov.kt @@ -10,7 +10,9 @@ import org.jsoup.nodes.Element import java.net.URI open class Gomov : MainAPI() { - override var mainUrl = "https://gomov.co" + + override var mainUrl = "https://gomov.info" + private var directUrl: String? = null override var name = "Gomov" override val hasMainPage = true @@ -201,4 +203,4 @@ open class Gomov : MainAPI() { } } -} \ No newline at end of file +} diff --git a/Gomov/src/main/kotlin/com/hexated/Multiplex.kt b/Gomov/src/main/kotlin/com/hexated/Multiplex.kt index 1ea025f1..2b2d4bae 100644 --- a/Gomov/src/main/kotlin/com/hexated/Multiplex.kt +++ b/Gomov/src/main/kotlin/com/hexated/Multiplex.kt @@ -3,7 +3,9 @@ package com.hexated import com.lagradost.cloudstream3.mainPageOf class Multiplex : Gomov() { - override var mainUrl = "http://5.189.181.147" + + override var mainUrl = "http://95.111.236.109" + override var name = "Multiplex" override val mainPage = mainPageOf( "country/usa/page/%d/" to "Movie", diff --git a/Gomov/src/main/kotlin/com/hexated/Ngefilm.kt b/Gomov/src/main/kotlin/com/hexated/Ngefilm.kt index 7ed59d86..18c180fe 100644 --- a/Gomov/src/main/kotlin/com/hexated/Ngefilm.kt +++ b/Gomov/src/main/kotlin/com/hexated/Ngefilm.kt @@ -3,7 +3,9 @@ package com.hexated import com.lagradost.cloudstream3.mainPageOf class Ngefilm : Gomov() { - override var mainUrl = "https://nf1.ngefilm21.quest" + + override var mainUrl = "https://ngefilm21.pics" + override var name = "Ngefilm" override val mainPage = mainPageOf( "/page/%d/?s&search=advanced&post_type=movie&index&orderby&genre&movieyear&country&quality=" to "Movies Terbaru", diff --git a/Gomov/src/main/kotlin/com/hexated/Pusatfilm.kt b/Gomov/src/main/kotlin/com/hexated/Pusatfilm.kt index 02709fbc..66a36642 100644 --- a/Gomov/src/main/kotlin/com/hexated/Pusatfilm.kt +++ b/Gomov/src/main/kotlin/com/hexated/Pusatfilm.kt @@ -6,7 +6,9 @@ import com.lagradost.cloudstream3.TvSeriesLoadResponse import com.lagradost.cloudstream3.* class Pusatfilm : Gomov() { + override var mainUrl = "https://pf21.vip" + override var name = "Pusatfilm" override val mainPage = mainPageOf( "film-terbaru/page/%d/" to "Film Terbaru", diff --git a/LayarKacaProvider/build.gradle.kts b/LayarKacaProvider/build.gradle.kts index 2b098a66..cde22772 100644 --- a/LayarKacaProvider/build.gradle.kts +++ b/LayarKacaProvider/build.gradle.kts @@ -23,5 +23,7 @@ cloudstream { "Movie", ) - iconUrl = "https://s8.lk21static.xyz/wp-content/themes/dunia21/images/favicon-set/ms-icon-144x144.png" + + iconUrl = "https://www.google.com/s2/favicons?domain=amp.lk21official.mom&sz=%size%" + } diff --git a/LayarKacaProvider/src/main/kotlin/com/hexated/LayarKacaProvider.kt b/LayarKacaProvider/src/main/kotlin/com/hexated/LayarKacaProvider.kt index 60321ed5..009dda96 100644 --- a/LayarKacaProvider/src/main/kotlin/com/hexated/LayarKacaProvider.kt +++ b/LayarKacaProvider/src/main/kotlin/com/hexated/LayarKacaProvider.kt @@ -8,8 +8,10 @@ import com.lagradost.cloudstream3.utils.* import org.jsoup.nodes.Element class LayarKacaProvider : MainAPI() { - override var mainUrl = "https://tv10.lk21official.wiki" - private var seriesUrl = "https://tv11.nontondrama.click" + + override var mainUrl = "https://amp.lk21official.mom" + private var seriesUrl = "https://tv12.nontondrama.click/" + override var name = "LayarKaca" override val hasMainPage = true override var lang = "id" diff --git a/RebahinProvider/src/main/kotlin/com/hexated/Cgvindo.kt b/RebahinProvider/src/main/kotlin/com/hexated/Cgvindo.kt index 945e4eca..19ca8e05 100644 --- a/RebahinProvider/src/main/kotlin/com/hexated/Cgvindo.kt +++ b/RebahinProvider/src/main/kotlin/com/hexated/Cgvindo.kt @@ -3,7 +3,9 @@ package com.hexated import com.lagradost.cloudstream3.TvType class Cgvindo : RebahinProvider() { - override var mainUrl = "http://cgvindo.lol" + + override var mainUrl = "http://51.68.185.138/" + override var name = "Cgvindo" } diff --git a/RebahinProvider/src/main/kotlin/com/hexated/Kitanonton.kt b/RebahinProvider/src/main/kotlin/com/hexated/Kitanonton.kt index 00965629..8ae61d1c 100644 --- a/RebahinProvider/src/main/kotlin/com/hexated/Kitanonton.kt +++ b/RebahinProvider/src/main/kotlin/com/hexated/Kitanonton.kt @@ -3,7 +3,7 @@ package com.hexated import com.lagradost.cloudstream3.* class Kitanonton : RebahinProvider() { - override var mainUrl = "http://kitanonton.top" + override var mainUrl = "http://kitanonton.skin/" override var name = "KitaNonton" override var mainServer = "https://199.87.210.226" diff --git a/RebahinProvider/src/main/kotlin/com/hexated/RebahinProvider.kt b/RebahinProvider/src/main/kotlin/com/hexated/RebahinProvider.kt index 6bec8822..fd53e2cc 100644 --- a/RebahinProvider/src/main/kotlin/com/hexated/RebahinProvider.kt +++ b/RebahinProvider/src/main/kotlin/com/hexated/RebahinProvider.kt @@ -12,12 +12,12 @@ import org.jsoup.nodes.Element import java.net.URI open class RebahinProvider : MainAPI() { - override var mainUrl = "http://179.43.163.54" + override var mainUrl = "http://179.43.169.211/" private var directUrl: String? = null override var name = "Rebahin" override val hasMainPage = true override var lang = "id" - open var mainServer = "http://172.96.161.72" + open var mainServer = "http://179.43.169.211/" override val supportedTypes = setOf( TvType.Movie, TvType.TvSeries, diff --git a/UseeTv/src/main/kotlin/com/hexated/UseeTv.kt b/UseeTv/src/main/kotlin/com/hexated/UseeTv.kt index ec434ffb..22482516 100644 --- a/UseeTv/src/main/kotlin/com/hexated/UseeTv.kt +++ b/UseeTv/src/main/kotlin/com/hexated/UseeTv.kt @@ -6,7 +6,7 @@ import com.lagradost.cloudstream3.utils.M3u8Helper import org.jsoup.nodes.Element class UseeTv : MainAPI() { - override var mainUrl = "https://www.useetv.com" + override var mainUrl = "https://www.indihometv.com/" override var name = "Useetv" override var lang = "id" override val hasDownloadSupport = false @@ -16,7 +16,7 @@ class UseeTv : MainAPI() { ) companion object { - private const val mainLink = "https://streaming.useetv.com" + private const val mainLink = "https://www.indihometv.com/" } override suspend fun getMainPage(page: Int, request: MainPageRequest): HomePageResponse { @@ -90,4 +90,4 @@ class UseeTv : MainAPI() { } -} \ No newline at end of file +} From ce9e50805a4d646dcaedf1662b244e2789c71c8c Mon Sep 17 00:00:00 2001 From: Samantha Date: Fri, 1 Mar 2024 04:40:58 +0700 Subject: [PATCH 4/6] . --- SoraStream/src/main/kotlin/com/hexated/SoraStreamLite.kt | 1 - 1 file changed, 1 deletion(-) diff --git a/SoraStream/src/main/kotlin/com/hexated/SoraStreamLite.kt b/SoraStream/src/main/kotlin/com/hexated/SoraStreamLite.kt index 122f4c45..e261fc26 100644 --- a/SoraStream/src/main/kotlin/com/hexated/SoraStreamLite.kt +++ b/SoraStream/src/main/kotlin/com/hexated/SoraStreamLite.kt @@ -29,7 +29,6 @@ import com.hexated.SoraExtractor.invokeVidsrcto import com.hexated.SoraExtractor.invokeCinemaTv import com.hexated.SoraExtractor.invokeMoflix import com.hexated.SoraExtractor.invokeGhostx -import com.hexated.SoraExtractor.invokeMoviefiction import com.hexated.SoraExtractor.invokeNepu import com.hexated.SoraExtractor.invokeWatchCartoon import com.hexated.SoraExtractor.invokeWatchsomuch From ed1ddbc9ddd31358ebde6d64d1e10a2149645de0 Mon Sep 17 00:00:00 2001 From: phisher98 <153359846+phisher98@users.noreply.github.com> Date: Mon, 4 Mar 2024 21:23:59 +0530 Subject: [PATCH 5/6] Update Animesaga.kt (#621) --- Movierulzhd/src/main/kotlin/com/hexated/Animesaga.kt | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Movierulzhd/src/main/kotlin/com/hexated/Animesaga.kt b/Movierulzhd/src/main/kotlin/com/hexated/Animesaga.kt index 11dd68d3..5502fbb2 100644 --- a/Movierulzhd/src/main/kotlin/com/hexated/Animesaga.kt +++ b/Movierulzhd/src/main/kotlin/com/hexated/Animesaga.kt @@ -6,7 +6,7 @@ import com.lagradost.cloudstream3.mainPageOf class Animesaga : Movierulzhd() { override var mainUrl = "https://anplay.in" - override var name = "Animesaga" + override var name = "Anplay" override val supportedTypes = setOf( TvType.Anime, TvType.AnimeMovie, @@ -17,5 +17,6 @@ class Animesaga : Movierulzhd() { "movies" to "Movies", "tvshows" to "TV-Shows", "genre/hindi-dub" to "Hindi Dub", + "genre/crunchyroll" to "Crunchyroll", ) -} \ No newline at end of file +} From 1a3714d1eb5501c165919c478b1bcdfc6f6c35ad Mon Sep 17 00:00:00 2001 From: Samantha Date: Tue, 5 Mar 2024 23:51:56 +0700 Subject: [PATCH 6/6] fix #624, close #619 --- Movierulzhd/build.gradle.kts | 2 +- .../src/main/kotlin/com/hexated/Movierulzhd.kt | 2 +- SoraStream/build.gradle.kts | 2 +- .../main/kotlin/com/hexated/SoraExtractor.kt | 18 +++++++++--------- .../src/main/kotlin/com/hexated/SoraParser.kt | 2 +- .../src/main/kotlin/com/hexated/SoraStream.kt | 2 +- 6 files changed, 14 insertions(+), 14 deletions(-) diff --git a/Movierulzhd/build.gradle.kts b/Movierulzhd/build.gradle.kts index 7f643139..6c45e8ca 100644 --- a/Movierulzhd/build.gradle.kts +++ b/Movierulzhd/build.gradle.kts @@ -1,5 +1,5 @@ // use an integer for version numbers -version = 63 +version = 64 cloudstream { diff --git a/Movierulzhd/src/main/kotlin/com/hexated/Movierulzhd.kt b/Movierulzhd/src/main/kotlin/com/hexated/Movierulzhd.kt index 9954eb5d..a45157ca 100644 --- a/Movierulzhd/src/main/kotlin/com/hexated/Movierulzhd.kt +++ b/Movierulzhd/src/main/kotlin/com/hexated/Movierulzhd.kt @@ -11,7 +11,7 @@ import java.net.URI open class Movierulzhd : MainAPI() { - override var mainUrl = "https://movierulzhd.cafe" + override var mainUrl = "https://movierulzhd.club" var directUrl = "" override var name = "Movierulzhd" override val hasMainPage = true diff --git a/SoraStream/build.gradle.kts b/SoraStream/build.gradle.kts index 09f8b18f..b18344b1 100644 --- a/SoraStream/build.gradle.kts +++ b/SoraStream/build.gradle.kts @@ -1,7 +1,7 @@ import org.jetbrains.kotlin.konan.properties.Properties // use an integer for version numbers -version = 226 +version = 227 android { defaultConfig { diff --git a/SoraStream/src/main/kotlin/com/hexated/SoraExtractor.kt b/SoraStream/src/main/kotlin/com/hexated/SoraExtractor.kt index be66f63a..a5dd613d 100644 --- a/SoraStream/src/main/kotlin/com/hexated/SoraExtractor.kt +++ b/SoraStream/src/main/kotlin/com/hexated/SoraExtractor.kt @@ -857,7 +857,7 @@ object SoraExtractor : SoraStream() { invokeAnimetosho(malId, season, episode, subtitleCallback, callback) }, { - invokeAniwatch(zoroIds, episode, subtitleCallback, callback) + invokeHianime(zoroIds, episode, subtitleCallback, callback) }, { invokeAniwave(aniwaveId, episode, subtitleCallback, callback) @@ -955,7 +955,7 @@ object SoraExtractor : SoraStream() { } - private suspend fun invokeAniwatch( + private suspend fun invokeHianime( animeIds: List? = null, episode: Int? = null, subtitleCallback: (SubtitleFile) -> Unit, @@ -966,17 +966,17 @@ object SoraExtractor : SoraStream() { ) animeIds?.apmap { id -> val episodeId = app.get( - "$aniwatchAPI/ajax/v2/episode/list/${id ?: return@apmap}", + "$hianimeAPI/ajax/v2/episode/list/${id ?: return@apmap}", headers = headers - ).parsedSafe()?.html?.let { + ).parsedSafe()?.html?.let { Jsoup.parse(it) }?.select("div.ss-list a")?.find { it.attr("data-number") == "${episode ?: 1}" } ?.attr("data-id") val servers = app.get( - "$aniwatchAPI/ajax/v2/episode/servers?episodeId=${episodeId ?: return@apmap}", + "$hianimeAPI/ajax/v2/episode/servers?episodeId=${episodeId ?: return@apmap}", headers = headers - ).parsedSafe()?.html?.let { Jsoup.parse(it) } + ).parsedSafe()?.html?.let { Jsoup.parse(it) } ?.select("div.item.server-item")?.map { Triple( it.text(), @@ -987,15 +987,15 @@ object SoraExtractor : SoraStream() { servers?.apmap servers@{ server -> val iframe = app.get( - "$aniwatchAPI/ajax/v2/episode/sources?id=${server.second ?: return@servers}", + "$hianimeAPI/ajax/v2/episode/sources?id=${server.second ?: return@servers}", headers = headers - ).parsedSafe()?.link + ).parsedSafe()?.link ?: return@servers val audio = if (server.third == "sub") "Raw" else "English Dub" loadCustomExtractor( "${server.first} [$audio]", iframe, - "$aniwatchAPI/", + "$hianimeAPI/", subtitleCallback, callback, ) diff --git a/SoraStream/src/main/kotlin/com/hexated/SoraParser.kt b/SoraStream/src/main/kotlin/com/hexated/SoraParser.kt index 0fdb7778..029d0af6 100644 --- a/SoraStream/src/main/kotlin/com/hexated/SoraParser.kt +++ b/SoraStream/src/main/kotlin/com/hexated/SoraParser.kt @@ -274,7 +274,7 @@ data class MALSyncResponses( @JsonProperty("Sites") val sites: MALSyncSites? = null, ) -data class AniwatchResponses( +data class HianimeResponses( @JsonProperty("html") val html: String? = null, @JsonProperty("link") val link: String? = null, ) diff --git a/SoraStream/src/main/kotlin/com/hexated/SoraStream.kt b/SoraStream/src/main/kotlin/com/hexated/SoraStream.kt index 9c83d5fd..029d46dc 100644 --- a/SoraStream/src/main/kotlin/com/hexated/SoraStream.kt +++ b/SoraStream/src/main/kotlin/com/hexated/SoraStream.kt @@ -85,7 +85,7 @@ open class SoraStream : TmdbProvider() { const val noverseAPI = "https://www.nollyverse.com" const val filmxyAPI = "https://www.filmxy.vip" const val kimcartoonAPI = "https://kimcartoon.li" - const val aniwatchAPI = "https://aniwatch.to" + const val hianimeAPI = "https://hianime.to" const val aniwaveAPI = "https://aniwave.to" const val crunchyrollAPI = "https://beta-api.crunchyroll.com" const val kissKhAPI = "https://kisskh.co"