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')
)
})