Hi, es ist etwas umständlich, bei Bedarf das Häkchen bei Dragging active zu setzen oder zu löschen (Raumwechsel, Häkchen setzten/löschen, Raumwechsel).
Ich finde den Befehl oder die Syntax nicht, um einen Alias dafür zu erstellen.
Kann wer helfen?
Danke im Voraus.
Verstehe ich richtig: Du haettest dafuer gerne einen FHEM Befehl zu eintippen?
Ja, dann könnte ich mir eien Alias anlegen.
Fuer eine FHEMWEB Instanz mit dem Namen w2 sollte Folgendes helfen:
trigger w2 JS:$("[data-name]").each(function(){f18_addDragger(this)})
Dragging ist aktiv, bis man auf eine andere Seite wechselt.
Vielen Dank.
Ich stelle mich wahrscheinlich wieder zu doof an.
Wenn ich in die Eingabezeile von fhem zum Test folgendes eingebe:
trigger WEB JS:$("[data-name]").each(function(){f18_addDragger(this)})
Was habe ich falsch verstanden?
Ich experimentiere lieber ueber telnet (genauer "socat TCP:!:1\:!:2 READLINE,history=~/.telnet_history"), und da funktioniert es :)
Das Problem mit der Eingabe im FHEMWEB ist, dass sie eine neue Seite generiert, die das Dragging deaktiviert.
Mit einem billigen Trick kann man das Problem aber umgehen:
sleep 1; trigger WEB JS:$("[data-name]").each(function(){f18_addDragger(this)})
OK, vielen Dank. Ich musste zwar auf sleep 3 erhöhen, daber damit scheint es zuverlässig zu funktionieren.
Danke nochmals. Hätte ich neimals auch nur ansatzweise rausbekommen.
Ich muss doch nochmal nerven.
Mein CMDAlias sieht nun wie folgt aus:
Internals:
ALIAS drag
DEF drag .* AS sleep 2; trigger WEB JS:$("[data-name]").each(function(){f18_addDragger(this)})
FUUID 62c4a317-f33f-8098-d0f9-d86ac1143ba6ea1a
NAME drag
NEWCMD sleep 3; trigger WEB JS:$("[data-name]").each(function(){f18_addDragger(this)})
NR 20688
PARAM .*
STATE defined
TYPE cmdalias
Attributes:
comment aad Alle AMAD Flowsets aller Geräte updaten
auf einmal
room System
Mit sleep 3 kann ich die Dragsymbole setzen, aber nicht mehr entfernen. Das geht nur mit sleep 1.
Mit sleep 3 verschwinden die Dragsymbole, kommen aber nach kurzer Zeit zurück.
Das passiert auch ohne den Einsatz von meinem CMDAlias.
Ich kann das lösen, indem ich 2 CMDAliase mache, einen für on und einen für off.
Ist merkwürdig, aber damit kann ich leben, falls du keine Lösung weisst.
EDIT: Hat sich erledigt. Liegt an der mangelhaften Browseraktualisierung. Also alles im grünen Bereich. Sorry.
ZitatHätte ich neimals auch nur ansatzweise rausbekommen.
Ich musste auch nachschauen:
#1 wie aktiviert f18.js dieses Feature
#2 was muss man machen, um JavaScript dem Frontend schicken zu koennen.
Ich hatte nur etwas Vorteil, weil ich wusste, dass #2 moeglich ist, und wo in etwa ich suchen muss.
Vermutlich geht es auch eleganter: da Du den Vorgang im Frontend ausloesen willst, ist der Weg ueber das Backend eigentlich ueberfluessig.
Man muss "nur" eine Schaltflaeche anlegen, und das o.g. JavaScript Code daran binden.
OK, danke für die Erklärungen.
Schaltfläche werde ich wohl noch machen, der CMDAlias geht aber auch.
Inzwischen habe ich folgende Erfahrung gemacht:
Wenn ich den Befehl von dir aufrufe, aber mit sleep 3, dann werden die Dragschaltfläschen eingeblendet und können benutzt werden.
Wenn ich aber das Browserfenster aktualisiere, verschwinden die Dragschaltflächen wieder, die anderen Änderungen bleiben aber erhalten.
Man muss also nicht togglen.
Läuft also hervorragend uind nochmals vielen Dank.