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] – [VID/PID prüfen] akuhtz | tools:scripting-node-syntax [2024/08/26 09:35] (aktuell) – [Makro konfigurieren] delete macro 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 | ||
+ | </ | ||
+ | |||
+ | |||
+ | Makro löschen: | ||
+ | < | ||
+ | delete macro 0 | ||
+ | |||
+ | delete macro $currentMacroIndex | ||
+ | set macro ${currentMacroIndex} name="" | ||
+ | </ | ||
Zeile 219: | Zeile 232: | ||
add aspect 0 macroname=%weiche1Gerade% | add aspect 0 macroname=%weiche1Gerade% | ||
add aspect 1 macronumber=1 | add aspect 1 macronumber=1 | ||
+ | |||
+ | ## set the name of the aspect | ||
+ | add aspect 2 macronumber=2 aspectname=" | ||
</ | </ | ||
+ | |||
Das Startup-Verhalten eines Accessorys kann mit folgendem Befehl definiert werden: | Das Startup-Verhalten eines Accessorys kann mit folgendem Befehl definiert werden: | ||
< | < | ||
Zeile 227: | Zeile 244: | ||
:!: Das Accessory wird auf den Knoten übertragen und permanent gespeichert! | :!: Das Accessory wird auf den Knoten übertragen und permanent gespeichert! | ||
+ | |||
+ | Accessory löschen erfolgt mit folgendem Befehl: | ||
+ | < | ||
+ | ## delete the accessory: Remove all steps and set the params to default values | ||
+ | delete accessory 0 | ||
+ | set accessory ${currentAccessoryIndex} name="" | ||
+ | </ | ||
+ | |||
===== Templatebefehle | ===== Templatebefehle | ||
Zeile 358: | Zeile 383: | ||
Mit der Kombination aus PID / VID [[http:// | Mit der Kombination aus PID / VID [[http:// | ||
- | Die VID (Vedor-ID) und PID (Product-ID) sind Bestandteil der UID (Unique-ID). | + | Die VID (Vendor-ID) und PID (Product-ID) sind Bestandteil der UID (Unique-ID). |
Beispiel: | Beispiel: | ||
Zeile 386: | Zeile 411: | ||
## | ## | ||
</ | </ | ||
+ | |||
+ | ==== 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 424: | Zeile 460: | ||
* '' | * '' | ||
* '' | * '' | ||
- | * '' | + | * '' |
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | | ||
Zeile 474: | Zeile 516: | ||
</ | </ | ||
+ | ===== 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 512: | Zeile 563: | ||
====== 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 531: | Zeile 585: | ||
- | ===== 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.1599846456.txt.gz · Zuletzt geändert: 2020/09/11 19:47 von akuhtz