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.stop_id = stop_id
self.message_pool = [] self.message_pool = []
self.thread = None self.thread = None
self.sent_departures = {} self.port = 1
self.send(lambda: "CLEAR") 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): 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__) self.send(departure.__repr__)
def send(self, msg): def send(self, msg):
@ -91,8 +78,13 @@ class LoraDevice:
payload = { payload = {
"confirmed": True, "confirmed": True,
"data": b64encode(message.encode("utf-8")).decode("ascii"), "data": b64encode(message.encode("utf-8")).decode("ascii"),
"fPort": randint(1, 50), "fPort": self.port,
"reference": "string" "reference": "string"
} }
print(f"{self.id:0>16x} > {message}") print(f"{self.id:0>16x} > {message}")
requests.post(url, verify=False, headers=headers, data=json.dumps(payload)) 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): def update_loop(self):
refetch = 0 refetch = 0
regenerate = 1 regenerate = 1
resend = 1
while True: while True:
if self.ended: if self.ended:
break break
if resend == 0:
for d in self.controller.devices:
d.resend()
if regenerate == 0: if regenerate == 0:
self.controller.generate_token() self.controller.generate_token()
@ -88,7 +83,6 @@ class Main:
refetch = (refetch + 1) % 3 refetch = (refetch + 1) % 3
regenerate = (regenerate + 1) % (6*30) regenerate = (regenerate + 1) % (6*30)
resend = (resend + 1) % 7
sleep(.1) sleep(.1)