Update allente sites.

Signed-off-by: Toha <tohenk@yahoo.com>
This commit is contained in:
Toha
2026-07-04 19:32:45 +07:00
parent 41a54452e8
commit f59a46bb00
26 changed files with 257889 additions and 421 deletions
File diff suppressed because it is too large Load Diff
@@ -0,0 +1 @@
{"date":"2001-11-17","categories":[],"channels":[]}
+68
View File
@@ -0,0 +1,68 @@
const dayjs = require('dayjs')
const eventIds = []
module.exports = {
site: 'allente.dk',
days: 2,
request: {
cache: {
ttl: 24 * 60 * 60 * 1000 // 1 day
}
},
url({ date }) {
return `https://www.allente.dk/api/epg/refetch-epg-data?Start=${date.format('YYYY-MM-DD')}`
},
parser({ content, channel }) {
const programs = []
if (typeof content === 'string' || Buffer.isBuffer(content)) {
content = JSON.parse(content)
}
if (Array.isArray(content?.channels)) {
content.channels
.filter(item => item.id === channel.site_id)
.forEach(item => {
if (Array.isArray(item.programs)) {
item.programs
// make program unique across days
.filter(event => !eventIds.includes(event.id))
.forEach(event => {
eventIds.push(event.id)
programs.push({
title: event.title,
description: event.shortDescription,
category: event.genres,
image: event.splashImageUri,
season: event.seasonNumber ? event.seasonNumber : null,
episode: event.episodeNumber ? event.episodeNumber : null,
year: event.releaseYear ? event.releaseYear.toString() : null,
start: dayjs(event.eventStart),
stop: dayjs(event.eventEnd)
})
})
}
})
}
return programs
},
async channels() {
const channels = []
const axios = require('axios')
const res = await axios.get(`https://www.allente.dk/api/epg/refetch-epg-data?Start=${dayjs().format('YYYY-MM-DD')}`)
.then(res => res.data)
.catch(console.error)
if (Array.isArray(res.channels)) {
channels.push(...res.channels
.map(item => ({
lang: 'da',
site_id: item.id,
name: item.name
})
))
}
return channels
}
}
+55
View File
@@ -0,0 +1,55 @@
const { parser, url } = require('./allente.dk.config.js')
const fs = require('fs')
const path = require('path')
const dayjs = require('dayjs')
const date = dayjs('2026-06-28').startOf('d')
const channel = {
site_id: '20001'
}
it('can generate valid url', () => {
expect(url({ date })).toBe('https://www.allente.dk/api/epg/refetch-epg-data?Start=2026-06-28')
})
it('can parse response', () => {
const content = fs.readFileSync(path.resolve(__dirname, '__data__/content.json'))
const result = parser({ content, channel })
.map(p => {
p.start = p.start.toJSON()
p.stop = p.stop.toJSON()
return p
})
expect(result.length).toBe(26)
expect(result[2]).toMatchObject({
start: '2026-06-28T03:30:00.000Z',
stop: '2026-06-28T04:00:00.000Z',
title: 'Antikmagasinet',
description:
'Hvilke genstande bliver fremtidens antikviteter.',
category: ['Livsstil', 'Antikviteter'],
image:
'https://allente-imgmgr.akamaized.net/11823019554723227163.jpg?im=Resize,width=600,%20height=338',
season: 19,
episode: 6,
year: '2026'
})
expect(result[25]).toMatchObject({
start: '2026-06-28T23:30:00.000Z',
stop: '2026-06-29T03:00:00.000Z',
title: 'Airing Break',
category: ['Diverse'],
season: null,
episode: null
})
})
it('can handle empty guide', () => {
const result = parser({
date,
channel,
content: fs.readFileSync(path.resolve(__dirname, '__data__/no_content.json'))
})
expect(result).toMatchObject([])
})
+103
View File
@@ -0,0 +1,103 @@
<?xml version="1.0" encoding="UTF-8"?>
<channels>
<channel site="allente.dk" site_id="10001" lang="da" xmltv_id="">NRK1 HD</channel>
<channel site="allente.dk" site_id="10002" lang="da" xmltv_id="">NRK2 HD</channel>
<channel site="allente.dk" site_id="10003" lang="da" xmltv_id="">NRK Super / NRK3 HD</channel>
<channel site="allente.dk" site_id="20001" lang="da" xmltv_id="">SVT1 HD</channel>
<channel site="allente.dk" site_id="20002" lang="da" xmltv_id="">SVT2 HD</channel>
<channel site="allente.dk" site_id="20004" lang="da" xmltv_id="">TV4 HD</channel>
<channel site="allente.dk" site_id="20059" lang="da" xmltv_id="">Horse &amp; Country</channel>
<channel site="allente.dk" site_id="20062" lang="da" xmltv_id="">Nickelodeon</channel>
<channel site="allente.dk" site_id="20084" lang="da" xmltv_id="">Vision Sverige</channel>
<channel site="allente.dk" site_id="30001" lang="da" xmltv_id="">DR1 HD</channel>
<channel site="allente.dk" site_id="30002" lang="da" xmltv_id="">DR2 HD</channel>
<channel site="allente.dk" site_id="30003" lang="da" xmltv_id="">TV 2 HD (D)</channel>
<channel site="allente.dk" site_id="30004" lang="da" xmltv_id="">Kanal 4 HD</channel>
<channel site="allente.dk" site_id="30005" lang="da" xmltv_id="">Kanal 5 HD (D)</channel>
<channel site="allente.dk" site_id="30006" lang="da" xmltv_id="">6&apos;eren HD</channel>
<channel site="allente.dk" site_id="30007" lang="da" xmltv_id="">TV3 HD (D)</channel>
<channel site="allente.dk" site_id="30008" lang="da" xmltv_id="">TV3 Puls HD</channel>
<channel site="allente.dk" site_id="30009" lang="da" xmltv_id="">CANAL9 HD (D)</channel>
<channel site="allente.dk" site_id="30010" lang="da" xmltv_id="">Eurosport 2 HD (D)</channel>
<channel site="allente.dk" site_id="30011" lang="da" xmltv_id="">TV 2 SPORT HD</channel>
<channel site="allente.dk" site_id="30012" lang="da" xmltv_id="">TV 2 News HD</channel>
<channel site="allente.dk" site_id="30013" lang="da" xmltv_id="">TV 2 Charlie HD</channel>
<channel site="allente.dk" site_id="30014" lang="da" xmltv_id="">TV 2 Fri HD</channel>
<channel site="allente.dk" site_id="30015" lang="da" xmltv_id="">dk4 HD</channel>
<channel site="allente.dk" site_id="30017" lang="da" xmltv_id="">TLC Danmark</channel>
<channel site="allente.dk" site_id="30018" lang="da" xmltv_id="">Discovery Channel HD (D)</channel>
<channel site="allente.dk" site_id="30021" lang="da" xmltv_id="">DR Ramasjang</channel>
<channel site="allente.dk" site_id="30024" lang="da" xmltv_id="">ID Investigation Discovery (D)</channel>
<channel site="allente.dk" site_id="30026" lang="da" xmltv_id="">Sport Live HD</channel>
<channel site="allente.dk" site_id="30027" lang="da" xmltv_id="">TV3 Sport HD (D)</channel>
<channel site="allente.dk" site_id="30032" lang="da" xmltv_id="">TV3+ HD (D)</channel>
<channel site="allente.dk" site_id="30036" lang="da" xmltv_id="">TV 2 / Øst</channel>
<channel site="allente.dk" site_id="30037" lang="da" xmltv_id="">TV 2 / Fyn</channel>
<channel site="allente.dk" site_id="30038" lang="da" xmltv_id="">TV 2 / Syd</channel>
<channel site="allente.dk" site_id="30039" lang="da" xmltv_id="">TV 2 / Østjylland</channel>
<channel site="allente.dk" site_id="30040" lang="da" xmltv_id="">TV 2 / Midt-Vest</channel>
<channel site="allente.dk" site_id="30041" lang="da" xmltv_id="">TV 2 / Nord</channel>
<channel site="allente.dk" site_id="30042" lang="da" xmltv_id="">TV 2 / Bornholm</channel>
<channel site="allente.dk" site_id="30043" lang="da" xmltv_id="">Kanal 4 Synstolkning</channel>
<channel site="allente.dk" site_id="30044" lang="da" xmltv_id="">Kanal 5 Synstolkning</channel>
<channel site="allente.dk" site_id="30045" lang="da" xmltv_id="">Discovery Synstolkning</channel>
<channel site="allente.dk" site_id="30046" lang="da" xmltv_id="">TLC Danmark Synstolkning</channel>
<channel site="allente.dk" site_id="30047" lang="da" xmltv_id="">National Geographic HD (D)</channel>
<channel site="allente.dk" site_id="30048" lang="da" xmltv_id="">Kanal 5 Undertekster høreh.</channel>
<channel site="allente.dk" site_id="30050" lang="da" xmltv_id="">TV3 MAX HD</channel>
<channel site="allente.dk" site_id="30051" lang="da" xmltv_id="">TV 2 SPORT X</channel>
<channel site="allente.dk" site_id="30056" lang="da" xmltv_id="">See</channel>
<channel site="allente.dk" site_id="30057" lang="da" xmltv_id="">Viaplay Sport News</channel>
<channel site="allente.dk" site_id="50007" lang="da" xmltv_id="">HISTORY</channel>
<channel site="allente.dk" site_id="50008" lang="da" xmltv_id="">HISTORY 2</channel>
<channel site="allente.dk" site_id="50012" lang="da" xmltv_id="">MTV</channel>
<channel site="allente.dk" site_id="50018" lang="da" xmltv_id="">Nick Jr</channel>
<channel site="allente.dk" site_id="50019" lang="da" xmltv_id="">Cartoon Network</channel>
<channel site="allente.dk" site_id="50022" lang="da" xmltv_id="">Eurosport 1 HD (D)</channel>
<channel site="allente.dk" site_id="50024" lang="da" xmltv_id="">CNN International</channel>
<channel site="allente.dk" site_id="50025" lang="da" xmltv_id="">BBC News</channel>
<channel site="allente.dk" site_id="50026" lang="da" xmltv_id="">Sky News</channel>
<channel site="allente.dk" site_id="50027" lang="da" xmltv_id="">Bloomberg</channel>
<channel site="allente.dk" site_id="50028" lang="da" xmltv_id="">Al Jazeera English</channel>
<channel site="allente.dk" site_id="50032" lang="da" xmltv_id="">Visjon Norge HD</channel>
<channel site="allente.dk" site_id="50034" lang="da" xmltv_id="">CGTN HD</channel>
<channel site="allente.dk" site_id="50036" lang="da" xmltv_id="">CGTN Documentary HD</channel>
<channel site="allente.dk" site_id="50037" lang="da" xmltv_id="">Kanal 10 Norge HD</channel>
<channel site="allente.dk" site_id="50038" lang="da" xmltv_id="">BBC Nordic HD</channel>
<channel site="allente.dk" site_id="50050" lang="da" xmltv_id="">V series HD</channel>
<channel site="allente.dk" site_id="50052" lang="da" xmltv_id="">V classics HD</channel>
<channel site="allente.dk" site_id="50057" lang="da" xmltv_id="">V crime HD</channel>
<channel site="allente.dk" site_id="50077" lang="da" xmltv_id="">V sport golf HD</channel>
<channel site="allente.dk" site_id="50082" lang="da" xmltv_id="">CNBC</channel>
<channel site="allente.dk" site_id="50083" lang="da" xmltv_id="">DW English</channel>
<channel site="allente.dk" site_id="50085" lang="da" xmltv_id="">Nicktoons</channel>
<channel site="allente.dk" site_id="50093" lang="da" xmltv_id="">TST1</channel>
<channel site="allente.dk" site_id="50094" lang="da" xmltv_id="">TST2</channel>
<channel site="allente.dk" site_id="50105" lang="da" xmltv_id="">V sport ultra HD</channel>
<channel site="allente.dk" site_id="50106" lang="da" xmltv_id="">V film premiere HD</channel>
<channel site="allente.dk" site_id="50107" lang="da" xmltv_id="">V film action HD</channel>
<channel site="allente.dk" site_id="50108" lang="da" xmltv_id="">V film hits HD</channel>
<channel site="allente.dk" site_id="50109" lang="da" xmltv_id="">V film family</channel>
<channel site="allente.dk" site_id="50113" lang="da" xmltv_id="">Viasat Explore HD</channel>
<channel site="allente.dk" site_id="50114" lang="da" xmltv_id="">Viasat History HD</channel>
<channel site="allente.dk" site_id="50115" lang="da" xmltv_id="">Viasat Nature HD</channel>
<channel site="allente.dk" site_id="50125" lang="da" xmltv_id="">V sport live 1</channel>
<channel site="allente.dk" site_id="50126" lang="da" xmltv_id="">V sport live 2</channel>
<channel site="allente.dk" site_id="50127" lang="da" xmltv_id="">V sport live 3</channel>
<channel site="allente.dk" site_id="50128" lang="da" xmltv_id="">V sport live 4</channel>
<channel site="allente.dk" site_id="50129" lang="da" xmltv_id="">V sport live 5</channel>
<channel site="allente.dk" site_id="50132" lang="da" xmltv_id="">SkyShowtime 2 HD</channel>
<channel site="allente.dk" site_id="50133" lang="da" xmltv_id="">SkyShowtime 1 HD</channel>
<channel site="allente.dk" site_id="50136" lang="da" xmltv_id="">Bedehuskanalen</channel>
<channel site="allente.dk" site_id="50137" lang="da" xmltv_id="">SBN International</channel>
<channel site="allente.dk" site_id="50138" lang="da" xmltv_id="">FREEDOM</channel>
<channel site="allente.dk" site_id="50140" lang="da" xmltv_id="">Kanal 10 Sverige</channel>
<channel site="allente.dk" site_id="50141" lang="da" xmltv_id="">Moonbug</channel>
<channel site="allente.dk" site_id="50142" lang="da" xmltv_id="">Love Nature HD</channel>
<channel site="allente.dk" site_id="50143" lang="da" xmltv_id="">Mezzo Live</channel>
<channel site="allente.dk" site_id="50144" lang="da" xmltv_id="">Dizi</channel>
<channel site="allente.dk" site_id="50145" lang="da" xmltv_id="">Sverigekanalen</channel>
<channel site="allente.dk" site_id="50146" lang="da" xmltv_id="">ZDF</channel>
<channel site="allente.dk" site_id="50147" lang="da" xmltv_id="">Das Erste</channel>
<channel site="allente.dk" site_id="50148" lang="da" xmltv_id="">RTL</channel>
</channels>
+21
View File
@@ -0,0 +1,21 @@
# allente.dk
https://www.allente.dk/tv-guide/
### Download the guide
```sh
npm run grab --- --sites=allente.dk
```
### Update channel list
```sh
npm run channels:parse --- --config=./sites/allente.dk/allente.dk.config.js --output=./sites/allente.dk/allente.dk_dk.channels.xml
```
### Test
```sh
npm test --- allente.dk
```