Tracker Regattaselektion verbessert
This commit is contained in:
parent
eb41bdafa4
commit
9b4811a11d
|
@ -270,11 +270,14 @@ class Tracker(Page):
|
||||||
|
|
||||||
# Mögliche Regatten
|
# Mögliche Regatten
|
||||||
self.races = self.appdata.track.hero_get_races()
|
self.races = self.appdata.track.hero_get_races()
|
||||||
|
if len(self.races) == 1:
|
||||||
|
self.raceid = self.races[0]
|
||||||
|
self.menupos = 1
|
||||||
x = 208
|
x = 208
|
||||||
y = 180
|
y = 180
|
||||||
ctx.set_font_size(20)
|
ctx.set_font_size(20)
|
||||||
ctx.move_to(x, y)
|
ctx.move_to(x, y)
|
||||||
ctx.show_text("Regattas")
|
ctx.show_text("Select Regatta")
|
||||||
ctx.set_font_size(16)
|
ctx.set_font_size(16)
|
||||||
y += 4
|
y += 4
|
||||||
if self.menupos > len(self.races):
|
if self.menupos > len(self.races):
|
||||||
|
|
26
tracker.py
26
tracker.py
|
@ -43,9 +43,10 @@ class Tracker():
|
||||||
self.tspos = None # timestamp (hh:ss:mm) as datetime.time
|
self.tspos = None # timestamp (hh:ss:mm) as datetime.time
|
||||||
self.sog = None
|
self.sog = None
|
||||||
|
|
||||||
|
self.hero_orgid = None # Eingestellt in Gerätekonfiguration
|
||||||
self.hero_orgstatus = None
|
self.hero_orgstatus = None
|
||||||
self.hero_racestatus = None # Aktuelle Regatta
|
self.hero_racestatus = None
|
||||||
self.hero_raceid = None
|
self.hero_raceid = None # Aktuelle Regatta
|
||||||
|
|
||||||
# TODO Wirklich alles im Tracker oder ist einiges generisch?
|
# TODO Wirklich alles im Tracker oder ist einiges generisch?
|
||||||
self.boatid = None
|
self.boatid = None
|
||||||
|
@ -100,7 +101,12 @@ class Tracker():
|
||||||
def hero_get_races(self):
|
def hero_get_races(self):
|
||||||
if not self.hero_orgstatus:
|
if not self.hero_orgstatus:
|
||||||
return []
|
return []
|
||||||
return [r for r in self.hero_orgstatus['races']]
|
races = []
|
||||||
|
for r in self.hero_orgstatus['races'].values():
|
||||||
|
if not r['hiderace']:
|
||||||
|
races.append(r['raceid'])
|
||||||
|
return races
|
||||||
|
#return [r for r in self.hero_orgstatus['races']]
|
||||||
|
|
||||||
def mqtt_on_connect(self, client, userdata, flags, rc):
|
def mqtt_on_connect(self, client, userdata, flags, rc):
|
||||||
print(f"MQTT connected with result code {rc}")
|
print(f"MQTT connected with result code {rc}")
|
||||||
|
@ -197,7 +203,15 @@ class Tracker():
|
||||||
def mqtt_tracker(self, cfg, boat, appdata, boatdata):
|
def mqtt_tracker(self, cfg, boat, appdata, boatdata):
|
||||||
print("MQTT tracker enabled")
|
print("MQTT tracker enabled")
|
||||||
self.appdata = appdata
|
self.appdata = appdata
|
||||||
|
self.boatid = cfg['uuid']
|
||||||
|
self.sailno = boat['sailno']
|
||||||
|
self.boatname = boat['name']
|
||||||
|
self.boatclass = boat['class']
|
||||||
|
self.handicap = boat['handicap']
|
||||||
|
self.club = boat['club']
|
||||||
|
self.team = boat['team'] # TODO eher zu Tracker gehörig?
|
||||||
self.trace = cfg['trace']
|
self.trace = cfg['trace']
|
||||||
|
self.hero_orgid = cfg['orgname']
|
||||||
client = mqtt.Client()
|
client = mqtt.Client()
|
||||||
client.on_connect = self.mqtt_on_connect
|
client.on_connect = self.mqtt_on_connect
|
||||||
client.on_message = self.mqtt_on_message
|
client.on_message = self.mqtt_on_message
|
||||||
|
@ -222,10 +236,10 @@ class Tracker():
|
||||||
"lat": 0.0,
|
"lat": 0.0,
|
||||||
"lon": 0.0,
|
"lon": 0.0,
|
||||||
"speed": 0.0,
|
"speed": 0.0,
|
||||||
"age": 500,
|
"age": 500, # letzter Kontakt zum GPS empfänger in ms
|
||||||
# "odo": 1000, # deprecated
|
# "odo": 1000, # deprecated
|
||||||
"bat": 1.0,
|
"bat": 1.0,
|
||||||
"timestamp": "" # ISO8601 Format mit Millisekunden in UTC
|
"timestamp": "" # ISO8601 Format mit Millisekunden in UTC
|
||||||
},
|
},
|
||||||
"boat": {
|
"boat": {
|
||||||
"boatid": cfg['uuid'],
|
"boatid": cfg['uuid'],
|
||||||
|
|
Loading…
Reference in New Issue