From 3558087a40b250f495fccdeb7be6e49302be31cd Mon Sep 17 00:00:00 2001 From: freearhey Date: Thu, 18 Mar 2021 20:30:05 +0300 Subject: [PATCH] Added guide from mediaset.it --- README.md | 1 + sites/mediaset.it.channels.xml | 21 ++++++++++++++ sites/mediaset.it.config.js | 50 ++++++++++++++++++++++++++++++++++ 3 files changed, 72 insertions(+) create mode 100755 sites/mediaset.it.channels.xml create mode 100644 sites/mediaset.it.config.js diff --git a/README.md b/README.md index 91204e85..43dd482a 100644 --- a/README.md +++ b/README.md @@ -13,6 +13,7 @@ To load a program guide, all you need to do is copy the link to one of the guide ontvtonight.comen122https://iptv-org.github.io/epg/guides/ontvtonight.com.guide.xml programme-tv.netfr266https://iptv-org.github.io/epg/guides/programme-tv.net.guide.xml + mediaset.itit16https://iptv-org.github.io/epg/guides/mediaset.it.guide.xml tv.yandex.ruru378https://iptv-org.github.io/epg/guides/tv.yandex.ru.guide.xml diff --git a/sites/mediaset.it.channels.xml b/sites/mediaset.it.channels.xml new file mode 100755 index 00000000..23bb9994 --- /dev/null +++ b/sites/mediaset.it.channels.xml @@ -0,0 +1,21 @@ + + + + Canale 5 + Focus + Italia 1 + Italia 2 + La 5 + Boing Italia + Mya + Iris + Mediaset Extra + Premium Action + Cartoonito Italia + 20 Mediaset + Premium Crime + Top Crime + Rete 4 + TGCOM24 + + \ No newline at end of file diff --git a/sites/mediaset.it.config.js b/sites/mediaset.it.config.js new file mode 100644 index 00000000..82d71f01 --- /dev/null +++ b/sites/mediaset.it.config.js @@ -0,0 +1,50 @@ +const dayjs = require('dayjs') +const utc = require('dayjs/plugin/utc') +const customParseFormat = require('dayjs/plugin/customParseFormat') + +dayjs.extend(utc) +dayjs.extend(customParseFormat) + +module.exports = { + lang: 'it', + site: 'mediaset.it', + channels: 'mediaset.it.channels.xml', + output: '.gh-pages/guides/mediaset.it.guide.xml', + url: function ({ date, channel }) { + return `http://www.mediaset.it/guidatv/inc/canali/${date.format('YYYYMM')}/${date.format( + 'YYYYMMDD' + )}_${channel.site_id}.sjson` + }, + parser: function ({ content, date }) { + const programs = [] + if (!content.events) return programs + + content.events.forEach(item => { + if (item.title && item.startTime && item.endTime) { + const start = dayjs + .utc(item.startTime, 'HH:mm') + .set('D', date.get('D')) + .set('M', date.get('M')) + .set('y', date.get('y')) + .toString() + + const stop = dayjs + .utc(item.endTime, 'HH:mm') + .set('D', date.get('D')) + .set('M', date.get('M')) + .set('y', date.get('y')) + .toString() + + programs.push({ + title: item.displayTitle || item.title, + description: item.description, + category: item.genere, + start, + stop + }) + } + }) + + return programs + } +}