NEWS
Neuer Adapter: sequence / Schrittkette
-
Hallo,
um Schrittketten/Abläufe übersichtlich programmieren und visualisieren zu können, habe ich einen neuen Adapter erstellt. Dieser Adapter ermöglicht aktuell den Aufbau einer Schrittkette mit max. 10 Schritten.
Hier die ioBroker Dateien:
Mein Test View:
Init Skript zum Testen:
Die aktuelle Version des Adapters ist zum Testen/Spielen gedacht (keinesfalls produktiv einsetzen)! In einer ausgereiften Version werde ich diesen Adapter auf github/ npm stellen. Aktuell kann er nur manuell installiert werden.
Hier meine Beschreibung aus README.MD:
#Sequence Adapter for ioBroker
##Description:
This adapter offers the configuration of command sequences (different commands, that are triggered after each other).
The sequence is built of multiple steps ('outputs.sequence.xx' and 'inputs.sequence.xx')
and a common control block ('outputs.cmd.xx' and 'inputs.cmd.xx'). Up to now, the sequence adapter supports one
sequence chain, with up to 10 steps.
##The command unit contains:
-
'inputs.cmd.start' Starts sequence
-
'inputs.cmd.stop' Stops sequence
-
'inputs.cmd.next' Manual switch to next step
-
'inputs.cmd.noOfLastStep' Number of the last step. After this step, the sequence is finished.
-
'outputs.cmd.started'
-
'outputs.cmd.stopped'
-
'outputs.cmd.error'
-
'outputs.cmd.lastStepNo'
-
'outputs.cmd.lastStepName'
-
'outputs.cmd.currentStepNo'
-
'outputs.cmd.currentStepName'
-
'outputs.cmd.nextStepNo'
-
'outputs.cmd.nextStepName'
-
'outputs.cmd.remainingWaitingTime'
-
'outputs.cmd.remainingMonitoringTime'
##Each step contains (xx is the step number 1..10):
-
A symbolic step name 'inputs.sequence.name_xx'
-
A monitoring time in mSec 'inputs.sequence.monitoringTime_xx'
-
A command string input 'inputs.sequence.commandString_xx'
-
A command output 'outputs.sequence.cmd_xx'
-
An input for command feedback 'inputs.sequence.condition_xx' or an waiting time 'T=' (mSec)
##Common step IOs:
-
'outputs.sequence.cmd' always writes the command of the current step out. All step commands are written to this output sequentially.
-
'inputs.sequence.condition' is a common condition input for all steps.
##Input values:
All condition inputs accept any value (which is not null/undefined/0/false) as TRUE.
If a condition value has ACK==true, it will be ignored. A configured waiting time will with ACK==true will not be ignored.
After reading input values, the ACK is set to TRUE.
##Workflow:
-
If 'inputs.cmd.start' is set, the sequence switches to STEP1. The CMD outputs will be flushed. The condition inputs will not be touched!
-
The command from 'inputs.sequence.commandString_01' is written to 'outputs.sequence.cmd_01' and to 'outputs.sequence.cmd'
-
If 'inputs.sequence.monitoringTime_01' is larger than 0, the monitoring time is started.
-
If 'inputs.sequence.condition_01' or 'inputs.sequence.condition' is set, the sequence switches to STEP2
-
If the monitoring timeout exceeds, the sequence is STOPPED and 'outputs.cmd.error' is set.
-
'Inputs.CMD.Stop' stops the sequence in case of an error
-
Instead of using a feedback value at 'inputs.sequence.condition_01', a waiting time in mSec can be configured
(e.g. 1 second 'T=1000')
Tobias
-
-
Hallo Tobias
Sieht toll aus!
Ich hab es jetzt versucht ans Laufen zu bekommen.
Da ich hier aber der Quatendepp bin, habe ich es natürlich nicht geschafft.
Ordner heruntergeladen
Ordner entzippt
Ordner in /opt/iobroker kopiert
Und nu :?: :?:
iobroker upload - njet
EDIT
Mein Fehler! :oops: :oops:
Der Ordner hatte noch einen Ordner drin - zu viele Ebenen !!
Läuft!
Gruß
Rainer
-
-
nach /opt/iobroker/node_modules kopieren
-
auf Adapter-Update klicken
=> Dann sollte er unter 'scripts and logic' sichtbar sein
das sollte es sein
Tobias
-
-
War es auch :oops: :oops:
siehe edit:
Gruß
Rainer