-
Autor
Hallo zusammen,
ich habe ein Problem mit einem Scriptbefehl am Plus Uni.
Zur Einleitung: Ich habe den Plus Uni mit Sensoren bestückt (z.B. Impuls-Windsensor am Count-In oder Helligkeitssensor am Analog-In). Das funktioniert seit Monaten problemlos und ich steuere über Szenen z.B. Markisen, Gartenlicht usw.. Da ich mit den Szenen zunehmend an die Grenzen komme, lerne ich nun Scripting.
Es gelingt mir dabei nicht, die Windgeschwindigkeit (xfreq) mit dem Befehl Shelly.getComponentStatus in das Script einzulesen. Mit dem Browser Befehl GetStatus sehe ich, dass die Information am input:2 vorliegt. Bild 1 zeigt die Fehlermeldung. Dabei ist unabhängig, ob ich xfreq, freq oder gleich das ganze Objekt einlese. Die Variable im Hauptprogramm zu definieren hilft auch nicht, dann kommt die Meldung "Too many scopes remove at init()".
Als nächstes habe ich probiert, anstelle des Windsensors, die Daten des Helligkeitssensors (input:100) einzulesen --> identes Problem. Das Einlesen der internen Daten wie z.B. unixtime oder mem_free funktioniert hingegen problemlos. Das Problem kann also auf die externen Sensoren eingegrenzt werden.
Lese ich hingegen über einen anderen Shelly mit Shelly.call die Daten über das Netzwerk ein --> funktioniert.
Komplett verwundert bin ich aber, als ich testweise den Befehl wie in Bild 2 ausgeführt habe, also ohne function und ohne Einsprungpunkt über init. Da funktioniert das Einlesen, hilft mir aber nicht, da eine function immer sinnvollerweise notwendig ist.
Übersehe ich als Anfänger hier was grundlegendes oder ist das ein bug?
Danke.