NEWS
*gelöst* Anwesenheitserkennung Alexa Begrüßung / Smartphone Deep Idle
-
Moin Miteinander,
habe ein "kleines Problem".
Ich steuere die Anwesenheit in unserem Haus über den Radar Adapter.
Nun wollte ich, das Alexa eine Begrüßung sagt wenn einer nach Hause kommt.
Das Problem ist nun eigentlich, dass Alexa die Begrüßung sagt sobald auch einer geht, sicher also der Wert ändert.
Kann mal einer über das Blockly Script schauen und sagen wo mein Denkfehler ist.
Danke und Gruß
-
Wenn man dein Bild öffnet, kommt gleich ein Werbefenster dazu, da macht das Ansehen natürlich keinen Spaß! Warum nutzt du nicht im Forum integrierte Bilderanzeige?
Ich habe mir das Bild nicht genauer angesehen, vermutlich hast du auf Änderung getriggert, was ja schonmal richtig wäre, aber ich würde für beide separat einen Trigger erstellen. Denn wenn einer geht, wird getriggert (da ja Änderung), da dann aber noch einer da ist kommt die Meldung!
Enrico
-
Moin,
alles klar werde es mal so ausprobieren.
Habe das Bild jetzt korrekt eingefügt, beim Posten habe ich in der oberen Leiste nach Dateianhängen gesucht und nicht unter dem Beitragsfenster diese Funktion gesucht.
Vielen Dank
-
Danke!
Hast du denn mal ausprobiert für beide Handys einen separaten Trigger zu verwenden? Das kann auch in einem Blockly sein.
Enrico
-
Eventuell solltest Du nur einen Text-Baustein nehmen mit der Verzögerung.
"Hallo, schön das du zu Hause bist"
Alexa macht durch das Komma eine Pause (denke, dass ist das was du mitunter willst).
Und dann würde ich den Ping Adapter nehmen, der zeigt true/false an, besser zu triggern und ist sehr zuverlässig.
Bin noch auf der Arbeit.
Kann nachher mal das einfache Skript posten.
Edit:
Wenn du es schneller brauchst , habe ich gerade gesehen, spuckt die Suchfunktion auch eine Menge Ergebnisse/Lösungen raus
-
So, nochmal nachgeschaut. Ist der TR-064 Adapter. Geht aber auch zuverlässig mit dem Ping Adapter. Ist ein Skript.
Bei X gibst du den genauen Datenpunkt ein. Unten die 10000 bedeuten 10sek Timeout bevor Alexa den Satz sagt. Kannst auch mehr oder weniger eingeben. Je nachdem wie lange du brauchst ins Haus zu kommen, damit du den Satz noch hörst
var timeout; on({id: 'tr-064.0.devices.XXXXXXXXX', change: "ne"}, function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; // Alexa Wohnzimmer timeout = setTimeout(function () { setState("alexa2.0.Echo-Devices.XXXXXXXXXX.Commands.speak"/*speak*/, (String(getState("tr-064.0.devices.XXXXXXXX").val ? 'Achtung, geiler Typ auf 12Uhr' : ''))); }, 10000); });
-
Habe jetzt das Skript so aufgebaut:
scheint jetzt auch so zu funktionieren wie angedacht.
Bin über den radar Adapter gegangen, weil ich gelesen hatte, dass der Ping Adapter mit dem Deepsleep der Handys probleme hat.
Forum suche habe ich natürlich benutzt und mich an den Scripten orientiert, dachte auch zuerst ich hätte alles richtig aufgebaut. Nur hat es eben mit einem Trigger und zwei Objekten nicht ganz geklappt.
Ohne Vorlagen die ich hier im Forum finde wäre ich schon längst gescheitert.
Hätte aber noch ein weiteres "Problem", welches auch mit der Anwesenheit zusammenhängt.
Habe noch ein Script laufen, welches nur auf meine Anwesenheit prüft, wenn true dann schalte X Geräte an.
Nun ist dieses Script trotz Anwesenheit heute Nacht irgendwann ausgelöst worden. Als ich heute Morgen also aufgestanden bin, war mein Arbeitsplatz beleuchtet und die Geräte am laufen. Kann das damit zusammenhängen, dass ich um 5 Uhr Morgens einen automatischen Reboot vom Raspi mache und iobroker neu starte?
Ich meine irgendwo gelesen zu haben das eigentlich bei einem Reboot die Werte in einer Datei abgespeichert werden und dementsprechend wieder gesetzt nach dem Hochfahren.
P.s.:
Wenn ich mehrere Geräte steuere, sagen wir mal 5 bis 6, funktioniert dann 1 Trigger oder lieber aufteilen mit mehreren Trigger Befehle?
-
Wo hast du das Skript gespeichrt?
Erscheint es bei ScriptEnabeld in den Objekten?
-
ja, das Script erscheint unter javascript.0/scriptEnabled/common
Ich habe nur zwei weitere Datenpunkte welche einfach unter javascript.0 liegen. Ist das ein Problem für die Scripte?
Einmal ein Datenpunkt, welcher die allgemeine Anwesenheit steuert und einmal ein Script um den Fernseher per WakeOnLan anzuschalten.
-
Skriptexperte bin ich jetzt nicht, aber ich meine, dass genau dieser Speicherort dafür sorgt , dass es beim einem Neustart zu dem Phänomen bei dir kommt.
Da muss sich hier jemand melden, der sich mit Skripen besser auskennt.
paul53 oder wendy2702 sind ganz firm in sowas.
-
@knx:P.s.:
Wenn ich mehrere Geräte steuere, sagen wir mal 5 bis 6, funktioniert dann 1 Trigger oder lieber aufteilen mit mehreren Trigger Befehle? `
Wenn du meinst, dass du mehrere Geräte einschalten möchtest, geht das auch mit einem Trigger.
@knx:Habe noch ein Script laufen, welches nur auf meine Anwesenheit prüft, wenn true dann schalte X Geräte an.
filename="da.png" index="0">~~
Nun ist dieses Script trotz Anwesenheit heute Nacht irgendwann ausgelöst worden. Als ich heute Morgen also aufgestanden bin, war mein Arbeitsplatz beleuchtet und die Geräte am laufen. Kann das damit zusammenhängen, dass ich um 5 Uhr Morgens einen automatischen Reboot vom Raspi mache und iobroker neu starte?
Ich meine irgendwo gelesen zu haben das eigentlich bei einem Reboot die Werte in einer Datei abgespeichert werden und dementsprechend wieder gesetzt nach dem Hochfahren. `
Es kommt hier auch auf deine Einstellungen im Radar-Adapter an. Es ist durchaus möglich, dass du kurz abwesend warst, das kannst du in den Objekten prüfen, wann die letzte Änderung war.
Zu dem Thema, ob es auch beim Neustart dazu kommen kann, müssen sich die schon erwähnten Experten melden.
Enrico
-
Genau das meinte ich, mir hat sich halt nur die Frage gestellt, ob es für ioBroker eventuell besser ist den Trigger Befehl öfter auszuführen und "kleine kompakte" Einheiten nacheinander Triggern zu lassen.
Radar Adapter setzt erst nach 5 Minuten auf Abwesend, denke die Einstellungen passen da. Finde unter Objekte keine Möglichkeit zu schauen wann die letzte Änderung war.
Ich beobachte einfach mal weiter, was heute Nacht passiert.
p.s.:
Hast du vielleicht noch einen Tip wegen dem Scriptspeicherort? Muss ich mit meinen ganzen Scripten nun wirklich in einen anderen Ordner ziehen? Weil wenn es denn so ist, dann lieber jetzt wo es mit 12 Scripten noch übersichtlich ist.
Vielen Dank schon mal an alle.
-
@knx:Kann das damit zusammenhängen, dass ich um 5 Uhr Morgens einen automatischen Reboot vom Raspi mache und iobroker neu starte? `
Nein. Trigger lösen bei einem Neustart nicht aus.Wenn allerdings der Radar-Adapter bei Neustart erst false und später true erzeugt, dann wird getriggert. Den Zeitpunkt der letzten Änderung kannst Du sehen, wenn Du im Reiter "Objekte" mit dem Mauszeiger über den Wert des Datenpunktes fährst.
-
@knx:Muss ich mit meinen ganzen Scripten nun wirklich in einen anderen Ordner ziehen? `
Nein. Unter der Gruppe common ist in Ordnung. -
alles klar, werde ich Morgen früh mal schauen was passiert und berichten.
Danke für die Antwort, die zwei anderen Scripte einfach untern javasdcript.0 sind auch in Ordnung?
-
@knx:die zwei anderen Scripte einfach untern javasdcript.0 sind auch in Ordnung? `
Ja. Hauptsache <u>nicht</u> unter der Gruppe global ! -
@knx:Radar Adapter setzt erst nach 5 Minuten auf Abwesend, denke die Einstellungen passen da. Finde unter Objekte keine Möglichkeit zu schauen wann die letzte Änderung war. `
Die Zeit spielt zwar auch eine Rolle, aber auch die Anzahl der Nichterkennungen sollte sinnvoll für den Verwendungszweck (und auch zur Störungsvermeidung) gewählt werden. Ich habe z.B. ein Intervall von 50s und wenn das 5x negativ war, ist derjenige abwesend. Hatte erst mit 30s probiert da gab es aber immer wieder Störungen.
Die letzte Änderung kannst du erkennen, wenn du in der Objektliste über den Status mit der Maus drüberbleibst (Mausover heißt das glaub ich) und einen Moment wartest, dann wird dir ein kleines Fenster angezeigt, wo u.a. die letzte Änderung drinsteht.
Enrico
-
Guten Abend oder Nacht,
gerade ist das Script losgegangen und alles wurde ausgeschaltet.
Status des Adapters wurde auch um diese Zeit geändert.
Hier meine Adaptereinstellungen:
Und hier zwei Screenshots vom Log:
!
Weiß leider noch nicht wie ich den Downgeloadeten Log auf meinen Windows Rechner bekomme, deswegen die Screens, sollte das ein Problem sein, werde ich das die Tage nachholen.
-
@knx:gerade ist das Script losgegangen und alles wurde ausgeschaltet.
Status des Adapters wurde auch um diese Zeit geändert. `
Was fragst du eigentlich mit Radar ab, Bluetooth oder IP? Bei IP hast du natürlich das gleiche Problem wie mit TR064-Adapter usw!
Die log-Datei kannst du ja im Admin downloaden und dann einfach darin den Text kopieren, den du anzeigen willst um den dann im Forum usw. einfügen. Ne andere Variante wäre z.B. per WinSCP die Datei direkt runterzuladen, diese kannst du dann z.B. mit dem Texteditor von Windows öffnen.
Enrico
-
letzter Post für heute Nacht von mir.
Über Radar Frage ich IP, MAC und Bluetooth ab, also alle Optionen. Wobei ich MAC Adresse erst seit gerade eben abfrage, da ich arp-scan erst soeben installiert habe, damit es funktioniert.
Werde mal schauen ob die zusätzliche MAC Adresse abhilfe schafft.
Beim Download geht mein Log irgendwie nur bis knapp 23:40 die letzten 20Minuten fehlen irgendwie, kann es also nicht ganz nachreichen.