Removed resending and added delay between every 10 messages

This commit is contained in:
Filip Znachor 2022-12-14 11:45:47 +01:00
parent eaa6374e25
commit 3b2f463253
2 changed files with 7 additions and 21 deletions

View file

@ -54,23 +54,10 @@ class LoraDevice:
self.stop_id = stop_id
self.message_pool = []
self.thread = None
self.sent_departures = {}
self.port = 1
self.send(lambda: "CLEAR")
def resend(self):
to_send = []
for d in self.sent_departures:
if self.sent_departures[d] <= 2:
to_send.append(d)
shuffle(to_send)
for d in to_send[:1]:
self.send_departure(d)
def send_departure(self, departure):
if departure not in self.sent_departures:
self.sent_departures[departure] = 1
else:
self.sent_departures[departure] += 1
self.send(departure.__repr__)
def send(self, msg):
@ -91,8 +78,13 @@ class LoraDevice:
payload = {
"confirmed": True,
"data": b64encode(message.encode("utf-8")).decode("ascii"),
"fPort": randint(1, 50),
"fPort": self.port,
"reference": "string"
}
print(f"{self.id:0>16x} > {message}")
requests.post(url, verify=False, headers=headers, data=json.dumps(payload))
self.port += 1
if self.port == 11:
self.port = 1
sleep(15)

View file

@ -68,16 +68,11 @@ class Main:
def update_loop(self):
refetch = 0
regenerate = 1
resend = 1
while True:
if self.ended:
break
if resend == 0:
for d in self.controller.devices:
d.resend()
if regenerate == 0:
self.controller.generate_token()
@ -88,7 +83,6 @@ class Main:
refetch = (refetch + 1) % 3
regenerate = (regenerate + 1) % (6*30)
resend = (resend + 1) % 7
sleep(.1)