diff --git a/sites/ziggogo.tv/__data__/content00.json b/sites/ziggogo.tv/__data__/content00.json index d52c4c37c..7b5789c76 100644 --- a/sites/ziggogo.tv/__data__/content00.json +++ b/sites/ziggogo.tv/__data__/content00.json @@ -1,191 +1,56 @@ { - "duration": 21600, - "entries": [ + "duration": 21600, + "entries": [ + { + "channelId": "NL_000007_019181", + "events": [ { - "channelId": "NL_000001_019401", - "events": [ - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734394200, - "id": "crid:~~2F~~2Fgn.tv~~2F817615~~2FSH010806510000~~2F333413456,imi:a0504c22d2d2eaae392ca8d6c806526535f187ec", - "isPlaceHolder": true, - "mergedId": "817615|nl", - "minimumAge": 0, - "replayTVMinAge": 0, - "startTime": 1734392400, - "title": "NOS Journaal" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734395700, - "id": "crid:~~2F~~2Fgn.tv~~2F28844562~~2FEP027607161610,imi:1d49feeb2ef4e3db0bde030e7cf6e55e06d56fed", - "mergedId": "663871|nl", - "minimumAge": 0, - "replayTVMinAge": 0, - "seriesPremiereAirings": true, - "startTime": 1734394200, - "title": "EenVandaag" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734397500, - "id": "crid:~~2F~~2Fgn.tv~~2F817617~~2FSH041384110000~~2F333413458,imi:a45af34ab01a669d19ed3f20f79281e85e8c7556", - "isPlaceHolder": true, - "mergedId": "817617|nl", - "minimumAge": 0, - "replayTVMinAge": 0, - "startTime": 1734395700, - "title": "NOS Journaal met gebarentaal" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734398700, - "id": "crid:~~2F~~2Fgn.tv~~2F817615~~2FSH010806510000~~2F333413459,imi:e2509236b7e476d832d9085ff2e7a46db40e0776", - "isPlaceHolder": true, - "mergedId": "817615|nl", - "minimumAge": 0, - "replayTVMinAge": 0, - "startTime": 1734397500, - "title": "NOS Journaal" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734411000, - "id": "crid:~~2F~~2Fgn.tv~~2F817615~~2FSH010806510000~~2F333413460,imi:be9930e1b595db9fc0cd740faf7e3004bd7020f1", - "isPlaceHolder": true, - "mergedId": "817615|nl", - "minimumAge": 0, - "replayTVMinAge": 0, - "startTime": 1734398700, - "title": "NOS Journaal" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734411900, - "id": "crid:~~2F~~2Fgn.tv~~2F28645536~~2FEP010806490672,imi:a9453a6db561ecfd43adbdc434f4e1834ec6612b", - "mergedId": "821488|nl", - "minimumAge": 0, - "replayTVMinAge": 0, - "seriesPremiereAirings": true, - "startTime": 1734411000, - "title": "Nederland in Beweging" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734413400, - "id": "crid:~~2F~~2Fgn.tv~~2F28645433~~2FEP010806470906,imi:ec82288a988385e263549f045d36dcdfef4377ec", - "mergedId": "786032|nl", - "minimumAge": 0, - "replayTVMinAge": 0, - "seriesPremiereAirings": true, - "startTime": 1734411900, - "title": "MAX Geheugentrainer" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734413700, - "id": "crid:~~2F~~2Fgn.tv~~2F817615~~2FSH010806510000~~2F333413660,imi:395ca534be4476badd448c053670ee03f61bfcb3", - "isPlaceHolder": true, - "mergedId": "817615|nl", - "minimumAge": 0, - "replayTVMinAge": 0, - "startTime": 1734413400, - "title": "NOS Journaal" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734414000, - "id": "crid:~~2F~~2Fgn.tv~~2F817615~~2FSH010806510000~~2F333413661,imi:a246acc1f3d7db9b2096f4d40cb159ccf3b1b6b4", - "isPlaceHolder": true, - "mergedId": "817615|nl", - "minimumAge": 0, - "replayTVMinAge": 0, - "startTime": 1734413700, - "title": "NOS Journaal" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734414300, - "id": "crid:~~2F~~2Fgn.tv~~2F817615~~2FSH010806510000~~2F333413662,imi:11d60a95d0fcb4c217dd1f5ab7a252826b3d600f", - "isPlaceHolder": true, - "mergedId": "817615|nl", - "minimumAge": 0, - "replayTVMinAge": 0, - "startTime": 1734414000, - "title": "NOS Journaal" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734414600, - "id": "crid:~~2F~~2Fgn.tv~~2F817615~~2FSH010806510000~~2F333413663,imi:aa3f0552f0037cc2e436b17647895a007a457356", - "isPlaceHolder": true, - "mergedId": "817615|nl", - "minimumAge": 0, - "replayTVMinAge": 0, - "startTime": 1734414300, - "title": "NOS Journaal" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734415200, - "id": "crid:~~2F~~2Fgn.tv~~2F817615~~2FSH010806510000~~2F333413664,imi:b45f9715e889373939df0124fdff8f6701997538", - "isPlaceHolder": true, - "mergedId": "817615|nl", - "minimumAge": 0, - "replayTVMinAge": 0, - "startTime": 1734414600, - "title": "NOS Journaal" - } - ] + "audioLanguages": [ + { + "lang": "nl" + } + ], + "endTime": 1780099800, + "id": "crid:~~2F~~2Fgn.tv~~2F14554329~~2FSH027788870000~~2F492458471,imi:8abbdf981506607d4685068c4f8b62d3fa3a98c4", + "isPlaceHolder": true, + "mergedId": "14554329|nl", + "minimumAge": 0, + "replayTVMinAge": 16, + "startTime": 1780098780, + "title": "Tommy Teleshopping" + }, + { + "audioLanguages": [ + { + "lang": "nl" + } + ], + "endTime": 1780113600, + "id": "crid:~~2F~~2Fgn.tv~~2F14554329~~2FSH027788870000~~2F492766736,imi:b9bfec14276e6c425bf47094d2353265a3000e5f", + "isPlaceHolder": true, + "mergedId": "14554329|nl", + "minimumAge": 0, + "replayTVMinAge": 0, + "startTime": 1780099800, + "title": "Tommy Teleshopping" + }, + { + "audioLanguages": [ + { + "lang": "nl" + } + ], + "endTime": 1780138980, + "id": "crid:~~2F~~2Fgn.tv~~2F32036579~~2FSH062278610000~~2F492767862,imi:25ee264da729e66ee9ab4cb70d30ab2d76b661f4", + "isPlaceHolder": true, + "mergedId": "32036579|nl", + "minimumAge": 0, + "replayTVMinAge": 9, + "startTime": 1780113600, + "title": "Telvero" } - ], - "time": 1734393600 + ] + } + ], + "time": 1780099200 } \ No newline at end of file diff --git a/sites/ziggogo.tv/__data__/content06.json b/sites/ziggogo.tv/__data__/content06.json index 8b983d2eb..f2c961a33 100644 --- a/sites/ziggogo.tv/__data__/content06.json +++ b/sites/ziggogo.tv/__data__/content06.json @@ -1,319 +1,56 @@ { - "duration": 21600, - "entries": [ + "duration": 21600, + "entries": [ + { + "channelId": "NL_000007_019181", + "events": [ { - "channelId": "NL_000001_019401", - "events": [ - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734415800, - "id": "crid:~~2F~~2Fgn.tv~~2F817615~~2FSH010806510000~~2F333413665,imi:46496381d6785ef439fd92e074892b5cb070fe21", - "isPlaceHolder": true, - "mergedId": "817615|nl", - "minimumAge": 0, - "replayTVMinAge": 0, - "startTime": 1734415200, - "title": "NOS Journaal" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734417000, - "id": "crid:~~2F~~2Fgn.tv~~2F28842707~~2FEP022675661065,imi:33138a61bfa639696f386a5b8da9052e98cffdf8", - "mergedId": "12128152|nl", - "minimumAge": 0, - "premiere": true, - "replayTVMinAge": 0, - "seriesPremiereAirings": true, - "startTime": 1734415800, - "title": "Goedemorgen Nederland" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734417600, - "id": "crid:~~2F~~2Fgn.tv~~2F817615~~2FSH010806510000~~2F333413667,imi:74a097f412459db55e23f372e3e08273a9a43253", - "isPlaceHolder": true, - "mergedId": "817615|nl", - "minimumAge": 0, - "replayTVMinAge": 0, - "startTime": 1734417000, - "title": "NOS Journaal" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734418800, - "id": "crid:~~2F~~2Fgn.tv~~2F28842707~~2FEP022675661065,imi:b5527231adbc68b104e5c514aa5d61ae56cea41a", - "mergedId": "12128152|nl", - "minimumAge": 0, - "premiere": true, - "replayTVMinAge": 0, - "seriesPremiereAirings": true, - "startTime": 1734417600, - "title": "Goedemorgen Nederland" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734419400, - "id": "crid:~~2F~~2Fgn.tv~~2F817615~~2FSH010806510000~~2F333413669,imi:b7a6a4e860273a4b563d1f758cc7b24135df6193", - "isPlaceHolder": true, - "mergedId": "817615|nl", - "minimumAge": 0, - "replayTVMinAge": 0, - "startTime": 1734418800, - "title": "NOS Journaal" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734420600, - "id": "crid:~~2F~~2Fgn.tv~~2F28842707~~2FEP022675661065,imi:76ffed0a0f6a59b6c811ed2bfd1dac9da02a4548", - "mergedId": "12128152|nl", - "minimumAge": 0, - "premiere": true, - "replayTVMinAge": 0, - "seriesPremiereAirings": true, - "startTime": 1734419400, - "title": "Goedemorgen Nederland" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734421200, - "id": "crid:~~2F~~2Fgn.tv~~2F817615~~2FSH010806510000~~2F333413671,imi:6c3e0a8b37f17f4410753f49b7325c0b0ca79eb0", - "isPlaceHolder": true, - "mergedId": "817615|nl", - "minimumAge": 0, - "replayTVMinAge": 0, - "startTime": 1734420600, - "title": "NOS Journaal" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734422400, - "id": "crid:~~2F~~2Fgn.tv~~2F28842707~~2FEP022675661065,imi:b7fe978e6460a5d8664b70c8c70ea8b4aa1117b2", - "mergedId": "12128152|nl", - "minimumAge": 0, - "premiere": true, - "replayTVMinAge": 0, - "seriesPremiereAirings": true, - "startTime": 1734421200, - "title": "Goedemorgen Nederland" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734423000, - "id": "crid:~~2F~~2Fgn.tv~~2F817615~~2FSH010806510000~~2F333413673,imi:2ec3c65d6b0aabed2c9ea68006713b8490894492", - "isPlaceHolder": true, - "mergedId": "817615|nl", - "minimumAge": 0, - "replayTVMinAge": 0, - "startTime": 1734422400, - "title": "NOS Journaal" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734424200, - "id": "crid:~~2F~~2Fgn.tv~~2F28842707~~2FEP022675661065,imi:3350fb9d91eb36333f5b4a8794e7ab07168e7aeb", - "mergedId": "12128152|nl", - "minimumAge": 0, - "premiere": true, - "replayTVMinAge": 0, - "seriesPremiereAirings": true, - "startTime": 1734423000, - "title": "Goedemorgen Nederland" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734424800, - "id": "crid:~~2F~~2Fgn.tv~~2F817615~~2FSH010806510000~~2F333413675,imi:70abb3e9240138e35b33a86efa4aa2564503f5bc", - "isPlaceHolder": true, - "mergedId": "817615|nl", - "minimumAge": 0, - "replayTVMinAge": 0, - "startTime": 1734424200, - "title": "NOS Journaal" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734426000, - "id": "crid:~~2F~~2Fgn.tv~~2F28842707~~2FEP022675661065,imi:b61742994e35a7fb669464766ca6353b834a4638", - "mergedId": "12128152|nl", - "minimumAge": 0, - "premiere": true, - "replayTVMinAge": 0, - "seriesPremiereAirings": true, - "startTime": 1734424800, - "title": "Goedemorgen Nederland" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734426900, - "id": "crid:~~2F~~2Fgn.tv~~2F817615~~2FSH010806510000~~2F333413677,imi:98b233497245982f8721031d596bd06d908bdb85", - "isPlaceHolder": true, - "mergedId": "817615|nl", - "minimumAge": 0, - "replayTVMinAge": 0, - "startTime": 1734426000, - "title": "NOS Journaal" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734427800, - "id": "crid:~~2F~~2Fgn.tv~~2F28645537~~2FEP010806490673,imi:bc3d2319315c92a500de44ed03eafd5af056d30b", - "mergedId": "821488|nl", - "minimumAge": 0, - "premiere": true, - "replayTVMinAge": 0, - "seriesPremiereAirings": true, - "startTime": 1734426900, - "title": "Nederland in Beweging" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734428700, - "id": "crid:~~2F~~2Fgn.tv~~2F28645434~~2FEP010806470907,imi:f9acadb3f35154fd8a334db2613ac32b9242e770", - "mergedId": "786032|nl", - "minimumAge": 0, - "premiere": true, - "replayTVMinAge": 0, - "seriesPremiereAirings": true, - "startTime": 1734427800, - "title": "MAX Geheugentrainer" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734429600, - "id": "crid:~~2F~~2Fgn.tv~~2F817615~~2FSH010806510000~~2F333413680,imi:29737cafa9ff10b3123209deb20d92ce1d55c7ac", - "isPlaceHolder": true, - "mergedId": "817615|nl", - "minimumAge": 0, - "replayTVMinAge": 0, - "startTime": 1734428700, - "title": "NOS Journaal" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734430500, - "id": "crid:~~2F~~2Fgn.tv~~2F817615~~2FSH010806510000~~2F333413681,imi:1e9a8d2d36ea83195ebc6f039852b2360dc80dd8", - "isPlaceHolder": true, - "mergedId": "817615|nl", - "minimumAge": 0, - "replayTVMinAge": 0, - "startTime": 1734429600, - "title": "NOS Journaal" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734433200, - "id": "crid:~~2F~~2Fgn.tv~~2F28844051~~2FEP021727633057,imi:80799296d5cb1ed1376736d52275c589cf0b2173", - "mergedId": "959050|nl", - "minimumAge": 0, - "replayTVMinAge": 0, - "seriesPremiereAirings": true, - "startTime": 1734430500, - "title": "Tijd voor MAX And Hallo Nederland" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734434100, - "id": "crid:~~2F~~2Fgn.tv~~2F817615~~2FSH010806510000~~2F333413683,imi:444cdc571581dbaf2115a96b3dfc19fcab173a75", - "isPlaceHolder": true, - "mergedId": "817615|nl", - "minimumAge": 0, - "replayTVMinAge": 0, - "startTime": 1734433200, - "title": "NOS Journaal" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734436800, - "id": "crid:~~2F~~2Fgn.tv~~2F28846600~~2FEP041927080294,imi:f55f871daa9f96c70ecefbd7cf29b0c94555032f", - "mergedId": "21574304|nl", - "premiere": true, - "replayTVMinAge": 0, - "seriesPremiereAirings": true, - "startTime": 1734434100, - "title": "Ongehoord Nieuws" - } - ] + "audioLanguages": [ + { + "lang": "nl" + } + ], + "endTime": 1780138980, + "id": "crid:~~2F~~2Fgn.tv~~2F32036579~~2FSH062278610000~~2F492767862,imi:25ee264da729e66ee9ab4cb70d30ab2d76b661f4", + "isPlaceHolder": true, + "mergedId": "32036579|nl", + "minimumAge": 0, + "replayTVMinAge": 9, + "startTime": 1780113600, + "title": "Telvero" + }, + { + "audioLanguages": [ + { + "lang": "nl" + } + ], + "endTime": 1780140720, + "id": "crid:~~2F~~2Fgn.tv~~2F33027308~~2FEP064104340002,imi:a24b366ed3e67743d5c6350821ee04ef24788075", + "mergedId": "32982456|nl", + "minimumAge": 0, + "replayTVMinAge": 9, + "seriesPremiereAirings": true, + "startTime": 1780138980, + "title": "Innoverend Nederland" + }, + { + "audioLanguages": [ + { + "lang": "nl" + } + ], + "endTime": 1780142460, + "id": "crid:~~2F~~2Fgn.tv~~2F33027307~~2FEP051178210026,imi:53bc5cdaeddeac51615f4df67319e8f788430a48", + "mergedId": "27291958|nl", + "minimumAge": 0, + "replayTVMinAge": 9, + "seriesPremiereAirings": true, + "startTime": 1780140720, + "title": "Klimaat Bewust Werkt" } - ], - "time": 1734415200 + ] + } + ], + "time": 1780120800 } \ No newline at end of file diff --git a/sites/ziggogo.tv/__data__/content12.json b/sites/ziggogo.tv/__data__/content12.json index 77d610c92..d20ea7f9f 100644 --- a/sites/ziggogo.tv/__data__/content12.json +++ b/sites/ziggogo.tv/__data__/content12.json @@ -1,239 +1,241 @@ { - "duration": 21600, - "entries": [ + "duration": 21600, + "entries": [ + { + "channelId": "NL_000007_019181", + "events": [ { - "channelId": "NL_000001_019401", - "events": [ - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734438000, - "id": "crid:~~2F~~2Fgn.tv~~2F817615~~2FSH010806510000~~2F333413685,imi:539d42e5dc6d0f5857fa9c13071cae89ceff9d50", - "isPlaceHolder": true, - "mergedId": "817615|nl", - "minimumAge": 0, - "replayTVMinAge": 0, - "startTime": 1734436800, - "title": "NOS Journaal" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734440400, - "id": "crid:~~2F~~2Fgn.tv~~2F28846670~~2FEP041927080295,imi:33cbc0a832f9544ef945734c74e3ae634f74d996", - "mergedId": "21574304|nl", - "premiere": true, - "replayTVMinAge": 0, - "seriesPremiereAirings": true, - "startTime": 1734438000, - "title": "Ongehoord Nieuws" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734444000, - "id": "crid:~~2F~~2Fgn.tv~~2F28846748~~2FEP027812200406,imi:8dce8a936d09d1a2d9b7eee6c907dbde8664b329", - "mergedId": "14567018|nl", - "premiere": true, - "replayTVMinAge": 0, - "seriesPremiereAirings": true, - "startTime": 1734440400, - "title": "NOS het vragenuurtje" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734445200, - "id": "crid:~~2F~~2Fgn.tv~~2F817615~~2FSH010806510000~~2F333413689,imi:e885706a6e0500464ad98492794657a93a30784b", - "isPlaceHolder": true, - "mergedId": "817615|nl", - "minimumAge": 0, - "replayTVMinAge": 0, - "startTime": 1734444000, - "title": "NOS Journaal" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734446100, - "id": "crid:~~2F~~2Fgn.tv~~2F817615~~2FSH010806510000~~2F333413690,imi:23a731e1015c2bd03b82e6b47fce26db8ddfc5b5", - "isPlaceHolder": true, - "mergedId": "817615|nl", - "minimumAge": 0, - "replayTVMinAge": 0, - "startTime": 1734445200, - "title": "NOS Journaal" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734447300, - "id": "crid:~~2F~~2Fgn.tv~~2F817615~~2FSH010806510000~~2F333413691,imi:a5799a218edbd62acf72d4764562dedad834e051", - "isPlaceHolder": true, - "mergedId": "817615|nl", - "minimumAge": 0, - "replayTVMinAge": 9, - "startTime": 1734446100, - "title": "NOS Journaal" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734451080, - "id": "crid:~~2F~~2Fgn.tv~~2F28728829~~2FEP052397600066,imi:34a0b026912de96e3546b15ad2983070a250dfd5", - "mergedId": "28002368|nl", - "minimumAge": 9, - "replayTVMinAge": 9, - "seriesPremiereAirings": true, - "startTime": 1734447300, - "title": "Bar Laat" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734451200, - "id": "crid:~~2F~~2Fgn.tv~~2F23984539~~2FEP021725790095,imi:76077546def36be37717b1c2d46bd863de8d9755", - "mergedId": "11721811|nl", - "replayTVMinAge": 9, - "seriesName": "CARE Nederland", - "seriesPremiereAirings": true, - "startTime": 1734451080, - "title": "Socutera" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734451800, - "id": "crid:~~2F~~2Fgn.tv~~2F28047447~~2FSH052589890000~~2F333413694,imi:c4c64504eaeb701fc0561b0b95ef44f76e5350e1", - "isPlaceHolder": true, - "mergedId": "28047447|nl", - "minimumAge": 0, - "replayTVMinAge": 9, - "startTime": 1734451200, - "title": "NOS Journaal in Makkelijke Taal" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734454500, - "id": "crid:~~2F~~2Fgn.tv~~2F28844615~~2FEP021727633058,imi:b614b60f0ee90c3fe3d98d828827381cd3071ef8", - "mergedId": "959050|nl", - "minimumAge": 0, - "premiere": true, - "replayTVMinAge": 0, - "seriesName": "Vluchtelingenwerk NL", - "seriesPremiereAirings": true, - "startTime": 1734451800, - "title": "Tijd voor MAX And Hallo Nederland" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734454620, - "id": "crid:~~2F~~2Fgn.tv~~2F14043893~~2FEP021725040022,imi:3a229c4847ca8162cde658c13732b25eb45953b7", - "mergedId": "11721625|nl", - "replayTVMinAge": 0, - "seriesName": "FvD", - "seriesPremiereAirings": true, - "startTime": 1734454500, - "title": "Politieke Partijen" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734454800, - "id": "crid:~~2F~~2Fgn.tv~~2F19527612~~2FEP021725040026,imi:d8ccbacaf474ae289c1c2d3b4a4fecb816262a2a", - "mergedId": "11721625|nl", - "replayTVMinAge": 0, - "seriesName": "JA21", - "seriesPremiereAirings": true, - "startTime": 1734454620, - "title": "Politieke Partijen" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734455700, - "id": "crid:~~2F~~2Fgn.tv~~2F19275926~~2FSH037283250000~~2F333413698,imi:0c3e271c7a81ec4b8ec2e56c968ab209ed73df7a", - "isPlaceHolder": true, - "mergedId": "19275926|nl", - "minimumAge": 0, - "replayTVMinAge": 0, - "startTime": 1734454800, - "title": "NOS Journaal 18.00 uur" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734456600, - "id": "crid:~~2F~~2Fgn.tv~~2F28689945~~2FEP010806570933,imi:fa3fd8a287520b2b29e574c1a578a9a6c0bc4b2f", - "mergedId": "817618|nl", - "premiere": true, - "replayTVMinAge": 0, - "seriesPremiereAirings": true, - "startTime": 1734455700, - "title": "NOS Sportjournaal" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734458700, - "id": "crid:~~2F~~2Fgn.tv~~2F28844566~~2FEP027607161611,imi:a235382a2fb37bc84737285ac486fa24c650464f", - "mergedId": "663871|nl", - "minimumAge": 0, - "premiere": true, - "replayTVMinAge": 0, - "seriesPremiereAirings": true, - "startTime": 1734456600, - "title": "EenVandaag" - } - ] + "audioLanguages": [ + { + "lang": "nl" + } + ], + "endTime": 1780142460, + "id": "crid:~~2F~~2Fgn.tv~~2F33027307~~2FEP051178210026,imi:53bc5cdaeddeac51615f4df67319e8f788430a48", + "mergedId": "27291958|nl", + "minimumAge": 0, + "replayTVMinAge": 9, + "seriesPremiereAirings": true, + "startTime": 1780140720, + "title": "Klimaat Bewust Werkt" + }, + { + "audioLanguages": [ + { + "lang": "nl" + } + ], + "endTime": 1780144260, + "id": "crid:~~2F~~2Fgn.tv~~2F19504814~~2FEP027864860118,imi:627dd8d8535ba6e3650e22701510e98e2521981a", + "mergedId": "14595447|nl", + "minimumAge": 9, + "minimumAgeWarnings": [ + "2" + ], + "replayTVMinAge": 9, + "seriesPremiereAirings": true, + "startTime": 1780142460, + "title": "Idioten op de weg" + }, + { + "audioLanguages": [ + { + "lang": "nl" + } + ], + "endTime": 1780146120, + "id": "crid:~~2F~~2Fgn.tv~~2F20107794~~2FEP027864860145,imi:f46395cfdc609aaf890b749936d046d98d3585d9", + "mergedId": "14595447|nl", + "minimumAge": 9, + "minimumAgeWarnings": [ + "2" + ], + "replayTVMinAge": 9, + "seriesPremiereAirings": true, + "startTime": 1780144260, + "title": "Idioten op de weg" + }, + { + "audioLanguages": [ + { + "lang": "nl" + } + ], + "endTime": 1780147920, + "id": "crid:~~2F~~2Fgn.tv~~2F33027310~~2FEP062402210006,imi:69c903f7d09c612f1d1ff7cd9f962501429a3a20", + "mergedId": "32089778|nl", + "minimumAge": 0, + "replayTVMinAge": 9, + "seriesPremiereAirings": true, + "startTime": 1780146120, + "title": "AI Storm" + }, + { + "audioLanguages": [ + { + "lang": "nl" + } + ], + "endTime": 1780149720, + "id": "crid:~~2F~~2Fgn.tv~~2F19504824~~2FEP027864860120,imi:e6987d185617bd73c7496ae61cba4327657f3b46", + "mergedId": "14595447|nl", + "minimumAge": 9, + "minimumAgeWarnings": [ + "2" + ], + "replayTVMinAge": 9, + "seriesPremiereAirings": true, + "startTime": 1780147920, + "title": "Idioten op de weg" + }, + { + "audioLanguages": [ + { + "lang": "nl" + } + ], + "endTime": 1780151520, + "id": "crid:~~2F~~2Fgn.tv~~2F19504828~~2FEP027864860121,imi:9e445bd35a9dbc131687f9f942cba74fbe519abe", + "mergedId": "14595447|nl", + "minimumAge": 9, + "minimumAgeWarnings": [ + "2" + ], + "replayTVMinAge": 9, + "seriesPremiereAirings": true, + "startTime": 1780149720, + "title": "Idioten op de weg" + }, + { + "audioLanguages": [ + { + "lang": "nl" + } + ], + "endTime": 1780153380, + "id": "crid:~~2F~~2Fgn.tv~~2F33027304~~2FEP063727610006,imi:3b6dde66a9ee91d21a8f953f1de0c7f73521e7e1", + "mergedId": "32785202|nl", + "minimumAge": 0, + "replayTVMinAge": 9, + "seriesPremiereAirings": true, + "startTime": 1780151520, + "title": "Riders TV" + }, + { + "audioLanguages": [ + { + "lang": "nl" + } + ], + "endTime": 1780155300, + "id": "crid:~~2F~~2Fgn.tv~~2F19504830~~2FEP027864860122,imi:acae3c47ef7a2724e162582f0649f186477b064c", + "mergedId": "14595447|nl", + "minimumAge": 9, + "minimumAgeWarnings": [ + "2" + ], + "replayTVMinAge": 9, + "seriesPremiereAirings": true, + "startTime": 1780153380, + "title": "Idioten op de weg" + }, + { + "audioLanguages": [ + { + "lang": "nl" + } + ], + "endTime": 1780157100, + "id": "crid:~~2F~~2Fgn.tv~~2F33027311~~2FEP027840560190,imi:be83b8c333b96c800cf0b6fbf1111c4b7332f608", + "mergedId": "14582265|nl", + "minimumAge": 0, + "replayTVMinAge": 16, + "seriesPremiereAirings": true, + "startTime": 1780155300, + "title": "RTL Autowereld" + }, + { + "audioLanguages": [ + { + "lang": "nl" + } + ], + "endTime": 1780158840, + "id": "crid:~~2F~~2Fgn.tv~~2F8830989~~2FEP028429430054,imi:ccb25b504c55a632a1e4d8c700e7159e3a9eff84", + "mergedId": "7959226|nl", + "minimumAge": 6, + "minimumAgeWarnings": [ + "1", + "5" + ], + "replayTVMinAge": 16, + "seriesName": "Drop the Bomb", + "seriesPremiereAirings": true, + "startTime": 1780157100, + "title": "Hardcore Pawn" + }, + { + "audioLanguages": [ + { + "lang": "nl" + } + ], + "endTime": 1780160460, + "id": "crid:~~2F~~2Fgn.tv~~2F8831115~~2FEP028429430055,imi:5b2329b3a564ff3be25a731ea80868b4c7b87ca6", + "mergedId": "7959226|nl", + "minimumAge": 6, + "minimumAgeWarnings": [ + "1", + "5" + ], + "replayTVMinAge": 16, + "seriesName": "Total Meltdown", + "seriesPremiereAirings": true, + "startTime": 1780158840, + "title": "Hardcore Pawn" + }, + { + "audioLanguages": [ + { + "lang": "nl" + } + ], + "endTime": 1780162200, + "id": "crid:~~2F~~2Fgn.tv~~2F8876420~~2FEP028429430063,imi:bebfb614892a9efafa58fc001298eecf573a316b", + "mergedId": "7959226|nl", + "minimumAge": 6, + "minimumAgeWarnings": [ + "1", + "5" + ], + "replayTVMinAge": 16, + "seriesName": "Aftermath", + "seriesPremiereAirings": true, + "startTime": 1780160460, + "title": "Hardcore Pawn" + }, + { + "audioLanguages": [ + { + "lang": "nl" + } + ], + "endTime": 1780164000, + "id": "crid:~~2F~~2Fgn.tv~~2F8876590~~2FEP028429430062,imi:f31b6aa35661d2bb52de2d22a0000259c8200450", + "mergedId": "7959226|nl", + "minimumAge": 6, + "minimumAgeWarnings": [ + "1", + "5" + ], + "replayTVMinAge": 16, + "seriesName": "Final Decision", + "seriesPremiereAirings": true, + "startTime": 1780162200, + "title": "Hardcore Pawn" } - ], - "time": 1734436800 + ] + } + ], + "time": 1780142400 } \ No newline at end of file diff --git a/sites/ziggogo.tv/__data__/content18.json b/sites/ziggogo.tv/__data__/content18.json index 6d2569a1f..b4e1d3ea2 100644 --- a/sites/ziggogo.tv/__data__/content18.json +++ b/sites/ziggogo.tv/__data__/content18.json @@ -1,167 +1,83 @@ { - "duration": 21600, - "entries": [ + "duration": 21600, + "entries": [ + { + "channelId": "NL_000007_019181", + "events": [ { - "channelId": "NL_000001_019401", - "events": [ - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734458700, - "id": "crid:~~2F~~2Fgn.tv~~2F28844566~~2FEP027607161611,imi:a235382a2fb37bc84737285ac486fa24c650464f", - "mergedId": "663871|nl", - "minimumAge": 0, - "premiere": true, - "replayTVMinAge": 0, - "seriesPremiereAirings": true, - "startTime": 1734456600, - "title": "EenVandaag" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734462000, - "id": "crid:~~2F~~2Fgn.tv~~2F28728923~~2FEP052475130062,imi:3566a45b6af153b6932f1075ec5778bebcdc1a27", - "mergedId": "28047018|nl", - "premiere": true, - "replayTVMinAge": 0, - "seriesPremiereAirings": true, - "startTime": 1734458700, - "title": "Eva" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734464100, - "id": "crid:~~2F~~2Fgn.tv~~2F19260669~~2FSH037245330000~~2F333413702,imi:f2c956424007a5d446ac7300bf5028c7c18c4b3e", - "isPlaceHolder": true, - "mergedId": "19260669|nl", - "minimumAge": 0, - "replayTVMinAge": 0, - "startTime": 1734462000, - "title": "NOS Journaal 20.00 uur" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734467100, - "id": "crid:~~2F~~2Fgn.tv~~2F28846901~~2FEP021777850289,imi:a08ac9acbb7f8b98539b389a51103163ba34b001", - "mergedId": "733844|nl", - "minimumAge": 0, - "premiere": true, - "replayTVMinAge": 0, - "seriesName": "Laura & Couzijn - Duitsland", - "seriesPremiereAirings": true, - "startTime": 1734464100, - "title": "Ik Vertrek" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734469800, - "id": "crid:~~2F~~2Fgn.tv~~2F28845033~~2FEP054096370002,imi:7b1291d05a645e87e491b1e737681931638e4cee", - "mergedId": "28794658|nl", - "minimumAge": 0, - "premiere": true, - "replayTVMinAge": 0, - "seriesPremiereAirings": true, - "startTime": 1734467100, - "title": "Kerst met de Bauers" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734473400, - "id": "crid:~~2F~~2Fgn.tv~~2F28728830~~2FEP052397600067,imi:d988334f682dca1b90a425264e4183dce62fd7db", - "mergedId": "28002368|nl", - "premiere": true, - "replayTVMinAge": 0, - "seriesPremiereAirings": true, - "startTime": 1734469800, - "title": "Bar Laat" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734474600, - "id": "crid:~~2F~~2Fgn.tv~~2F19262235~~2FSH037248380000~~2F333413706,imi:4c616bb8a86401c0eed4ced73ea8b8e3e3e1ba4f", - "isPlaceHolder": true, - "mergedId": "19262235|nl", - "replayTVMinAge": 9, - "startTime": 1734473400, - "title": "NOS Journaal Laat" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734475200, - "hasReplayTV": false, - "hasReplayTVOTT": false, - "hasStartOver": false, - "id": "crid:~~2F~~2Fgn.tv~~2F28847044~~2FEP052765240017,imi:33d5c0269a23d5079edb9c3522a491f49567f7d7", - "mergedId": "28198260|nl", - "minimumAge": 9, - "premiere": true, - "replayTVMinAge": 9, - "seriesPremiereAirings": true, - "startTime": 1734474600, - "title": "Opsporing Verzocht in 1 minuut" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734478500, - "id": "crid:~~2F~~2Fgn.tv~~2F28728830~~2FEP052397600067,imi:213300a0a994a32af216d795c394f1de7a214256", - "mergedId": "28002368|nl", - "premiere": true, - "replayTVMinAge": 9, - "seriesPremiereAirings": true, - "startTime": 1734475200, - "title": "Bar Laat" - }, - { - "audioLanguages": [ - { - "lang": "nl" - } - ], - "endTime": 1734482100, - "id": "crid:~~2F~~2Fgn.tv~~2F28728830~~2FEP052397600067,imi:0bf216c04ca985f2ddea6a077cd36b2e19513b27", - "mergedId": "28002368|nl", - "replayTVMinAge": 0, - "seriesPremiereAirings": true, - "startTime": 1734478500, - "title": "Bar Laat" - } - ] + "audioLanguages": [ + { + "lang": "nl" + } + ], + "endTime": 1780171560, + "id": "crid:~~2F~~2Fgn.tv~~2F15653159~~2FMV011684920000,imi:5792d84cbfef05fb085335ae41c43811c2698eca", + "mergedId": "15653159|nl", + "minimumAge": 16, + "minimumAgeWarnings": [ + "5", + "2" + ], + "replayTVMinAge": 16, + "startTime": 1780164000, + "title": "De Lift" + }, + { + "audioLanguages": [ + { + "lang": "nl" + } + ], + "endTime": 1780181040, + "hasReplayTV": false, + "hasReplayTVOTT": false, + "hasStartOver": false, + "id": "crid:~~2F~~2Fgn.tv~~2F10549100~~2FMV010384040000,imi:4132290d496719dc560c37b32320f0608384a8a9", + "mergedId": "10549100|nl", + "minimumAge": 16, + "minimumAgeWarnings": [ + "1", + "5", + "6", + "4" + ], + "replayTVMinAge": 16, + "startTime": 1780171560, + "title": "The Equalizer" + }, + { + "audioLanguages": [ + { + "lang": "nl" + } + ], + "endTime": 1780184340, + "id": "crid:~~2F~~2Fgn.tv~~2F18311595~~2FEP027840300446,imi:dc898b6240c51d7bb7aa0c13d38409e025ce0a71", + "mergedId": "3565439|nl", + "minimumAge": 0, + "replayTVMinAge": 16, + "seriesName": "Mystery Safe", + "seriesPremiereAirings": true, + "startTime": 1780181040, + "title": "Pawn Stars" + }, + { + "audioLanguages": [ + { + "lang": "nl" + } + ], + "endTime": 1780186200, + "id": "crid:~~2F~~2Fgn.tv~~2F14554329~~2FSH027788870000~~2F492767880,imi:6541add8e166432bfb584db6d3d6ca477aea0f43", + "isPlaceHolder": true, + "mergedId": "14554329|nl", + "minimumAge": 0, + "replayTVMinAge": 0, + "startTime": 1780184340, + "title": "Tommy Teleshopping" } - ], - "time": 1734458400 + ] + } + ], + "time": 1780164000 } \ No newline at end of file diff --git a/sites/ziggogo.tv/__data__/program01.json b/sites/ziggogo.tv/__data__/program01.json index bbc6d55fe..b86a57c7b 100644 --- a/sites/ziggogo.tv/__data__/program01.json +++ b/sites/ziggogo.tv/__data__/program01.json @@ -1,45 +1,28 @@ { - "imageVersion": "y9Fnvg", - "eventId": "crid:~~2F~~2Fgn.tv~~2F28844562~~2FEP027607161610,imi:1d49feeb2ef4e3db0bde030e7cf6e55e06d56fed", - "channelId": "NL_000001_019401", - "title": "EenVandaag", - "startTime": 1734394200, - "endTime": 1734395700, - "mergedId": "663871|nl", - "minimumAge": "0", - "seriesId": "crid:~~2F~~2Fgn.tv~~2F26258514~~2FSH027607160000", - "parentSeriesId": "crid:~~2F~~2Fbds.tv~~2F36652653", - "seasonNumber": 11, - "episodeNumber": 300, - "shortDescription": "Op pad met HTS-rebellen in Syrië. Nieuwe aanpak tegen te veel zitten. VS heeft Tiktok-ban bijna rond. Wat is de rol van Nederland in de onderhandeling rondom Oekraïne?", - "longDescription": "Op pad met HTS-rebellen in Syrië. Nieuwe aanpak tegen te veel zitten. VS heeft Tiktok-ban bijna rond. Wat is de rol van Nederland in de onderhandeling rondom Oekraïne?", - "actors": [ - "Rik van de Westelaken", - "Roos Moggré", - "Pieter Jan Hagens", - "Toine van Peperstraten", - "Charlotte Nijs", - "Hila Noorzai", - "Rob Hadders", - "Joyce Boverhuis" - ], - "audioLanguages": [ - { - "lang": "nl" - } - ], - "captionLanguages": [ - { - "lang": "nl" - } - ], - "productionDate": "2024", - "countryOfOrigin": "NL", - "genres": [ - "Nieuws", - "Actualiteit" - ], - "actualStartOffset": -47, - "actualEndOffset": 14, - "seriesPremiereAirings": true + "eventId": "crid:~~2F~~2Fgn.tv~~2F32036579~~2FSH062278610000~~2F492767862,imi:25ee264da729e66ee9ab4cb70d30ab2d76b661f4", + "channelId": "NL_000007_019181", + "title": "Telvero", + "startTime": 1780113600, + "endTime": 1780138980, + "mergedId": "32036579|nl", + "minimumAge": "0", + "replayTvMinAge": 9, + "seriesId": "crid:~~2F~~2Fgn.tv~~2F123456789~~2FSH062278610000", + "parentSeriesId": "crid:~~2F~~2Fgn.tv~~2F32036579~~2FSH062278610000", + "seasonNumber": 78610000, + "episodeNumber": 492767862, + "shortDescription": "Homeshoppingprogramma waarin de kijker via de telefoon allerlei producten kan aanschaffen.", + "longDescription": "Homeshoppingprogramma waarin de kijker via de telefoon allerlei producten kan aanschaffen.", + "audioLanguages": [ + { + "lang": "nl" + } + ], + "countryOfOrigin": "NL", + "genres": [ + "Consumentenprogramma's", + "Shoppen" + ], + "imageVersion": "AAAAAA", + "isPlaceholder": true } \ No newline at end of file diff --git a/sites/ziggogo.tv/__data__/program02.json b/sites/ziggogo.tv/__data__/program02.json index e1956380b..64256c95f 100644 --- a/sites/ziggogo.tv/__data__/program02.json +++ b/sites/ziggogo.tv/__data__/program02.json @@ -1,46 +1,40 @@ { - "imageVersion": "wIUIRg", - "eventId": "crid:~~2F~~2Fgn.tv~~2F28842707~~2FEP022675661065,imi:33138a61bfa639696f386a5b8da9052e98cffdf8", - "channelId": "NL_000001_019401", - "title": "Goedemorgen Nederland", - "startTime": 1734415800, - "endTime": 1734417000, - "mergedId": "12128152|nl", - "minimumAge": "0", - "seriesId": "crid:~~2F~~2Fgn.tv~~2F28036241~~2FSH022675660000", - "parentSeriesId": "crid:~~2F~~2Fgn.tv~~2F12128152~~2FSH022675660000", - "seasonNumber": 9, - "episodeNumber": 77, - "shortDescription": "Te gast: politiek verslaggever omroep WNL Tessa van Viegen, Tweede Kamerlid D66 Jan Paternotte, ochtendmens Sjuul Paradijs, zanger Jan Smit en stylist Mari van de Ven.", - "longDescription": "Te gast: politiek verslaggever omroep WNL Tessa van Viegen, Tweede Kamerlid D66 Jan Paternotte, ochtendmens Sjuul Paradijs, zanger Jan Smit en stylist Mari van de Ven.", - "actors": [ - "Lisette Wellens", - "Welmoed Sijtsma", - "Frank Van Leeuwen", - "Maaike Timmerman", - "Jill Bleiksloot", - "Tanja Kok", - "Nejifi Ramirez" - ], - "audioLanguages": [ - { - "lang": "nl" - } - ], - "captionLanguages": [ - { - "lang": "nl" - } - ], - "productionDate": "2024", - "countryOfOrigin": "NL", - "genres": [ - "Samenleving", - "Nieuws" - ], - "actualStartOffset": 43, - "actualEndOffset": -5, - "seriesPremiereAirings": true, - "premiere": true, - "isLive": true + "eventId": "crid:~~2F~~2Fgn.tv~~2F18311595~~2FEP027840300446,imi:dc898b6240c51d7bb7aa0c13d38409e025ce0a71", + "channelId": "NL_000007_019181", + "title": "Pawn Stars", + "startTime": 1780181040, + "endTime": 1780184340, + "mergedId": "3565439|nl", + "minimumAge": "0", + "replayTvMinAge": 16, + "seriesId": "crid:~~2F~~2Fgn.tv~~2F17735169~~2FSH027840300000", + "parentSeriesId": "crid:~~2F~~2Fbds.tv~~2F22440427", + "episodeName": "Mystery Safe", + "seasonNumber": 17, + "episodeNumber": 24, + "shortDescription": "Rick en Chum onderhandelen over een Superman-pyjama. Rick tikt een vintage industriële snijmachine op de kop. Chum roept de hulp in van Alex als hij een zeldzaam jasje uit de Tweede Wereldoorlog tegenkomt.", + "longDescription": "Rick en Chum onderhandelen over een Superman-pyjama. Rick tikt een vintage industriële snijmachine op de kop. Chum roept de hulp in van Alex als hij een zeldzaam jasje uit de Tweede Wereldoorlog tegenkomt.", + "actors": [ + "Corey Harrison", + "Rick Harrison", + "Austin Chumlee Russell" + ], + "producers": [ + "Mary Donahue", + "David McKillop", + "Brent Montgomery" + ], + "audioLanguages": [ + { + "lang": "nl" + } + ], + "productionDate": "2019", + "countryOfOrigin": "US", + "genres": [ + "Reality", + "Veiling" + ], + "imageVersion": "3bvayw", + "seriesPremiereAirings": true } \ No newline at end of file diff --git a/sites/ziggogo.tv/__data__/program03.json b/sites/ziggogo.tv/__data__/program03.json deleted file mode 100644 index 1b249078b..000000000 --- a/sites/ziggogo.tv/__data__/program03.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "imageVersion": "HPixeQ", - "eventId": "crid:~~2F~~2Fgn.tv~~2F28728829~~2FEP052397600066,imi:34a0b026912de96e3546b15ad2983070a250dfd5", - "channelId": "NL_000001_019401", - "title": "Bar Laat", - "startTime": 1734447300, - "endTime": 1734451080, - "mergedId": "28002368|nl", - "minimumAge": "9", - "replayTvMinAge": 9, - "seriesId": "crid:~~2F~~2Fgn.tv~~2F28002372~~2FSH052397600000", - "parentSeriesId": "crid:~~2F~~2Fgn.tv~~2F28002368~~2FSH052397600000", - "seasonNumber": 1, - "episodeNumber": 65, - "shortDescription": "Bij het Rijnstate Ziekenhuis zijn opnieuw enorme misstanden aan het licht gekomen rond spermadonatie. KRO-NCRV maakte er een docuserie over. Maker Annemieke Ruggenberg schuift aan samen met zaaddonor Peter en donorkinderen Roos en Maria.", - "longDescription": "Bij het Rijnstate Ziekenhuis zijn opnieuw enorme misstanden aan het licht gekomen rond spermadonatie. KRO-NCRV maakte er een docuserie over. Maker Annemieke Ruggenberg schuift aan samen met zaaddonor Peter en donorkinderen Roos en Maria.", - "actors": [ - "Sophie Hilbrand", - "Jeroen Pauw", - "Tim de Wit" - ], - "audioLanguages": [ - { - "lang": "nl" - } - ], - "captionLanguages": [ - { - "lang": "nl" - } - ], - "productionDate": "2024", - "countryOfOrigin": "NL", - "genres": [ - "Talkshow" - ], - "actualStartOffset": 46, - "actualEndOffset": -397, - "seriesPremiereAirings": true -} \ No newline at end of file diff --git a/sites/ziggogo.tv/ziggogo.tv.channels.xml b/sites/ziggogo.tv/ziggogo.tv.channels.xml index e7446a4eb..958ae2a55 100644 --- a/sites/ziggogo.tv/ziggogo.tv.channels.xml +++ b/sites/ziggogo.tv/ziggogo.tv.channels.xml @@ -1,159 +1,163 @@ - NPO 1 - NPO 2 - NPO 3 - RTL 4 - RTL 5 - SBS6 - RTL 7 - Veronica / Disney Jr. - NET5 - RTL 8 - STAR Channel - RTL Z - Ziggo TV - Ziggo Sport - Comedy Central - Paramount Network - Discovery - National Geographic - SBS9 - Eurosport 1 - TLC - BBC NL - MTV - 24Kitchen - XITE - Disney Channel - HISTORY - Nickelodeon - ONS - VRT 1 - VRT Canvas - Ketnet - Das Erste - ZDF - WDR + Arte + ARD NDR RTL - SAT.1 + Sat. 1 + ZDF + Secret Circle + 2M + Aljazeera English + BBC News BBC One BBC Two - TV5 Monde - arte + CNBC Europe + CNN + Colors TV + DanceTelevision + Euronews + Fashion TV HD + Moonbug + MyZen TV + Penthouse Gold + Playboy TV Europe + Shorts TV + Sony TV Asia + Sony Max + Utsav Gold + Utsav Plus + WDR + X-MO + Zee Cinema + Zee TV + Zing TVE Mediaset Italia - RTV-7 - TRT Türk - 2M - Film1 Premiere - Film1 Action - Film1 Family - Film1 Drama - RTL Crime - Crime+Investigation - Investigation Discovery - Shorts TV - E! - NPO 1 extra - OUTtv - Fashion TV - MyZen TV - Horse & Country TV - RTL Lounge - Discovery Science - National Geographic WILD + Ziggo TV + Curiosity Channel + Dreamworks + Film1 Pakket + Ziggo Sport Totaal + ESPN Compleet + Viaplay + Hindi Pakket + Turks Pakket + Ziggo TV + 24Kitchen + 100% NL TV + 192TV Animal Planet - NPO 2 extra - Family7 - Nicktoons - Nick Music - Nick Jr. - Cartoon Network - Cartoonito + AT5 BabyTV + BBC NL + Brazzers TV + Cartoonito + Cartoon Network + Comedy Central + Crime+Investigation + Discovery + Discovery Science + Disney Channel + Dorcel TV + ducktv + E! + ESPN 2 + ESPN 3 + ESPN 4 + ESPN + ESPN + Eurosport 1 + Eurosport 2 + Family7 + Film1 Action + Film1 Drama + Film1 Family + Film1 Premiere + FilmBox + HGTV + HISTORY + Horse & Country TV + ID + Ketnet + L1 TV + Love Nature + Meiden van Holland Hard + Mezzo + MTV + National Geographic + National Geographic WILD + Net5 + NH + Nickelodeon + Nick Jr. + Nicktoons + njam! + NPO 1 + NPO 1 Extra + NPO 2 + NPO 2 Extra + NPO 3 + NPO Politiek en Nieuws + Omroep Brabant + Omroep Flevoland + Omroep Gelderland + RTV West + Omroep Zeeland + Omrop Fryslân + ONS + OUTTV + Paramount Network + PassieXXX + RTL 4 + RTL 5 + RTL 7 + RTL 8 + RTL Crime + RTL Lounge RTL Telekids - Ziggo Sport + RTL Z + RTV7 + RTV Drenthe + RTV Noord + Oost + RTV Rijnmond + RTV Utrecht + SBS6 + SBS9 + SLAM!TV + STAR Channel + Stingray Classica + Stingray DJAZZ + Stingray LiteTV + TLC + TOP40 TV + TV5Monde + TV538 + TV Oranje + Veronica / Disney Jr. + Viaplay TV + Viaplay TV + Viaplay TV+ + VRT 1 + VRT CANVAS + XITE Ziggo Sport 2 Ziggo Sport 3 Ziggo Sport 4 Ziggo Sport 5 Ziggo Sport 6 - Eurosport 2 - ESPN - ESPN 2 - ESPN 3 - ESPN 4 - NPO Politiek en Nieuws - CNN - BBC News - Euronews - Aljazeera English - CNBC Europe - TV 538 - DanceTelevision - SLAM! TV - Stingray LiteTV - MTV 80s - Stingray Classica - Mezzo - Stingray DJAZZ - TV Oranje - 100% NL TV - 192TV - RTV Noord - Omrop Fryslân - RTV Drenthe - RTV Oost - Omroep Gelderland - Omroep Flevoland - NH - RTV Utrecht - Omroep West - RTV Rijnmond - Omroep Zeeland - Omroep Brabant - L1 TV - AT5 - Utsav Plus - Utsav Gold - Zee TV - Zee Cinema - Zing - Sony Entertainment Television Asia - ShowTürk + Ziggo Sport + Ziggo Sport + Ziggo Sport Extra + ATV Avrupa Euro D Eurostar Habertürk - TV8 Int. + ShowTürk TRT Çocuk - ATV Avrupa TRT Müzik - Secret Circle - Penthouse Gold - PassieXXX - Meiden van Holland Hard - X-MO - Love Nature + TRT Türk + TV8 Int. Nickelodeon Ukraine - FilmBox - njam! - ducktv - Curiosity Channel - Playboy TV Europe - DreamWorks - HGTV - Brazzers TV - Dorcel TV - Moonbug - Top 40 TV - Viaplay TV - Viaplay TV+ - Ziggo Sport Extra - Sony Max - Colors TV - ESPN - Viaplay TV - Ziggo TV diff --git a/sites/ziggogo.tv/ziggogo.tv.config.js b/sites/ziggogo.tv/ziggogo.tv.config.js index 70148cb9d..be48eee07 100644 --- a/sites/ziggogo.tv/ziggogo.tv.config.js +++ b/sites/ziggogo.tv/ziggogo.tv.config.js @@ -1,9 +1,11 @@ const dayjs = require('dayjs') const utc = require('dayjs/plugin/utc') const doFetch = require('@ntlab/sfetch') -const uniqBy = require('lodash.uniqby') dayjs.extend(utc) +doFetch.setCheckResult(false) + +const caches = {} module.exports = { site: 'ziggogo.tv', @@ -13,62 +15,72 @@ module.exports = { ttl: 24 * 60 * 60 * 1000 // 1 day } }, - url({ date, segment = 0 }) { - return `https://staticqbr-prod-nl.gnp.cloud.ziggogo.tv/eng/web/epg-service-lite/nl/en/events/segments/${date.format( - 'YYYYMMDD' - )}${segment.toString().padStart(2, '0')}0000` + url({ date }) { + return segmentUrl(date) }, async parser({ content, channel, date }) { const programs = [] if (!content) return [] const parsed = typeof content === 'string' ? JSON.parse(content) : content if (!Array.isArray(parsed.entries)) return [] - const entries = parsed.entries - // fetch other segments - let segments = [ - module.exports.url({ date, segment: 6 }), - module.exports.url({ date, segment: 12 }), - module.exports.url({ date, segment: 18 }) - ] - await doFetch(segments, (url, res) => { - if (Array.isArray(res.entries)) { - entries.push(...res.entries) + const events = [] + const f = entries => { + entries + .filter(entry => entry.channelId === channel.site_id) + .forEach(entry => { + if (Array.isArray(entry.events)) { + entry.events.forEach(event => { + if (!events.find(ev => ev.event.id === event.id)) { + events.push({ + url: + `https://spark-prod-nl.gnp.cloud.ziggogo.tv/eng/web/linear-service/v2/replayEvent/${event.id}?returnLinearContent=true&forceLinearResponse=true&language=nl`, + event + }) + } + }) + } + }) + } + f(parsed.entries) + + // fetch other segments or use cache if exist + const segments = [] + for (const segment of [6, 12, 18]) { + const url = segmentUrl(date, segment) + if (caches[url] !== undefined) { + f(caches[url]) + } else { + segments.push(url) } - }) - - let events = [] - entries - .filter(item => item.channelId === channel.site_id) - .forEach(item => { - if (!Array.isArray(item.events)) return - events.push( - ...item.events.map(event => ({ - startTime: event.startTime, - url: `https://spark-prod-nl.gnp.cloud.ziggogo.tv/eng/web/linear-service/v2/replayEvent/${event.id}?returnLinearContent=true&forceLinearResponse=true&language=nl` - })) - ) + } + if (segments.length) { + await doFetch(segments, (url, res) => { + if (Array.isArray(res?.entries)) { + caches[url] = res.entries + f(res.entries) + } }) - - events = uniqBy(events, 'startTime') + } // fetch detailed guide if (events.length) { - await doFetch(events, (url, res) => { + await doFetch(events, (queue, res) => { + const event = res ? res : queue.event programs.push({ - title: res.title, - subTitle: res.episodeName, - description: res.longDescription ? res.longDescription : res.shortDescription, - category: res.genres, - season: res.seasonNumber, - episode: res.episodeNumber, - country: res.countryOfOrigin, - actor: res.actors, - director: res.directors, - producer: res.producers, - date: res.productionDate, - start: dayjs.utc(res.startTime * 1000), - stop: dayjs.utc(res.endTime * 1000) + title: event.title, + subTitle: event.episodeName, + description: event.longDescription ? event.longDescription : event.shortDescription, + category: event.genres, + season: event.seasonNumber, + episode: event.episodeNumber, + country: event.countryOfOrigin, + actor: event.actors, + director: event.directors, + producer: event.producers, + date: event.productionDate, + start: dayjs.utc(event.startTime * 1000), + stop: dayjs.utc(event.endTime * 1000) }) }) } @@ -102,3 +114,9 @@ module.exports = { return channels } } + +function segmentUrl(date, segment = 0) { + return `https://staticqbr-prod-nl.gnp.cloud.ziggogo.tv/eng/web/epg-service-lite/nl/en/events/segments/${date.format( + 'YYYYMMDD' + )}${segment.toString().padStart(2, '0')}0000` +} diff --git a/sites/ziggogo.tv/ziggogo.tv.test.js b/sites/ziggogo.tv/ziggogo.tv.test.js index cc7b56dcf..381fa71a3 100644 --- a/sites/ziggogo.tv/ziggogo.tv.test.js +++ b/sites/ziggogo.tv/ziggogo.tv.test.js @@ -11,28 +11,26 @@ dayjs.extend(utc) jest.mock('axios') -const date = dayjs.utc('2024-12-17', 'YYYY-MM-DD').startOf('d') +const date = dayjs.utc('2026-05-30').startOf('d') const channel = { - site_id: 'NL_000001_019401', - xmltv_id: 'NPO1.nl' + site_id: 'NL_000007_019181', + xmltv_id: 'RTL7.nl@SD' } axios.get.mockImplementation(url => { const urls = { - 'https://staticqbr-prod-nl.gnp.cloud.ziggogo.tv/eng/web/epg-service-lite/nl/en/events/segments/20241217000000': + 'https://staticqbr-prod-nl.gnp.cloud.ziggogo.tv/eng/web/epg-service-lite/nl/en/events/segments/20260530000000': 'content00.json', - 'https://staticqbr-prod-nl.gnp.cloud.ziggogo.tv/eng/web/epg-service-lite/nl/en/events/segments/20241217060000': + 'https://staticqbr-prod-nl.gnp.cloud.ziggogo.tv/eng/web/epg-service-lite/nl/en/events/segments/20260530060000': 'content06.json', - 'https://staticqbr-prod-nl.gnp.cloud.ziggogo.tv/eng/web/epg-service-lite/nl/en/events/segments/20241217120000': + 'https://staticqbr-prod-nl.gnp.cloud.ziggogo.tv/eng/web/epg-service-lite/nl/en/events/segments/20260530120000': 'content12.json', - 'https://staticqbr-prod-nl.gnp.cloud.ziggogo.tv/eng/web/epg-service-lite/nl/en/events/segments/20241217180000': + 'https://staticqbr-prod-nl.gnp.cloud.ziggogo.tv/eng/web/epg-service-lite/nl/en/events/segments/20260530180000': 'content18.json', - 'https://spark-prod-nl.gnp.cloud.ziggogo.tv/eng/web/linear-service/v2/replayEvent/crid:~~2F~~2Fgn.tv~~2F28844562~~2FEP027607161610,imi:1d49feeb2ef4e3db0bde030e7cf6e55e06d56fed?returnLinearContent=true&forceLinearResponse=true&language=nl': + 'https://spark-prod-nl.gnp.cloud.ziggogo.tv/eng/web/linear-service/v2/replayEvent/crid:~~2F~~2Fgn.tv~~2F32036579~~2FSH062278610000~~2F492767862,imi:25ee264da729e66ee9ab4cb70d30ab2d76b661f4?returnLinearContent=true&forceLinearResponse=true&language=nl': 'program01.json', - 'https://spark-prod-nl.gnp.cloud.ziggogo.tv/eng/web/linear-service/v2/replayEvent/crid:~~2F~~2Fgn.tv~~2F28842707~~2FEP022675661065,imi:33138a61bfa639696f386a5b8da9052e98cffdf8?returnLinearContent=true&forceLinearResponse=true&language=nl': - 'program02.json', - 'https://spark-prod-nl.gnp.cloud.ziggogo.tv/eng/web/linear-service/v2/replayEvent/crid:~~2F~~2Fgn.tv~~2F28728829~~2FEP052397600066,imi:34a0b026912de96e3546b15ad2983070a250dfd5?returnLinearContent=true&forceLinearResponse=true&language=nl': - 'program03.json' + 'https://spark-prod-nl.gnp.cloud.ziggogo.tv/eng/web/linear-service/v2/replayEvent/crid:~~2F~~2Fgn.tv~~2F18311595~~2FEP027840300446,imi:dc898b6240c51d7bb7aa0c13d38409e025ce0a71?returnLinearContent=true&forceLinearResponse=true&language=nl': + 'program02.json' } let data = '' if (urls[url] !== undefined) { @@ -46,7 +44,7 @@ axios.get.mockImplementation(url => { it('can generate valid url', () => { expect(url({ date })).toBe( - 'https://staticqbr-prod-nl.gnp.cloud.ziggogo.tv/eng/web/epg-service-lite/nl/en/events/segments/20241217000000' + 'https://staticqbr-prod-nl.gnp.cloud.ziggogo.tv/eng/web/epg-service-lite/nl/en/events/segments/20260530000000' ) }) @@ -61,37 +59,28 @@ it('can parse response', async () => { return p }) - expect(result.length).toBe(3) - expect(result[0]).toMatchObject({ - start: '2024-12-17T00:10:00.000Z', - stop: '2024-12-17T00:35:00.000Z', - title: 'EenVandaag', - description: - 'Op pad met HTS-rebellen in Syrië. Nieuwe aanpak tegen te veel zitten. VS heeft Tiktok-ban bijna rond. Wat is de rol van Nederland in de onderhandeling rondom Oekraïne?', - category: ['Nieuws', 'Actualiteit'], - season: 11, - episode: 300, - actor: [ - 'Rik van de Westelaken', - 'Roos Moggré', - 'Pieter Jan Hagens', - 'Toine van Peperstraten', - 'Charlotte Nijs', - 'Hila Noorzai', - 'Rob Hadders', - 'Joyce Boverhuis' - ] - }) + expect(result.length).toBe(21) expect(result[2]).toMatchObject({ - start: '2024-12-17T14:55:00.000Z', - stop: '2024-12-17T15:58:00.000Z', - title: 'Bar Laat', + start: '2026-05-30T04:00:00.000Z', + stop: '2026-05-30T11:03:00.000Z', + title: 'Telvero', description: - 'Bij het Rijnstate Ziekenhuis zijn opnieuw enorme misstanden aan het licht gekomen rond spermadonatie. KRO-NCRV maakte er een docuserie over. Maker Annemieke Ruggenberg schuift aan samen met zaaddonor Peter en donorkinderen Roos en Maria.', - category: ['Talkshow'], - season: 1, - episode: 65, - actor: ['Sophie Hilbrand', 'Jeroen Pauw', 'Tim de Wit'] + 'Homeshoppingprogramma waarin de kijker via de telefoon allerlei producten kan aanschaffen.', + category: ["Consumentenprogramma's", 'Shoppen'], + season: 78610000, + episode: 492767862 + }) + expect(result[19]).toMatchObject({ + start: '2026-05-30T22:44:00.000Z', + stop: '2026-05-30T23:39:00.000Z', + title: 'Pawn Stars', + subTitle: 'Mystery Safe', + description: + 'Rick en Chum onderhandelen over een Superman-pyjama. Rick tikt een vintage industriële snijmachine op de kop. Chum roept de hulp in van Alex als hij een zeldzaam jasje uit de Tweede Wereldoorlog tegenkomt.', + category: ['Reality', 'Veiling'], + season: 17, + episode: 24, + actor: ['Corey Harrison', 'Rick Harrison', 'Austin Chumlee Russell'] }) })