Figure out the channel parsing logic

master
Mark Veidemanis 2 years ago
parent 731c6a2fd1
commit 6f44921647

@ -302,15 +302,16 @@ def keepChannels(net, listinfo, mean, sigrelay, relay):
# newNums = modules.provision.provisionMultipleRelays(net, needed)
# else:
# newNums = []
flist = [i[0] for i in listinfo]
if len(flist) > max_chans:
max_chans = len(flist) - 1
chosen = sorted(flist, reverse=True, key=lambda x: x[1])[:max_chans]
chosen = [i[0] for i in chosen]
debug(f"keepChannels() {net}: joining {len(chosen)}/{len(flist)} channels")
trace(f"keepChannels() {net}: joining:{chosen}")
populateChans(net, chosen)
listinfo_sort = sorted(listinfo, reverse=True, key=lambda x: x[1])
if len(listinfo_sort) > max_chans:
max_chans = len(listinfo_sort) - 1
flist = [i[0] for i in listinfo_sort]
flist = flist[:max_chans]
debug(f"keepChannels() {net}: joining {len(flist)}/{len(listinfo_sort)} channels")
trace(f"keepChannels() {net}: joining:{flist}")
populateChans(net, flist)
else:
# needed = sigrelay - len(getActiveRelays(net))
# if needed:
@ -318,16 +319,18 @@ def keepChannels(net, listinfo, mean, sigrelay, relay):
# newNums = modules.provision.provisionMultipleRelays(net, needed)
# else:
# newNums = []
siglist = [i for i in listinfo if int(i[1]) > mean]
if len(siglist) > max_chans:
max_chans = len(siglist) - 1
chosen = sorted(siglist, reverse=True, key=lambda x: x[1])[:max_chans]
chosen = [i[0] for i in chosen]
debug(f"keepChannels() {net}: siglist:{siglist} max_chans:{max_chans} len_sig:{len(siglist)}")
debug(f"keepChannels() {net}: joining {len(chosen)}/{len(siglist)} channels")
trace(f"keepChannels() {net}: joining:{chosen}")
populateChans(net, chosen)
listinfo_sort = sorted(listinfo, reverse=True, key=lambda x: x[1])
if len(listinfo_sort) > max_chans:
max_chans = len(listinfo_sort) - 1
siglist = [i[0] for i in listinfo if int(i[1]) > mean]
siglist = siglist[:max_chans]
debug(f"keepChannels() {net}: siglist:{siglist} max_chans:{max_chans} len_sig:{len(listinfo_sort)}")
debug(f"keepChannels() {net}: joining {len(siglist)}/{len(listinfo_sort)} channels")
trace(f"keepChannels() {net}: joining:{siglist}")
populateChans(net, siglist)
notifyJoin(net)

Loading…
Cancel
Save