Gibt es eine maximale Anzahl von Sensoren auf OSeM?


#1

Ich habe mit Bockly ein Programm geschrieben, das 9 Sensor-Werte auf die OSeM schreibt. Das funktioniert auch weitgehend. Leider kommen nur 6-7 Werte auf der Map an. Die 2-3 Werte, die zuletzt hochgeladen werden fehlen regelmäßig in der OSeM. Am Code bzw. den Parametern in Blockly scheint es nicht zu liegen, da ein Vertauschen der Reihenfolge der Werte nur das Problem auf die erneut letzten Werte verschiebt.

Was könnte die Ursache sein?


#2

Hallo @Pitti,

eine maximale Anzahl von Sensoren git es nicht auf der openSenseMap.

Aber es gibt eine Erklärung für deine Beobachtung:
Die openSenseMap API hat ein ratelimit. Das ratelimit ist dazu da, den Traffic zu begrenzen.

Das bedeutet folgendes: du darfst von deiner IP Adresse in einer bestimmten Zeit nur eine bestimmte Anzahl an Requests an die API der openSenseMap schicken.

Der Block zum Hochladen von Messungen in Blockly, schickt jedoch jede Messung einzelnd und nicht als ein Gesamtpaket (1x Request mit mehreren Messungen). Aus diesem Grund kommen nur 6-7 Messungen von deiner Station an.

Grüße,
Matthias


#3

Ok, danke! Was mache ich nun? Den Block seltener schicken?


#4

Das ist eine Möglichkeit.

Oder wir fragen mal @mario, ob man den Request in Blockly noch anders zusammenbauen kann?


#5

Ich habe das Problem für mich vorerst gelöst, indem ich den einen Block mit 10 Werten in zwei mit 5 Werten aufgeteilt habe und diese dann abwechselnd jede Minute abschicke.


#6

Hallo @Pitti,

ich habe mir das ganze schonmal angeschaut und ein Issue https://github.com/sensebox/ardublockly-1/issues/139 erstellt.

Ich werde versuchen den Request zu ändern, dass alle Messwerte in einem Request gesendet werden und nicht pro Messwert einer.

Viele Grüße
Mario


#7

Hallo @mario, darf ich mal vorsichtig nachfragen, wann es damit weitergeht? :grinning:


#8

Hi @Pitti

du hättest auch unvorsichtig schon früher fragen können :slight_smile: . Ich habe nämlich nur ein paar Sachen ausprobiert aber es noch nicht weiter verfolgt, sorry. Ich setzte es mir nochmal auf die ToDo Liste.

Viele Grüße

Mario


#9

Jetzt frage ich halt mal unvorsichtig nach!:grinning: Wie ist der Stand?
Grüße
Pitti


#10

Hi @Pitti,

ich bin dran und fast fertig. Es gibt noch ein paar Kleinigkeiten, die behoben werden müssen. Die Messwerte werden nun gesammelt innerhalb eines Requestes gesendet. So kann man dann zumindest alle 10s ein Paket mit Messwerten senden.

Das ganze hat sich noch ein wenig gezogen, weil wir zusätzlich eine zweite Instanz der openSenseMap für Workshops und Testzwecken veröffentlichen wollen, die komplett ohne Ratelimit funktioniert, allerdings nicht für das permanente Speichern der Daten gedacht ist. Die Datenbank wird sich dann wahrscheinlich alle 24h zurücksetzen.

Beste Grüße
Mario