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

165 lines
7.7 KiB
Kotlin
Raw Normal View History

2023-01-31 06:30:37 +00:00
package com.hexated
2023-08-21 00:55:21 +00:00
import com.hexated.SoraExtractor.invoke2embed
2023-12-30 09:09:19 +00:00
import com.hexated.SoraExtractor.invokeAllMovieland
2023-02-02 06:51:20 +00:00
import com.hexated.SoraExtractor.invokeAnimes
2023-12-15 04:32:48 +00:00
import com.hexated.SoraExtractor.invokeAoneroom
2023-02-02 06:51:20 +00:00
import com.hexated.SoraExtractor.invokeDbgo
2023-07-31 04:30:48 +00:00
import com.hexated.SoraExtractor.invokeDoomovies
2023-08-20 06:21:50 +00:00
import com.hexated.SoraExtractor.invokeDramaday
2023-05-24 08:29:19 +00:00
import com.hexated.SoraExtractor.invokeDreamfilm
2023-02-02 06:51:20 +00:00
import com.hexated.SoraExtractor.invokeFilmxy
import com.hexated.SoraExtractor.invokeFlixon
2023-06-15 23:38:22 +00:00
import com.hexated.SoraExtractor.invokeGoku
2023-02-02 06:51:20 +00:00
import com.hexated.SoraExtractor.invokeKimcartoon
import com.hexated.SoraExtractor.invokeKisskh
import com.hexated.SoraExtractor.invokeLing
import com.hexated.SoraExtractor.invokeM4uhd
2023-04-08 14:14:42 +00:00
import com.hexated.SoraExtractor.invokeNinetv
2023-05-19 23:35:52 +00:00
import com.hexated.SoraExtractor.invokeNowTv
2023-02-02 06:51:20 +00:00
import com.hexated.SoraExtractor.invokeRStream
2023-06-22 10:05:28 +00:00
import com.hexated.SoraExtractor.invokeRidomovies
2023-02-06 04:55:42 +00:00
import com.hexated.SoraExtractor.invokeSmashyStream
2023-06-26 05:11:27 +00:00
import com.hexated.SoraExtractor.invokeDumpStream
2023-07-04 09:38:14 +00:00
import com.hexated.SoraExtractor.invokeEmovies
2023-07-26 07:31:20 +00:00
import com.hexated.SoraExtractor.invokeMultimovies
2023-07-27 14:38:45 +00:00
import com.hexated.SoraExtractor.invokeNetmovies
2023-10-14 10:15:09 +00:00
import com.hexated.SoraExtractor.invokeSFMovies
2023-10-08 01:32:01 +00:00
import com.hexated.SoraExtractor.invokeShowflix
2023-02-02 06:51:20 +00:00
import com.hexated.SoraExtractor.invokeVidSrc
2023-08-18 21:35:24 +00:00
import com.hexated.SoraExtractor.invokeVidsrcto
2023-12-09 23:38:31 +00:00
import com.hexated.SoraExtractor.invokeCinemaTv
2024-01-02 23:57:41 +00:00
import com.hexated.SoraExtractor.invokeMMovies
2023-12-11 19:28:42 +00:00
import com.hexated.SoraExtractor.invokeOmovies
2023-12-24 09:09:45 +00:00
import com.hexated.SoraExtractor.invokeWatchCartoon
2023-02-02 06:51:20 +00:00
import com.hexated.SoraExtractor.invokeWatchsomuch
2023-09-18 07:36:12 +00:00
import com.hexated.SoraExtractor.invokeZshow
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"
2024-01-02 23:57:41 +00:00
override suspend fun loadLinks(data: String, isCasting: Boolean, subtitleCallback: (SubtitleFile) -> Unit, callback: (ExtractorLink) -> Unit): Boolean {
2023-01-31 06:30:37 +00:00
val res = AppUtils.parseJson<LinkData>(data)
argamap(
2024-01-02 23:57:41 +00:00
{
if (!res.isAnime) invokeWatchsomuch(res.imdbId, res.season, res.episode, subtitleCallback)
},
{
invokeDumpStream(res.title, res.year, res.season, res.episode, subtitleCallback, callback)
},
{
if (!res.isAnime) invokeNinetv(res.id, res.season, res.episode, subtitleCallback, callback)
},
{
invokeGoku(res.title, res.year, res.season, res.lastSeason, res.episode, subtitleCallback, callback)
},
{
invokeVidSrc(res.id, res.season, res.episode, callback)
},
{
invokeDbgo(res.imdbId, res.season, res.episode, subtitleCallback, callback)
},
{
if (!res.isAnime && res.isCartoon) invokeWatchCartoon(res.title, res.year, res.season, res.episode, subtitleCallback, callback)
},
{
if (res.isAnime) invokeAnimes(res.title, res.epsTitle, res.date, res.airedDate, res.season, res.episode, subtitleCallback, callback)
},
{
if (!res.isAnime) invokeDreamfilm(res.title, res.season, res.episode, subtitleCallback, callback)
},
{
if (!res.isAnime) invokeFilmxy(res.imdbId, res.season, res.episode, subtitleCallback, callback)
},
{
if (!res.isAnime) invokeOmovies(res.title, res.year, res.season, res.episode, callback)
},
{
if (!res.isAnime && res.isCartoon) invokeKimcartoon(res.title, res.season, res.episode, subtitleCallback, callback)
},
{
if (!res.isAnime) invokeSmashyStream(res.imdbId, res.season, res.episode, subtitleCallback, callback)
},
{
if (!res.isAnime) invokeVidsrcto(res.imdbId, res.season, res.episode, subtitleCallback, callback)
},
{
if (res.isAsian || res.isAnime) invokeKisskh(res.title, res.season, res.episode, res.isAnime, res.lastSeason, subtitleCallback, callback)
},
{
if (!res.isAnime) invokeLing(res.title, res.airedYear
?: res.year, res.season, res.episode, subtitleCallback, callback)
},
{
if (!res.isAnime) invokeM4uhd(res.title, res.airedYear
?: res.year, res.season, res.episode, subtitleCallback, callback)
},
{
if (!res.isAnime) invokeRStream(res.id, res.season, res.episode, callback)
},
{
if (!res.isAnime) invokeFlixon(res.id, res.imdbId, res.season, res.episode, callback)
},
{
invokeCinemaTv(res.imdbId, res.title, res.airedYear
?: res.year, res.season, res.episode, subtitleCallback, callback)
},
{
if (!res.isAnime) invokeNowTv(res.id, res.imdbId, res.season, res.episode, callback)
},
{
if (!res.isAnime) invokeAoneroom(res.title, res.airedYear
?: res.year, res.season, res.episode, subtitleCallback, callback)
},
{
if (!res.isAnime && res.season == null) invokeRidomovies(res.id, res.imdbId, callback)
},
{
if (!res.isAnime) invokeEmovies(res.title, res.year, res.season, res.episode, subtitleCallback, callback)
},
{
if (res.isBollywood) invokeMultimovies(multimoviesAPI, res.title, res.season, res.episode, subtitleCallback, callback)
},
{
if (res.isBollywood) invokeMultimovies(multimovies2API, res.title, res.season, res.episode, subtitleCallback, callback)
},
{
invokeNetmovies(res.title, res.year, res.season, res.episode, subtitleCallback, callback)
},
{
if (!res.isAnime) invokeAllMovieland(res.imdbId, res.season, res.episode, callback)
},
{
if (!res.isAnime && res.season == null) invokeDoomovies(res.title, subtitleCallback, callback)
},
{
if (res.isAsian) invokeDramaday(res.title, res.year, res.season, res.episode, subtitleCallback, callback)
},
{
if (!res.isAnime) invoke2embed(res.imdbId, res.season, res.episode, subtitleCallback, callback)
},
{
invokeZshow(res.title, res.year, res.season, res.episode, subtitleCallback, callback)
},
{
if (!res.isAnime) invokeShowflix(res.title, res.year, res.season, res.episode, subtitleCallback, callback)
},
{
if (!res.isAnime) invokeSFMovies(res.id, res.title, res.airedYear
?: res.year, res.season, res.episode, callback)
},
{
invokeMMovies(res.title, res.season, res.episode, subtitleCallback, callback)
},
2023-01-31 06:30:37 +00:00
)
return true
}
}