NEWS
[gelöst] [Frage] Erstellung virtueller Taster für .vis
-
-
Danke für die umfangreiche Bildsammlung
mir fehlt einfach der reiter Objekte, bei dem du diesen Datenpunkt: javascript.0.Virtueller_Taster_test mit allen UNterpunkten aufgeklappt hast.
Gruß
Rainer
-
tut mir wirklich leid! Ich habe leider noch kein Gefühl dafür, welche Infos benötigt werden.
3428_unbenannt6.jpg -
Mit dem Widget "Button State" kannst du nur den bestimmten Wert setzen, und nicht hin und her wechseln.
Du brauchst einen Schalter mit Boolcontrol..
Bzw gib mal als Filter links in der Widgetübersicht "Switch" ein..
Gruß
-
Mit dem Widget "Button State" kannst du nur den bestimmten Wert setzen, und nicht hin und her wechseln.
Gruß `
Es sollte aber eben ein "Taster" sein und kein ON/OFF Schalter.
Ich habe versucht aus diesem Beitrag http://forum.iobroker.net/viewtopic.php … 240#p52927 mir den virtuellen Taster nachzubauen. Aber ich kann nicht herausfinden welches Widget hier genau verwendet wird.
WEnn ich bei mir unter Widgets nach "switch" filtere kommt gar kein Eintrag. Kann ich dieses Widgets irgendwie nachladen?
-
Du willst also reagieren wenn der Knopf im VIS gedrückt wird - der Wert ist also komplett egal.
Dann ist der Punkt doch der richtige (Button State).
Du musst dein Script nur so schreiben dass es den manuell erzeugten Datenpunkt überwacht und bei "neu beschreiben" vom Datenpunkt ein entsprechenden Befehl ausführt..
on({id: 'javascript.0.Virtueller_Taster_Test', change: 'any'}, function (obj) { befehle; }
Gruß
-
Der Zustand des Tasters sollte bei Betätigen von FALSE auf TRUE wechseln. Sobald man den Taster loslässt soll er wieder von TRUE auf FALSE wechseln.
Kann das von mir erzeugte Javascript-Objekt (also der virtuelle Taster) diesen Zustand nicht irgendwie annehmen?
-
hq-widgets on/of mit Option Taster
-
Kann das von mir erzeugte Javascript-Objekt (also der virtuelle Taster) diesen Zustand nicht irgendwie annehmen? `
Optional kannst du in den Objekteigenschaften auch read="false" setzen, dann wird der State in der Objektliste im Admin auch als Button dargestellt. Den Wert false nimmt der zwar nicht an wenn du in der Adminoberfläche drauf drückst, jeder Knopfdruck schreibt aber den Wert true in den State. Sofern du nicht unbedingt den Status "false" erreichen willst, sondern nur dass bei Knopfdruck etwas passiert, sollte das deinen Anforderungen entsprechen. Die Überwachung mit Buzzy's Skript funktioniert weiterhin. -
Nochmals vielen, vielen Dank für die Hilfen! Echt klasse!!!
Jetzt funktioniert es wie gewünscht:
Taster in der Vis schaltet Licht im Flur ein und wieder aus.
Ich weiß - das klingt absolut trivial, aber mir ging es darum es zu verstehen (quasi mein "Hello, World").
Lösung (evtl. stellt sich ja noch mal jemand so dumm…)
1. Wie von bahnuhr und BuZZy beschrieben habe ich ein Objekt manuell erzeugt http://forum.iobroker.net/viewtopic.php?p=83309#p83309
==> "javascript.0.Virtueller_Taster_Test"
2. In der Vis habe ich ein hqwidget - On/Off angelegt
-
vorher im Reiter "Adapter" eine Instanz des Adapters "hqwidgets style Widgets" hinzufügen (+ ganz rechts)
-
dieses Widget muss man aufgrund eines bekannten Problems manuell uploaden. Siehe http://forum.iobroker.net/viewtopic.php … ets#p66581
-
im Vis habe ich also via Drag&Drop dieses Widget hinzugefügt (ohne den manuellen Upload oben sieht man das Widget nicht…) und unter "Eigenschaften" und "Allgemein" -> "Taster" aktiviert
3. Via Blockly habe ich nun ein einfaches Script geschrieben, das den Zustand es virtuellen Tasters an einen Netzwerkeingang meiner Logo! weitergibt und damit das Licht einschaltet:
on({id: 'javascript.0.Virtueller_Taster_Test', change: "ne"}, function (obj) { //var value = obj.state.val; //var oldValue = obj.oldState.val; setState("s7.0.DBs.DB0.NI3", getState("javascript.0.Virtueller_Taster_Test").val); });
==> Ich weiß, ich hätte auch direkt den Taster im Vis mit dem Netzwerkeingang meiner Logo verbinden können. Aber später will ich eben noch weitere Bedinungen einbauen.
-
-
Schön, dass es jetzt läuft!
Nur ein Schönheitsfehler:
@George_Best:dieses Widget muss man aufgrund eines bekannten Problems manuell uploaden. `
das sollte schon lange behoben sein!Welche Versionen js-controller und admin verwendest du denn?
Gruß
Rainer
-
Schön, dass es jetzt läuft!
Nur ein Schönheitsfehler:
@George_Best:dieses Widget muss man aufgrund eines bekannten Problems manuell uploaden. `
das sollte schon lange behoben sein!Welche Versionen js-controller und admin verwendest du denn?
Gruß
Rainer `
Javascript/Blockly Script Engine => installiert: 3.4.0
ioBroker Admin => installiert: 2.0.2
hqwidgets style Widgets => installiert: 1.0.10 (wobei unter Version (grün) 1.0.6 steht)
-
Danke!
@George_Best:Javascript/Blockly Script Engine => installiert: 3.4.0 `
nicht den Javascript-Adapter sondern den js-controller.Die Version befindet sich unter dem Reiter Hosts.
Der admin ist ok!
@George_Best:hqwidgets style Widgets => installiert: 1.0.10 (wobei unter Version (grün) 1.0.6 steht) `
Also bist du deiner Zeit vorausGruß
Rainer
-
Also bist du deiner Zeit voraus `
Das lässt sich anhand meiner Fragen sehr einfach widerlegen
Der js-controller ist tatsächlich nicht aktuell:
Verfügbar: 1.1.2
Installiert: 1.0.0
Aber eine Frage noch: Ich bin auf der Suche nach einem Widget, dass mir sowohl als Taster dient (den Wert also in meinen virt. Taster schreibt) und zugleich den Status meines Logo!-Ausgangs anzeigt (andere Objekt-ID). Bis jetzt habe ich das mittels zweier Widgets gelöst.
-
Aber eine Frage noch: Ich bin auf der Suche nach einem Widget, dass mir sowohl als Taster dient (den Wert also in meinen virt. Taster schreibt) und zugleich den Status meines Logo!-Ausgangs anzeigt (andere Objekt-ID). Bis jetzt habe ich das mittels zweier Widgets gelöst. `
Gute Entscheidung.Kein Widget kann zum einen einen Datetenpunkt schalten (bool true/false) und einen anderen Datenpunkt (ebenfalls bool true/false) darstellen. Dazu müssten zwei verschiedene OIDs verwaltet werden können. (Wobei dann auch ioBroker gesagt werdn müssten welche OID geschaltet, und welche OID visualisiert werden muss. Zusätzlich soll die visualisierte ja NICHT geschaltet werden.
Bei einigen Widgets gibt es noch ganz unten die Option Extrasteuerung. Ich habe zwar auch schon damit eine ähnliche Fragestellung erfolgreich getestet, aber kann mich nicht mehr exakt an das Vorgehen erinnern.
IMHO musstest du oben die zu visualisierende eingeben und unten die zu steuernde. Ich glaube aber, dass die obere (natürlich) auch gesteuert wurde.
Gruß
Rainer
-
Kein Widget kann zum einen einen Datetenpunkt schalten (bool true/false) und einen anderen Datenpunkt (ebenfalls bool true/false) darstellen. Dazu müssten zwei verschiedene OIDs verwaltet werden können. (Wobei dann auch ioBroker gesagt werdn müssten welche OID geschaltet, und welche OID visualisiert werden muss. Zusätzlich soll die visualisierte ja NICHT geschaltet werden. `
Na, ich weis nichtBei den Metro-Widgets benutze ich dafür "Signalbilder".
Damit kann man andere Datenpunke anzeigen, als den der mit dem Widget geschaltet wird.
Grüße
-
Na, ich weis nicht
Bei den Metro-Widgets benutze ich dafür "Signalbilder".
Damit kann man andere Datenpunke anzeigen, als den der mit dem Widget geschaltet wird. `
:!: :!:Die hatte ich tatsächlich nicht auf dem Schirm. Ich nutze kein metro-Design
Gruß
Rainer
-
Die hatte ich tatsächlich nicht auf dem Schirm. Ich nutze kein metro-Design `
Das kann den Besten passierenAber "Signalbilder" haben auch die anderen Widgets. (Grad nochmal nachgeschaut) :shock:
Grüße
-
Aber "Signalbilder" haben auch die anderen Widgets. (Grad nochmal nachgeschaut) `
Wusste ich, aber ich dachte ich könnte mich so herausredenGruß
Rainer
-
Na, ich weis nicht
Bei den Metro-Widgets benutze ich dafür "Signalbilder".
Damit kann man andere Datenpunke anzeigen, als den der mit dem Widget geschaltet wird. `
Perfekt!! Danke für den HInweis!