Seite 4 von 5

Re: Things via VSC erstellen

Verfasst: 26. Aug 2020 14:48
von scotty
Ursprünglich hatte ich alles über Paper UI eingerichtet und es hat funktioniert! Dann kam ich vor einigen Tagen auf die Idee, nach Möglichkeit alles Things und Items über VSC einzurichten. Mit Tankerkönig hat das sehr gut geklappt. Die nächste "Baustelle" sollte dann Rollershutter sein. Warum es hier Probleme gibt, kann ich nicht sagen.
An dem Widget kann es nicht liegen. Mir ist im Nachhinein eingefallen, dass eine zeitgesteuerte Rule auf die Gruppe "gAlleShutters" zugreift. Sie hat nichts mit dem Widget zu tun und funktioniert seit der Neueinrichtung der Things über VSC auch nicht mehr.
Zum Schluss noch die Antwort auf die Frage von peter-pan: der Name "weiterleiten" wird nur einmal verwendet und zwar für die gerade geänderte Regel. Ich teste diese jetzt mal und melde mich dann wieder.

Gruß

Re: Things via VSC erstellen

Verfasst: 26. Aug 2020 14:57
von PeterA
Hier der Link zur Doku des Bindings:

https://github.com/markus7017/myfiles/b ... y25-roller

"can be open (0%), stop, or close (100%); could also handle ON (open) and OFF (close)"

Re: Things via VSC erstellen

Verfasst: 26. Aug 2020 15:12
von scotty
Kurze Info: mit der geänderten rule von peter-pan hat es leider auch nicht funktioniert.

Re: Things via VSC erstellen

Verfasst: 26. Aug 2020 15:47
von OliverCJ
Hast Du den Hinweis von PeterA gelesen? Es liest sich so, als solltest Du nicht UP und DOWN benutzen, sondern open und close oder auch ON und OFF...

Re: Things via VSC erstellen

Verfasst: 26. Aug 2020 16:29
von scotty
Hab ich gelesen und auch getestet...leider erfolglos. Ich weiß keinen Rat mehr...

Re: Things via VSC erstellen

Verfasst: 26. Aug 2020 17:39
von scotty
Dann versuche ich es jetzt mal anders. Wer von euch arbeitet, wie ich, mit Rollershutter in habpanel? Und wie habt ihr die Programmierung über Visual Studio Code gelöst? Angefangen über Things, Items, Gruppen und vor allem, wie werden die Gruppen bei euch gesteuert.
Vielleicht gibt es ja noch andere Lösungsansätze.

Gruß

Re: Things via VSC erstellen

Verfasst: 26. Aug 2020 17:57
von peter-pan
...nicht aufgeben.

Ich habe mir mal kurz ein kleines Testszenario aufgebaut:

.items

Code: Alles auswählen

Group:Rollershutter gAlleShutters
Group:Rollershutter gGartenShutters
Group:Rollershutter gTerrasseShutters  "Gruppe Terrassen-Shutters [%f.0]"
Group:Rollershutter gVorneShutters
Rollershutter rollTerrLi   "Terrasse links [%f.0]"  (gAlleShutters, gGartenShutters, gTerrasseShutters) // ["Rollershutter"] {channel="shelly:shelly25-roller:xxxxxxxxxxxx:roller#control"}
Rollershutter rollTerrRe   "Terrasse rechts [%f.0]" (gAlleShutters, gGartenShutters, gTerrasseShutters) // ["Rollershutter"] {channel="shelly:shelly25-roller:xxxxxxxxxxxx:roller#control"}
.rules

Code: Alles auswählen

rule "weiterleiten"
when
    Item gTerrasseShutters received command
then 
    logInfo("shutter","Rule weiterleiten wurde getriggert {}.",triggeringItem.name)
    if(receivedCommand instanceof Number) return; // Number sollte auf jeden Fall funktionieren
    gTerrasseShutters.members.forEach[r|
        logInfo("shutter","Item {} wird mit {} angesteuert.",r.name,receivedCommand)
        var String strCommand = "STOP"
        if(receivedCommand == UP) strCommand = "0"
        if(receivedCommand == DOWN) strCommand = "100"
        r.sendCommand(strCommand)
        logInfo("shutter","Item {} hat jetzt Status {} .",r.name,r.state)
    ]
end
Logging:

Code: Alles auswählen

2020-08-26 17:48:21.242 [INFO ] [lipse.smarthome.model.script.shutter] - Rule weiterleiten wurde getriggert.gTerrasseShutters
2020-08-26 17:48:21.248 [INFO ] [lipse.smarthome.model.script.shutter] - Item rollTerrRe wird mit DOWN angesteuert.
2020-08-26 17:48:21.255 [INFO ] [lipse.smarthome.model.script.shutter] - Item rollTerrRe hat jetzt Status 100 .
2020-08-26 17:48:21.259 [INFO ] [lipse.smarthome.model.script.shutter] - Item rollTerrLi wird mit DOWN angesteuert.
2020-08-26 17:48:21.268 [INFO ] [lipse.smarthome.model.script.shutter] - Item rollTerrLi hat jetzt Status 100 .
2020-08-26 17:48:22.658 [INFO ] [lipse.smarthome.model.script.shutter] - Rule weiterleiten wurde getriggert.gTerrasseShutters
2020-08-26 17:48:22.664 [INFO ] [lipse.smarthome.model.script.shutter] - Item rollTerrRe wird mit UP angesteuert.
2020-08-26 17:48:22.687 [INFO ] [lipse.smarthome.model.script.shutter] - Item rollTerrRe hat jetzt Status 0 .
2020-08-26 17:48:22.693 [INFO ] [lipse.smarthome.model.script.shutter] - Item rollTerrLi wird mit UP angesteuert.
2020-08-26 17:48:22.720 [INFO ] [lipse.smarthome.model.script.shutter] - Item rollTerrLi hat jetzt Status 0 .
Also grundsätzlich funktioniert die Regel, wie du siehst. Allerdings habe ich die Channel-Links auskommentiert, da ich kein Shelly-Binding habe.

Die Regel hat nicht funktioniert (die Items hatten Status NULL) als ich die Channel-Definitionen nicht auskommentiert habe.

Dumme Frage ! Hast du das Binding installiert ?

Re: Things via VSC erstellen

Verfasst: 26. Aug 2020 18:10
von scotty
Dumme Fragen gibt es doch nicht ;) Im Ernst, ja das Binding habe ich installiert. Die Regel funktioniert auch bei mir, allerdings haben auch bei mir die Items Status NULL. Ich verstehe nur nicht, warum sich die Shutter einzeln über Widgets bedienen lassen und über die Gruppe nicht. Das müsste doch die Fehlersuche schon eingrenzen.

Re: Things via VSC erstellen

Verfasst: 26. Aug 2020 18:11
von PeterA
Mein Shelly Rollladen Setup ist schon etwas älter und weiß nicht ob Dich das weiter bringt.
Ich bin hier noch auf OH 2.4 und es läuft alles über MQTT.

Re: Things via VSC erstellen

Verfasst: 26. Aug 2020 18:30
von scotty
Ich glaube, das Problem gefunden zu haben. Die Channel-Bezeichnung, also die Buchstaben am Ende der Item-Zeile war klein statt groß geschrieben. Jetzt laufen die Shutter kurz an.
Was bewirkt eigentlich [%f.0] ?