NEWS
Netatmo Welcome und Alexa
-
Hallo,
leider habe ich nichts gefunden und arbeite mich gerade neu in ioBroker ein. Ich habe diverse Netatmo Welcome und Presence Kameras im Einsatz, habe auch den Entsprechenden Adapter installiert und sehe auch die Events.Jetzt würde ich gerne über Alexa eine Persönliche Begrüßung ausgeben wenn eine Bestimmte Person gesehen wird, das aber auch nur beim ersten Event am Tag.
Stehe da leider etwas auf dem Schlauch.
-
Genau das Gleiche habe ich auch vor. Hatte in Blockly schon etwas rumexperimentiert, aber ohne Erfolgt. Hast du mittlerweile eine Lösung?
-
Ist das Event dann das Sichten dieser Person, oder wie muss man sich das vorstellen ? Oder sind Event und Sichten zwei verschiedene Sachen, dann müsstest du mal erläutern was Event ist und wie es ausgelöst wird ?
Wenn Event das Sichten ist währe das der Ansatz:
-
-
Der out_of_sight Datenpunkt sollte sich auf true ändern wenn die Person erkannt wird, vermutlich nur ganz kurz, aber für den trigger reicht es sicher .
-
@cinimod Leider nein.
Unabhängig von der Netatmo Welcome, was hast du denn als Trigger für die Anwesenheitserkennung gesetzt?
-
Ich habe das Script ja nicht am laufen bei mir, habe das nur sch ell zusammen gebastelt für euch.
Der trigger muss halt der datenpunkt sein der true geht wenn die cam diese person erkennt. Da musst du selbst mal schauen. Habe auch siwas nicht am laufen.
-
@cinimod Achso, verstanden! Danke für die Mühe!
Ich bin noch am Testen. Mit dem Trigger "at Home" auf true funktioniert es. Der Zustand bleibt aber natürlich so lange auf true, bis die Person nicht mehr zu Hause ist. D.h. die Sprachausgabe wiederholt endlos alle 10 Sekunden "Willkommen zu Hause..."Ich habe schon mit den Timeouts "Stop", "Pause","Ausführen" und "Intervall herumgespielt, aber ohne Erfolg.Ich habe nun wohl die Lösung:
Unter "Objekte" im Order "Javascript" -> "variables" einen neuen Wert erstellen. Hier wie in deinem Beispiel "begrüßung erledig" und diesem "Boolean" zuordnen.
In Blockly unter Variabeln eine neue Variabel erstellen und den neu angelegten Wert hier hinein kopieren und dann das Blockly wie folgt aufbauen:Und zum Schluss mit dem Zeitplan steuern, wann der neu erstelle Wert wieder auf falsch gesetzt wird und somit danach wieder eine erneute Begrüßung statt finden kann.
-
Der erstellte Datenpunkt ist doch garnicht notwendig oder ? Warum nimmst nicht einfach eine Variable wie in meinem Beispiel.
Ich wusste nur nicht was du als Trigger nehmen kannst, daher ist das in meinem Beispiel leer, kenne ja nicht die auswahl deiner Datenpunkte, und weiß nicht welcher sich ändert wenn die Cam dich entdeckt hat.
-
@cinimod Ok, so ist es natürlich noch einfacher. Danke!
-
Frohe Weihnachten zusammen,
das oben gezeigte Script funktioniert nun seit Tagen gut. Einziges Problem ist, halte ich mich nun eine Weile im Sichtbereich der Kamera auf, kommt natürlich eine Sprachausgabe nach der anderen.
Ich habe leider noch keine Möglichkeit gefunden, die Sprachausgabe, sobald eine Person erkannt und angesprochen wurde, für z.B. eine Stunde zu pausieren.
Hat jemand eine Idee?
Zudem habe ich die Sprachausgabe mit Hilfe eines Scripts von https://www.elzershark.com/ erweitert. Er hat es mit einer ESP-32 Cam eingerichtet. Hier habe ich das Script einfach etwas auf die Netatmo angepasst:
Auch hier habe ich natürlich das Problem, dass die Sprachausgabe immer wieder wiederholt, sobald ich mich längere Zeit vor der Kamera auf halte.Viele Grüße
-
Im obigen Skript hatten wir doch schon eine Sperrvariable eingebaut, das er nur beim ersten sichten am Tag sich meldet, und sie beim Tageswechsel wieder frei gibt.
Funktionier das so nicht, oder willst du es anders haben ?
Das ist das Prinzip wenn eine gewissen zeit ablaufen soll:
-
Es funktioniert leider nicht gut mit der Sperrvariable. Ich glaube das liegt daran, dass der Wert der Kamera bei der Sichtung nicht mit true/false geschrieben wird, sondern hier das Datum und die Uhrzeit der Sichtung hinterlegt wird.
-
Ah ok, das muss man mir ja auch sagen vorher Stell mal den Trigger auf geändert.
Vielleicht zeigst du dein nicht funktionierendes Skript mal, dann kann man mal drüber schauen wo es hängt.
-
@cinimod
Frohes neues Jahr!
Anbei Screenshots der beiden Scripts. Die Trigger hatte ich bereits auf "geändert" gestellt.
-
Hey, ich glaube das ist ein Problem. Du wolltest bestimmt reagieren wenn der Trigger Datenpunkt "wahr" ist ... dann nimm da den Trigger Block "opjektID" und stelle diesen auf "WERT".
im Vorderen script, benutzt du da den Wizard Zeitplan ? Falls ja, besser Cron nehmen, mit Wizard gibt es immer wieder Probleme.
-
@cinimod
Deinen Vorschlag habe ich getestet. Aber damit funktioniert das Script nicht mehr.Die Sperrvariable funktioniert nun. Ich musste den Adapter neu starten. Auch das Ablaufen der Zeit funktioniert, danke!
Ich habe zwischenzeitlich beim "Willkommen-Script" den Trigger geändert. Ich nutze nun nicht mehr die Kamera, sondern den FritzBox Adapter mit dem Datenpunkt "tr-064.0.devices.iPhone-Nico.active". Also ob die Wlan Verbindung false oder true. Das funktioniert soweit, nur das nach Ablauf des Timers eine Begrüßung statt finden, obwohl der Status des Datenpunkts nicht geändert wurde.
Für den Trigger nutze ich wahr/unwahr. Mit wahr wird "Willkommen" und mit unwahr wird "das Haus verlassen" ausgegeben.Das Script sieht nun so aus:
Ich musste unter "falls" den Baustein Wert von Objekt ID hinzufügen, da es sonst nicht funktionerte.
-
Schön das du es hin bekommen hast