From 73ee487474df2b4d1d28e61ce807b46ed8782a84 Mon Sep 17 00:00:00 2001 From: freearhey <7253922+freearhey@users.noreply.github.com> Date: Wed, 4 Feb 2026 02:03:16 +0300 Subject: [PATCH 1/5] Create vantagetv.ee.test.js --- sites/vantagetv.ee/vantagetv.ee.test.js | 41 +++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 sites/vantagetv.ee/vantagetv.ee.test.js diff --git a/sites/vantagetv.ee/vantagetv.ee.test.js b/sites/vantagetv.ee/vantagetv.ee.test.js new file mode 100644 index 00000000..5db1dd3a --- /dev/null +++ b/sites/vantagetv.ee/vantagetv.ee.test.js @@ -0,0 +1,41 @@ +const { parser, url } = require('./vantagetv.ee.config.js') +const fs = require('fs') +const path = require('path') +const dayjs = require('dayjs') +const utc = require('dayjs/plugin/utc') +const customParseFormat = require('dayjs/plugin/customParseFormat') +dayjs.extend(customParseFormat) +dayjs.extend(utc) + +const date = dayjs.utc('2026-02-05', 'YYYY-MM-DD').startOf('d') +const channel = { site_id: 'vrock' } + +it('can generate valid url', () => { + expect(url).toBe('http://vantagetv.ee/epg.xml') +}) + +it('can parse response', () => { + const content = fs.readFileSync(path.resolve(__dirname, '__data__/content.xml')) + + const results = parser({ content, channel, date }) + + expect(results.length).toBe(3) + expect(results[0]).toMatchObject({ + title: 'Breakfast with Vantage Rock', + description: 'Get ready for your day with Vantage Rock', + start: '2026-02-05T04:00:00.000Z', + stop: '2026-02-05T08:00:00.000Z' + }) + expect(results[2]).toMatchObject({ + title: 'Rock All Night', + description: 'It might be late, but that's no reason to stop!', + start: '2026-02-05T22:00:00.000Z', + stop: '2026-02-06T04:00:00.000Z' + }) +}) + +it('can handle empty guide', () => { + const results = parser({ content: '' }) + + expect(results).toMatchObject([]) +}) From 6bbfb619b4f0eb4738ce1f5a82d8ed882b7c577b Mon Sep 17 00:00:00 2001 From: freearhey <7253922+freearhey@users.noreply.github.com> Date: Wed, 4 Feb 2026 02:03:27 +0300 Subject: [PATCH 2/5] Create content.xml --- sites/vantagetv.ee/__data__/content.xml | 1069 +++++++++++++++++++++++ 1 file changed, 1069 insertions(+) create mode 100644 sites/vantagetv.ee/__data__/content.xml diff --git a/sites/vantagetv.ee/__data__/content.xml b/sites/vantagetv.ee/__data__/content.xml new file mode 100644 index 00000000..b819412d --- /dev/null +++ b/sites/vantagetv.ee/__data__/content.xml @@ -0,0 +1,1069 @@ + + + + Vantage Music + + + Vantage Dance + + + Vantage Rock + + + Night Videos + + + Breakfast with Vantage Music + + + It's The 80's + + + The 90's + + + Ultimate 2000's + + + Video Mix + + + It's The 80's + + + The 90's + + + Ultimate 2000's + + + brand:new + + + Night Videos + + + Breakfast with Vantage Music + + + It's The 80's + + + The 90's + + + Ultimate 2000's + + + Video Mix + + + It's The 80's + + + The 90's + + + Ultimate 2000's + + + Urbanzone + + + Night Videos + + + Breakfast with Vantage Music + + + It's The 80's + + + The 90's + + + Ultimate 2000's + + + Video Mix + + + It's The 80's + + + The 90's + + + Ultimate 2000's + + + Old Skool Hip-Hop Show + + + Night Videos + + + Breakfast with Vantage Music + + + It's The 80's + + + The 90's + + + Ultimate 2000's + + + Video Mix + + + It's The 80's + + + The 90's + + + Ultimate 2000's + + + Rockzone + + + Night Videos + + + Breakfast with Vantage Music + + + It's The 80's + + + The 90's + + + Ultimate 2000's + + + Video Mix + + + It's The 80's + + + The 90's + + + Ultimate 2000's + + + Clubzone + + + Partyzone + + + Chillout Zone + + + Night Videos + + + Breakfast with Vantage Music + + + It's The 80's + + + The 90's + + + Ultimate 2000's + + + Video Mix + + + The European Top 20 + + + Video Mix + + + Urbanzone + + + Old Skool Hip-Hop Show + + + Rockzone + + + It's The 80's + + + The 90's + + + Ultimate 2000's + + + Clubzone Reloaded + + + Partyzone Reloaded + + + Night Videos + + + Breakfast with Vantage Music + + + It's The 80's + + + The 90's + + + Ultimate 2000's + + + Video Mix + + + The UK Dance Top 20 + + + Old Skool Hip-Hop Show + + + Rockzone + + + It's The 80's + + + The 90's + + + Ultimate 2000's + + + Clubzone Reloaded + + + Partyzone Reloaded + + + Chillout Zone + + + Night Videos + + + Breakfast with Vantage Music + + + It's The 80's + + + The 90's + + + Ultimate 2000's + + + Video Mix + + + It's The 80's + + + The 90's + + + Ultimate 2000's + + + brand:new + + + Night Videos + + + Breakfast with Vantage Music + Get ready for your day with Vantage Music + + + It's The 80's + The start of the music video era, with 80's classics not to be forgotten as well as some you probably have forgotten (for good reason!). + + + The 90's + Britpop, Jamming basslines, Catchy pop, forgotten boy bands with a bit of hip hop. It's the 90's baby. + + + Ultimate 2000's + A mix of the hits of 2000's along with some more lesser known artists. + + + Video Mix + Driving basslines, catchy pop, cool boy bands, and top-notch hip hop! You'll find all this and more at WILD 90S. Flashback vibes guaranteed! (Station info) + + + It's The 80's + The start of the music video era, with 80's classics not to be forgotten as well as some you probably have forgotten (for good reason!). + + + The 90's + Britpop, Jamming basslines, Catchy pop, forgotten boy bands with a bit of hip hop. It's the 90's baby. + + + Ultimate 2000's + A mix of the hits of 2000's along with some more lesser known artists. + + + Urbanzone + A playlist of songs to come out from the modern rap scene, along with some upcoming underground rap artists. + + + Night Videos + Whether you can't sleep, doing the night shift, or even if you just want to keep yourself awake, Vantage has non-stop commercial free music all night long. + + + Breakfast with Vantage Music + Get ready for your day with Vantage Music + + + It's The 80's + The start of the music video era, with 80's classics not to be forgotten as well as some you probably have forgotten (for good reason!). + + + The 90's + Britpop, Jamming basslines, Catchy pop, forgotten boy bands with a bit of hip hop. It's the 90's baby. + + + Ultimate 2000's + A mix of the hits of 2000's along with some more lesser known artists. + + + Video Mix + Driving basslines, catchy pop, cool boy bands, and top-notch hip hop! You'll find all this and more at WILD 90S. Flashback vibes guaranteed! (Station info) + + + It's The 80's + The start of the music video era, with 80's classics not to be forgotten as well as some you probably have forgotten (for good reason!). + + + The 90's + Britpop, Jamming basslines, Catchy pop, forgotten boy bands with a bit of hip hop. It's the 90's baby. + + + Ultimate 2000's + A mix of the hits of 2000's along with some more lesser known artists. + + + Old Skool Hip-Hop Show + + + Night Videos + Whether you can't sleep, doing the night shift, or even if you just want to keep yourself awake, Vantage has non-stop commercial free music all night long. + + + Breakfast with Vantage Music + + + It's The 80's + + + The 90's + + + Ultimate 2000's + + + Video Mix + + + It's The 80's + + + The 90's + + + Ultimate 2000's + + + Rockzone + + + Night Videos + + + Breakfast with Vantage Music + + + It's The 80's + + + The 90's + + + Ultimate 2000's + + + Video Mix + + + It's The 80's + + + The 90's + + + Ultimate 2000's + + + Clubzone + + + Partyzone + + + Night Videos + + + Breakfast with Vantage Music + + + It's The 80's + + + The 90's + + + Ultimate 2000's + + + Video Mix + + + The European Top 20 + + + Video Mix + + + Urbanzone + + + Old Skool Hip-Hop Show + + + Rockzone + + + It's The 80's + + + The 90's + + + Ultimate 2000's + + + Clubzone Reloaded + + + Partyzone Reloaded + + + Breakfast with Vantage Music + + + It's The 80's + + + The 90's + + + Ultimate 2000's + + + Video Mix + + + The UK Dance Top 20 + + + Old Skool Hip-Hop Show + + + Rockzone + + + It's The 80's + + + The 90's + + + Ultimate 2000's + + + Clubzone Reloaded + + + Partyzone Reloaded + + + Chillout Zone + + + Breakfast with Vantage Dance + + + Don't Stop The Dance + + + The UK Official Dance Chart + + + Don't Stop The Dance + + + The German Official Dance Chart + + + Don't Stop The Dance + + + Clubzone Reloaded + + + Partyzone Reloaded + + + Dance All Night + + + Breakfast with Vantage Dance + + + Don't Stop The Dance + + + The UK Official Dance Chart + + + Don't Stop The Dance + + + The German Official Dance Chart + + + Don't Stop The Dance + + + Clubzone Reloaded + + + Partyzone Reloaded + + + Dance All Night + + + Breakfast with Vantage Dance + + + Don't Stop The Dance + + + The UK Official Dance Chart + + + Don't Stop The Dance + + + The German Official Dance Chart + + + Don't Stop The Dance + + + Clubzone Reloaded + + + Partyzone Reloaded + + + Dance All Night + + + Breakfast with Vantage Dance + + + Don't Stop The Dance + + + The UK Official Dance Chart + + + Don't Stop The Dance + + + The German Official Dance Chart + + + Don't Stop The Dance + + + Clubzone Reloaded + + + Partyzone Reloaded + + + Dance All Night + + + Breakfast with Vantage Dance + + + Don't Stop The Dance + + + The UK Official Dance Chart + + + Don't Stop The Dance + + + The German Official Dance Chart + + + Don't Stop The Dance + + + Clubzone Reloaded + + + Partyzone Reloaded + + + Dance All Night + + + Breakfast with Vantage Dance + + + Don't Stop The Dance + + + The UK Official Dance Chart + + + Don't Stop The Dance + + + The German Official Dance Chart + + + Don't Stop The Dance + + + Clubzone Reloaded + + + Partyzone Reloaded + + + Dance All Night + + + Breakfast with Vantage Dance + + + Don't Stop The Dance + + + The UK Official Dance Chart + + + Don't Stop The Dance + + + The German Official Dance Chart + + + Don't Stop The Dance + + + Clubzone Reloaded + + + Partyzone Reloaded + + + Dance All Night + + + Breakfast with Vantage Dance + + + Don't Stop The Dance + + + The UK Official Dance Chart + + + Don't Stop The Dance + + + The German Official Dance Chart + + + Don't Stop The Dance + + + Clubzone Reloaded + + + Partyzone Reloaded + + + Dance All Night + + + Breakfast with Vantage Dance + + + Don't Stop The Dance + + + The UK Official Dance Chart + + + Don't Stop The Dance + + + The German Official Dance Chart + + + Don't Stop The Dance + + + Clubzone Reloaded + + + Partyzone Reloaded + + + Dance All Night + + + Breakfast with Vantage Dance + + + Don't Stop The Dance + + + The UK Official Dance Chart + + + Don't Stop The Dance + + + The German Official Dance Chart + + + Don't Stop The Dance + + + Clubzone Reloaded + + + Partyzone Reloaded + + + Dance All Night + + + Breakfast with Vantage Dance + + + Don't Stop The Dance + + + The UK Official Dance Chart + + + Don't Stop The Dance + + + The German Official Dance Chart + + + Don't Stop The Dance + + + Clubzone Reloaded + + + Partyzone Reloaded + + + Dance All Night + + + Breakfast with Vantage Dance + + + Don't Stop The Dance + + + The UK Official Dance Chart + + + Don't Stop The Dance + + + The German Official Dance Chart + + + Don't Stop The Dance + + + Clubzone Reloaded + + + Partyzone Reloaded + + + Dance All Night + + + Breakfast with Vantage Dance + + + Don't Stop The Dance + + + The UK Official Dance Chart + + + Don't Stop The Dance + + + The German Official Dance Chart + + + Don't Stop The Dance + + + Clubzone Reloaded + + + Partyzone Reloaded + + + Dance All Night + + + Breakfast with Vantage Dance + + + Don't Stop The Dance + + + The UK Official Dance Chart + + + Don't Stop The Dance + + + The German Official Dance Chart + + + Don't Stop The Dance + + + Clubzone Reloaded + + + Partyzone Reloaded + + + Dance All Night + + + Breakfast with Vantage Rock + Get ready for your day with Vantage Rock + + + Can't Stop The Rock + Commercial free rock music, all day long + + + Rock All Night + It might be late, but that's no reason to stop! + + + Breakfast with Vantage Rock + Get ready for your day with Vantage Rock + + + Can't Stop The Rock + Commercial free rock music, all day long + + + Rock All Night + It might be late, but that's no reason to stop! + + + Breakfast with Vantage Rock + Get ready for your day with Vantage Rock + + + Can't Stop The Rock + Commercial free rock music, all day long + + + Rock All Night + It might be late, but that's no reason to stop! + + + Breakfast with Vantage Rock + Get ready for your day with Vantage Rock + + + Can't Stop The Rock + Commercial free rock music, all day long + + + Rock All Night + It might be late, but that's no reason to stop! + + + Breakfast with Vantage Rock + Get ready for your day with Vantage Rock + + + Can't Stop The Rock + Commercial free rock music, all day long + + + Rock All Night + It might be late, but that's no reason to stop! + + + Breakfast with Vantage Rock + Get ready for your day with Vantage Rock + + + Can't Stop The Rock + Commercial free rock music, all day long + + + Rock All Night + It might be late, but that's no reason to stop! + + + Breakfast with Vantage Rock + Get ready for your day with Vantage Rock + + + Can't Stop The Rock + Commercial free rock music, all day long + + + Rock All Night + It might be late, but that's no reason to stop! + + + Breakfast with Vantage Rock + Get ready for your day with Vantage Rock + + + Can't Stop The Rock + Commercial free rock music, all day long + + + Rock All Night + It might be late, but that's no reason to stop! + + + Breakfast with Vantage Rock + Get ready for your day with Vantage Rock + + + Can't Stop The Rock + Commercial free rock music, all day long + + + Rock All Night + It might be late, but that's no reason to stop! + + + Breakfast with Vantage Rock + Get ready for your day with Vantage Rock + + + Can't Stop The Rock + Commercial free rock music, all day long + + + Rock All Night + It might be late, but that's no reason to stop! + + + Breakfast with Vantage Rock + Get ready for your day with Vantage Rock + + + Can't Stop The Rock + Commercial free rock music, all day long + + + Rock All Night + It might be late, but that's no reason to stop! + + + Breakfast with Vantage Rock + Get ready for your day with Vantage Rock + + + Can't Stop The Rock + Commercial free rock music, all day long + + + Rock All Night + It might be late, but that's no reason to stop! + + + Breakfast with Vantage Rock + Get ready for your day with Vantage Rock + + + Can't Stop The Rock + Commercial free rock music, all day long + + + Rock All Night + It might be late, but that's no reason to stop! + + + Breakfast with Vantage Rock + Get ready for your day with Vantage Rock + + + Can't Stop The Rock + Commercial free rock music, all day long + + + Rock All Night + It might be late, but that's no reason to stop! + + \ No newline at end of file From f08045a61ffc72ab44d1687194d087779cf53b55 Mon Sep 17 00:00:00 2001 From: freearhey <7253922+freearhey@users.noreply.github.com> Date: Wed, 4 Feb 2026 02:03:34 +0300 Subject: [PATCH 3/5] Create vantagetv.ee.config.js --- sites/vantagetv.ee/vantagetv.ee.config.js | 27 +++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 sites/vantagetv.ee/vantagetv.ee.config.js diff --git a/sites/vantagetv.ee/vantagetv.ee.config.js b/sites/vantagetv.ee/vantagetv.ee.config.js new file mode 100644 index 00000000..9cd489f4 --- /dev/null +++ b/sites/vantagetv.ee/vantagetv.ee.config.js @@ -0,0 +1,27 @@ +const parser = require('epg-parser') + +module.exports = { + site: 'vantagetv.ee', + days: 2, + url: 'http://vantagetv.ee/epg.xml', + parser: function ({ content, channel, date }) { + let programs = [] + const items = parseItems(content, channel, date) + items.forEach(item => { + programs.push({ + title: item.title?.[0]?.value, + description: item.desc?.[0]?.value, + start: item.start, + stop: item.stop + }) + }) + + return programs + } +} + +function parseItems(content, channel, date) { + const { programs } = parser.parse(content) + + return programs.filter(p => p.channel === channel.site_id && date.isSame(p.start, 'day')) +} From 46976fa7ce601a979140fc8fc2b06092ad349f1d Mon Sep 17 00:00:00 2001 From: freearhey <7253922+freearhey@users.noreply.github.com> Date: Wed, 4 Feb 2026 02:03:44 +0300 Subject: [PATCH 4/5] Create vantagetv.ee.channels.xml --- sites/vantagetv.ee/vantagetv.ee.channels.xml | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 sites/vantagetv.ee/vantagetv.ee.channels.xml diff --git a/sites/vantagetv.ee/vantagetv.ee.channels.xml b/sites/vantagetv.ee/vantagetv.ee.channels.xml new file mode 100644 index 00000000..609cc8ca --- /dev/null +++ b/sites/vantagetv.ee/vantagetv.ee.channels.xml @@ -0,0 +1,6 @@ + + + Vantage Music + Vantage Dance + Vantage Rock + \ No newline at end of file From b4bcda49b1aeab8996a49661fd62efd93506cda6 Mon Sep 17 00:00:00 2001 From: freearhey <7253922+freearhey@users.noreply.github.com> Date: Wed, 4 Feb 2026 02:04:00 +0300 Subject: [PATCH 5/5] Create readme.md --- sites/vantagetv.ee/readme.md | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 sites/vantagetv.ee/readme.md diff --git a/sites/vantagetv.ee/readme.md b/sites/vantagetv.ee/readme.md new file mode 100644 index 00000000..b7c4b118 --- /dev/null +++ b/sites/vantagetv.ee/readme.md @@ -0,0 +1,15 @@ +# vantagetv.ee + +https://vantagetv.ee/epg.xml + +### Download the guide + +```sh +npm run grab --- --site=vantagetv.ee +``` + +### Test + +```sh +npm test --- vantagetv.ee +```