CommanderXXL / homeauto

Helpers and scripts for home automatization
0 stars 0 forks source link

Selector IDs werden nicht gefunden #3

Closed Andreas9030 closed 3 years ago

Andreas9030 commented 3 years ago

Hi, Wenn ich dein Script (aus youtube) laufen lassen findet er bei mir keine Einträge. Ich habe aus "sensors" "Sensors" gemacht aber auch da geht nichts. Kannst du mir helfen? IMG_4976

Vielen Dank Andreas

CommanderXXL commented 3 years ago

Hi Andreas, also zunächst mal fällt mir auf dass du scheinbar eine alte Version des Deconz Adapters nutzt. Der neue hat keine Aufsteigenden Nummern mehr sondern die Pysikalischen Zigbee Adressen. Das hat den Vorteil dass man auch wenn man die Geräte neu anmelden muss nicht alles anpassen muss sondern die Scripte usw. direkt wieder die Geräte sehen. Ich habe mal die neue Version meines Scripts hochgeladen jetzt, da aber dort das *.battery in einem Unterordner von den Geräten liegt musste ich die Namensfindung etwas anpassen, es wird also nicht gehen bis du den neuen Deconz Adapter nutzt es sei denn du änderst es wieder. Und was deine eigentliche Frage angeht, ich glaube du musst den Script Adapter vorher einmal neustarten, sonst puffert der irgendwelche Sachen und findet dann eine alte Version der Einträge durch den Selector. Lass dir im Script einfach mal mit einem DebugLog die Liste die der Selector gefunden hat ausgeben und schau ob da die Einträge drin sind.

Andreas9030 commented 3 years ago

Hi, ich nutze den deConz Version: 2.7.1. Gibt es einen Neueren? Laut Git ist deConz 2.x.x gestoppt. Soll nicht auch der Zigbee gehen? Das alte Script findet bei "falls Object-->Regex" schon nichts. Komisch...

Andreas9030 commented 3 years ago

Mein Ziel wäre hier alle BatteriInfos auszulesen. Hier bin ich als erstes gestolpert...

IMG_4977

id BatteryLevels LowBatText DeviceList LowBatCount deviceID DeviceParentID CurrentDeviceName objectFromID cmV0dXJuIGdldE9iamVjdChpZCk7 Beschreibe diese Funktion … ne vis.0.datapoints.DebugStart BatteryLevels DeviceBatteryLevels BatteryLevels {"role":"variable","type":"mixed"} LowBatText Keine Geräte mit niedrigem Batteriestand LowBatteries LowBatText {"role":"variable","type":"string"} ne default (netatmo.0.*.BatteryState) DeviceList channel[state.id=netatmo.0.*.BatteryState] LowBatCount 0 deviceID DeviceList DeviceParentID FROM_START FROM_START deviceID 1 MINUS 1 LAST deviceID . 1 DeviceParentID FROM_START FROM_START DeviceParentID 1 MINUS 1 LAST DeviceParentID . 1 CurrentDeviceName common.name DeviceParentID EQ FIRST BatteryLevels CurrentDeviceName 0 INSERT LAST BatteryLevels CurrentDeviceName INSERT LAST BatteryLevels val deviceID LT val deviceID 100 EQ LowBatCount 0 LowBatText Geräte mit niedrigem Batteriestand: LowBatCount 1 1 LowBatText CurrentDeviceName LowBatText hat nur noch LowBatText val deviceID LowBatText Prozent Batterie, javascript.0.DeviceBatteryLevels FALSE BatteryLevels javascript.0.LowBatteries FALSE LowBatText log Nix gefunden
CommanderXXL commented 3 years ago

Hi Andreas, tatsache, du hast Recht der neue 2.x deconz Adapter wird gerade nicht mehr weiterentwickelt, darum hast du noch die alten 1.x er Nummern während ich die neuen 2.x Zigbee Adressen hab. Da kann ich jetzt leider bei mir nicht mehr zurück denn mit den Nummern sind meine Scripte gar nicht gut zurecht gekommen aber naja. Zu deinem Problem, nimm mal den Trigger komplett weg und zieh den Teil des Scripts im Trigger einfach aus dem Trigger heraus und unter den Trigger. Dann Rechtsklick auf den Trigger und dort das Element deaktivieren. Dann führ das Script einfach aus. Er müsste dann den unteren Teil direkt laufen lassen und alle eventuellen Debug Logs ausgeben. Lass dir auf jeden Fall in einem Debug Log die Liste "DeviceList" ausgeben, die du duch den Selector bekommst. Die muss auf alle Fälle Einträge enthalten wenn dein Selector das richtige Format hat und du den Script Adapter einmal neu gestartet hast vorher.

Andreas9030 commented 3 years ago

Hi, hab es mittlerweile am laufen. Danke