Ok, so what is happening is 113 is getting saved to "move_dict" but we continue searching and then it finds another match at 179 and overwrites the first match. So we need to avoid that happening.For my region 113 named ITV HD
Code:
source = "sat_282_sky_uk"
dest = "cable_uk_virgin"
move_dict = {
'bbc one': {"source": None, "dest": None},
'bbc two': {"source": None, "dest": None},
'itv': {"source": None, "dest": None},
'channel 4': {"source": None, "dest": None},
}
if source in services and dest in services:
for key in move_dict.keys():
for service in range(101, 201) + range(801, 900):
if move_dict[key]["source"] is None and \
service in services[source]["video"] and \
services[source]["video"][service]["service_type"] in DvbScanner.HD_ALLOWED_TYPES and \
services[source]["video"][service]["service_name"].lower().startswith(key) :
move_dict[key]["source"] = service
if move_dict[key]["dest"] is None and \
service in services[dest]["video"] and \
services[dest]["video"][service]["service_type"] in DvbScanner.HD_ALLOWED_TYPES and \
services[dest]["video"][service]["service_name"].lower().startswith(key):
move_dict[key]["dest"] = service
if move_dict[key]["source"] and move_dict[key]["dest"]:
break
for key in move_dict.keys():
if move_dict[key]["source"] and move_dict[key]["dest"]:
customised["video"][move_dict[key]["dest"]] = services[source]["video"][move_dict[key]["source"]]
Last edited: