Move sites into a folders
This commit is contained in:
78
sites/mncvision.id/mncvision.id.config.js
Normal file
78
sites/mncvision.id/mncvision.id.config.js
Normal file
@@ -0,0 +1,78 @@
|
||||
const FormData = require('form-data')
|
||||
const jsdom = require('jsdom')
|
||||
const { JSDOM } = jsdom
|
||||
const dayjs = require('dayjs')
|
||||
const utc = require('dayjs/plugin/utc')
|
||||
const timezone = require('dayjs/plugin/timezone')
|
||||
const customParseFormat = require('dayjs/plugin/customParseFormat')
|
||||
|
||||
dayjs.extend(utc)
|
||||
dayjs.extend(timezone)
|
||||
dayjs.extend(customParseFormat)
|
||||
|
||||
module.exports = {
|
||||
site: 'mncvision.id',
|
||||
request: {
|
||||
method: 'POST',
|
||||
data: function ({ channel, date }) {
|
||||
const formData = new FormData()
|
||||
formData.setBoundary('X-EPG-BOUNDARY')
|
||||
formData.append('search_model', 'channel')
|
||||
formData.append('af0rmelement', 'aformelement')
|
||||
formData.append('fdate', date.format('YYYY-MM-DD'))
|
||||
formData.append('fchannel', channel.site_id)
|
||||
formData.append('submit', 'Search')
|
||||
|
||||
return formData
|
||||
},
|
||||
headers: {
|
||||
'Content-Type': 'multipart/form-data; boundary=X-EPG-BOUNDARY'
|
||||
}
|
||||
},
|
||||
logo({ channel }) {
|
||||
return `https://www.mncvision.id/userfiles/image/channel/channel_${channel.site_id}.png`
|
||||
},
|
||||
url({ channel }) {
|
||||
return `https://www.mncvision.id/schedule/table`
|
||||
},
|
||||
parser({ content, date }) {
|
||||
const programs = []
|
||||
const items = parseItems(content)
|
||||
items.forEach(item => {
|
||||
const title = parseTitle(item)
|
||||
const start = parseStart(item, date)
|
||||
const duration = parseDuration(item)
|
||||
const stop = start.add(duration, 'm')
|
||||
|
||||
programs.push({ title, start, stop })
|
||||
})
|
||||
|
||||
return programs
|
||||
}
|
||||
}
|
||||
|
||||
function parseDuration(item) {
|
||||
let duration = (item.querySelector('td:nth-child(3)') || { textContent: '' }).textContent
|
||||
const match = duration.match(/(\d{2}):(\d{2})/)
|
||||
const hours = parseInt(match[1])
|
||||
const minutes = parseInt(match[2])
|
||||
|
||||
return hours * 60 + minutes
|
||||
}
|
||||
|
||||
function parseStart(item, date) {
|
||||
let time = (item.querySelector('td:nth-child(1)') || { textContent: '' }).textContent
|
||||
time = `${date.format('DD/MM/YYYY')} ${time}`
|
||||
|
||||
return dayjs.tz(time, 'DD/MM/YYYY HH:mm', 'Asia/Jakarta')
|
||||
}
|
||||
|
||||
function parseTitle(item) {
|
||||
return (item.querySelector('td:nth-child(2) > a') || { textContent: '' }).textContent
|
||||
}
|
||||
|
||||
function parseItems(content) {
|
||||
const dom = new JSDOM(content)
|
||||
|
||||
return dom.window.document.querySelectorAll('tr[valign="top"]')
|
||||
}
|
||||
95
sites/mncvision.id/mncvision.id_id.channels.xml
Normal file
95
sites/mncvision.id/mncvision.id_id.channels.xml
Normal file
@@ -0,0 +1,95 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<site site="mncvision.id">
|
||||
<channels>
|
||||
<channel lang="id" xmltv_id="ABCAustraliaAsia.au" site_id="350">ABC Australia Asia</channel>
|
||||
<channel lang="id" xmltv_id="AljazeeraEnglish.qa" site_id="331">Aljazeera English</channel>
|
||||
<channel lang="id" xmltv_id="AnimalPlanetSoutheastAsia.us" site_id="203">Animal Planet Southeast Asia</channel>
|
||||
<channel lang="id" xmltv_id="AnimaxAsia.jp" site_id="157">Animax Asia</channel>
|
||||
<channel lang="id" xmltv_id="ANTV.id" site_id="115">ANTV</channel>
|
||||
<channel lang="id" xmltv_id="ArirangWorld.kr" site_id="351">Arirang World</channel>
|
||||
<channel lang="id" xmltv_id="AsianFoodNetwork.sg" site_id="240">Asian Food Network</channel>
|
||||
<channel lang="id" xmltv_id="AXNEastAsia.us" site_id="154">AXN East Asia</channel>
|
||||
<channel lang="id" xmltv_id="BabyTVAsia.uk" site_id="40">Baby TV Asia</channel>
|
||||
<channel lang="id" xmltv_id="BBCEarthAsia.uk" site_id="200">BBC Earth Asia</channel>
|
||||
<channel lang="id" xmltv_id="BBCWorldNewsAsiaPacific.uk" site_id="332">BBC World News Asia Pacific</channel>
|
||||
<channel lang="id" xmltv_id="BeInSports1Indonesia.qa" site_id="305">BeIn Sports 1 Indonesia</channel>
|
||||
<channel lang="id" xmltv_id="BeInSports2Indonesia.qa" site_id="306">BeIn Sports 2 Indonesia</channel>
|
||||
<channel lang="id" xmltv_id="BeritaSatuNewsChannel.id" site_id="103">Berita Satu News Channel</channel>
|
||||
<channel lang="id" xmltv_id="Besmart.id" site_id="112">Besmart</channel>
|
||||
<channel lang="id" xmltv_id="BloombergTVAsia.us" site_id="338">Bloomberg TV Asia</channel>
|
||||
<channel lang="id" xmltv_id="BoomerangSouthEastAsia.us" site_id="39">Boomerang South East Asia</channel>
|
||||
<channel lang="id" xmltv_id="CartoonNetworkAsia.us" site_id="47">Cartoon Network Asia</channel>
|
||||
<channel lang="id" xmltv_id="CBeebiesAsia.uk" site_id="41">CBeebies Asia</channel>
|
||||
<channel lang="id" xmltv_id="CelestialClassicMovies.hk" site_id="22">Celestial Classic Movies</channel>
|
||||
<channel lang="id" xmltv_id="CelestialMoviesIndonesia.hk" site_id="20">Celestial Movies Indonesia</channel>
|
||||
<channel lang="id" xmltv_id="CGTN.cn" site_id="353">CGTN</channel>
|
||||
<channel lang="id" xmltv_id="CGTNDocumentary.cn" site_id="205">CGTN Documentary</channel>
|
||||
<channel lang="id" xmltv_id="CinemaxAsia.us" site_id="8">Cinemax Asia</channel>
|
||||
<channel lang="id" xmltv_id="CNA.sg" site_id="330">CNA</channel>
|
||||
<channel lang="id" xmltv_id="CNBCAsiaPacific.us" site_id="337">CNBC Asia-Pacific</channel>
|
||||
<channel lang="id" xmltv_id="CNNInternationalAsiaPacific.us" site_id="333">CNN International Asia Pacific</channel>
|
||||
<channel lang="id" xmltv_id="CrimePlusInvestigationAsia.us" site_id="207">Crime + Investigation Asia</channel>
|
||||
<channel lang="id" xmltv_id="DiscoveryChannelSoutheastAsia.us" site_id="201">Discovery Channel Southeast Asia</channel>
|
||||
<channel lang="id" xmltv_id="DWEnglish.de" site_id="357">DW English</channel>
|
||||
<channel lang="id" xmltv_id="Ent.id" site_id="86">Ent</channel>
|
||||
<channel lang="id" xmltv_id="FightSports.us" site_id="304">Fight Sports</channel>
|
||||
<channel lang="id" xmltv_id="FMN.id" site_id="150">FMN</channel>
|
||||
<channel lang="id" xmltv_id="FoxNewsChannel.us" site_id="335">Fox News Channel</channel>
|
||||
<channel lang="id" xmltv_id="France24English.fr" site_id="352">France 24 English</channel>
|
||||
<channel lang="id" xmltv_id="GTV.id" site_id="81">GTV</channel>
|
||||
<channel lang="id" xmltv_id="HBOAsia.us" site_id="7">HBO Asia</channel>
|
||||
<channel lang="id" xmltv_id="HBOFamilyAsia.us" site_id="9">HBO Family Asia</channel>
|
||||
<channel lang="id" xmltv_id="HBOHits.us" site_id="10">HBO Hits</channel>
|
||||
<channel lang="id" xmltv_id="HBOSignatureAsia.us" site_id="6">HBO Signature Asia</channel>
|
||||
<channel lang="id" xmltv_id="HGTVAsia.us" site_id="245">HGTV Asia</channel>
|
||||
<channel lang="id" xmltv_id="HistoryAsia.us" site_id="206">History Asia</channel>
|
||||
<channel lang="id" xmltv_id="Hits.sg" site_id="160">Hits</channel>
|
||||
<channel lang="id" xmltv_id="HitsMovies.sg" site_id="11">Hits Movies</channel>
|
||||
<channel lang="id" xmltv_id="IDXChannel.id" site_id="100">IDX Channel</channel>
|
||||
<channel lang="id" xmltv_id="Indosiar.id" site_id="78">Indosiar</channel>
|
||||
<channel lang="id" xmltv_id="INews.id" site_id="83">INews</channel>
|
||||
<channel lang="id" xmltv_id="JakTV.id" site_id="113">Jak TV</channel>
|
||||
<channel lang="id" xmltv_id="KidsTV.id" site_id="46">Kids TV</channel>
|
||||
<channel lang="id" xmltv_id="Kix.hk" site_id="161">Kix</channel>
|
||||
<channel lang="id" xmltv_id="KompasTV.id" site_id="106">Kompas TV</channel>
|
||||
<channel lang="id" xmltv_id="Life.id" site_id="91">Life</channel>
|
||||
<channel lang="id" xmltv_id="LifestyleFashion.id" site_id="90">Lifestyle & Fashion</channel>
|
||||
<channel lang="id" xmltv_id="LifetimeAsia.us" site_id="167">Lifetime Asia</channel>
|
||||
<channel lang="id" xmltv_id="MetroTV.id" site_id="107">Metro TV</channel>
|
||||
<channel lang="id" xmltv_id="MiaoMi.hk" site_id="38">Miao Mi</channel>
|
||||
<channel lang="id" xmltv_id="MNCNews.id" site_id="84">MNC News</channel>
|
||||
<channel lang="id" xmltv_id="MNCSports.id" site_id="102">MNC Sports</channel>
|
||||
<channel lang="id" xmltv_id="MNCTV.id" site_id="82">MNC TV</channel>
|
||||
<channel lang="id" xmltv_id="MShopSignature.id" site_id="88">M Shop Signature</channel>
|
||||
<channel lang="id" xmltv_id="MShopSuperSale.id" site_id="79">M Shop Super Sale!</channel>
|
||||
<channel lang="id" xmltv_id="MusicTV.id" site_id="111">Music TV</channel>
|
||||
<channel lang="id" xmltv_id="MuslimTV.id" site_id="92">Muslim TV</channel>
|
||||
<channel lang="id" xmltv_id="NationalGeographicAsia.us" site_id="202">National Geographic Asia</channel>
|
||||
<channel lang="id" xmltv_id="NationalGeographicWildAsia.us" site_id="204">National Geographic Wild Asia</channel>
|
||||
<channel lang="id" xmltv_id="NET.id" site_id="116">NET</channel>
|
||||
<channel lang="id" xmltv_id="NHKWorldJapan.jp" site_id="355">NHK World Japan</channel>
|
||||
<channel lang="id" xmltv_id="NHKWorldPremium.jp" site_id="354">NHK World Premium</channel>
|
||||
<channel lang="id" xmltv_id="NickelodeonSouthEastAsia.us" site_id="49">Nickelodeon South East Asia</channel>
|
||||
<channel lang="id" xmltv_id="NickJrAsia.us" site_id="37">Nick Jr Asia</channel>
|
||||
<channel lang="id" xmltv_id="OKTV.id" site_id="95">OK TV</channel>
|
||||
<channel lang="id" xmltv_id="One.in" site_id="164">One</channel>
|
||||
<channel lang="id" xmltv_id="QuranTV.sa" site_id="93">Quran TV</channel>
|
||||
<channel lang="id" xmltv_id="RCTI.id" site_id="80">RCTI</channel>
|
||||
<channel lang="id" xmltv_id="SCTV.id" site_id="89">SCTV</channel>
|
||||
<channel lang="id" xmltv_id="SEAToday.id" site_id="336">SEA Today</channel>
|
||||
<channel lang="id" xmltv_id="SoccerChannel.id" site_id="101">Soccer Channel</channel>
|
||||
<channel lang="id" xmltv_id="StarChineseMoviesSouthEastAsia.hk" site_id="18">Star Chinese Movies South East Asia</channel>
|
||||
<channel lang="id" xmltv_id="TawafTV.id" site_id="105">Tawaf TV</channel>
|
||||
<channel lang="id" xmltv_id="Thrill.hk" site_id="19">Thrill</channel>
|
||||
<channel lang="id" xmltv_id="TLCSoutheastAsia.us" site_id="248">TLC Southeast Asia</channel>
|
||||
<channel lang="id" xmltv_id="Trans7.id" site_id="110">Trans 7</channel>
|
||||
<channel lang="id" xmltv_id="TransTV.id" site_id="87">Trans TV</channel>
|
||||
<channel lang="id" xmltv_id="TVNMoviesIndonesia.kr" site_id="25">TVN Movies Indonesia</channel>
|
||||
<channel lang="id" xmltv_id="TVNPremiumIndonesia.kr" site_id="158">TVN Premium Indonesia</channel>
|
||||
<channel lang="id" xmltv_id="TVOne.id" site_id="97">TVOne</channel>
|
||||
<channel lang="id" xmltv_id="TVRINasional.id" site_id="118">TVRI Nasional</channel>
|
||||
<channel lang="id" xmltv_id="VisionPrime.id" site_id="94">Vision Prime</channel>
|
||||
<channel lang="id" xmltv_id="WarnerTVSoutheastAsia.us" site_id="163">Warner TV Southeast Asia</channel>
|
||||
<channel lang="id" xmltv_id="ZeeBioskop.in" site_id="23">Zee Bioskop</channel>
|
||||
</channels>
|
||||
</site>
|
||||
Reference in New Issue
Block a user