Added ability to query physical layer stats on links

This commit is contained in:
Mark Qvist 2023-10-28 00:05:35 +02:00
parent a451b987aa
commit 798dfb1727
6 changed files with 89 additions and 22 deletions

View file

@ -1109,6 +1109,9 @@ class Reticulum:
if path == "packet_snr":
rpc_connection.send(self.get_packet_snr(call["packet_hash"]))
if path == "packet_q":
rpc_connection.send(self.get_packet_q(call["packet_hash"]))
if "drop" in call:
path = call["drop"]
@ -1371,6 +1374,21 @@ class Reticulum:
return None
def get_packet_q(self, packet_hash):
if self.is_connected_to_shared_instance:
rpc_connection = multiprocessing.connection.Client(self.rpc_addr, authkey=self.rpc_key)
rpc_connection.send({"get": "packet_q", "packet_hash": packet_hash})
response = rpc_connection.recv()
return response
else:
for entry in RNS.Transport.local_client_q_cache:
if entry[0] == packet_hash:
return entry[1]
return None
@staticmethod
def should_use_implicit_proof():
"""