mirror of
https://github.com/iptv-org/epg
synced 2025-12-16 02:16:40 -05:00
fix sky.nz and add new channels for sky.com
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -1,42 +1,67 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<channels>
|
<channels>
|
||||||
<channel site="sky.co.nz" site_id="1" lang="en" xmltv_id="TVNZ1.nz@SD">One</channel>
|
<channel site="sky.co.nz" site_id="207" lang="en" xmltv_id="">BBC First</channel>
|
||||||
<channel site="sky.co.nz" site_id="2" lang="en" xmltv_id="TVNZ2.nz@SD">TV2</channel>
|
<channel site="sky.co.nz" site_id="600" lang="en" xmltv_id="">SKY Sport Popup 1</channel>
|
||||||
<channel site="sky.co.nz" site_id="3" lang="en" xmltv_id="Three.nz@SD">Three</channel>
|
<channel site="sky.co.nz" site_id="601" lang="en" xmltv_id="">SKY Sport Popup 2</channel>
|
||||||
<channel site="sky.co.nz" site_id="4" lang="en" xmltv_id="SkyOpen.nz@SD">Prime TV</channel>
|
<channel site="sky.co.nz" site_id="90" lang="en" xmltv_id="AlJazeera.qa@English">Al Jazeera</channel>
|
||||||
<channel site="sky.co.nz" site_id="5" lang="en" xmltv_id="Sky5.nz@SD">Sky 5</channel>
|
<channel site="sky.co.nz" site_id="76" lang="en" xmltv_id="AnimalPlanet.au@SD">Animal Planet</channel>
|
||||||
<channel site="sky.co.nz" site_id="6" lang="en" xmltv_id="Vibe.nz@SD">Vibe</channel>
|
<channel site="sky.co.nz" site_id="74" lang="en" xmltv_id="BBCEarth.uk@NewZealand">BBC Earth</channel>
|
||||||
|
<channel site="sky.co.nz" site_id="89" lang="en" xmltv_id="BBCNews.uk@AsiaPacific">BBC World News</channel>
|
||||||
<channel site="sky.co.nz" site_id="7" lang="en" xmltv_id="BBCUKTV.au@NewZealand">UKTV</channel>
|
<channel site="sky.co.nz" site_id="7" lang="en" xmltv_id="BBCUKTV.au@NewZealand">UKTV</channel>
|
||||||
<channel site="sky.co.nz" site_id="8" lang="en" xmltv_id="JONES.nz@SD">JONES!</channel>
|
<channel site="sky.co.nz" site_id="512" lang="en" xmltv_id="Bravo.nz@Plus1">BRAVO Plus 1</channel>
|
||||||
<channel site="sky.co.nz" site_id="9" lang="en" xmltv_id="SkyBoxSets.nz@SD">SKY BOX SETS</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="10" lang="en" xmltv_id="SoHo.nz@SD">SoHo</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="11" lang="en" xmltv_id="ComedyCentral.au@SD">Comedy Central</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="12" lang="en" xmltv_id="Bravo.nz@SD">BRAVO</channel>
|
<channel site="sky.co.nz" site_id="12" lang="en" xmltv_id="Bravo.nz@SD">BRAVO</channel>
|
||||||
|
<channel site="sky.co.nz" site_id="102" lang="en" xmltv_id="CartoonNetwork.au@Australia">Cartoon Network</channel>
|
||||||
|
<channel site="sky.co.nz" site_id="103" lang="en" xmltv_id="CBeebies.au@SD">CBeebies</channel>
|
||||||
|
<channel site="sky.co.nz" site_id="310" lang="en" xmltv_id="CGTN.cn@SD">CGTN</channel>
|
||||||
|
<channel site="sky.co.nz" site_id="309" lang="en" xmltv_id="CGTNDocumentary.cn@SD">CGTN</channel>
|
||||||
|
<channel site="sky.co.nz" site_id="91" lang="en" xmltv_id="CNBCAustralia.au@SD">CNBC</channel>
|
||||||
|
<channel site="sky.co.nz" site_id="87" lang="en" xmltv_id="CNNInternational.us@AsiaPacific">CNN International</channel>
|
||||||
|
<channel site="sky.co.nz" site_id="151" lang="en" xmltv_id="ColorsAsiaPacific.in@SD">Colors</channel>
|
||||||
|
<channel site="sky.co.nz" site_id="11" lang="en" xmltv_id="ComedyCentral.au@SD">Comedy Central</channel>
|
||||||
|
<channel site="sky.co.nz" site_id="81" lang="en" xmltv_id="CountryTV.nz@SD">Country TV</channel>
|
||||||
|
<channel site="sky.co.nz" site_id="71" lang="en" xmltv_id="CrimePlusInvestigation.au@SD">Real Crime</channel>
|
||||||
|
<channel site="sky.co.nz" site_id="202" lang="en" xmltv_id="DaystarTV.us@SD">Daystar TV Network</channel>
|
||||||
|
<channel site="sky.co.nz" site_id="70" lang="en" xmltv_id="DiscoveryChannel.nz@SD">Discovery Channel</channel>
|
||||||
|
<channel site="sky.co.nz" site_id="75" lang="en" xmltv_id="DiscoveryTurbo.au@NewZealand">Discovery Turbo</channel>
|
||||||
|
<channel site="sky.co.nz" site_id="505" lang="en" xmltv_id="eden.nz@Plus1">eden +1</channel>
|
||||||
<channel site="sky.co.nz" site_id="13" lang="en" xmltv_id="eden.nz@SD">eden</channel>
|
<channel site="sky.co.nz" site_id="13" lang="en" xmltv_id="eden.nz@SD">eden</channel>
|
||||||
<channel site="sky.co.nz" site_id="15" lang="en" xmltv_id="MTV.nz@SD">MTV</channel>
|
<channel site="sky.co.nz" site_id="61" lang="en" xmltv_id="ESPN2.au@SD">ESPN2</channel>
|
||||||
<channel site="sky.co.nz" site_id="16" lang="en" xmltv_id="TLC.nz@SD">TLC</channel>
|
<channel site="sky.co.nz" site_id="60" lang="en" xmltv_id="ESPN.au@SD">ESPN</channel>
|
||||||
<channel site="sky.co.nz" site_id="17" lang="en" xmltv_id="Living.nz@SD">Living Channel</channel>
|
<channel site="sky.co.nz" site_id="83" lang="en" xmltv_id="FaceTV.nz@SD">FACE TV</channel>
|
||||||
<channel site="sky.co.nz" site_id="18" lang="en" xmltv_id="InvestigationDiscovery.au@SD">Investigation Discovery</channel>
|
<channel site="sky.co.nz" site_id="206" lang="en" xmltv_id="Firstlight.nz@SD">Firstlight</channel>
|
||||||
<channel site="sky.co.nz" site_id="19" lang="en" xmltv_id="WhakaataMaori.nz@SD">Maori Television</channel>
|
<channel site="sky.co.nz" site_id="88" lang="en" xmltv_id="FoxNewsChannel.us@SD">Fox News</channel>
|
||||||
<channel site="sky.co.nz" site_id="20" lang="en" xmltv_id="SkyArts.nz@SD">SKY ARTS</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="21" lang="en" xmltv_id="HGTV.nz@SD">HGTV</channel>
|
<channel site="sky.co.nz" site_id="21" lang="en" xmltv_id="HGTV.nz@SD">HGTV</channel>
|
||||||
<channel site="sky.co.nz" site_id="22" lang="en" xmltv_id="MTVHits.nz@SD">MTV Hits</channel>
|
<channel site="sky.co.nz" site_id="73" lang="en" xmltv_id="History.au@SD">Real History</channel>
|
||||||
<channel site="sky.co.nz" site_id="23" lang="en" xmltv_id="TVNZDUKE.nz@SD">DUKE</channel>
|
<channel site="sky.co.nz" site_id="204" lang="en" xmltv_id="HopeChannelNewZealand.nz@SD">Hope Channel</channel>
|
||||||
<channel site="sky.co.nz" site_id="24" lang="en" xmltv_id="Rush.nz@SD">Rush</channel>
|
<channel site="sky.co.nz" site_id="18" lang="en" xmltv_id="InvestigationDiscovery.au@SD">Investigation Discovery</channel>
|
||||||
<channel site="sky.co.nz" site_id="25" lang="en" xmltv_id="TheShoppingChannel.nz@SD">The Shopping Channel</channel>
|
<channel site="sky.co.nz" site_id="8" lang="en" xmltv_id="JONES.nz@SD">Jones!</channel>
|
||||||
<channel site="sky.co.nz" site_id="30" lang="en" xmltv_id="SkyMoviesPremiere.nz@SD">SKY Movies Premiere</channel>
|
<channel site="sky.co.nz" site_id="17" lang="en" xmltv_id="Living.nz@SD">Living Channel</channel>
|
||||||
<channel site="sky.co.nz" site_id="31" lang="en" xmltv_id="SkyMoviesComedy.nz@SD">SKY Movies Comedy</channel>
|
<channel site="sky.co.nz" site_id="15" lang="en" xmltv_id="MTV.nz@SD">MTV</channel>
|
||||||
<channel site="sky.co.nz" site_id="32" lang="en" xmltv_id="SkyMoviesAction.nz@SD">SKY Movies Action</channel>
|
<channel site="sky.co.nz" site_id="22" lang="en" xmltv_id="MTVHits.nz@SD">MTV Music</channel>
|
||||||
<channel site="sky.co.nz" site_id="33" lang="en" xmltv_id="SkyMoviesGreats.nz@SD">SKY Movies Greats</channel>
|
<channel site="sky.co.nz" site_id="101" lang="en" xmltv_id="Nickelodeon.au@SD">Nick</channel>
|
||||||
<channel site="sky.co.nz" site_id="34" lang="en" xmltv_id="SkyMoviesClassics.nz@SD">SKY Movies Classic</channel>
|
<channel site="sky.co.nz" site_id="104" lang="en" xmltv_id="NickJr.au@SD">nick jr.</channel>
|
||||||
<channel site="sky.co.nz" site_id="35" lang="en" xmltv_id="SkyMoviesCollection.nz@SD">SKY Movies Collection</channel>
|
<channel site="sky.co.nz" site_id="100" lang="en" xmltv_id="NickMusic.au@SD">Nick Music</channel>
|
||||||
<channel site="sky.co.nz" site_id="36" lang="en" xmltv_id="SkyMoviesFamily.nz@SD">SKY Movies Family</channel>
|
<channel site="sky.co.nz" site_id="86" lang="en" xmltv_id="ParliamentTV.nz@SD">Parliament TV</channel>
|
||||||
<channel site="sky.co.nz" site_id="39" lang="en" xmltv_id="Rialto.nz@SD">Rialto</channel>
|
<channel site="sky.co.nz" site_id="39" lang="en" xmltv_id="Rialto.nz@SD">Rialto</channel>
|
||||||
|
<channel site="sky.co.nz" site_id="24" lang="en" xmltv_id="Rush.nz@SD">Rush</channel>
|
||||||
|
<channel site="sky.co.nz" site_id="203" lang="en" xmltv_id="SBNTV.au@SD">SBN</channel>
|
||||||
|
<channel site="sky.co.nz" site_id="201" lang="en" xmltv_id="ShineTV.nz@SD">Shine TV</channel>
|
||||||
|
<channel site="sky.co.nz" site_id="5" lang="en" xmltv_id="Sky5.nz@SD">Sky 5</channel>
|
||||||
|
<channel site="sky.co.nz" site_id="65" lang="en" xmltv_id="SkyArena.nz@SD">SKY Arena</channel>
|
||||||
|
<channel site="sky.co.nz" site_id="20" lang="en" xmltv_id="SkyArts.nz@SD">Arts Channel</channel>
|
||||||
<channel site="sky.co.nz" site_id="40" lang="en" xmltv_id="SkyBoxOffice040.nz@SD">SKY Box Office</channel>
|
<channel site="sky.co.nz" site_id="40" lang="en" xmltv_id="SkyBoxOffice040.nz@SD">SKY Box Office</channel>
|
||||||
<channel site="sky.co.nz" site_id="41" lang="en" xmltv_id="SkyBoxOffice041.nz@SD">SKY Box Office 041</channel>
|
<channel site="sky.co.nz" site_id="41" lang="en" xmltv_id="SkyBoxOffice041.nz@SD">SKY Box Office 041</channel>
|
||||||
<channel site="sky.co.nz" site_id="42" lang="en" xmltv_id="SkyBoxOffice042.nz@SD">SKY Box Office 042</channel>
|
<channel site="sky.co.nz" site_id="42" lang="en" xmltv_id="SkyBoxOffice042.nz@SD">SKY Box Office 042</channel>
|
||||||
<channel site="sky.co.nz" site_id="43" lang="en" xmltv_id="SkyBoxOffice043.nz@SD">SKY Box Office 043</channel>
|
<channel site="sky.co.nz" site_id="43" lang="en" xmltv_id="SkyBoxOffice043.nz@SD">SKY Box Office 043</channel>
|
||||||
<channel site="sky.co.nz" site_id="50" lang="en" xmltv_id="SkySportSelect.nz@SD">SKY Sport Select</channel>
|
<channel site="sky.co.nz" site_id="32" lang="en" xmltv_id="SkyMoviesAction.nz@SD">Action Movies</channel>
|
||||||
|
<channel site="sky.co.nz" site_id="34" lang="en" xmltv_id="SkyMoviesClassics.nz@SD">Classic Movies</channel>
|
||||||
|
<channel site="sky.co.nz" site_id="31" lang="en" xmltv_id="SkyMoviesComedy.nz@SD">Comedy Movies</channel>
|
||||||
|
<channel site="sky.co.nz" site_id="36" lang="en" xmltv_id="SkyMoviesFamily.nz@SD">Family Movies</channel>
|
||||||
|
<channel site="sky.co.nz" site_id="33" lang="en" xmltv_id="SkyMoviesGreats.nz@SD">Great Movies</channel>
|
||||||
|
<channel site="sky.co.nz" site_id="30" lang="en" xmltv_id="SkyMoviesPremiere.nz@SD">Premiere Movies</channel>
|
||||||
|
<channel site="sky.co.nz" site_id="85" lang="en" xmltv_id="SkyNewsNewZealand.nz@SD">SKY NEWS</channel>
|
||||||
|
<channel site="sky.co.nz" site_id="514" lang="en" xmltv_id="SkyOpen.nz@Plus1">Sky Open +1</channel>
|
||||||
|
<channel site="sky.co.nz" site_id="4" lang="en" xmltv_id="SkyOpen.nz@SD">Sky Open</channel>
|
||||||
<channel site="sky.co.nz" site_id="51" lang="en" xmltv_id="SkySport1.nz@SD">SKY Sport 1</channel>
|
<channel site="sky.co.nz" site_id="51" lang="en" xmltv_id="SkySport1.nz@SD">SKY Sport 1</channel>
|
||||||
<channel site="sky.co.nz" site_id="52" lang="en" xmltv_id="SkySport2.nz@SD">SKY Sport 2</channel>
|
<channel site="sky.co.nz" site_id="52" lang="en" xmltv_id="SkySport2.nz@SD">SKY Sport 2</channel>
|
||||||
<channel site="sky.co.nz" site_id="53" lang="en" xmltv_id="SkySport3.nz@SD">SKY Sport 3</channel>
|
<channel site="sky.co.nz" site_id="53" lang="en" xmltv_id="SkySport3.nz@SD">SKY Sport 3</channel>
|
||||||
@@ -46,69 +71,24 @@
|
|||||||
<channel site="sky.co.nz" site_id="57" lang="en" xmltv_id="SkySport7.nz@SD">SKY Sport 7</channel>
|
<channel site="sky.co.nz" site_id="57" lang="en" xmltv_id="SkySport7.nz@SD">SKY Sport 7</channel>
|
||||||
<channel site="sky.co.nz" site_id="58" lang="en" xmltv_id="SkySport8.nz@SD">SKY Sport 8</channel>
|
<channel site="sky.co.nz" site_id="58" lang="en" xmltv_id="SkySport8.nz@SD">SKY Sport 8</channel>
|
||||||
<channel site="sky.co.nz" site_id="59" lang="en" xmltv_id="SkySport9.nz@SD">SKY Sport 9</channel>
|
<channel site="sky.co.nz" site_id="59" lang="en" xmltv_id="SkySport9.nz@SD">SKY Sport 9</channel>
|
||||||
<channel site="sky.co.nz" site_id="60" lang="en" xmltv_id="ESPN.au@SD">ESPN</channel>
|
<channel site="sky.co.nz" site_id="50" lang="en" xmltv_id="SkySportSelect.nz@SD">SKY Sport Select</channel>
|
||||||
<channel site="sky.co.nz" site_id="61" lang="en" xmltv_id="ESPN2.au@SD">ESPN2</channel>
|
<channel site="sky.co.nz" site_id="10" lang="en" xmltv_id="SoHo.nz@SD">HBO</channel>
|
||||||
|
<channel site="sky.co.nz" site_id="152" lang="en" xmltv_id="StarGold.in@SD">Star Gold</channel>
|
||||||
|
<channel site="sky.co.nz" site_id="150" lang="en" xmltv_id="StarPlus.in@SD">Star Plus Hindi</channel>
|
||||||
<channel site="sky.co.nz" site_id="62" lang="en" xmltv_id="TABTrackside1.nz@SD">TAB Trackside 1</channel>
|
<channel site="sky.co.nz" site_id="62" lang="en" xmltv_id="TABTrackside1.nz@SD">TAB Trackside 1</channel>
|
||||||
<channel site="sky.co.nz" site_id="63" lang="en" xmltv_id="TABTrackside2.nz@SD">TAB Trackside 2</channel>
|
<channel site="sky.co.nz" site_id="63" lang="en" xmltv_id="TABTrackside2.nz@SD">TAB Trackside 2</channel>
|
||||||
<channel site="sky.co.nz" site_id="65" lang="en" xmltv_id="SkyArena.nz@SD">SKY Arena</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="70" lang="en" xmltv_id="DiscoveryChannel.nz@SD">Discovery Channel</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="71" lang="en" xmltv_id="CrimePlusInvestigation.au@SD">Crime + Investigation</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="72" lang="en" xmltv_id="NationalGeographic.au@SD">National Geographic</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="73" lang="en" xmltv_id="History.au@SD">History</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="74" lang="en" xmltv_id="BBCEarth.uk@NewZealand">BBC Earth</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="75" lang="en" xmltv_id="DiscoveryTurbo.au@NewZealand">Discovery Turbo</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="76" lang="en" xmltv_id="AnimalPlanet.au@SD">Animal Planet</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="81" lang="en" xmltv_id="CountryTV.nz@SD">Country TV</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="82" lang="en" xmltv_id="TeReo.nz@SD">Te Reo</channel>
|
<channel site="sky.co.nz" site_id="82" lang="en" xmltv_id="TeReo.nz@SD">Te Reo</channel>
|
||||||
<channel site="sky.co.nz" site_id="83" lang="en" xmltv_id="FaceTV.nz@SD">Face TV</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="85" lang="en" xmltv_id="SkyNewsNewZealand.nz@SD">SKY NEWS</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="86" lang="en" xmltv_id="ParliamentTV.nz@SD">Parliament TV</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="87" lang="en" xmltv_id="CNNInternational.us@AsiaPacific">CNN International</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="88" lang="en" xmltv_id="FoxNewsChannel.us@SD">Fox News</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="89" lang="en" xmltv_id="BBCNews.uk@AsiaPacific">BBC World News</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="90" lang="en" xmltv_id="AlJazeera.qa@English">Al Jazeera</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="91" lang="en" xmltv_id="CNBCAustralia.au@SD">CNBC</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="100" lang="en" xmltv_id="NickMusic.au@SD">Nick Music</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="101" lang="en" xmltv_id="Nickelodeon.au@SD">Nick</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="102" lang="en" xmltv_id="CartoonNetwork.au@Australia">Cartoon Network</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="103" lang="en" xmltv_id="CBeebies.au@SD">CBeebies</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="104" lang="en" xmltv_id="NickJr.au@SD">nick jr.</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="150" lang="en" xmltv_id="StarPlus.in@SD">Star Plus Hindi</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="151" lang="en" xmltv_id="ColorsAsiaPacific.in@SD">Colors</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="152" lang="en" xmltv_id="StarGold.in@SD">Star Gold</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="160" lang="en" xmltv_id="TheFilipinoChannelAsia.us@SD">The Filipino Channel</channel>
|
<channel site="sky.co.nz" site_id="160" lang="en" xmltv_id="TheFilipinoChannelAsia.us@SD">The Filipino Channel</channel>
|
||||||
<channel site="sky.co.nz" site_id="201" lang="en" xmltv_id="ShineTV.nz@SD">Shine TV</channel>
|
<channel site="sky.co.nz" site_id="503" lang="en" xmltv_id="Three.nz@Plus1">ThreePlus1</channel>
|
||||||
<channel site="sky.co.nz" site_id="202" lang="en" xmltv_id="DaystarTV.us@SD">Daystar TV Network</channel>
|
<channel site="sky.co.nz" site_id="3" lang="en" xmltv_id="Three.nz@SD">Three</channel>
|
||||||
<channel site="sky.co.nz" site_id="203" lang="en" xmltv_id="SBNTV.au@SD">SBN</channel>
|
<channel site="sky.co.nz" site_id="16" lang="en" xmltv_id="TLC.nz@SD">TLC</channel>
|
||||||
<channel site="sky.co.nz" site_id="204" lang="en" xmltv_id="HopeChannelNewZealand.nz@SD">Hope Channel</channel>
|
<channel site="sky.co.nz" site_id="501" lang="en" xmltv_id="TVNZ1.nz@Plus1">One Plus 1</channel>
|
||||||
<channel site="sky.co.nz" site_id="206" lang="en" xmltv_id="Firstlight.nz@SD">Firstlight</channel>
|
<channel site="sky.co.nz" site_id="1" lang="en" xmltv_id="TVNZ1.nz@SD">One</channel>
|
||||||
<channel site="sky.co.nz" site_id="208" lang="en" xmltv_id="JONEStoo.nz@SD">JONES! too</channel>
|
<channel site="sky.co.nz" site_id="502" lang="en" xmltv_id="TVNZ2.nz@Plus1">TV2 + 1</channel>
|
||||||
|
<channel site="sky.co.nz" site_id="2" lang="en" xmltv_id="TVNZ2.nz@SD">TV2</channel>
|
||||||
|
<channel site="sky.co.nz" site_id="504" lang="en" xmltv_id="TVNZDUKE.nz@Plus1">DukePlus1</channel>
|
||||||
|
<channel site="sky.co.nz" site_id="23" lang="en" xmltv_id="TVNZDUKE.nz@SD">DUKE</channel>
|
||||||
<channel site="sky.co.nz" site_id="210" lang="en" xmltv_id="UniversalTV.nz@SD">UniversalTV</channel>
|
<channel site="sky.co.nz" site_id="210" lang="en" xmltv_id="UniversalTV.nz@SD">UniversalTV</channel>
|
||||||
<channel site="sky.co.nz" site_id="309" lang="en" xmltv_id="CGTNDocumentary.cn@SD">CGTN Documentary</channel>
|
<channel site="sky.co.nz" site_id="6" lang="en" xmltv_id="Vibe.nz@SD">Vibe</channel>
|
||||||
<channel site="sky.co.nz" site_id="310" lang="en" xmltv_id="CGTN.cn@SD">CGTN</channel>
|
<channel site="sky.co.nz" site_id="19" lang="en" xmltv_id="WhakaataMaori.nz@SD">Maori Television</channel>
|
||||||
<channel site="sky.co.nz" site_id="501" lang="en" xmltv_id="TVNZ1.nz@Plus1">One +1</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="502" lang="en" xmltv_id="TVNZ2.nz@Plus1">TV2 +1</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="503" lang="en" xmltv_id="Three.nz@Plus1">Three +1</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="504" lang="en" xmltv_id="TVNZDUKE.nz@Plus1">DUKE +1</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="505" lang="en" xmltv_id="eden.nz@Plus1">eden +1</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="512" lang="en" xmltv_id="Bravo.nz@Plus1">BRAVO +1</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="514" lang="en" xmltv_id="SkyOpen.nz@Plus1">Prime +1</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="600" lang="en" xmltv_id="">SKY Sport Popup 1</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="601" lang="en" xmltv_id="">SKY Sport Popup 2</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="605" lang="en" xmltv_id="">Rod Laver Arena</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="606" lang="en" xmltv_id="">Margaret Court Arena</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="607" lang="en" xmltv_id="">John Cain Arena</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="608" lang="en" xmltv_id="">Kia Arena</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="609" lang="en" xmltv_id="">1573 Arena</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="610" lang="en" xmltv_id="">Court 3</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="611" lang="en" xmltv_id="">Court 5</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="612" lang="en" xmltv_id="">Court 6</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="613" lang="en" xmltv_id="">Court 7</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="614" lang="en" xmltv_id="">Court 8</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="615" lang="en" xmltv_id="">Court 12</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="616" lang="en" xmltv_id="">Court 13</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="617" lang="en" xmltv_id="">Court 14</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="618" lang="en" xmltv_id="">Court 15</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="619" lang="en" xmltv_id="">Court 16</channel>
|
|
||||||
<channel site="sky.co.nz" site_id="620" lang="en" xmltv_id="">Court 17</channel>
|
|
||||||
</channels>
|
</channels>
|
||||||
|
|||||||
@@ -1,22 +1,76 @@
|
|||||||
const axios = require('axios')
|
const axios = require('axios')
|
||||||
const dayjs = require('dayjs')
|
const dayjs = require('dayjs')
|
||||||
|
const utc = require('dayjs/plugin/utc')
|
||||||
|
const tz = require('dayjs/plugin/timezone')
|
||||||
|
const timezone = 'Pacific/Auckland'
|
||||||
|
|
||||||
|
dayjs.extend(utc)
|
||||||
|
dayjs.extend(tz)
|
||||||
|
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
site: 'sky.co.nz',
|
site: 'sky.co.nz',
|
||||||
days: 2,
|
days: 2,
|
||||||
url({ date, channel }) {
|
url: 'https://api.skyone.co.nz/exp/graph',
|
||||||
return `https://web-epg.sky.co.nz/prod/epgs/v1?channelNumber=${
|
request: {
|
||||||
channel.site_id
|
method: 'POST',
|
||||||
}&start=${date.valueOf()}&end=${date.add(1, 'day').valueOf()}&limit=20000`
|
headers: {
|
||||||
|
'Content-Type': 'application/json'
|
||||||
|
},
|
||||||
|
data({ date } = {}) {
|
||||||
|
return ({
|
||||||
|
query: `{
|
||||||
|
experience(appId: TV_GUIDE_WEB) {
|
||||||
|
channelGroup(id: "4b7LA20J4iHaThwky9iVqn") {
|
||||||
|
id
|
||||||
|
title
|
||||||
|
channels {
|
||||||
|
... on LinearChannel {
|
||||||
|
id
|
||||||
|
title
|
||||||
|
number
|
||||||
|
tileImage {
|
||||||
|
uri
|
||||||
|
}
|
||||||
|
slotsForDay(date: "${dayjs.tz(date || dayjs(), timezone).format('YYYY-MM-DD')}") {
|
||||||
|
slots {
|
||||||
|
id
|
||||||
|
startMs
|
||||||
|
endMs
|
||||||
|
live
|
||||||
|
nzBsaRatingString
|
||||||
|
programme {
|
||||||
|
... on Episode {
|
||||||
|
id
|
||||||
|
title
|
||||||
|
synopsis
|
||||||
|
}
|
||||||
|
... on Movie {
|
||||||
|
id
|
||||||
|
title
|
||||||
|
}
|
||||||
|
... on PayPerViewEventProgram {
|
||||||
|
id
|
||||||
|
title
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}`
|
||||||
|
})
|
||||||
|
}
|
||||||
},
|
},
|
||||||
parser({ content }) {
|
parser({ content, channel }) {
|
||||||
let programs = []
|
let programs = []
|
||||||
const items = parseItems(content)
|
const items = parseItems(content, channel)
|
||||||
items.forEach(item => {
|
items.forEach(item => {
|
||||||
programs.push({
|
programs.push({
|
||||||
title: item.title,
|
title: item.title,
|
||||||
description: item.synopsis,
|
description: item.synopsis,
|
||||||
category: item.genres,
|
|
||||||
rating: parseRating(item),
|
rating: parseRating(item),
|
||||||
start: dayjs(parseInt(item.start)),
|
start: dayjs(parseInt(item.start)),
|
||||||
stop: dayjs(parseInt(item.end))
|
stop: dayjs(parseInt(item.end))
|
||||||
@@ -31,19 +85,41 @@ module.exports = {
|
|||||||
.then(r => r.data)
|
.then(r => r.data)
|
||||||
.catch(console.log)
|
.catch(console.log)
|
||||||
|
|
||||||
return data.channels.map(item => {
|
return data.map(item => {
|
||||||
return {
|
return {
|
||||||
lang: 'en',
|
lang: 'en',
|
||||||
site_id: parseInt(item.number).toString(),
|
site_id: parseInt(item.number).toString(),
|
||||||
name: item.name
|
name: item.sort
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function parseItems(content) {
|
function parseItems(content, channel) {
|
||||||
const data = JSON.parse(content)
|
if (!channel?.site_id) return []
|
||||||
return data && data.events && Array.isArray(data.events) ? data.events : []
|
|
||||||
|
let data
|
||||||
|
try {
|
||||||
|
data = JSON.parse(content)
|
||||||
|
} catch {
|
||||||
|
return []
|
||||||
|
}
|
||||||
|
|
||||||
|
const channels = data?.data?.experience?.channelGroup?.channels
|
||||||
|
|
||||||
|
if (!Array.isArray(channels)) return []
|
||||||
|
|
||||||
|
const channelData = channels.find(i => i.number === parseInt(channel.site_id))
|
||||||
|
|
||||||
|
if (!channelData?.slotsForDay?.slots) return []
|
||||||
|
|
||||||
|
return channelData.slotsForDay.slots.map(slot => ({
|
||||||
|
title: slot.programme.title || null,
|
||||||
|
synopsis: slot.programme.synopsis || null,
|
||||||
|
rating: slot.nzBsaRatingString || null,
|
||||||
|
start: slot.startMs,
|
||||||
|
end: slot.endMs
|
||||||
|
}))
|
||||||
}
|
}
|
||||||
|
|
||||||
function parseRating(item) {
|
function parseRating(item) {
|
||||||
|
|||||||
@@ -1,60 +1,74 @@
|
|||||||
const { parser, url } = require('./sky.co.nz.config.js')
|
const { parser, url, request } = require('./sky.co.nz.config.js')
|
||||||
const fs = require('fs')
|
const fs = require('fs')
|
||||||
const path = require('path')
|
const path = require('path')
|
||||||
const dayjs = require('dayjs')
|
const dayjs = require('dayjs')
|
||||||
const utc = require('dayjs/plugin/utc')
|
const utc = require('dayjs/plugin/utc')
|
||||||
|
const tz = require('dayjs/plugin/timezone')
|
||||||
dayjs.extend(utc)
|
dayjs.extend(utc)
|
||||||
|
dayjs.extend(tz)
|
||||||
|
|
||||||
const date = dayjs.utc('2023-01-21', 'YYYY-MM-DD').startOf('d')
|
|
||||||
const channel = {
|
const channel = {
|
||||||
site_id: '36',
|
site_id: '1',
|
||||||
xmltv_id: 'SkyMoviesFamily.nz'
|
xmltv_id: 'TVNZ 1'
|
||||||
}
|
}
|
||||||
it('can generate valid url', () => {
|
it('can generate valid url', () => {
|
||||||
expect(url({ date, channel })).toBe(
|
expect(url).toBe('https://api.skyone.co.nz/exp/graph')
|
||||||
'https://web-epg.sky.co.nz/prod/epgs/v1?channelNumber=36&start=1674259200000&end=1674345600000&limit=20000'
|
})
|
||||||
)
|
|
||||||
|
it('can generate valid request method', () => {
|
||||||
|
expect(request.method).toBe('POST')
|
||||||
})
|
})
|
||||||
|
|
||||||
it('can parse response', () => {
|
it('can parse response', () => {
|
||||||
const content = fs.readFileSync(path.resolve(__dirname, '__data__/content.json'))
|
const content = fs.readFileSync(path.resolve(__dirname, '__data__/content.json'))
|
||||||
const result = parser({ content }).map(p => {
|
const result = parser({ content, channel }).map(p => {
|
||||||
p.start = p.start.toJSON()
|
p.start = p.start.toJSON()
|
||||||
p.stop = p.stop.toJSON()
|
p.stop = p.stop.toJSON()
|
||||||
return p
|
return p
|
||||||
})
|
})
|
||||||
|
|
||||||
expect(result[0]).toMatchObject({
|
expect(result[0]).toMatchObject({
|
||||||
title: 'Sing 2',
|
title: 'Hard Quiz',
|
||||||
description:
|
description:
|
||||||
"Animated: Buster Moon and his friends must persuade the world's most reclusive rock star to help launch their most dazzling extravaganza yet. Voices Of: Matthew McConaughey, Reese Witherspoon (2021)",
|
"What do King Henry VII, Shaquille O'Neal, dinosaurs and The Adventures of Priscilla, Queen of the Desert have in common? They're all expert topics on tonight's #HardQuiz!",
|
||||||
category: ['Animated'],
|
|
||||||
rating: { system: 'OFLC', value: 'PG' },
|
rating: { system: 'OFLC', value: 'PG' },
|
||||||
start: '2023-01-20T23:41:00.000Z',
|
start: '2025-12-12T10:40:00.000Z',
|
||||||
stop: '2023-01-21T01:28:00.000Z'
|
stop: '2025-12-12T11:15:00.000Z'
|
||||||
})
|
})
|
||||||
|
|
||||||
expect(result[5]).toMatchObject({
|
expect(result[33]).toMatchObject({
|
||||||
title: 'Harry Potter and the Goblet of Fire',
|
title: 'Obituary',
|
||||||
description:
|
description:
|
||||||
'Adventure: Harry is selected to represent Hogwarts at a legendary and dangerous wizardry competition between three schools of magic. Stars: Daniel Radcliffe, Rupert Grint (2005)',
|
'Season Finale: When Ward reveals what really happened the night Maria Riedle was killed, Elvira sets about framing Hughie for the crime. S1 E6',
|
||||||
category: ['Action/Adventure'],
|
rating: { system: 'OFLC', value: '16' },
|
||||||
rating: { system: 'OFLC', value: 'M-V' },
|
start: '2025-12-13T10:55:00.000Z',
|
||||||
start: '2023-01-21T07:42:00.000Z',
|
stop: '2025-12-13T11:50:00.000Z'
|
||||||
stop: '2023-01-21T10:13:00.000Z'
|
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
|
// Not easy to mock this case, as it's the same repeated message (for all channels ?)
|
||||||
|
// with the time space in the message. Only what doesn't change is provided, but will still pass the test out.
|
||||||
it('can handle empty guide', () => {
|
it('can handle empty guide', () => {
|
||||||
const result = parser(
|
const result = parser({
|
||||||
{
|
content: `{
|
||||||
content: `{
|
"locations": [
|
||||||
"code": "DATE_FORMAT_ERROR",
|
{
|
||||||
"description": "DateFormat error",
|
"line": 14,
|
||||||
"message": "Unparseable date: x"
|
"column": 11
|
||||||
}`
|
}
|
||||||
},
|
],
|
||||||
|
"path": [
|
||||||
|
"experience",
|
||||||
|
"channelGroup",
|
||||||
|
"channels",
|
||||||
|
0,
|
||||||
|
"slotsForDay"
|
||||||
|
],
|
||||||
|
"extensions": {
|
||||||
|
"classification": "DataFetchingException"
|
||||||
|
}
|
||||||
|
}`,
|
||||||
channel
|
channel
|
||||||
)
|
})
|
||||||
expect(result).toMatchObject([])
|
expect(result).toMatchObject([])
|
||||||
})
|
})
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user