NEWS
MQTT mit timestamp
-
Moin
ich bastel hier ja für SmartWatch (BLE) eine Art H-Band (App) Ersatz.
Nun stehe ich vor dem Problem, dass ich den ESP32 ja nicht die ganze Zeit mit mir herum trage, sondern dieser ausliest, sobald ich heimatliche Gefielde erreiche. Es werden also archivierte Daten inkl timestamp übertragen.
Ist jemandem eine (sinnvolle?) Möglichkeit bekannt, wie ich die timestamp in ioB selbst setzen kann? Gerne auf Basis von Blockly, da ich's mit Java nicht so habe.
Ich würde da an sowas denken wie die Daten nicht als Wert (integer/float) zu übertragen, sondern als JSON mit Skript Trigger "IF-json", also, wenn kein Wert (int/float), dann schau nach, ob da ein JSON bestehend aus timestamp und Value ist. Falls ja, setze timestamp gemäß JSON.Zu MQTT v5 (dort ist derartiges wohl unter user_properties vorgesehen) habe ich leider keine Arduino Library gefunden und weiss auch offengestanden nicht, ob der MQTT-Adapter da mitspielen würde.
Ich habe auch schon weitestgehend erfolglos recherchiert, ob es eine passende postgreSQL Library gibt, aber da sieht es auch dünn aus (ich würde ja ein psql MERGE benötigen) und zudem würde dies unnötig Speicherplatz belegen.
Aktuelle befürchte ich fast schon, dass ich über php für das publish gehen muss, wobei ich die nötigen DB informationen im mqtt Bereich hinterlegen könnte, so dass diese nicht extra nochmals heraus gesucht werden müssen.
(psql: ioBroker-Tabelle -> datapoints -> mqtt-datapoint -> type/Nr)Gruss von der Ostsee
Chris -
Aktueller Entwicklungsstand:
Der ESP verbindet sich bei Erreichbarkeit per Bluetooth (BLE) mit der Smartwatch.
Verschiedentliche Einstellungen werden ausgelesen und ggf auch auf einen default Wert aktuallisiert, zB dass ich zH auch Telefonate über die SmartWatch annehme, was ich tagsüber/auswärts nicht mache.Die Kommunikation zum ioBroker vom ESP läuft dann bisher(?) via MQTT (Mosquitto).
Ich mag ja MQTT und nutze es, soweit möglich, für alles!
Werde im Zuge dieses Projektes wohl auch noch einen ESP32 fertig machen, welcher den EQ-3 Thermostat Adapter ersetzen wird. (Diese ESP32c3 Super Mini sind mit 2,20€ echt billig und für kleine Aufgaben ohne viel Speicherbedarf geradezu prädestiniert).Aktuell drösel ich gerade "Health-Records" (Herzschlag, Blutdruck, EKG, MET, Schlaf, Blutzucker,...) auf und dort kommt nun die timestamp ins Spiel, denn ich will ja nicht "bei Zuhause" 20x per MQTT den Wert "jetzt" (aka connect) überschreiben, sondern meine per BLE übertragenen timestamp nutzen.
Gruss von der Ostsee
Chris -