cloudstream-extensions-hexated/SoraStream/src/main/kotlin/com/hexated/SoraStreamLite.kt

243 lines
7.6 KiB
Kotlin
Raw Normal View History

2023-01-31 06:30:37 +00:00
package com.hexated
2023-02-02 06:51:20 +00:00
import com.hexated.SoraExtractor.invoke123Movie
import com.hexated.SoraExtractor.invokeAnimes
2023-03-10 22:22:24 +00:00
import com.hexated.SoraExtractor.invokeAsk4Movies
2023-02-02 06:51:20 +00:00
import com.hexated.SoraExtractor.invokeCrunchyroll
import com.hexated.SoraExtractor.invokeDbgo
import com.hexated.SoraExtractor.invokeFilmxy
import com.hexated.SoraExtractor.invokeFlixon
import com.hexated.SoraExtractor.invokeFwatayako
2023-02-14 18:01:07 +00:00
import com.hexated.SoraExtractor.invokeGomovies
2023-02-02 06:51:20 +00:00
import com.hexated.SoraExtractor.invokeHDMovieBox
import com.hexated.SoraExtractor.invokeIdlix
import com.hexated.SoraExtractor.invokeKimcartoon
import com.hexated.SoraExtractor.invokeKisskh
import com.hexated.SoraExtractor.invokeLing
import com.hexated.SoraExtractor.invokeM4uhd
2023-02-06 04:55:42 +00:00
import com.hexated.SoraExtractor.invokeMovie123Net
2023-02-02 06:51:20 +00:00
import com.hexated.SoraExtractor.invokeMovieHab
import com.hexated.SoraExtractor.invokeRStream
import com.hexated.SoraExtractor.invokeSeries9
2023-02-06 04:55:42 +00:00
import com.hexated.SoraExtractor.invokeSmashyStream
import com.hexated.SoraExtractor.invokeSoraStreamLite
2023-02-02 06:51:20 +00:00
import com.hexated.SoraExtractor.invokeTwoEmbed
import com.hexated.SoraExtractor.invokeUniqueStream
import com.hexated.SoraExtractor.invokeVidSrc
2023-03-13 10:20:00 +00:00
import com.hexated.SoraExtractor.invokeWatchOnline
2023-02-02 06:51:20 +00:00
import com.hexated.SoraExtractor.invokeWatchsomuch
import com.hexated.SoraExtractor.invokeXmovies
2023-01-31 06:30:37 +00:00
import com.lagradost.cloudstream3.SubtitleFile
import com.lagradost.cloudstream3.argamap
import com.lagradost.cloudstream3.utils.AppUtils
import com.lagradost.cloudstream3.utils.ExtractorLink
class SoraStreamLite : SoraStream() {
override var name = "SoraStream-Lite"
override suspend fun loadLinks(
data: String,
isCasting: Boolean,
subtitleCallback: (SubtitleFile) -> Unit,
callback: (ExtractorLink) -> Unit
): Boolean {
val res = AppUtils.parseJson<LinkData>(data)
argamap(
{
2023-02-02 06:51:20 +00:00
invokeWatchsomuch(
res.imdbId,
res.season,
res.episode,
subtitleCallback
)
},
{
invokeSoraStreamLite(
2023-01-31 06:30:37 +00:00
res.title,
res.year,
res.season,
res.episode,
subtitleCallback,
callback
)
},
{
2023-02-02 06:51:20 +00:00
invokeTwoEmbed(res.id, res.season, res.episode, subtitleCallback, callback)
2023-01-31 06:30:37 +00:00
},
{
2023-02-02 06:51:20 +00:00
invokeVidSrc(res.id, res.season, res.episode, subtitleCallback, callback)
2023-01-31 06:30:37 +00:00
},
{
2023-02-02 06:51:20 +00:00
invokeDbgo(res.imdbId, res.season, res.episode, subtitleCallback, callback)
2023-01-31 06:30:37 +00:00
},
{
2023-02-02 06:51:20 +00:00
invoke123Movie(
2023-01-31 06:30:37 +00:00
res.id,
res.imdbId,
res.season,
res.episode,
subtitleCallback,
callback
)
},
2023-02-06 04:55:42 +00:00
{
invokeMovie123Net(
res.title,
res.season,
res.episode,
subtitleCallback,
callback
)
},
2023-01-31 06:30:37 +00:00
{
2023-02-02 06:51:20 +00:00
invokeMovieHab(res.imdbId, res.season, res.episode, subtitleCallback, callback)
2023-01-31 06:30:37 +00:00
},
{
2023-02-02 06:51:20 +00:00
if (res.isAnime) invokeAnimes(
2023-01-31 06:30:37 +00:00
res.id,
res.title,
res.epsTitle,
res.year,
res.season,
res.episode,
subtitleCallback,
callback
)
},
{
if (res.season != null && res.isAnime) invokeCrunchyroll(
2023-01-31 06:30:37 +00:00
res.title,
res.epsTitle,
res.season,
res.episode,
subtitleCallback,
callback
)
},
{
2023-02-02 06:51:20 +00:00
if (!res.isAnime) invokeHDMovieBox(
2023-01-31 06:30:37 +00:00
res.title,
res.season,
res.episode,
subtitleCallback,
callback
)
},
{
2023-02-02 06:51:20 +00:00
invokeSeries9(res.title, res.season, res.episode, subtitleCallback, callback)
2023-01-31 06:30:37 +00:00
},
{
2023-02-02 06:51:20 +00:00
invokeIdlix(
2023-01-31 06:30:37 +00:00
res.title,
res.year,
res.season,
res.episode,
subtitleCallback,
callback
)
},
2023-03-28 03:45:16 +00:00
// {
// invokeUniqueStream(
// res.title,
// res.year,
// res.season,
// res.episode,
// subtitleCallback,
// callback
// )
// },
2023-01-31 06:30:37 +00:00
{
2023-02-18 14:56:08 +00:00
if (!res.isAnime) invokeFilmxy(res.imdbId, res.season, res.episode, subtitleCallback, callback)
2023-01-31 06:30:37 +00:00
},
{
2023-02-02 06:51:20 +00:00
invokeKimcartoon(res.title, res.season, res.episode, subtitleCallback, callback)
2023-01-31 06:30:37 +00:00
},
2023-02-06 04:55:42 +00:00
{
invokeSmashyStream(res.imdbId, res.season, res.episode, callback)
},
2023-01-31 06:30:37 +00:00
{
2023-02-02 06:51:20 +00:00
invokeXmovies(
2023-01-31 06:30:37 +00:00
res.title,
res.year,
res.season,
res.episode,
subtitleCallback,
callback
)
},
2023-03-05 15:58:53 +00:00
// {
// invokeFlixhq(
// res.title,
// res.year,
// res.season,
// res.episode,
// res.lastSeason,
// subtitleCallback,
// callback
// )
// },
2023-01-31 06:30:37 +00:00
{
2023-02-02 06:51:20 +00:00
invokeKisskh(res.title, res.season, res.episode, subtitleCallback, callback)
2023-01-31 06:30:37 +00:00
},
{
2023-02-02 06:51:20 +00:00
invokeLing(
2023-01-31 06:30:37 +00:00
res.title,
res.airedYear ?: res.year,
res.season,
res.episode,
subtitleCallback,
callback
)
},
{
2023-02-02 06:51:20 +00:00
invokeFwatayako(res.imdbId, res.season, res.episode, callback)
2023-01-31 06:30:37 +00:00
},
{
2023-02-02 06:51:20 +00:00
invokeM4uhd(
2023-01-31 06:30:37 +00:00
res.title,
res.year,
res.season,
res.episode,
subtitleCallback,
callback
)
},
{
2023-02-02 06:51:20 +00:00
invokeRStream(res.id, res.season, res.episode, callback)
2023-01-31 06:30:37 +00:00
},
{
2023-02-02 06:51:20 +00:00
invokeFlixon(res.id, res.imdbId, res.season, res.episode, callback)
2023-01-31 06:30:37 +00:00
},
2023-02-14 18:01:07 +00:00
{
invokeGomovies(res.title, res.year, res.season, res.episode, callback)
},
2023-03-10 22:22:24 +00:00
{
2023-03-12 17:52:09 +00:00
if (!res.isAnime) invokeAsk4Movies(
2023-03-10 22:22:24 +00:00
res.title,
res.year,
res.season,
res.episode,
subtitleCallback,
callback
)
},
2023-03-13 10:20:00 +00:00
{
invokeWatchOnline(
res.imdbId,
2023-03-13 21:23:30 +00:00
res.id,
2023-03-13 10:20:00 +00:00
res.title,
res.airedYear ?: res.year,
2023-03-13 10:20:00 +00:00
res.season,
res.episode,
2023-03-13 19:13:38 +00:00
subtitleCallback,
2023-03-13 10:20:00 +00:00
callback
)
},
2023-01-31 06:30:37 +00:00
)
return true
}
}