diff --git a/origin/origin_channels.py b/origin/origin_channels.py index 9193273..d30beb5 100644 --- a/origin/origin_channels.py +++ b/origin/origin_channels.py @@ -18,6 +18,10 @@ class OriginChannels(): def get_channels(self): + channel_list = [] + + channel_ids = [] + station_locations = ["national", "abc3340"] station_by_state_opn = self.fhdhr.web.session.get(self.base_station_url) @@ -30,36 +34,38 @@ class OriginChannels(): state_url_req = self.fhdhr.web.session.get(state_url) state_url_json = state_url_req.json() for item in state_url_json["rss"]["channel"]["pagecomponent"]["component"]: - print(item["item"]["media:content"]['sinclair:action_value']) - return [] + stationitem = item["item"]["media:content"]['sinclair:action_value'] + if stationitem not in station_locations: + station_locations.append(stationitem) - chan_list_url = "%s/channels/stirr?station=national" % (self.base_api_url) - chan_list_urlopn = self.fhdhr.web.session.get(chan_list_url) - stirr_chan_list = chan_list_urlopn.json() + for station_item in station_locations: - channel_list = [] - # chanindex = 0 - for channel_dict in stirr_chan_list["channel"]: + chan_list_url = "%s/channels/stirr?station=%s" % (self.base_api_url, station_item) + chan_list_urlopn = self.fhdhr.web.session.get(chan_list_url) + stirr_chan_list = chan_list_urlopn.json() - # chanindex += 1 + for channel_dict in stirr_chan_list["channel"]: - chan_item_url = "%s/status/%s" % (self.base_api_url, str(channel_dict["id"])) - chan_item_urlopn = self.fhdhr.web.session.get(chan_item_url) - stirr_chan_item = chan_item_urlopn.json() + if str(channel_dict["id"]) not in channel_ids: - try: - thumbnail = channel_dict["icon"]["src"].split("?")[0] - except TypeError: - thumbnail = None + chan_item_url = "%s/status/%s" % (self.base_api_url, str(channel_dict["id"])) + chan_item_urlopn = self.fhdhr.web.session.get(chan_item_url) + stirr_chan_item = chan_item_urlopn.json() - clean_station_item = { - "name": stirr_chan_item['rss']["channel"]["title"], - "callsign": channel_dict["display-name"], - # "number": chanindex, - "id": str(channel_dict["id"]), - "thumbnail": thumbnail - } - channel_list.append(clean_station_item) + channel_ids.append(str(channel_dict["id"])) + + try: + thumbnail = channel_dict["icon"]["src"].split("?")[0] + except TypeError: + thumbnail = None + + clean_station_item = { + "name": stirr_chan_item['rss']["channel"]["title"], + "callsign": channel_dict["display-name"], + "id": str(channel_dict["id"]), + "thumbnail": thumbnail + } + channel_list.append(clean_station_item) return channel_list