NEWS
Gelöst: Obejtktdaten ändern
-
@paul53 Das war der Fehler. Danke
-
@michihorn sagte in Gelöst: Obejtktdaten ändern:
@paul53 Das war der Fehler. Danke
Hätte da noch ne Frage zum Thema. Ich habe keine Benutzer angelegt arbeite also als Admin.
Den Datenpunkt den ich nun "write= false" setzen kann, wird aber wider erwarten beschrieben. Das passiert per Motioneye wie folgt:http://192.168.178.1xxx:80xx/set/hm-rega.0.22357?value=1&prettyPrint
ich hätte angenommen das für die Zeit in der "write= false" ist , dort auch keine Änderungen geschrieben werden
-
wer hat den da reingeschrieben, kannst du erkennen wenn der Mauszeiger drüber steht
Adapter können in ihr eignen DP schreiben, nur andere können nicht.
-
-
da wirst du keine Chance haben, wie gesagt der Adapter schreibt in seine eigenen DP. Readolnly heisst nur für andere lesen.
Was ist eigentlich das Grundproblem? Mach ein neuen Thread auf vielleicht gibt es dafür eine Lösung.
-
@tt-tom Ich habe im um mein Haus Kameras Installiert, die Kameras laufen über Motioneye und schicken je nach Bewegungserkennung eine Nummer auf den Datenpunkt. Von dort aus wird im einem basic -iframe8 das Bild der entsprechenden Kamera angezeigt. Wenn nun eine Bewegung an der Haustür erkannt wird, wird Bild 3 gezeigt, sollte nun auch eine Bewegung im Garten erkannt werden, wird die "4" gesendet und Bild 4 wird angezeigt. Ich möchte bei Bewegungserkennung an der Haustür alle anderen möglichen Umschaltungen irgnorieren , zumindest für 1 Minute oder so. Daher der Gedanke den DP temporär "schreib zu schützen"
-
spontan würde ich einen eigenen DP erstellen und die Zahlen mittels Script weiterreichen und bei 3 halt ein timeout von x.sek da zwischen, das die nächste Änderung erst dann weitergereicht wird.
-
@tt-tom Ja das war jetzt auch meine Idee, bin gerade dabei das um zu setzen
-
@michihorn viel Erfolg
-
@tt-tom sagte in Gelöst: Obejtktdaten ändern:
@michihorn viel Erfolg
So klappt es:
CamNr wird von Motioneye beschrieben
CamView ist zur Stuerung des basis-Iframe8
sperre ist meine Krücke zum zeitlichen Verriegelnconst idCamView = "0_userdata.0.System.CamView"; const idCamNr = "0_userdata.0.System.CamNr"; const idsperre = "0_userdata.0.System.Sperre" on({ id: idCamNr, change: "any" }, function (dp) { if ((dp.state.val) == 3) { setState(idsperre, true) setState(idCamView, 3) setTimeout(function () { setState(idsperre, false) }, 20000); } else if ((getState(idsperre).val == false) && (dp.state.val != 3)) { setState(idCamView, dp.state.val) } }); on({ id: idsperre, val: false }, function (dp) { setState(idCamView, getState(idCamNr).val) });
Geht sicher auch eleganter.