diff --git a/SITES.md b/SITES.md
index 6324c2ee..cdcb604d 100644
--- a/SITES.md
+++ b/SITES.md
@@ -227,5 +227,226 @@
ziggogo.tv | 152 / 130 | 🟢 | |
znbc.co.zm | 4 / 4 | 🟢 | |
zuragt.mn | 36 / 25 | 🟢 | |
+=======
+ 9tv.co.il | 🟢 | |
+ abc.net.au | 🟢 | |
+ allente.dk | 🟢 | |
+ allente.fi | 🟢 | |
+ allente.no | 🟢 | |
+ allente.se | 🟢 | |
+ andorradifusio.ad | 🟢 | |
+ anteltv.com.uy | 🟢 | |
+ antennaeurope.gr | 🟢 | |
+ antennapacific.gr | 🟢 | |
+ antennasatellite.gr | 🟢 | |
+ arianaafgtv.com | 🟢 | |
+ arianatelevision.com | 🟢 | |
+ arirang.com | 🟢 | |
+ artonline.tv | 🟢 | |
+ awilime.com | 🟢 | |
+ bein.com | 🟢 | |
+ beinsports.com | 🟢 | |
+ berrymedia.co.kr | 🟢 | |
+ cablego.com.pe | 🟢 | |
+ cableplus.com.uy | 🟢 | |
+ canalplus.com | 🟢 | |
+ cgates.lt | 🟢 | |
+ chada.ma | 🟢 | |
+ chaines-tv.orange.fr | 🟢 | |
+ clickthecity.com | 🟢 | |
+ content.astro.com.my | 🟢 | |
+ cosmotetv.gr | 🟢 | |
+ cubmu.com | 🟢 | |
+ cyta.com.cy | 🟢 | |
+ dens.tv | 🟢 | |
+ digea.gr | 🟢 | |
+ digiturk.com.tr | 🟢 | |
+ directv.com | 🔴 | https://github.com/iptv-org/epg/issues/2284 |
+ directv.com.ar | 🔴 | https://github.com/iptv-org/epg/issues/2339 |
+ directv.com.uy | 🟢 | |
+ dishtv.in | 🔴 | https://github.com/iptv-org/epg/issues/2445 |
+ dna.fi | 🟢 | |
+ dsmart.com.tr | 🟢 | |
+ dstv.com | 🟢 | |
+ elcinema.com | 🟢 | |
+ ena.skylifetv.co.kr | 🟢 | |
+ energeek.cl | 🟢 | |
+ entertainment.ie | 🟢 | |
+ epg.112114.xyz | 🟢 | |
+ epg.iptvx.one | 🟢 | |
+ epg.telemach.ba | 🟢 | |
+ epg.telemach.me | 🟢 | |
+ firstmedia.com | 🟢 | |
+ foxsports.com.au | 🟢 | |
+ foxtel.com.au | 🟢 | |
+ freeview.co.uk | 🟢 | |
+ frikanalen.no | 🟢 | |
+ galamtv.kz | 🟢 | |
+ gatotv.com | 🟢 | |
+ getafteritmedia.com | 🟢 | |
+ gigatv.3bbtv.co.th | 🟢 | |
+ guiadetv.com | 🟢 | |
+ guida.tv | 🟢 | |
+ guidatv.sky.it | 🟢 | |
+ horizon.tv | 🟢 | |
+ hoy.tv | 🟢 | |
+ i.mjh.nz | 🟢 | |
+ i24news.tv | 🟢 | |
+ iltalehti.fi | 🟢 | |
+ indihometv.com | 🟢 | |
+ ionplustv.com | 🟢 | |
+ ipko.tv | 🟢 | |
+ jiotv.com | 🟢 | |
+ kan.org.il | 🔴 | https://github.com/iptv-org/epg/issues/2273 |
+ knr.gl | 🟢 | |
+ kvf.fo | 🟢 | |
+ m.tv.sms.cz | 🟢 | |
+ m.tving.com | 🟢 | |
+ magticom.ge | 🟢 | |
+ mako.co.il | 🟢 | |
+ maxtvgo.mk | 🟢 | |
+ mediagenie.co.kr | 🟢 | |
+ mediaklikk.hu | 🟢 | |
+ mediasetinfinity.mediaset.it | 🟢 | |
+ melita.com | 🟢 | |
+ meo.pt | 🟢 | |
+ meuguia.tv | 🟢 | |
+ mewatch.sg | 🟢 | |
+ mi.tv | 🟢 | |
+ mncvision.id | 🟢 | |
+ moji.id | 🟢 | |
+ mojmaxtv.hrvatskitelekom.hr | 🟢 | |
+ mon-programme-tv.be | 🟢 | |
+ movistarplus.es | 🟢 | |
+ mtel.ba | 🟢 | |
+ mts.rs | 🟢 | |
+ mujtvprogram.cz | 🟢 | |
+ musor.tv | 🟢 | |
+ mysky.com.ph | 🟢 | |
+ mytelly.co.uk | 🟢 | |
+ mytvsuper.com | 🟢 | |
+ neo.io | 🟢 | |
+ nhkworldpremium.com | 🟢 | |
+ nhl.com | 🟢 | |
+ nostv.pt | 🟢 | |
+ novacyprus.com | 🟢 | |
+ novasports.gr | 🟢 | |
+ nowplayer.now.com | 🟢 | |
+ nuevosiglo.com.uy | 🟢 | |
+ nzxmltv.com | 🟢 | |
+ ontvtonight.com | 🟢 | |
+ opto.sic.pt | 🟢 | |
+ orangetv.orange.es | 🟢 | |
+ osn.com | 🟢 | |
+ pbsguam.org | 🟢 | |
+ pickx.be | 🟢 | |
+ player.ee.co.uk | 🟢 | |
+ playtv.unifi.com.my | 🟢 | |
+ plex.tv | 🟢 | |
+ pluto.tv | 🟢 | |
+ programacion-tv.elpais.com | 🟢 | |
+ programacion.tcc.com.uy | 🟢 | |
+ programetv.ro | 🟢 | |
+ programme-tv.net | 🟢 | |
+ programme-tv.vini.pf | 🟢 | |
+ programme.tvb.com | 🟢 | |
+ programtv.onet.pl | 🟢 | |
+ raiplay.it | 🟢 | |
+ reportv.com.ar | 🟢 | |
+ rikstv.no | 🟢 | |
+ rotana.net | 🟢 | |
+ rtb.gov.bn | 🔴 | https://github.com/iptv-org/epg/issues/2257 |
+ rthk.hk | 🟢 | |
+ rtmklik.rtm.gov.my | 🟢 | |
+ rtp.pt | 🟢 | |
+ ruv.is | 🟢 | |
+ s.mxtv.jp | 🟢 | |
+ sat.tv | 🟢 | |
+ shahid.mbc.net | 🟢 | |
+ siba.com.co | 🟢 | |
+ singtel.com | 🟢 | |
+ sjonvarp.is | 🟢 | |
+ sky.co.nz | 🟢 | |
+ sky.com | 🟢 | |
+ sky.de | 🟢 | |
+ skylife.co.kr | 🟢 | |
+ skyperfectv.co.jp | 🟢 | |
+ snrt.ma | 🟢 | |
+ sporttv.pt | 🟢 | |
+ starhubtvplus.com | 🟢 | |
+ startimestv.com | 🟢 | |
+ stod2.is | 🟢 | |
+ streamingtvguides.com | 🟢 | |
+ superguidatv.it | 🟢 | |
+ taiwanplus.com | 🟢 | |
+ tapdmv.com | 🟢 | |
+ telebilbao.es | 🟢 | |
+ telenet.tv | 🟢 | |
+ teliatv.ee | 🟢 | |
+ telkussa.fi | 🟢 | |
+ telsu.fi | 🟢 | |
+ thesportplus.com | 🟢 | |
+ tivie.id | 🟢 | |
+ tivu.tv | 🟢 | |
+ toonamiaftermath.com | 🟢 | |
+ turksatkablo.com.tr | 🟢 | |
+ tv-programme.telecablesat.fr | 🟢 | |
+ tv-spored.siol.net | 🟢 | |
+ tv.blue.ch | 🟢 | |
+ tv.cctv.com | 🟢 | |
+ tv.dir.bg | 🟢 | |
+ tv.lv | 🟢 | |
+ tv.magenta.at | 🟢 | |
+ tv.mail.ru | 🟢 | |
+ tv.movistar.com.pe | 🟢 | |
+ tv.nu | 🟢 | |
+ tv.post.lu | 🟢 | |
+ tv.sfr.fr | 🟢 | |
+ tv.trueid.net | 🟢 | |
+ tv.yandex.ru | 🟢 | |
+ tv24.co.uk | 🟢 | |
+ tv24.se | 🟢 | |
+ tv2go.t-2.net | 🟢 | |
+ tvarenasport.com | 🟢 | |
+ tvarenasport.hr | 🟢 | |
+ tvcesoir.fr | 🟢 | |
+ tvcubana.icrt.cu | 🟢 | |
+ tvgids.nl | 🟢 | |
+ tvguide.com | 🟢 | |
+ tvguide.myjcom.jp | 🟢 | |
+ tvhebdo.com | 🟢 | |
+ tvheute.at | 🟢 | |
+ tvim.tv | 🟢 | |
+ tvinsider.com | 🟢 | |
+ tvireland.ie | 🟢 | |
+ tvmi.mt | 🟢 | |
+ tvmusor.hu | 🟢 | |
+ tvmustra.hu | 🟢 | |
+ tvpassport.com | 🟢 | |
+ tvplus.com.tr | 🟢 | |
+ tvprofil.com | 🟢 | |
+ tvtv.us | 🟢 | |
+ v3.myafn.dodmedia.osd.mil | 🟢 | |
+ vidio.com | 🟢 | |
+ virginmediatelevision.ie | 🟢 | |
+ virgintvgo.virginmedia.com | 🟢 | |
+ visionplus.id | 🟢 | |
+ vivoplay.com.br | 🟢 | |
+ vtm.be | 🟢 | |
+ walesi.com.fj | 🟢 | |
+ watch.sportsnet.ca | 🟢 | |
+ watchyour.tv | 🟢 | |
+ wavve.com | 🟢 | |
+ web.magentatv.de | 🟢 | |
+ webtv.delta.nl | 🟢 | |
+ winplay.co | 🟢 | |
+ worldfishingnetwork.com | 🟢 | |
+ www3.nhk.or.jp | 🟢 | |
+ xem.kplus.vn | 🟢 | |
+ xumo.tv | 🟢 | |
+ zap.co.ao | 🟢 | |
+ ziggogo.tv | 🟢 | |
+ znbc.co.zm | 🟢 | |
+ zuragt.mn | 🟢 | |
diff --git a/scripts/core/queueCreator.ts b/scripts/core/queueCreator.ts
index 2816f57f..1a906f9d 100644
--- a/scripts/core/queueCreator.ts
+++ b/scripts/core/queueCreator.ts
@@ -43,12 +43,14 @@ export class QueueCreator {
const config: SiteConfig = await this.configLoader.load(configPath)
if (channel.xmltv_id) {
- const found: ApiChannel = channels.first(
- (_channel: ApiChannel) => _channel.id === channel.xmltv_id
- )
- if (found) {
- channel.icon = found.logo
- channel.name = found.name
+ if (!channel.icon) {
+ const found: ApiChannel = channels.first(
+ (_channel: ApiChannel) => _channel.id === channel.xmltv_id
+ )
+
+ if (found) {
+ channel.icon = found.logo
+ }
}
} else {
channel.xmltv_id = channel.site_id
diff --git a/tests/__data__/expected/custom_guide.xml b/tests/__data__/expected/custom_guide.xml
new file mode 100644
index 00000000..41efdac8
--- /dev/null
+++ b/tests/__data__/expected/custom_guide.xml
@@ -0,0 +1,17 @@
+
+Custom Channel 1https://example.com
+Channel 1https://example2.com
+Custom Channel 2https://example.com
+Channel 3https://example2.com
+Channel 4https://example2.com
+Program1 (example.com)
+Programme1 (example.com)
+Programme1 (example2.com)
+Program1 (example.com)
+Programme1 (example.com)
+Programme1 (example2.com)
+Program1 (example2.com)
+Program1 (example2.com)
+Program1 (example2.com)
+Program1 (example2.com)
+
\ No newline at end of file
diff --git a/tests/__data__/expected/guide.xml b/tests/__data__/expected/guide.xml
index 242bc2ff..3de58428 100644
--- a/tests/__data__/expected/guide.xml
+++ b/tests/__data__/expected/guide.xml
@@ -1,8 +1,8 @@
Channel 1https://example.com
Channel 1https://example2.com
-Channel 2https://example.com
-Channel 3https://example2.com
+Channel 2https://example.com
+Channel 3https://example2.com
Channel 4https://example2.com
Program1 (example.com)
Programme1 (example.com)
diff --git a/tests/__data__/expected/guide.xml.gz b/tests/__data__/expected/guide.xml.gz
index 036c0841..e634dcdf 100644
Binary files a/tests/__data__/expected/guide.xml.gz and b/tests/__data__/expected/guide.xml.gz differ
diff --git a/tests/__data__/expected/guide2.xml b/tests/__data__/expected/guide2.xml
index b358b044..ff7119fd 100644
--- a/tests/__data__/expected/guide2.xml
+++ b/tests/__data__/expected/guide2.xml
@@ -1,6 +1,6 @@
Channel 1https://example.com
-Channel 2https://example.com
+Channel 2https://example.com
Program1 (example.com)
Programme1 (example.com)
Program1 (example.com)
diff --git a/tests/__data__/expected/guides/en/example.com.xml b/tests/__data__/expected/guides/en/example.com.xml
index 2d958ef6..f3550b8c 100644
--- a/tests/__data__/expected/guides/en/example.com.xml
+++ b/tests/__data__/expected/guides/en/example.com.xml
@@ -1,6 +1,6 @@
Channel 1https://example.com
-Channel 2https://example.com
+Channel 2https://example.com
Program1 (example.com)
Program1 (example.com)
\ No newline at end of file
diff --git a/tests/__data__/input/epg-grab/custom.channels.xml b/tests/__data__/input/epg-grab/custom.channels.xml
index f32419c6..9b78a7ae 100644
--- a/tests/__data__/input/epg-grab/custom.channels.xml
+++ b/tests/__data__/input/epg-grab/custom.channels.xml
@@ -1,7 +1,7 @@
- Channel 1
- Channel 2
+ Custom Channel 1
+ Custom Channel 2
Channel 1
Channel 3
Channel 4
diff --git a/tests/__data__/input/epg-grab/sites/example.com/example.com.channels.xml b/tests/__data__/input/epg-grab/sites/example.com/example.com.channels.xml
index 7f81064b..1b037f02 100644
--- a/tests/__data__/input/epg-grab/sites/example.com/example.com.channels.xml
+++ b/tests/__data__/input/epg-grab/sites/example.com/example.com.channels.xml
@@ -1,6 +1,6 @@
Channel 1
- Channel 2
+ Channel 2
Channel 1
\ No newline at end of file
diff --git a/tests/__data__/input/temp/data/channels.json b/tests/__data__/input/temp/data/channels.json
index 28255c4a..4ff2f615 100644
--- a/tests/__data__/input/temp/data/channels.json
+++ b/tests/__data__/input/temp/data/channels.json
@@ -70,5 +70,7 @@
"categories": [],
"is_nsfw": false,
"logo": "https://www.directv.com/images/logos/channels/dark/large/579.png"
- }
+ },
+ {"id":"Channel2.us","name":"Channel 2 [API]","alt_names":[],"network":null,"owners":[],"country":"UK","subdivision":null,"city":null,"broadcast_area":["c/US"],"languages":["eng"],"categories":[],"is_nsfw":false,"launched":null,"closed":null,"replaced_by":null,"website":"","logo":"https://i.imgur.com/rPzH88J.png"},
+ {"id":"Channel3.us","name":"Channel 3 [API]","alt_names":[],"network":null,"owners":[],"country":"UK","subdivision":null,"city":null,"broadcast_area":["c/US"],"languages":["eng"],"categories":[],"is_nsfw":false,"launched":null,"closed":null,"replaced_by":null,"website":"","logo":"https://upload.wikimedia.org/wikipedia/commons/6/64/6%27eren_2015.png"}
]
\ No newline at end of file
diff --git a/tests/commands/epg/grab.test.ts b/tests/commands/epg/grab.test.ts
index d580f265..8d40f16f 100644
--- a/tests/commands/epg/grab.test.ts
+++ b/tests/commands/epg/grab.test.ts
@@ -86,7 +86,7 @@ describe('epg:grab', () => {
if (process.env.DEBUG === 'true') console.log(cmd, stdout)
expect(content('tests/__data__/output/guide.xml')).toEqual(
- content('tests/__data__/expected/guide.xml')
+ content('tests/__data__/expected/custom_guide.xml')
)
})