NEWS
Script und Anbindung im VIS
-
Hallo, ich bin recht neu hier und nutze Homematic mit CCU. Mir gefällt allerdings die Visualisierung auf Tablet total super. In Java und Java-script kenne ich mich recht gut aus , aber ich brauche hier mal kurz ein "Anlauftip"… Wenn ich im Script mit "createState" was erstelle so kann ich das in der VIS auch abfragen. Jedoch gelingt es mir nicht eine einzelne Funktion über eine Schaltfläche aus der VIS aufzurufen ...
Ein Gerät über setState anzusprechen kein Problem. Wenn ich aber eine Taste im VIS anlege und mit dieser eine Funktion (z.B. Rollo Wohnzimmer herunter fahren (funktion rolloAB) dann bekomme ich das nicht hin. Ich möchte aber nur die Funktion ansprechen, in der dann das setState für das Rollo steht, nicht direkt das Gerät.
Suche deshalb ein Beispiel inkl. VIS.
Danke LG EWA
-
..oh vielen Dank. Deine Lösung klappt, mein Problem war noch, dass ich kein neues Objekt angelegt habe mit dem entsprechenden namen. Nun kann ich zugreifen und mir mienen "virtuellen Stop-Schalter" anlegen und mit Script darauf zu greifen. Klappt perfekt.
Da ich nun meine ganzen Objekte einfach anlege , würde mir der übersichtshalber gefallen eine seperate Mappe anzulegen (z.B. eigene Objekte). Gibt es eine Möglichkeit in der Objektansicht eine eigene Mappe anzulegen oder lege ich die Objekte im scriptOrdner an, wobei mir erstes besser gefallen würde.
Siehe Bildanhang
3390_script.jpg -
Gibt es eine Möglichkeit in der Objektansicht eine eigene Mappe anzulegen oder lege ich die Objekte im scriptOrdner an, `
Im Ordner 'javascript.0' ist es weniger anfällig für Fehler: Ein Ordner in der Wurzel benötigt die Ergänzung '.N' (N für Ziffer). Wenn eigener Ordner in der Wurzel, dann bitte als 'eigene_Objekte.0', denn Leerzeichen in IDs können Probleme machen. Unter diesem Ordner können beliebige Objekte/Datenpunkte erzeugt werden. -
@pix:Durch Einfügen von Punkten im Namen kannst du eine Ordnerstruktur bauen.
Z.B. Objektname = "javascript.0.Ordner.Unterodner.Datenpunkt" `
Genauer:createState('Ordner.Unterordner.Datenpunkt', Init-Wert, { type: 'boolean', read: true, write: false });unter der JS-Instanz 0 erzeugt eine Datenpunkt mit dem Namen "Ordner.Unterordner.Datenpunkt" und der ID "javascript.0.Ordner.Unterodner.Datenpunkt".