This commit is contained in:
deathbybandaid 2020-12-16 15:48:14 -05:00
parent 0ce687f3ec
commit d2629544fd

View File

@ -1,4 +1,5 @@
import datetime import datetime
import json
class OriginEPG(): class OriginEPG():
@ -18,41 +19,46 @@ class OriginEPG():
programguide[str(chan_obj.number)] = chan_obj.epgdict programguide[str(chan_obj.number)] = chan_obj.epgdict
epg_opn = self.fhdhr.web.session.get(self.base_epg_url + str(chan_obj.dict["origin_id"])) epg_opn = self.fhdhr.web.session.get(self.base_epg_url + str(chan_obj.dict["origin_id"]))
epg_json = epg_opn.json() try:
epg_json = epg_opn.json()
except json.JSONDecodeError:
epg_json = None
current_channel_id = chan_obj.dict["origin_id"] if epg_json:
for listing in epg_json["programme"]: current_channel_id = chan_obj.dict["origin_id"]
if listing["channel"] != current_channel_id: for listing in epg_json["programme"]:
listing_chan_obj = fhdhr_channels.get_channel_obj("origin_id", listing["channel"])
if str(listing_chan_obj.number) not in list(programguide.keys()):
programguide[str(listing_chan_obj.number)] = listing_chan_obj.epgdict
else:
listing_chan_obj = chan_obj
timestampdict = self.stirr_time_convert(listing["start"], listing["stop"]) if listing["channel"] != current_channel_id:
listing_chan_obj = fhdhr_channels.get_channel_obj("origin_id", listing["channel"])
if str(listing_chan_obj.number) not in list(programguide.keys()):
programguide[str(listing_chan_obj.number)] = listing_chan_obj.epgdict
else:
listing_chan_obj = chan_obj
clean_prog_dict = { timestampdict = self.stirr_time_convert(listing["start"], listing["stop"])
"time_start": timestampdict["start"],
"time_end": timestampdict["end"],
"duration_minutes": timestampdict["duration"],
"title": listing["title"]["value"],
"sub-title": "Unavailable",
"description": listing["desc"]["value"],
"rating": "N/A",
"episodetitle": None,
"releaseyear": None,
"genres": [],
"seasonnumber": None,
"episodenumber": None,
"isnew": False,
"id": "%s_%s" % (chan_obj.dict["origin_id"], timestampdict['start']),
"thumbnail": None
}
if not any((d['time_start'] == clean_prog_dict['time_start'] and d['id'] == clean_prog_dict['id']) for d in programguide[listing_chan_obj.number]["listing"]): clean_prog_dict = {
programguide[str(listing_chan_obj.number)]["listing"].append(clean_prog_dict) "time_start": timestampdict["start"],
"time_end": timestampdict["end"],
"duration_minutes": timestampdict["duration"],
"title": listing["title"]["value"],
"sub-title": "Unavailable",
"description": listing["desc"]["value"],
"rating": "N/A",
"episodetitle": None,
"releaseyear": None,
"genres": [],
"seasonnumber": None,
"episodenumber": None,
"isnew": False,
"id": "%s_%s" % (chan_obj.dict["origin_id"], timestampdict['start']),
"thumbnail": None
}
if not any((d['time_start'] == clean_prog_dict['time_start'] and d['id'] == clean_prog_dict['id']) for d in programguide[listing_chan_obj.number]["listing"]):
programguide[str(listing_chan_obj.number)]["listing"].append(clean_prog_dict)
return programguide return programguide