tools:scripting-node-syntax
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
tools:scripting-node-syntax [2020/09/11 19:47] – [Script Header] akuhtz | tools:scripting-node-syntax [2022/09/27 08:03] (aktuell) – [Makro konfigurieren] akuhtz | ||
---|---|---|---|
Zeile 9: | Zeile 9: | ||
**Basisbefehle** sind Anweisungen an den Knoten, bestimmte Einstellungen durchzuführen (z.B. bei einem Lichtport die Helligkeit einzustellen). Basisbefehle bestehen aus einem Anweisungswort und zugehörigen Parametern. Befehle und Parameter müssen gültige Anweisungen ergeben, sonst wird die Anweisung nicht ausgeführt. | **Basisbefehle** sind Anweisungen an den Knoten, bestimmte Einstellungen durchzuführen (z.B. bei einem Lichtport die Helligkeit einzustellen). Basisbefehle bestehen aus einem Anweisungswort und zugehörigen Parametern. Befehle und Parameter müssen gültige Anweisungen ergeben, sonst wird die Anweisung nicht ausgeführt. | ||
- | **Templatebefehle** sind vorgelagerte Anweisungen zur Textersetzung. Es wird die Templatesyntax [[https:// | + | **Templatebefehle** sind vorgelagerte Anweisungen zur Textersetzung. Es wird die Templatesyntax |
**Menübefehle** sind nochmal vorgelagert und werden verwendet, um ein Menü anzuzeigen, in welchem Parameter vom Benutzer abgefragt werden - wie z.B. welche Ports verwendet werden sollen. Diese Parameter werden internen Variablen zugewiesen und können dann mit Hilfe der Templates ausgewertet werden. | **Menübefehle** sind nochmal vorgelagert und werden verwendet, um ein Menü anzuzeigen, in welchem Parameter vom Benutzer abgefragt werden - wie z.B. welche Ports verwendet werden sollen. Diese Parameter werden internen Variablen zugewiesen und können dann mit Hilfe der Templates ausgewertet werden. | ||
Zeile 135: | Zeile 135: | ||
</ | </ | ||
^ config | ^ config | ||
- | | macro | repeat | + | | macro | repeat |
| | slowdown | | | slowdown | ||
| macrotime | | macrotime | ||
Zeile 196: | Zeile 196: | ||
| switch | on / off | | | switch | on / off | | ||
| switchpair | on / off | | | switchpair | on / off | | ||
- | | light | on / off / up / down / neon/ blinka / blinkb / flasha / flashb / doubleflash | | + | | light | on / off / up / down / neon / blinka / blinkb / flasha / flashb / doubleflash | |
| input | query0 / query1 | | | input | query0 / query1 | | ||
| accessoryOkay | no_feedback / query0 / query1 | | | accessoryOkay | no_feedback / query0 / query1 | | ||
Zeile 208: | Zeile 208: | ||
Für die Typen '' | Für die Typen '' | ||
+ | Weitere Beispiele: | ||
+ | < | ||
+ | add step ptype=accessoryOkay action=no_feedback | ||
+ | </ | ||
Zeile 356: | Zeile 360: | ||
==== VID/PID prüfen ==== | ==== VID/PID prüfen ==== | ||
- | Die VID (Vedor-ID) und PID (Product-ID) sind Bestandteil der UID (Unique-ID). | + | Mit der Kombination aus PID / VID [[http:// |
+ | |||
+ | Die VID (Vendor-ID) und PID (Product-ID) sind Bestandteil der UID (Unique-ID). | ||
Beispiel: | Beispiel: | ||
Zeile 384: | Zeile 390: | ||
## | ## | ||
</ | </ | ||
+ | |||
+ | ==== Firmware-Version prüfen ==== | ||
+ | |||
+ | ## ab Wizard-Build 4490 | ||
+ | |||
+ | Um die Firmware-Version zu prüfen, kann die ''## | ||
+ | < | ||
+ | ## | ||
+ | </ | ||
+ | |||
+ | Mit der obigen Anweisung wird geprüft ob der Knoten eine Firmware-Version >= min und Firmware-Version < max hat. Der max Wert ist also exclusive. Ist dies nicht der Fall wird eine Fehlermeldung angezeigt. Die Werte für die Firmware-Version müssen im Format #.#.# angegeben werden. | ||
==== Autor ==== | ==== Autor ==== | ||
Zeile 422: | Zeile 439: | ||
* '' | * '' | ||
* '' | * '' | ||
- | * '' | + | * '' |
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | | ||
Zeile 472: | Zeile 495: | ||
</ | </ | ||
+ | ===== Formattierung von Zahlen ===== | ||
+ | Mit folgender Erweiterung '' | ||
+ | |||
+ | < | ||
+ | set switch ${switchPort0} name=" | ||
+ | set switch ${switchPort1} name=" | ||
+ | </ | ||
+ | |||
+ | Weitere Info siehe [[https:// | ||
====== Tricks mit Velocity ====== | ====== Tricks mit Velocity ====== | ||
Zeile 510: | Zeile 542: | ||
====== Textreste | ====== Textreste | ||
- | **Tipps zu velocity**\\ | + | **Tipps zu velocity** |
- | Der Kontext ist eine Map< | + | |
- | Die #set-Zeilen im Script legen dann die Variablen in den Kontext rein und diese werden dann später beim Ersetzen verwendet. Die aufgerufene Funktion kann die Werte mit dem Key wieder rausholen. | + | Der Kontext ist eine '' |
+ | |||
+ | Die '' | ||
Erläuterung hierzu: https:// | Erläuterung hierzu: https:// | ||
- | Text wieder anzeigen: velocityEngine.Evaluate() | + | Text wieder anzeigen: |
Alles ab hier ist noch Sammelsurium ! | Alles ab hier ist noch Sammelsurium ! | ||
Zeile 529: | Zeile 564: | ||
- | ===== Script Header | + | ===== Macro Level ===== |
<WRAP center round important 60%> | <WRAP center round important 60%> | ||
- | |||
- | |||
- | Mit der Kombination aus PID / VID [[http:// | ||
Zusätzlich ist der Macro-Level zu prüfen. Der Macro-Level bezeichnet den Funktionsumfang der Makro-Engine und wird vom Knoten per Feature bekannt gegeben. | Zusätzlich ist der Macro-Level zu prüfen. Der Macro-Level bezeichnet den Funktionsumfang der Makro-Engine und wird vom Knoten per Feature bekannt gegeben. |
tools/scripting-node-syntax.1599846426.txt.gz · Zuletzt geändert: 2020/09/11 19:47 von akuhtz