Startseite
Portal
Mitglieder
FAQ
Hilfe
Ungelesene Beiträge
Heutige Beiträge
Forum Suche
Anmelden
Registrieren
Anmelden:
Willkommen im myGEKKO Forum!
Sind Sie noch kein Mitglied?
Registrieren Sie sich jetzt!
Password speichern
Password vergessen?
Anmelden
Registrieren
Anmelden:
Willkommen im myGEKKO Forum!
Sind Sie noch kein Mitglied?
Registrieren Sie sich jetzt!
Password speichern
Password vergessen?
MENÜ
Startseite
Portal
Mitglieder
Heutige Beiträge
Kalender
Hilfe
myGEKKO - Das Forum
>
Software
>
Programmier Tools
>
Node - RED
>
Anwesenheit, Präsenz über NodeRed und Ping
myGEKKO - Das Forum
>
Software
>
Programmier Tools
>
Node - RED
>
Anwesenheit, Präsenz über NodeRed und Ping
Themabewertung:
0 Bewertung(en) - 0 im Durchschnitt
1
2
3
4
5
Ansichts-Optionen
Anwesenheit, Präsenz über NodeRed und Ping
Bluescreen
Member
Beiträge: 108
Themen: 17
Registriert seit: Nov 2017
Bewertung:
3
#1
08.10.2021, 11:24
(Dieser Beitrag wurde zuletzt bearbeitet: 14.10.2021, 09:07 von
Bluescreen
.)
Hallo zusammen,
da ich ein paar Dinge gerne automatisch bei Abwesenheit, also "außer Haus" steuern möchte, habe ich mich mit diesem Thema beschäftigt.
Die normalen Lösungen über Bluetooth und RFID-Chips habe ich verworfen. Bei Bluetooth müssen zusätzliche Geräte und evtl. Repeater eingesetzt werden, RFID-Chips werden bei uns nicht konsequent immer am Schlüsselbrett abgelegt.
Ausserdem könnte man ja gemeinsam das Haus verlassen und ein Schlüssel bleibt zu Hause.
Die beste Lösung über Ping auf die Handys funktioniert anscheinend nicht bei allen Geräten, da die neueren Android-Versionen die WLAN-Verbindung in einen PowerSaveMode legen und das Gerät dann nicht mehr auf Pings antwortet.
Nachdem ich es mit normalen Pings versucht habe, hatte ich nur eine 50% Quote, bei 1 Gerät funktionierts, bei meinem Gerät leider nicht.
Ich habe nun versucht diesen PowerSaveMode irgendwie auszutricksen und nach den Ergebnissen der letzten Tage bin ich damit ganz zufrieden.
Ich verliere zwar zeitweise mal 1 Ping, allerdings liegt das eher daran, wenn ich mich durchs Haus bewege und das Handy zwischen den AccessPoints wechselt. Der nächste Ping geht dann wieder durch.
Im Node-Red-Flow habe ich das so gelöst, dass vor dem eigentlichen Ping ein UDP-Paket an das Handy gesendet wird, nach einer einstellbaren Zeit (ping_delay) in Millisekunden, wird dann der eigentliche Ping ausgeführt.
Meine Theorie dazu: Das UDP-Paket wird vom AccessPoint "gepuffert", alle 100ms(oder je nach Hersteller 150, 200, usw) prüft das Handy im PowerSaveMode am AccessPoint ob Daten vorliegen, es stellt fest es gibt Daten. Das Handy stellt die WLAN-Verbindung wieder her und holt die Daten ab (UDP-Paket). Mit dem UDP-Paket kann das Handy nichts anfangen, ist aber auch egal, da die WLAN-Verbindung nun wieder steht, ist der anschliessende Ping erfolgreich.
Bei mir funktionierts und ich habe zumindest in unserer Konstellation eine sehr verlässliche Anwesenheitskontrolle über die Handys, ob das wirklich bei anderen Modellen, bzw. beim IPhone auch funktioniert, kann ich leider nicht testen, da ich keines besitze.
Könnte man jetzt noch erweitern mit anderen Logiken oder einen entsprechenden KNX-Wert auf den Bus senden, bzw. einen HTTP-Endpoint bereitstellen, damit sich der Gekko den Präsenzwert abholen kann.
Wäre aber schön wenn mir dazu jemand Rückmeldung geben könnte.
Nun zum Flow:
Im Function-Node "Config - alle Geraete" sind die zu pingenden Geräte hinterlegt. Ich habe hier auch noch mein TV-Gerät mit aufgenommen, da die LG-Geräte nur eine WLAN-Verbindung haben, wenn Sie an sind.
Folgende Konfigurationskeys:
name = Der Klartextname des Geräts
type = die Kategorie des Geräts
host = der zu pingende Host als DNS-Name oder IP
udp_packet = true|false (soll ein UDP-Paket verschickt werden?)
udp_port = zu welchem Zielport soll das UDP-Paket geschickt werden? ich verwende einfach 1234 -> die Daten werden eh nicht verarbeitet
ping_delay = Zeit in Millisekunden bis zum Ping nach dem UDP-Paket
Sollte eigentlich fast selbsterklärend sein.
Das ganze Ergebnis wird dann im globalen Kontext abgespeichert, in einem Objekt "presence" und gegliedert nach den Typen und Namen der Geräte.
Mit dem aktuellen Status (state), wobei true=anwesend, false=abwesend
dem Zeitstempel des letzten Tests (lastStored)
und dem Zeitstempel des letzten Statuswechsels (lastChanged)
Ausserdem gibts dazu eine kleine Übersicht im Node-Red-Dashboard mit einer Tabelle und ein paar Status-LEDs, der Bereich "Ausgabe im Dashboard" kann aber einfach weggelassen werden.
Damit werde ich mir jetzt eine Gesamt-An-Abwesenheit bauen nach dem Motto:
Hat sich der Status der Handys zuletzt vor mehr als 30 Minuten auf "false" geändert, sind die Lichter alle aus und ist der TV ebenfalls seit mindestens 30 Minuten aus, dann Abwesenheit=true.
Lass den Staubsauber fahren.
Ist irgendein Präsenzstatus == true dann Abwesenheit=false, Staubsauger zurück auf die Ladestation.
Irgendwie so nach dem Motto, es könnte ja mal sein, dass man gemütlich TV schaut und die Handys sind aus, dann würde auch das mit einfließen.
Vielleicht könnte das mal jemand probeweise bei sich laufen lassen, ob es auch bei anderen Modellen und Geräten funktioniert.
Flow findet ihr im Anhang in der Flow.txt
Angehängte Dateien
Thumbnail(s)
NR3.JPG
(Größe: 27,4 KB / Downloads: 163)
Flow.txt
(Größe: 14,05 KB / Downloads: 22)
Inlinebearbeitung
Zum Editor
Nachrichten in diesem Thema
Anwesenheit, Präsenz über NodeRed und Ping
- von
Bluescreen
- 08.10.2021, 11:24
RE: Anwesenheit, Präsenz über NodeRed und Ping
- von
Frank85
- 12.10.2021, 11:18
RE: Anwesenheit, Präsenz über NodeRed und Ping
- von
SaschaD
- 12.10.2021, 14:06
RE: Anwesenheit, Präsenz über NodeRed und Ping
- von
Frank85
- 13.10.2021, 04:07
RE: Anwesenheit, Präsenz über NodeRed und Ping
- von
Strabbit
- 12.10.2021, 21:19
RE: Anwesenheit, Präsenz über NodeRed und Ping
- von
Bluescreen
- 14.10.2021, 09:10
RE: Anwesenheit, Präsenz über NodeRed und Ping
- von
Strabbit
- 18.10.2021, 00:51
RE: Anwesenheit, Präsenz über NodeRed und Ping
- von
Bluescreen
- 18.10.2021, 08:31
RE: Anwesenheit, Präsenz über NodeRed und Ping
- von
Strabbit
- 18.10.2021, 10:02
RE: Anwesenheit, Präsenz über NodeRed und Ping
- von
Bluescreen
- 18.10.2021, 10:51
RE: Anwesenheit, Präsenz über NodeRed und Ping
- von
Strabbit
- 18.10.2021, 13:01
RE: Anwesenheit, Präsenz über NodeRed und Ping
- von
Bluescreen
- 18.10.2021, 13:09
RE: Anwesenheit, Präsenz über NodeRed und Ping
- von
Strabbit
- 19.10.2021, 10:05
Möglicherweise verwandte Themen...
Thema
Verfasser
Antworten
Ansichten
Letzter Beitrag
Zisternenfüllstand über Nodered an MyGekko
Matthias
12
18.240
01.05.2023, 19:55
Letzter Beitrag
:
Matthias
Druckversion anzeigen
Thema abonnieren
Gehe zu:
Private Nachrichten
Benutzer Control-Panel
Wer ist online?
Suche
Forenstartseite
Allgemein
-- Ankündigungen
-- Blog
---- User suchen User
---- User stellen Ihre myGekko Ausstattung vor
---- Bauherren unter sich
---- myGekko im Alltag innerhalb der Familien
-- Webinare
-- Feedback
Informationen
-- myGEKKO erwerben
-- Installation
-- Bedienung & Konfiguration
Hardware
-- myGEKKO Slide
---- 24 Volt Spannungsversorgung
-- myGEKKO BASE & NODE
-- myGEKKO RIO
-- myGEKKO Raumbus
-- Hardware Dritter
Software
-- myGEKKO Tools
-- Programmier Tools
---- Node - RED
-- Query API
-- Sprachsteuerung mit Alexa, Google Now & co.
---- myGEKKO Smart Home (Alexa Skill)
-- Raspberry, Home Bridge & Ha-Bridge
-- Erfindungen und Eigenleistungen
myGEKKO Systeme
-- Einstellungen
-- Systeminfo
-- Wetter
-- Licht
-- Jalousie
-- Lüftung
-- Gerät/Steckdose
-- Klimaanlage
-- Uhren
-- Raumregelung
-- H/K Erzeuger
---- H/K Mischkreis
---- H/K Speicher
---- H/K Zirkulation
-- Kaminofen
-- Regelkreis
-- Schwimmbad
-- Aktionen
-- Zutritt
-- SMS/E-Mail
-- Alarmanlage
-- Alarme
-- Musik
-- Video
-- Telefonie
-- Energiemanager
-- E-Mobil
-- Energiezähler
-- Logik
-- Analyse
-- Räume/Bereiche
myGEKKO Plus Dienste
-- Übersicht aller Plus Services
---- myGEKKO Plus Home Bundle
------ FAQ: Funktion und Aktivierung
---- myGEKKO Plus Live Web
------ FAQ: Funktion und Aktivierung
---- myGEKKO Plus Live Viewer
------ FAQ: Funktion und Aktivierung
------ Fragen zum Live Viewer
---- myGEKKO Plus SMS
------ FAQ: Funktion und Aktivierung
---- myGEKKO Plus Caller
------ FAQ: Funktion und Aktivierung
---- myGEKKO Plus Mail
------ FAQ: Funktion und Aktivierung
---- myGEKKO Plus Weather
------ FAQ: Funktion und Aktivierung
---- myGEKKO Plus query API
------ FAQ: Funktion und Aktivierung
---- myGEKKO Plus Webradio
------ FAQ: Funktion und Aktivierung
---- myGEKKO Plus Live Support
------ FAQ: Funktion und Aktivierung
---- myGEKKO Plus Time Sync
------ FAQ: Funktion und Aktivierung
-- Hinweise
Benutzer, die gerade dieses Thema anschauen:
1 Gast/Gäste
Deutsch informell ("Du")
Deutsch formell ("Sie")
English (American)
Powered by:
MyBB
Linearer Modus
Baumstrukturmodus