Der Abzug vom Server zeigt beides schwarz auf weiß. Erstens: /media/grabbers/devices/1/channels antwortet mit 278 Sendern — unter dem Sammelnamen `DeviceChannel`. Die Hülle kannte nur `Channel` und hat die vollständige Liste als leer verworfen. Zweitens: das Programmraster antwortet, aber nicht auf `type=1`. Die 1 steht bei Plex für Film, und im Programm laufen auch Folgen, Sport und Nachrichten — der Filter hat das Raster geleert. Ohne ihn kommen die Sendungen samt Sendername, Nummer, Logo und Kennung. Das Raster hat jetzt Vorrang vor der Tunerliste, auch wenn beide antworten: nur dort gehören Sender und Programm zusammen, es enthält ohnehin nur die eingeschalteten Sender, und die Tunerliste führt alle 278. Einschalten läuft über die Adresse der laufenden Sendung beim Programmanbieter — Plex behandelt eine laufende Sendung wie einen Film. Die Adresse wird einmal entpackt, bevor sie in die Anfrage geht: sonst kodiert URLComponents ein zweites Mal, und aus %3A wird %253A. Die Tests stehen jetzt auf den echten Antworten aus dem Abzug, nicht auf erfundenen: DeviceChannel mit `name` und `key`, Rastereinträge mit channelVcn, channelID und einer Folge neben einem Film. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
59 lines
1.7 KiB
JSON
59 lines
1.7 KiB
JSON
{
|
|
"MediaContainer": {
|
|
"size": 3,
|
|
"Metadata": [
|
|
{
|
|
"ratingKey": "5f1",
|
|
"key": "/tv.plex.providers.epg.cloud:2/metadata/plex%3A%2F%2Fmovie%2F6254592919e23c64f6c5605d",
|
|
"title": "Endlich Witwer",
|
|
"summary": "Komödie",
|
|
"type": "movie",
|
|
"beginsAt": 1757682000,
|
|
"endsAt": 1757685600,
|
|
"Media": [
|
|
{
|
|
"channelCallSign": "ZDFGERH",
|
|
"channelID": 5,
|
|
"channelIdentifier": "6228f7f2364e02fa5ec8e51c-5fc705f9c8d56d002e06f849",
|
|
"channelThumb": "/library/metadata/5/thumb",
|
|
"channelTitle": "006 ZDFGERH (ZDF HD)",
|
|
"channelVcn": "006",
|
|
"onAir": true
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"ratingKey": "5f2",
|
|
"key": "/tv.plex.providers.epg.cloud:2/metadata/plex%3A%2F%2Fepisode%2Fabc",
|
|
"title": "heute journal",
|
|
"type": "episode",
|
|
"beginsAt": 1757685600,
|
|
"endsAt": 1757687400,
|
|
"Media": [
|
|
{
|
|
"channelID": 5,
|
|
"channelIdentifier": "6228f7f2364e02fa5ec8e51c-5fc705f9c8d56d002e06f849",
|
|
"channelTitle": "006 ZDFGERH (ZDF HD)",
|
|
"channelVcn": "006"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"ratingKey": "5f3",
|
|
"key": "/tv.plex.providers.epg.cloud:2/metadata/plex%3A%2F%2Fshow%2Fxyz",
|
|
"title": "Sport aktuell",
|
|
"beginsAt": 1757682000,
|
|
"endsAt": 1757685600,
|
|
"Media": [
|
|
{
|
|
"channelCallSign": "SRF2",
|
|
"channelID": 12,
|
|
"channelIdentifier": "6228f7f2364e02fa5ec8e51c-12",
|
|
"channelVcn": "002"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
}
|