mirror of
https://github.com/iptv-org/epg
synced 2026-09-10 22:06:56 -04:00
Change tokenk Axios wrapper to multifetch, config changes
This commit is contained in:
@@ -1,103 +1,90 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<channels>
|
||||
<channel site="dsmart.com.tr" site_id="5b9fb1eecfef0b35341b7eb7" lang="tr" xmltv_id="APara.tr@SD">A Para</channel>
|
||||
<channel site="dsmart.com.tr" site_id="5bac7dedcfef0b02fac035fd" lang="tr" xmltv_id="HaberGlobal.tr@SD">Haber Global</channel>
|
||||
<channel site="dsmart.com.tr" site_id="5c6e8e0ecfef0b613d9ff782" lang="tr" xmltv_id="Ekoturk.tr@SD">Ekotürk</channel>
|
||||
<channel site="dsmart.com.tr" site_id="5ccfd6adcfef0b6021816941" lang="tr" xmltv_id="TV100.tr@SD">Tv 100</channel>
|
||||
<channel site="dsmart.com.tr" site_id="5da87214cfef0b4df9157780" lang="tr" xmltv_id="TRTSporYildiz.tr@SD">Trt Spor Yıldız</channel>
|
||||
<channel site="dsmart.com.tr" site_id="5dfc9faacfef0b201d2246b5" lang="tr" xmltv_id="LoveNature.ca@SD">Love Nature</channel>
|
||||
<channel site="dsmart.com.tr" site_id="5fcb6bd2cfef0b15931fcdf8" lang="tr" xmltv_id="SporSmart2.tr@SD">SPOR SMART 2</channel>
|
||||
<channel site="dsmart.com.tr" site_id="5fe07d7acfef0b1593275751" lang="tr" xmltv_id="SinemaTV.tr@SD">Sinema TV</channel>
|
||||
<channel site="dsmart.com.tr" site_id="5fe07d9fcfef0b1593275754" lang="tr" xmltv_id="Sinema2.tr@SD">Sinema TV 2</channel>
|
||||
<channel site="dsmart.com.tr" site_id="5fe07dd5cfef0b1593275758" lang="tr" xmltv_id="SinemaAksiyon.tr@SD">Sinema TV Aksiyon</channel>
|
||||
<channel site="dsmart.com.tr" site_id="5fe07e23cfef0b15932757a1" lang="tr" xmltv_id="SinemaAksiyon2.tr@SD">Sinema TV Aksiyon 2</channel>
|
||||
<channel site="dsmart.com.tr" site_id="5fe07e42cfef0b15932757a3" lang="tr" xmltv_id="SinemaAile.tr@SD">Sinema TV Aile</channel>
|
||||
<channel site="dsmart.com.tr" site_id="5fe07eabcfef0b15932757a6" lang="tr" xmltv_id="SinemaAile2.tr@SD">Sinema TV Aile 2</channel>
|
||||
<channel site="dsmart.com.tr" site_id="5fe07f5dcfef0b1593275822" lang="tr" xmltv_id="Sinema1001.tr@SD">Sinema TV 1001</channel>
|
||||
<channel site="dsmart.com.tr" site_id="5fe07f29cfef0b1593275800" lang="tr" xmltv_id="SinemaKomedi.tr@SD">Sinema TV Comedy</channel>
|
||||
<channel site="dsmart.com.tr" site_id="5fe07f45cfef0b159327581f" lang="tr" xmltv_id="SinemaKomedi2.tr@SD">Sinema TV Comedy 2</channel>
|
||||
<channel site="dsmart.com.tr" site_id="5fe07f72cfef0b159327585a" lang="tr" xmltv_id="Sinema1002.tr@SD">Sinema TV 1002</channel>
|
||||
<channel site="dsmart.com.tr" site_id="5fedddcecfef0b159330996e" lang="tr" xmltv_id="DisneyJr.tr@SD">Disney Junior</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062a0" lang="tr" xmltv_id="NOWTV.tr@SD">NOW</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062a1" lang="tr" xmltv_id="Teve2.tr@SD">teve2</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062a4" lang="tr" xmltv_id="NationalGeographic.tr@SD">National Geographic</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062a5" lang="tr" xmltv_id="NationalGeographicWild.tr@SD">National Geographic WILD</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062a8" lang="tr" xmltv_id="TRTBelgesel.tr@SD">TRT Belgesel</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062a9" lang="tr" xmltv_id="TRTSpor.tr@SD">TRT Spor</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062aa" lang="tr" xmltv_id="">Eurosport</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062ae" lang="tr" xmltv_id="TV8.tr@SD">TV8</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062b2" lang="tr" xmltv_id="">a Spor</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062b4" lang="tr" xmltv_id="">CosmoSports</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062b6" lang="tr" xmltv_id="DaVinci.de@SD">Da Vinci Learning</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062b7" lang="tr" xmltv_id="BabyTV.uk@France">Baby TV</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062b8" lang="tr" xmltv_id="CNNInternational.us@MENA">CNN International</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062b9" lang="tr" xmltv_id="Cartoonito.uk@SD">Cartoonito</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062b5" lang="tr" xmltv_id="">Çocuk Smart</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062ba" lang="tr" xmltv_id="">FilmScreen</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062bc" lang="tr" xmltv_id="">BBC Earth</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062bd" lang="tr" xmltv_id="ViasatHistory.tr@SD">Viasat History</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062bf" lang="tr" xmltv_id="">Azoomee</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062c5" lang="tr" xmltv_id="DreamTurk.tr@SD">Dream Tv</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062c6" lang="tr" xmltv_id="BBCNews.uk@Europe">BBC World News</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062c8" lang="tr" xmltv_id="CartoonNetwork.tr@SD">Cartoon Network</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062cb" lang="tr" xmltv_id="TV85.tr@SD">TV 8,5</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062cc" lang="tr" xmltv_id="">TRT World</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c60622e" lang="tr" xmltv_id="24TV.tr@SD">24</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c60623a" lang="tr" xmltv_id="NTV.tr@SD">NTV</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c60623d" lang="tr" xmltv_id="TGRTHaber.tr@SD">TGRT Haber</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c60623e" lang="tr" xmltv_id="BloombergHT.tr@SD">Bloomberg HT</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c60624a" lang="tr" xmltv_id="TRTKurdi.tr@SD">TRT Kurdi</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c60624b" lang="tr" xmltv_id="TRTAvaz.tr@SD">TRT Avaz</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c60624c" lang="tr" xmltv_id="TRTTurk.tr@SD">TRT Türk</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c60624f" lang="tr" xmltv_id="">NHK World English</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c60625a" lang="tr" xmltv_id="DiziSmartPremium.tr@SD">Dizi Smart Premium</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c60625e" lang="tr" xmltv_id="">a Haber</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c60626d" lang="tr" xmltv_id="">Minika Çocuk</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c60626e" lang="tr" xmltv_id="NBATV.us@SD">NBA TV</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c60628a" lang="tr" xmltv_id="SporSmart.tr@SD">Spor Smart</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c60628e" lang="tr" xmltv_id="InvestigationDiscoveryEurope.us@SD">Discovery ID</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c60629a" lang="tr" xmltv_id="MovieSmartClassic.tr@SD">MovieSmart Classic</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c60629b" lang="tr" xmltv_id="ShowTV.tr@SD">Show TV</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c60629c" lang="tr" xmltv_id="Kanal7.tr@SD">Kanal 7</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c60629d" lang="tr" xmltv_id="HaberturkTV.tr@SD">Haber Türk</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c60629e" lang="tr" xmltv_id="TVNET.tr@SD">TV Net</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c60629f" lang="tr" xmltv_id="UlkeTV.tr@SD">Ülke TV</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c606231" lang="tr" xmltv_id="">TRT 3 Spor</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c606236" lang="tr" xmltv_id="360.tr@SD">360</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c606248" lang="tr" xmltv_id="DiscoveryChannel.tr@SD">Discovery</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c606255" lang="tr" xmltv_id="TRTCocuk.tr@SD">TRT Çocuk</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c606257" lang="tr" xmltv_id="MinikaGo.tr@SD">Minika GO</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c606258" lang="tr" xmltv_id="KanalD.tr@SD">Kanal D</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c606259" lang="tr" xmltv_id="StarTV.tr@SD">Star</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c606263" lang="tr" xmltv_id="TRT2.tr@SD">trt 2</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c606266" lang="tr" xmltv_id="TRTMuzik.tr@SD">TRT Müzik</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c606269" lang="tr" xmltv_id="FX.us@East">FX</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c606274" lang="tr" xmltv_id="TRT1.tr@SD">TRT 1</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c606278" lang="tr" xmltv_id="DiziSmartMax.tr@SD">Dizi Smart Max</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c60628d" lang="tr" xmltv_id="">Dream Türk</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c606281" lang="tr" xmltv_id="">Eurosport 2</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c606289" lang="tr" xmltv_id="TRTHaber.tr@SD">TRT Haber</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c606299" lang="tr" xmltv_id="MovieSmartTurk.tr@SD">MovieSmart Türk</channel>
|
||||
<channel site="dsmart.com.tr" site_id="59dca1f3cfef0b4d80a47a5f" lang="tr" xmltv_id="CNNTurk.tr@SD">CNN Türk SD</channel>
|
||||
<channel site="dsmart.com.tr" site_id="59dca3b2cfef0b4d80a47b77" lang="tr" xmltv_id="FashionTVEurope.fr@SD">Fashion TV</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c606298" lang="tr" xmltv_id="">Beyaz TV</channel>
|
||||
<channel site="dsmart.com.tr" site_id="59dca29fcfef0b4d80a47a61" lang="tr" xmltv_id="">Nature Escape</channel>
|
||||
<channel site="dsmart.com.tr" site_id="59dca577cfef0b4d80a47b7c" lang="tr" xmltv_id="TV4.tr@SD">TV4</channel>
|
||||
<channel site="dsmart.com.tr" site_id="59dcbddccfef0b4d80a49642" lang="tr" xmltv_id="Tele1.tr@SD">Tele 1</channel>
|
||||
<channel site="dsmart.com.tr" site_id="59dcbe14cfef0b4d80a49646" lang="tr" xmltv_id="A2TV.tr@SD">a2</channel>
|
||||
<channel site="dsmart.com.tr" site_id="59dcbee1cfef0b4d80a49650" lang="tr" xmltv_id="TRT4K.tr@SD">TRT 4K</channel>
|
||||
<channel site="dsmart.com.tr" site_id="59dcbfdccfef0b4d80a4974a" lang="tr" xmltv_id="EuroD.tr@SD">Euro D</channel>
|
||||
<channel site="dsmart.com.tr" site_id="61a408d7cfef0b1593ed2812" lang="tr" xmltv_id="">History Channel</channel>
|
||||
<channel site="dsmart.com.tr" site_id="63ecd91acfef0b02d2687aed" lang="tr" xmltv_id="SozcuTV.tr@SD">SZC</channel>
|
||||
<channel site="dsmart.com.tr" site_id="64edfc67cfef0b02d2c038c5" lang="tr" xmltv_id="TarihTV.tr@SD">Tarih Tv</channel>
|
||||
<channel site="dsmart.com.tr" site_id="66d839a0cfef0b37445c6db1" lang="tr" xmltv_id="HTSporTV.tr@SD">HT Spor</channel>
|
||||
<channel site="dsmart.com.tr" site_id="67a3521bcfef0b3744abd66d" lang="tr" xmltv_id="">Docu Screen</channel>
|
||||
<channel site="dsmart.com.tr" site_id="67c063a6cfef0b3744b5ff9e" lang="tr" xmltv_id="">TRT Diyanet Çocuk</channel>
|
||||
<channel site="dsmart.com.tr" site_id="68c161eccfef0b37441e3af2" lang="tr" xmltv_id="">Sıfır Tv</channel>
|
||||
<channel site="dsmart.com.tr" site_id="69b279d6cfef0b02ec9a77d4" lang="tr" xmltv_id="">CosmoEn</channel>
|
||||
<channel site="dsmart.com.tr" site_id="679b51bdcfef0b3744a77893" lang="tr" xmltv_id="">Tmb</channel>
|
||||
<channel site="dsmart.com.tr" site_id="683d6eafcfef0b3744e79132" lang="tr" xmltv_id="">RT International</channel>
|
||||
<channel site="dsmart.com.tr" site_id="6071fb3bcfef0b159373a531" lang="tr" xmltv_id="">Vav Tv</channel>
|
||||
<channel site="dsmart.com.tr" site_id="6481bce5cfef0b02d29e23d1" lang="tr" xmltv_id="">Bi Kanal</channel>
|
||||
<channel site="dsmart.com.tr" site_id="6540d968cfef0b02d2dbb177" lang="tr" xmltv_id="">Moonbug</channel>
|
||||
<channel site="dsmart.com.tr" site_id="66630f98cfef0b02d797d815" lang="tr" xmltv_id="CNBCEurope.uk@SD">CNBC-e</channel>
|
||||
<channel site="dsmart.com.tr" site_id="67e5c4c6cfef0b3744c556fa" lang="tr" xmltv_id="">DMAX</channel>
|
||||
<channel site="dsmart.com.tr" site_id="67e5c246cfef0b3744c53a83" lang="tr" xmltv_id="">TLC</channel>
|
||||
<channel site="dsmart.com.tr" site_id="66337391cfef0b02d78776c8" lang="tr" xmltv_id="">Ekol Tv</channel>
|
||||
<channel site="dsmart.com.tr" site_id="69963435cfef0b02ec88cbb0" lang="tr" xmltv_id="">Meltemtv</channel>
|
||||
<channel site="dsmart.com.tr" site_id="66e7e5cdcfef0b374461c45b" lang="tr" xmltv_id="">Spor Çoklu Ekran</channel>
|
||||
<channel site="dsmart.com.tr" site_id="66e7e50dcfef0b374461c36e" lang="tr" xmltv_id="">Ulusal Çoklu Ekran</channel>
|
||||
<channel site="dsmart.com.tr" site_id="66e7e54ccfef0b374461c370" lang="tr" xmltv_id="">Haber Çoklu Ekran</channel>
|
||||
<channel site="dsmart.com.tr" site_id="68e77d8fcfef0b374432906d" lang="tr" xmltv_id="">Spacetoon</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c60622e" lang="tr" xmltv_id="24TV.tr@SD">24</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c606236" lang="tr" xmltv_id="360.tr@SD">360</channel>
|
||||
<channel site="dsmart.com.tr" site_id="59638e5fcfef0b43f0fd31b5" lang="tr" xmltv_id="ANews.tr@SD">a News</channel>
|
||||
<channel site="dsmart.com.tr" site_id="5e75c923cfef0b15938bc9cc" lang="tr" xmltv_id="">TRT EBA TV</channel>
|
||||
<channel site="dsmart.com.tr" site_id="5b9fb1eecfef0b35341b7eb7" lang="tr" xmltv_id="APara.tr@SD">A Para</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062b7" lang="tr" xmltv_id="BabyTV.uk@France">Baby TV</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062c6" lang="tr" xmltv_id="BBCNews.uk@Europe">BBC World News</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c60623e" lang="tr" xmltv_id="BloombergHT.tr@SD">Bloomberg HT</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062b9" lang="tr" xmltv_id="Cartoonito.uk@SD">Cartoonito</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062c8" lang="tr" xmltv_id="CartoonNetwork.tr@SD">Cartoon Network</channel>
|
||||
<channel site="dsmart.com.tr" site_id="66630f98cfef0b02d797d815" lang="tr" xmltv_id="CNBCEurope.uk@SD">CNBC-e</channel>
|
||||
<channel site="dsmart.com.tr" site_id="59dca1f3cfef0b4d80a47a5f" lang="tr" xmltv_id="CNNTurk.tr@SD">CNN Türk SD</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062b6" lang="tr" xmltv_id="DaVinci.de@SD">Da Vinci Learning</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c606248" lang="tr" xmltv_id="DiscoveryChannel.tr@SD">Discovery</channel>
|
||||
<channel site="dsmart.com.tr" site_id="5fedddcecfef0b159330996e" lang="tr" xmltv_id="DisneyJr.tr@SD">Disney Junior</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c606278" lang="tr" xmltv_id="DiziSmartMax.tr@SD">Dizi Smart Max</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c60625a" lang="tr" xmltv_id="DiziSmartPremium.tr@SD">Dizi Smart Premium</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062c5" lang="tr" xmltv_id="DreamTurk.tr@SD">Dream Tv</channel>
|
||||
<channel site="dsmart.com.tr" site_id="5c6e8e0ecfef0b613d9ff782" lang="tr" xmltv_id="Ekoturk.tr@SD">Ekotürk</channel>
|
||||
<channel site="dsmart.com.tr" site_id="59dcbfdccfef0b4d80a4974a" lang="tr" xmltv_id="EuroD.tr@SD">Euro D</channel>
|
||||
<channel site="dsmart.com.tr" site_id="59dca3b2cfef0b4d80a47b77" lang="tr" xmltv_id="FashionTVEurope.fr@SD">Fashion TV</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c606269" lang="tr" xmltv_id="FX.us@East">FX</channel>
|
||||
<channel site="dsmart.com.tr" site_id="5bac7dedcfef0b02fac035fd" lang="tr" xmltv_id="HaberGlobal.tr@SD">Haber Global</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c60629d" lang="tr" xmltv_id="HaberturkTV.tr@SD">Haber Türk</channel>
|
||||
<channel site="dsmart.com.tr" site_id="66d839a0cfef0b37445c6db1" lang="tr" xmltv_id="HTSporTV.tr@SD">HT Spor</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c60628e" lang="tr" xmltv_id="InvestigationDiscoveryEurope.us@SD">Discovery ID</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c60629c" lang="tr" xmltv_id="Kanal7.tr@SD">Kanal 7</channel>
|
||||
<channel site="dsmart.com.tr" site_id="5dfc9faacfef0b201d2246b5" lang="tr" xmltv_id="LoveNature.ca@SD">Love Nature</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c606257" lang="tr" xmltv_id="MinikaGo.tr@SD">Minika GO</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c60629a" lang="tr" xmltv_id="MovieSmartClassic.tr@SD">MovieSmart Classic</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c606299" lang="tr" xmltv_id="MovieSmartTurk.tr@SD">MovieSmart Türk</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062a4" lang="tr" xmltv_id="NationalGeographic.tr@SD">National Geographic</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062a5" lang="tr" xmltv_id="NationalGeographicWild.tr@SD">National Geographic WILD</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062a0" lang="tr" xmltv_id="NOWTV.tr@SD">NOW</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c60623a" lang="tr" xmltv_id="NTV.tr@SD">NTV</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c60629b" lang="tr" xmltv_id="ShowTV.tr@SD">Show TV</channel>
|
||||
<channel site="dsmart.com.tr" site_id="5fe07d9fcfef0b1593275754" lang="tr" xmltv_id="Sinema2.tr@SD">Sinema TV 2</channel>
|
||||
<channel site="dsmart.com.tr" site_id="5fe07f5dcfef0b1593275822" lang="tr" xmltv_id="Sinema1001.tr@SD">Sinema TV 1001</channel>
|
||||
<channel site="dsmart.com.tr" site_id="5fe07f72cfef0b159327585a" lang="tr" xmltv_id="Sinema1002.tr@SD">Sinema TV 1002</channel>
|
||||
<channel site="dsmart.com.tr" site_id="5fe07eabcfef0b15932757a6" lang="tr" xmltv_id="SinemaAile2.tr@SD">Sinema TV Aile 2</channel>
|
||||
<channel site="dsmart.com.tr" site_id="5fe07e42cfef0b15932757a3" lang="tr" xmltv_id="SinemaAile.tr@SD">Sinema TV Aile</channel>
|
||||
<channel site="dsmart.com.tr" site_id="5fe07e23cfef0b15932757a1" lang="tr" xmltv_id="SinemaAksiyon2.tr@SD">Sinema TV Aksiyon 2</channel>
|
||||
<channel site="dsmart.com.tr" site_id="5fe07dd5cfef0b1593275758" lang="tr" xmltv_id="SinemaAksiyon.tr@SD">Sinema TV Aksiyon</channel>
|
||||
<channel site="dsmart.com.tr" site_id="5fe07f45cfef0b159327581f" lang="tr" xmltv_id="SinemaKomedi2.tr@SD">Sinema TV Comedy 2</channel>
|
||||
<channel site="dsmart.com.tr" site_id="5fe07f29cfef0b1593275800" lang="tr" xmltv_id="SinemaKomedi.tr@SD">Sinema TV Comedy</channel>
|
||||
<channel site="dsmart.com.tr" site_id="5fe07d7acfef0b1593275751" lang="tr" xmltv_id="SinemaTV.tr@SD">Sinema TV</channel>
|
||||
<channel site="dsmart.com.tr" site_id="63ecd91acfef0b02d2687aed" lang="tr" xmltv_id="SozcuTV.tr@SD">SZC</channel>
|
||||
<channel site="dsmart.com.tr" site_id="5fcb6bd2cfef0b15931fcdf8" lang="tr" xmltv_id="SporSmart2.tr@SD">SPOR SMART 2</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c60628a" lang="tr" xmltv_id="SporSmart.tr@SD">Spor Smart</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c606259" lang="tr" xmltv_id="StarTV.tr@SD">Star</channel>
|
||||
<channel site="dsmart.com.tr" site_id="64edfc67cfef0b02d2c038c5" lang="tr" xmltv_id="TarihTV.tr@SD">Tarih Tv</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062a1" lang="tr" xmltv_id="Teve2.tr@SD">teve2</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c60623d" lang="tr" xmltv_id="TGRTHaber.tr@SD">TGRT Haber</channel>
|
||||
<channel site="dsmart.com.tr" site_id="59dca577cfef0b4d80a47b7c" lang="tr" xmltv_id="TV4.tr@SD">TV4</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062ae" lang="tr" xmltv_id="TV8.tr@SD">TV8</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062cb" lang="tr" xmltv_id="TV85.tr@SD">TV 8,5</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c60629e" lang="tr" xmltv_id="TVNET.tr@SD">TV Net</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c60629f" lang="tr" xmltv_id="UlkeTV.tr@SD">Ülke TV</channel>
|
||||
<channel site="dsmart.com.tr" site_id="58d29bb0eefad3db9c6062bd" lang="tr" xmltv_id="ViasatHistory.tr@SD">Viasat History</channel>
|
||||
</channels>
|
||||
|
||||
@@ -2,7 +2,7 @@ const dayjs = require('dayjs')
|
||||
const utc = require('dayjs/plugin/utc')
|
||||
const customParseFormat = require('dayjs/plugin/customParseFormat')
|
||||
const duration = require('dayjs/plugin/duration')
|
||||
const doFetch = require('@ntlab/sfetch')
|
||||
const doFetch = require('../../scripts/core/multifetch')
|
||||
const debug = require('debug')('site:dsmart.com.tr')
|
||||
|
||||
dayjs.extend(utc)
|
||||
|
||||
@@ -1,38 +1,31 @@
|
||||
const { parser, url } = require('./dsmart.com.tr.config.js')
|
||||
const axios = require('axios')
|
||||
const dayjs = require('dayjs')
|
||||
const fs = require('fs')
|
||||
const path = require('path')
|
||||
const utc = require('dayjs/plugin/utc')
|
||||
const customParseFormat = require('dayjs/plugin/customParseFormat')
|
||||
const multifetch = require('../../scripts/core/multifetch')
|
||||
|
||||
dayjs.extend(customParseFormat)
|
||||
dayjs.extend(utc)
|
||||
|
||||
jest.mock('axios')
|
||||
|
||||
const date = dayjs.utc('2025-01-13', 'YYYY-MM-DD').startOf('d')
|
||||
const channel = {
|
||||
site_id: '5fe07f5dcfef0b1593275822',
|
||||
xmltv_id: 'Sinema1001.tr'
|
||||
}
|
||||
|
||||
axios.get.mockImplementation(url => {
|
||||
const result = {}
|
||||
const urls = {
|
||||
beforeEach(() => {
|
||||
multifetch.setMocks({
|
||||
'https://www.dsmart.com.tr/api/v1/public/epg/schedules?page=1&limit=10&day=2025-01-13':
|
||||
'content1.json',
|
||||
'https://www.dsmart.com.tr/api/v1/public/epg/schedules?page=2&limit=10&day=2025-01-13':
|
||||
'content2.json',
|
||||
}
|
||||
if (urls[url] !== undefined) {
|
||||
result.data = fs.readFileSync(path.join(__dirname, '__data__', urls[url])).toString()
|
||||
if (!urls[url].startsWith('content1')) {
|
||||
result.data = JSON.parse(result.data)
|
||||
}
|
||||
}
|
||||
}, __dirname + '/__data__')
|
||||
})
|
||||
|
||||
return Promise.resolve(result)
|
||||
afterEach(() => {
|
||||
multifetch.clearMocks()
|
||||
})
|
||||
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
const dayjs = require('dayjs')
|
||||
const axios = require('axios')
|
||||
const parseDuration = require('parse-duration').default
|
||||
const utc = require('dayjs/plugin/utc')
|
||||
const timezone = require('dayjs/plugin/timezone')
|
||||
const customParseFormat = require('dayjs/plugin/customParseFormat')
|
||||
@@ -65,7 +66,7 @@ module.exports = {
|
||||
}
|
||||
|
||||
items.forEach(item => {
|
||||
const { start, stop } = parseDuration(date, item)
|
||||
const { start, stop } = parseTimes(date, item)
|
||||
if (!start.isValid() || !stop.isValid()) return
|
||||
// Can contain Season and Episode in title, but not always. If title is missing, skip the program
|
||||
if (!item?.content?.title) return
|
||||
@@ -124,32 +125,20 @@ module.exports = {
|
||||
}
|
||||
}
|
||||
|
||||
function parseDuration(date, item) {
|
||||
const current_date = date.format('YYYY-MM-DD')
|
||||
function parseTimes(date, item) {
|
||||
const time = item.content?.broadcastBeginDate
|
||||
const duration = item.content?.duration // e.g. "11 min 45 s", "1 h 30 min", "30 min"
|
||||
const durationStr = item.content?.duration // e.g. "11 min 45 s", "1 h 30 min", "30 min"
|
||||
|
||||
if (!time) return { start: dayjs(null), stop: dayjs(null) }
|
||||
|
||||
const timeParts = time.split('h')
|
||||
|
||||
let durationInSeconds = 0
|
||||
if (duration) {
|
||||
const durationParts = duration.split(' ')
|
||||
for (let i = 0; i < durationParts.length; i++) {
|
||||
const part = durationParts[i]
|
||||
if (part === 'h' && i > 0) {
|
||||
durationInSeconds += parseInt(durationParts[i - 1]) * 3600
|
||||
} else if (part === 'min' && i > 0) {
|
||||
durationInSeconds += parseInt(durationParts[i - 1]) * 60
|
||||
} else if (part === 's' && i > 0) {
|
||||
durationInSeconds += parseInt(durationParts[i - 1])
|
||||
}
|
||||
}
|
||||
const start = dayjs.utc(`${date.format('YYYY-MM-DD')} ${timeParts[0]}:${timeParts[1]}`, 'YYYY-MM-DD HH:mm')
|
||||
|
||||
let stop = start
|
||||
if (durationStr) {
|
||||
stop = start.add(parseDuration(durationStr) || 0, 'ms')
|
||||
}
|
||||
|
||||
const start = dayjs.utc(`${current_date} ${timeParts[0]}:${timeParts[1]}`, 'YYYY-MM-DD HH:mm')
|
||||
const stop = start.add(durationInSeconds, 'second')
|
||||
return { start, stop }
|
||||
}
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@ const dayjs = require('dayjs')
|
||||
const utc = require('dayjs/plugin/utc')
|
||||
const timezone = require('dayjs/plugin/timezone')
|
||||
const customParseFormat = require('dayjs/plugin/customParseFormat')
|
||||
const doFetch = require('@ntlab/sfetch')
|
||||
const doFetch = require('../../scripts/core/multifetch')
|
||||
const debug = require('debug')('site:mncvision.id')
|
||||
|
||||
dayjs.extend(utc)
|
||||
@@ -150,10 +150,14 @@ async function parseItems(content, date, cookies) {
|
||||
function loadLangCookies(channel) {
|
||||
const url = `https://www.mncvision.id/language_switcher/setlang/${languages[channel.lang]}/`
|
||||
|
||||
return axios
|
||||
.get(url, { timeout })
|
||||
.then(r => parseCookies(r.headers))
|
||||
.catch(error => console.error(error.message))
|
||||
return new Promise(resolve => {
|
||||
doFetch([{ url, method: 'get' }], (queue, data, headers) => {
|
||||
resolve(parseCookies(headers))
|
||||
}).catch(error => {
|
||||
console.error(error.message)
|
||||
resolve(null)
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
function parseCookies(headers) {
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
const { parser, url, request } = require('./mncvision.id.config.js')
|
||||
const fs = require('fs')
|
||||
const path = require('path')
|
||||
const axios = require('axios')
|
||||
const dayjs = require('dayjs')
|
||||
const utc = require('dayjs/plugin/utc')
|
||||
const customParseFormat = require('dayjs/plugin/customParseFormat')
|
||||
const multifetch = require('../../scripts/core/multifetch')
|
||||
|
||||
dayjs.extend(customParseFormat)
|
||||
dayjs.extend(utc)
|
||||
@@ -28,38 +28,34 @@ const englishHeaders = {
|
||||
]
|
||||
}
|
||||
|
||||
axios.get.mockImplementation((url, opts) => {
|
||||
if (url === 'https://www.mncvision.id/language_switcher/setlang/indonesia/') {
|
||||
return Promise.resolve({
|
||||
headers: indonesiaHeaders
|
||||
})
|
||||
}
|
||||
if (url === 'https://www.mncvision.id/language_switcher/setlang/english/') {
|
||||
return Promise.resolve({
|
||||
headers: englishHeaders
|
||||
})
|
||||
}
|
||||
if (
|
||||
url === 'https://www.mncvision.id/schedule/detail/20231119001500154/Blue-Bloods-S13-Ep-19/1'
|
||||
) {
|
||||
const getCookie = headers => {
|
||||
if (Array.isArray(headers['set-cookie'])) {
|
||||
return headers['set-cookie'][0].split('; ')[0]
|
||||
}
|
||||
}
|
||||
if (opts.headers['Cookie'] === getCookie(indonesiaHeaders)) {
|
||||
return Promise.resolve({
|
||||
data: fs.readFileSync(path.resolve(__dirname, '__data__/program_id.html'))
|
||||
})
|
||||
}
|
||||
if (opts.headers['Cookie'] === getCookie(englishHeaders)) {
|
||||
return Promise.resolve({
|
||||
data: fs.readFileSync(path.resolve(__dirname, '__data__/program_en.html'))
|
||||
})
|
||||
beforeEach(() => {
|
||||
const getCookie = headers => {
|
||||
if (Array.isArray(headers['set-cookie'])) {
|
||||
return headers['set-cookie'][0].split('; ')[0]
|
||||
}
|
||||
}
|
||||
|
||||
return Promise.resolve({ data: '' })
|
||||
multifetch.setMocks({
|
||||
'https://www.mncvision.id/language_switcher/setlang/indonesia/': () => ({
|
||||
headers: indonesiaHeaders
|
||||
}),
|
||||
'https://www.mncvision.id/language_switcher/setlang/english/': () => ({
|
||||
headers: englishHeaders
|
||||
}),
|
||||
'https://www.mncvision.id/schedule/detail/20231119001500154/Blue-Bloods-S13-Ep-19/1': (url, config) => {
|
||||
if (config?.headers?.['Cookie'] === getCookie(indonesiaHeaders)) {
|
||||
return { data: fs.readFileSync(path.resolve(__dirname, '__data__/program_id.html'), 'utf8'), status: 200 }
|
||||
}
|
||||
if (config?.headers?.['Cookie'] === getCookie(englishHeaders)) {
|
||||
return { data: fs.readFileSync(path.resolve(__dirname, '__data__/program_en.html'), 'utf8'), status: 200 }
|
||||
}
|
||||
return { data: '', status: 404 }
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
afterEach(() => {
|
||||
multifetch.clearMocks()
|
||||
})
|
||||
|
||||
it('can generate valid url', () => {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
const doFetch = require('@ntlab/sfetch')
|
||||
const doFetch = require('../../scripts/core/multifetch')
|
||||
const axios = require('axios')
|
||||
const dayjs = require('dayjs')
|
||||
const crypto = require('crypto')
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
const doFetch = require('@ntlab/sfetch')
|
||||
const doFetch = require('../../scripts/core/multifetch')
|
||||
const dayjs = require('dayjs')
|
||||
const utc = require('dayjs/plugin/utc')
|
||||
const timezone = require('dayjs/plugin/timezone')
|
||||
|
||||
@@ -1,13 +1,10 @@
|
||||
const dayjs = require('dayjs')
|
||||
const utc = require('dayjs/plugin/utc')
|
||||
const doFetch = require('@ntlab/sfetch')
|
||||
const debug = require('debug')('site:orangetv.orange.es')
|
||||
const doFetch = require('../../scripts/core/multifetch')
|
||||
|
||||
dayjs.extend(utc)
|
||||
|
||||
doFetch.setDebugger(debug)
|
||||
|
||||
const API_PROGRAM_ENDPOINT = 'https://epg.orangetv.orange.es/epg/Smartphone_Android/1_PRO'
|
||||
const API_PROGRAM_ENDPOINT = 'https://epg.orangetv.orange.es/epg/SmartTV_Android/1_PRO'
|
||||
const API_CHANNEL_ENDPOINT =
|
||||
'https://pc.orangetv.orange.es/pc/api/rtv/v1/GetChannelList?bouquet_id=1&model_external_id=PC&filter_unsupported_channels=false&client=json'
|
||||
const API_IMAGE_ENDPOINT = 'https://pc.orangetv.orange.es/pc/api/rtv/v1/images'
|
||||
|
||||
@@ -20,11 +20,11 @@ const channel = {
|
||||
axios.get.mockImplementation(url => {
|
||||
const result = {}
|
||||
const urls = {
|
||||
'https://epg.orangetv.orange.es/epg/Smartphone_Android/1_PRO/20250112_8h_1.json':
|
||||
'https://epg.orangetv.orange.es/epg/SmartTV_Android/1_PRO/20250112_8h_1.json':
|
||||
'data1.json',
|
||||
'https://epg.orangetv.orange.es/epg/Smartphone_Android/1_PRO/20250112_8h_2.json':
|
||||
'https://epg.orangetv.orange.es/epg/SmartTV_Android/1_PRO/20250112_8h_2.json':
|
||||
'data2.json',
|
||||
'https://epg.orangetv.orange.es/epg/Smartphone_Android/1_PRO/20250112_8h_3.json':
|
||||
'https://epg.orangetv.orange.es/epg/SmartTV_Android/1_PRO/20250112_8h_3.json':
|
||||
'data3.json',
|
||||
}
|
||||
if (urls[url] !== undefined) {
|
||||
@@ -39,7 +39,7 @@ axios.get.mockImplementation(url => {
|
||||
|
||||
it('can generate valid url', () => {
|
||||
expect(url({ date })).toBe(
|
||||
'https://epg.orangetv.orange.es/epg/Smartphone_Android/1_PRO/20250112_8h_1.json'
|
||||
'https://epg.orangetv.orange.es/epg/SmartTV_Android/1_PRO/20250112_8h_1.json'
|
||||
)
|
||||
})
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@ const dayjs = require('dayjs')
|
||||
const timezone = require('dayjs/plugin/timezone')
|
||||
const utc = require('dayjs/plugin/utc')
|
||||
const customParseFormat = require('dayjs/plugin/customParseFormat')
|
||||
const doFetch = require('@ntlab/sfetch')
|
||||
const doFetch = require('../../scripts/core/multifetch')
|
||||
const debug = require('debug')('site:rotana.net')
|
||||
|
||||
dayjs.extend(timezone)
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<channels>
|
||||
<channel site="sky.com" site_id="1001" lang="en" xmltv_id="">Sky Action</channel>
|
||||
<channel site="sky.com" site_id="1015" lang="en" xmltv_id="">Really+1</channel>
|
||||
<channel site="sky.com" site_id="1022" lang="en" xmltv_id="">Sky Intro</channel>
|
||||
<channel site="sky.com" site_id="1035" lang="en" xmltv_id="">SkySpBoxOffHD</channel>
|
||||
@@ -8,14 +9,28 @@
|
||||
<channel site="sky.com" site_id="1084" lang="en" xmltv_id="">55250</channel>
|
||||
<channel site="sky.com" site_id="1102" lang="en" xmltv_id="">Sky Intro</channel>
|
||||
<channel site="sky.com" site_id="1148" lang="en" xmltv_id="">Virgin Radio</channel>
|
||||
<channel site="sky.com" site_id="1149" lang="en" xmltv_id="">TNTSports1 HD</channel>
|
||||
<channel site="sky.com" site_id="1183" lang="en" xmltv_id="">Disney Jr HD</channel>
|
||||
<channel site="sky.com" site_id="1190" lang="en" xmltv_id="">Disney+CineHD</channel>
|
||||
<channel site="sky.com" site_id="1205" lang="en" xmltv_id="">LBC News</channel>
|
||||
<channel site="sky.com" site_id="1218" lang="en" xmltv_id="">TNTSBoxOff2HD</channel>
|
||||
<channel site="sky.com" site_id="1229" lang="en" xmltv_id="">Sky Arts</channel>
|
||||
<channel site="sky.com" site_id="1261" lang="en" xmltv_id="">RTÉ Radio 1</channel>
|
||||
<channel site="sky.com" site_id="1262" lang="en" xmltv_id="">RTÉ 2FM</channel>
|
||||
<channel site="sky.com" site_id="1263" lang="en" xmltv_id="">RTÉ R na G</channel>
|
||||
<channel site="sky.com" site_id="1264" lang="en" xmltv_id="">RTÉ Lyric fm</channel>
|
||||
<channel site="sky.com" site_id="1281" lang="en" xmltv_id="">Sky Showcase</channel>
|
||||
<channel site="sky.com" site_id="1340" lang="en" xmltv_id="">SkySp News HD</channel>
|
||||
<channel site="sky.com" site_id="1341" lang="en" xmltv_id="">SkySpMainEv</channel>
|
||||
<channel site="sky.com" site_id="1342" lang="en" xmltv_id="">SkySp Cricket</channel>
|
||||
<channel site="sky.com" site_id="1343" lang="en" xmltv_id="">SkySp Action</channel>
|
||||
<channel site="sky.com" site_id="1348" lang="en" xmltv_id="">SkySp News</channel>
|
||||
<channel site="sky.com" site_id="1362" lang="en" xmltv_id="">SkySp Tennis HD</channel>
|
||||
<channel site="sky.com" site_id="1400" lang="en" xmltv_id="">Sky One HD</channel>
|
||||
<channel site="sky.com" site_id="1403" lang="en" xmltv_id="">Sky One</channel>
|
||||
<channel site="sky.com" site_id="1701" lang="en" xmltv_id="">SkySpMainEvHD</channel>
|
||||
<channel site="sky.com" site_id="1808" lang="en" xmltv_id="">Sky Family</channel>
|
||||
<channel site="sky.com" site_id="1815" lang="en" xmltv_id="">Sky Greats</channel>
|
||||
<channel site="sky.com" site_id="2021" lang="en" xmltv_id="">BBC R Cymru 2</channel>
|
||||
<channel site="sky.com" site_id="2026" lang="en" xmltv_id="">BBC R5L</channel>
|
||||
<channel site="sky.com" site_id="2034" lang="en" xmltv_id="">BBC R5SX</channel>
|
||||
@@ -48,14 +63,35 @@
|
||||
<channel site="sky.com" site_id="2971" lang="en" xmltv_id="">Capital XTRA</channel>
|
||||
<channel site="sky.com" site_id="3021" lang="en" xmltv_id="">BBC ALBA HD</channel>
|
||||
<channel site="sky.com" site_id="3082" lang="en" xmltv_id="">Sky One HD</channel>
|
||||
<channel site="sky.com" site_id="3142" lang="en" xmltv_id="">TNT Sports 4</channel>
|
||||
<channel site="sky.com" site_id="3363" lang="en" xmltv_id="">Panjab Radio</channel>
|
||||
<channel site="sky.com" site_id="3371" lang="en" xmltv_id="">BFBS Radio</channel>
|
||||
<channel site="sky.com" site_id="3392" lang="en" xmltv_id="">SonLife</channel>
|
||||
<channel site="sky.com" site_id="3470" lang="en" xmltv_id="">Classic FM</channel>
|
||||
<channel site="sky.com" site_id="3628" lang="en" xmltv_id="">TNTSports2 HD</channel>
|
||||
<channel site="sky.com" site_id="3630" lang="en" xmltv_id="">TNTSports3 HD</channel>
|
||||
<channel site="sky.com" site_id="3662" lang="en" xmltv_id="">TNT Sports 1</channel>
|
||||
<channel site="sky.com" site_id="3664" lang="en" xmltv_id="">TNT Sports 2</channel>
|
||||
<channel site="sky.com" site_id="3836" lang="en" xmltv_id="">SkySp F1 HD</channel>
|
||||
<channel site="sky.com" site_id="3843" lang="en" xmltv_id="">SkySp F'ball HD</channel>
|
||||
<channel site="sky.com" site_id="3848" lang="en" xmltv_id="">SkySp F'ball</channel>
|
||||
<channel site="sky.com" site_id="3858" lang="en" xmltv_id="">SkySp+ HD</channel>
|
||||
<channel site="sky.com" site_id="3859" lang="en" xmltv_id="">SkySp+</channel>
|
||||
<channel site="sky.com" site_id="4024" lang="en" xmltv_id="">SkySp ActionHD</channel>
|
||||
<channel site="sky.com" site_id="4027" lang="en" xmltv_id="">SkySp Golf HD</channel>
|
||||
<channel site="sky.com" site_id="4029" lang="en" xmltv_id="">SkySp PL HD</channel>
|
||||
<channel site="sky.com" site_id="4036" lang="en" xmltv_id="">SkySp News HD</channel>
|
||||
<channel site="sky.com" site_id="4041" lang="en" xmltv_id="">TNTSports4 HD</channel>
|
||||
<channel site="sky.com" site_id="4052" lang="en" xmltv_id="">SkySp Racing HD</channel>
|
||||
<channel site="sky.com" site_id="4085" lang="en" xmltv_id="">SkySpCricket HD</channel>
|
||||
<channel site="sky.com" site_id="4092" lang="en" xmltv_id="">SkySp Mix HD</channel>
|
||||
<channel site="sky.com" site_id="4093" lang="en" xmltv_id="">SkySp Mix</channel>
|
||||
<channel site="sky.com" site_id="4158" lang="en" xmltv_id="">WRN Europe</channel>
|
||||
<channel site="sky.com" site_id="4163" lang="en" xmltv_id="">EWTN Catholic</channel>
|
||||
<channel site="sky.com" site_id="4611" lang="en" xmltv_id="">LEGEND</channel>
|
||||
<channel site="sky.com" site_id="5033" lang="en" xmltv_id="">TNT Sports 3</channel>
|
||||
<channel site="sky.com" site_id="5040" lang="en" xmltv_id="">Arise News</channel>
|
||||
<channel site="sky.com" site_id="6014" lang="en" xmltv_id="">TNTSBoxOffHD</channel>
|
||||
<channel site="sky.com" site_id="8040" lang="en" xmltv_id="">My Sky</channel>
|
||||
<channel site="sky.com" site_id="8266" lang="en" xmltv_id="">My Account</channel>
|
||||
<channel site="sky.com" site_id="8301" lang="en" xmltv_id="">Program Your Remote</channel>
|
||||
@@ -319,8 +355,8 @@
|
||||
<channel site="sky.com" site_id="1857" lang="en" xmltv_id="NickJr.uk@SD">Nick Jr.</channel>
|
||||
<channel site="sky.com" site_id="5192" lang="en" xmltv_id="NickJrToo.ie@SD">Nick Jr. Too</channel>
|
||||
<channel site="sky.com" site_id="4340" lang="en" xmltv_id="NickJrToo.uk@SD">Nick Jr. Too</channel>
|
||||
<channel site="sky.com" site_id="5527" lang="en" xmltv_id="Nicktoons.ie@SD">Nick Alvinnnn!!!</channel>
|
||||
<channel site="sky.com" site_id="1849" lang="en" xmltv_id="Nicktoons.uk@SD">Nick Alvinnnn!!!</channel>
|
||||
<channel site="sky.com" site_id="5527" lang="en" xmltv_id="Nicktoons.ie@SD">Nick SpongeBob</channel>
|
||||
<channel site="sky.com" site_id="1849" lang="en" xmltv_id="Nicktoons.uk@SD">Nick SpongeBob</channel>
|
||||
<channel site="sky.com" site_id="3715" lang="en" xmltv_id="NoorTV.uk@SD">Noor TV</channel>
|
||||
<channel site="sky.com" site_id="3403" lang="en" xmltv_id="Now70s.uk@SD">NOW 70s</channel>
|
||||
<channel site="sky.com" site_id="4541" lang="en" xmltv_id="Now80s.uk@SD">NOW 80s</channel>
|
||||
@@ -378,7 +414,7 @@
|
||||
<channel site="sky.com" site_id="4016" lang="en" xmltv_id="SkyCinemaDrama.uk@HD">Sky Drama HD</channel>
|
||||
<channel site="sky.com" site_id="4018" lang="en" xmltv_id="SkyCinemaFamily.uk@HD">Sky Family HD</channel>
|
||||
<channel site="sky.com" site_id="4015" lang="en" xmltv_id="SkyCinemaGreats.uk@SD">Sky Greats HD</channel>
|
||||
<channel site="sky.com" site_id="4033" lang="en" xmltv_id="SkyCinemaHits.uk@SD">Sky Box Set HD</channel>
|
||||
<channel site="sky.com" site_id="4033" lang="en" xmltv_id="SkyCinemaHits.uk@SD">SkyBiopicsHD</channel>
|
||||
<channel site="sky.com" site_id="4021" lang="en" xmltv_id="SkyCinemaPremiere.uk@HD">SkyPremiereHD</channel>
|
||||
<channel site="sky.com" site_id="4017" lang="en" xmltv_id="SkyCinemaSciFiHorror.uk@HD">Sky ScFi/HorHD</channel>
|
||||
<channel site="sky.com" site_id="4020" lang="en" xmltv_id="SkyCinemaSelect.uk@SD">Sky5*MoviesHD</channel>
|
||||
|
||||
@@ -1,17 +1,13 @@
|
||||
const dayjs = require('dayjs')
|
||||
const utc = require('dayjs/plugin/utc')
|
||||
const timezone = require('dayjs/plugin/timezone')
|
||||
const doFetch = require('@ntlab/sfetch')
|
||||
const debug = require('debug')('site:sky.com')
|
||||
const axios = require('axios')
|
||||
const doFetch = require('../../scripts/core/multifetch')
|
||||
const sortBy = require('lodash.sortby')
|
||||
const path = require('path')
|
||||
const fs = require('fs/promises')
|
||||
|
||||
dayjs.extend(utc)
|
||||
dayjs.extend(timezone)
|
||||
|
||||
doFetch.setDebugger(debug)
|
||||
|
||||
module.exports = {
|
||||
site: 'sky.com',
|
||||
days: 2,
|
||||
@@ -53,24 +49,15 @@ module.exports = {
|
||||
return programs
|
||||
},
|
||||
async channels() {
|
||||
const dataPath = path.join(__dirname, '__data__', 'content.json')
|
||||
let regions = []
|
||||
|
||||
try {
|
||||
const raw = await fs.readFile(dataPath, 'utf8')
|
||||
const payload = JSON.parse(raw)
|
||||
if (Array.isArray(payload.regions)) {
|
||||
regions = payload.regions
|
||||
const regions = await axios.get('https://epgservices.sky.com/999/api/2.0/regions/json')
|
||||
.then(res => res.data.regions)
|
||||
.then(region => region.map(region => {
|
||||
if (!region || region.b === undefined || region.sb === undefined) return null
|
||||
return {
|
||||
bouquet: region.b,
|
||||
subBouquet: region.sb
|
||||
}
|
||||
} catch (err) {
|
||||
debug('Failed to read regions from %s: %o', dataPath, err)
|
||||
throw err
|
||||
}
|
||||
|
||||
if (regions.length === 0) {
|
||||
debug('No regions defined in %s', dataPath)
|
||||
return []
|
||||
}
|
||||
}).filter(region => region !== null))
|
||||
|
||||
const uniqueRegions = new Map()
|
||||
regions.forEach(region => {
|
||||
|
||||
@@ -2,7 +2,7 @@ const cheerio = require('cheerio')
|
||||
const dayjs = require('dayjs')
|
||||
const utc = require('dayjs/plugin/utc')
|
||||
const customParseFormat = require('dayjs/plugin/customParseFormat')
|
||||
const doFetch = require('@ntlab/sfetch')
|
||||
const doFetch = require('../../scripts/core/multifetch')
|
||||
const debug = require('debug')('site:startimestv.com')
|
||||
|
||||
dayjs.extend(utc)
|
||||
|
||||
@@ -4,7 +4,7 @@ const dayjs = require('dayjs')
|
||||
const utc = require('dayjs/plugin/utc')
|
||||
const timezone = require('dayjs/plugin/timezone')
|
||||
const customParseFormat = require('dayjs/plugin/customParseFormat')
|
||||
const doFetch = require('@ntlab/sfetch')
|
||||
const doFetch = require('../../scripts/core/multifetch')
|
||||
const debug = require('debug')('site:tivie.id')
|
||||
|
||||
dayjs.extend(utc)
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
const doFetch = require('@ntlab/sfetch')
|
||||
const doFetch = require('../../scripts/core/multifetch')
|
||||
const cheerio = require('cheerio')
|
||||
const dayjs = require('dayjs')
|
||||
const utc = require('dayjs/plugin/utc')
|
||||
|
||||
@@ -4,7 +4,7 @@ const cheerio = require('cheerio')
|
||||
const utc = require('dayjs/plugin/utc')
|
||||
const timezone = require('dayjs/plugin/timezone')
|
||||
const customParseFormat = require('dayjs/plugin/customParseFormat')
|
||||
const doFetch = require('@ntlab/sfetch')
|
||||
const doFetch = require('../../scripts/core/multifetch')
|
||||
const FRENCH_CHANNELS = require('./__data__/frenchChannels.js')
|
||||
|
||||
dayjs.extend(utc)
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
const dayjs = require('dayjs')
|
||||
const utc = require('dayjs/plugin/utc')
|
||||
const doFetch = require('@ntlab/sfetch')
|
||||
const doFetch = require('../../scripts/core/multifetch')
|
||||
const debug = require('debug')('site:virgintvgo.virginmedia.com')
|
||||
|
||||
dayjs.extend(utc)
|
||||
|
||||
@@ -3,7 +3,7 @@ const axios = require('axios')
|
||||
const utc = require('dayjs/plugin/utc')
|
||||
const timezone = require('dayjs/plugin/timezone')
|
||||
const customParseFormat = require('dayjs/plugin/customParseFormat')
|
||||
const doFetch = require('@ntlab/sfetch')
|
||||
const doFetch = require('../../scripts/core/multifetch')
|
||||
|
||||
dayjs.extend(utc)
|
||||
dayjs.extend(timezone)
|
||||
|
||||
Reference in New Issue
Block a user