diff --git a/.github/workflows/auto-update.yml b/.github/workflows/auto-update.yml index fc0d9813..70a50da8 100644 --- a/.github/workflows/auto-update.yml +++ b/.github/workflows/auto-update.yml @@ -4,6 +4,21 @@ on: schedule: - cron: '0 0 * * *' jobs: + digiturk_com_tr: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v2.3.1 + - name: Install Dependencies + run: npm install + - name: Run EPG Grabber + run: npx epg-grabber --config=sites/digiturk.com.tr.config.js + - name: Deploy to GitHub Pages + uses: JamesIves/github-pages-deploy-action@4.1.0 + with: + branch: gh-pages + folder: .gh-pages + clean: false programme-tv_net: runs-on: ubuntu-latest steps: @@ -12,7 +27,7 @@ jobs: - name: Install Dependencies run: npm install - name: Run EPG Grabber - run: npx epg-grabber --config=sites/programme-tv.net.config.js --debug + run: npx epg-grabber --config=sites/programme-tv.net.config.js - name: Deploy to GitHub Pages uses: JamesIves/github-pages-deploy-action@4.1.0 with: diff --git a/README.md b/README.md index c811c779..c3ab1a32 100644 --- a/README.md +++ b/README.md @@ -17,6 +17,7 @@ To load a program guide, all you need to do is copy the link to one of the guide guidatv.sky.itItalian178https://iptv-org.github.io/epg/guides/guidatv.sky.it.guide.xml mediaset.itItalian16https://iptv-org.github.io/epg/guides/mediaset.it.guide.xml tv.yandex.ruRussian378https://iptv-org.github.io/epg/guides/tv.yandex.ru.guide.xml + digiturk.com.trTurkish106https://iptv-org.github.io/epg/guides/digiturk.com.tr.guide.xml diff --git a/sites/digiturk.com.tr.channels.xml b/sites/digiturk.com.tr.channels.xml new file mode 100755 index 00000000..92100668 --- /dev/null +++ b/sites/digiturk.com.tr.channels.xml @@ -0,0 +1,111 @@ + + + + 5+1 Concerts + Bloomberg TV Europe + Taraftar + Ülke TV + 24 TV + National Geographic Wild Türkiye + Fox Türkiye + Al Jazeera English + Disney Channel Türkiye + BeyazTV + Nickelodeon Türkiye + TRT 1 + beIN SPORTS 1 + TRT Haber + DMAX Türkiye + National Geographic Türkiye + Cartoon Network Türkiye + TVNET + TRT Spor + TLC Türkiye + Bloomberg HT + TRT Çocuk + TRT Avaz + TRT Türk + TRT Kurdî + GS TV + beIn Series Vice + teve2 + TRT Müzik + TRT Arabi + beIn Series Drama + beIn Movies Premiere + beIn Movies Stars + NTV + Disney Junior Türkiye & Polska + France 24 English + CNN Türk + minikaGO + Show TV + Halk TV + beIN İZ + 360 + ATV Türkiye + A Haber + Taraftar 2 + TRT 2 + Habertürk TV + beIN SPORTS 2 + beIN SPORTS 3 + Discovery Channel Türkiye + Discovery Science Türkiye + Nick Jr Türkiye + MTV Live HD + beIn Series Comedy + beIn Movies Premiere 2 + TRT 1 + TRT Spor + Diyanet TV + beIn Movies Family + MTV Hits Europe + Nickelodeon Türkiye + beIn Box Office 1 Türkiye + РТР-Планета + beIn Box Office 2 + beIn Series Sci-Fi + Show Radyo + beIn Box Office 3 + Radyo Viva + beIn Movies Turk + Slow Türk + Star TV + beIn Gurme + Best FM + Kral FM + Baba Radyo + TV 8 + Kanal D + A Spor + BabyTV Europe + Kanal 7 + beIn Movies Action + beIn Movies Action 2 + beIN H&E + BBC First Türkiye + TRT World + Eurosport 1 + Al Quran Al Kareem TV + Al Sunnah Al Nabawiyah TV + Kral Pop Radyo + beIN SPORTS + TRT Belgesel + TJK TV + FB TV + MCM Top + Mezzo + VH1 Europe + Fashion TV Europe + CNN International Europe + BBC World News Europe + Euronews English + Eurosport 2 + TGRT Haber + Rai 1 + TV5MONDE Europe + BBC Entertainment + Alem FM + + \ No newline at end of file diff --git a/sites/digiturk.com.tr.config.js b/sites/digiturk.com.tr.config.js new file mode 100644 index 00000000..5eda952f --- /dev/null +++ b/sites/digiturk.com.tr.config.js @@ -0,0 +1,52 @@ +module.exports = { + lang: 'tr', + site: 'digiturk.com.tr', + channels: 'digiturk.com.tr.channels.xml', + output: '.gh-pages/guides/digiturk.com.tr.guide.xml', + url: function ({ date, channel }) { + return `https://www.digiturk.com.tr/yayin-akisi/api/program/kanal/${ + channel.site_id + }/${date.format('YYYY-MM-DD')}/0` + }, + parser: function ({ content, date, channel }) { + const programs = [] + const data = content.listings[channel.site_id] + if (!data) return programs + + const categories = { + '00': 'Diğer', + E0: 'Romantik Komedi', + E1: 'Aksiyon', + E4: 'Macera', + E5: 'Dram', + E6: 'Fantastik', + E7: 'Komedi', + E8: 'Korku', + EB: 'Polisiye', + EF: 'Western', + FA: 'Macera', + FB: 'Yarışma', + FC: 'Eğlence', + F0: 'Reality-Show', + F2: 'Haberler', + F4: 'Belgesel', + F6: 'Eğitim', + F7: 'Sanat ve Kültür', + F9: 'Life Style' + } + + data.forEach(item => { + if (item.ProgramName && item.BroadcastStart && item.BroadcastEnd) { + programs.push({ + title: item.ProgramName, + description: item.LongDescription, + category: categories[item.Genre], + start: item.BroadcastStart, + stop: item.BroadcastEnd + }) + } + }) + + return programs + } +}