node-red
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
<!--
|
||||
Copyright JS Foundation and other contributors, http://js.foundation
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<script type="text/html" data-help-name="inject">
|
||||
<p>Injektion einer Nachricht manuell oder in regelmäßigen Intervallen in einen Flow.
|
||||
Bei den Nutzdaten (Payload) der Nachricht kann es sich um eine Vielzahl von Typen handeln,
|
||||
einschließlich Zeichenfolgen (string), JavaScript-Objekte oder die aktuelle Zeit.</p>
|
||||
<h3>Ausgangsdaten</h3>
|
||||
<dl class="message-properties">
|
||||
<dt>payload <span class="property-type">Verschiedene Typen</span></dt>
|
||||
<dd>Eingestellte Nutzdaten (Payload) der Nachricht.</dd>
|
||||
<dt class="optional">topic <span class="property-type">string</span></dt>
|
||||
<dd>Optional nutzbare Nachrichten-Eigenschaft.</dd>
|
||||
</dl>
|
||||
<h3>Details</h3>
|
||||
<p>Der inject-Node kann einen Flow mit einstellbaren Nutzdaten (Payload) starten.
|
||||
Der voreingestellte Payload ist die aktuelle Zeit als Zeitstempel in Millisekunden
|
||||
seit Beginn der Unix-Zeitrechnung (1. Januar 1970 UTC).</p>
|
||||
<p>Der Node unterstützt auch die Injektion von Zeichenfolgen, Zahlenwerten, Booleschen Werten,
|
||||
JavaScript-Objekten oder Flow-lokalen oder globalen Kontextwerten.</p>
|
||||
<p>Der Node wird normalerweise manuell ausgelöst, indem im Editor auf seine Schaltfläche geklickt wird.
|
||||
Er kann auch in regelmäßigen Intervallen oder nach einem Zeitplan injizieren.</p>
|
||||
<p>Er kann auch so eingestellt werden, dass er jedes Mal einen Wert injiziert, wenn der Flow gestartet wird.</p>
|
||||
<p>Das maximal einstellbare Intervall beträgt etwa 596 Stunden bzw. 24 Tage.
|
||||
Wenn jedoch Intervalle größer als 24h benötigt werden, sollte ein scheduler-Node verwendet werden,
|
||||
der mit Stromausfällen und Neustarts besser umgehen kann.</p>
|
||||
<p><b>Hinweis</b>: Die Optionen <i>"Intervall zwischen Uhrzeiten"</i> und <i>"Täglicher Zeitpunkt"</i>
|
||||
verwenden das Standard-Cron-System.</p>
|
||||
<p>Beispiel "Intervall zwischen Uhrzeiten": Von 3:00 bis 4:00 in 15-Minuten-Intervall ergibt die Zeitpunkte
|
||||
3:00, 3:15, 3:30, 3:45 und 4:00.</p>
|
||||
<p>Wenn Sie alle 20 Minuten ab sofort verwenden möchten, verwenden Sie die Option<i>"Intervall"</i>.</p>
|
||||
<p><b>Hinweis</b>: Um einen Zeilenvorschub in eine Zeichenfolge einzuschließen, muss ein Funktions-Node
|
||||
zur Erstellung der Nutzdaten (Payload) verwendet werden.</p>
|
||||
</script>
|
||||
@@ -0,0 +1,32 @@
|
||||
<!--
|
||||
Copyright JS Foundation and other contributors, http://js.foundation
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<script type="text/html" data-help-name="debug">
|
||||
<p>Anzeige ausgewählter Nachrichten wahlweise im Debug-Tab, als Node-Status und in der Systemkonsole.
|
||||
Standardmäßig wird <code>msg.payload</code> angezeigt.</p>
|
||||
<h3>Details</h3>
|
||||
<p>Der Debug-Tab zeigt ein strukturiertes Protokoll der empfangenen Nachrichten an,
|
||||
wodurch die ihre Struktur leichter zu verstehen ist.</p>
|
||||
<p>JavaScript-Objekte und -Arrays können nach Bedarf ein- und ausgeblendet werden.
|
||||
Binäre Puffer-Objekte (buffer objects) können nach Möglichkeit als Rohdaten oder als Zeichenfolge (string) angezeigt werden.</p>
|
||||
<p>Neben der eigentlichen Nachricht werden im Debug-Tab auch der Empfangszeitpunkt,
|
||||
der empfangende debug-Node, sowie Name und Typ der Nachricht protokolliert.
|
||||
Durch Klicken auf die Node-ID wird der entsprechende debug-Node im Arbeitsbereich angezeigt.</p>
|
||||
<p>Die Schaltfläche des debug-Nodes kann verwendet werden, um die Debug-Ausgabe ein- und auszuschalten.
|
||||
Es ist empfehlenswert, alle nicht verwendeten debug-Nodes zu deaktivieren oder gleich zu entfernen.</p>
|
||||
<p>Der debug-Node kann auch so eingestellt werden, dass außerdem alle Nachrichten in der Systemkonsole ausgegeben und/oder
|
||||
als kurze Statustexte (max. 32 Zeichen) unter dem debug-Node angezeigt werden.</p>
|
||||
</script>
|
||||
@@ -0,0 +1,29 @@
|
||||
<!--
|
||||
Copyright JS Foundation and other contributors, http://js.foundation
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<script type="text/html" data-help-name="complete">
|
||||
<p>Anstoß eines weiteren Flows, wenn ein anderer Node seine Nachrichtenbearbeitung abgeschlossen hat.</p>
|
||||
<h3>Details</h3>
|
||||
<p>Wenn ein Node die Bearbeitung seiner Nachrichten abgeschlossen hat,
|
||||
kann der complete-Node dazu benutzt werden, einen weiteren Flow anzustoßen.</p>
|
||||
<p>Der Node kann z.B. mit einem anderen Node ohne Ausgang verknüpft werden
|
||||
(z.B. E-Mail-Sende-Node), um den Flow fortzusetzen.</p>
|
||||
<p>Im Node werden dazu die zu überwachenden Nodes des selben Flows ausgewählt.
|
||||
Im Gegensatz zum catch-Node besteht hier jedoch nicht die Auswahlmöglichkeit aller Nodes des Flows.</p>
|
||||
<p>Nicht alle Nodes können diesen Node anstoßen.
|
||||
Es hängt davon ab, ob die auslösenden Knoten diese Funktion unterstützen,
|
||||
welche erst mit Node-RED 1.0 eingeführt wurde.</p>
|
||||
</script>
|
||||
@@ -0,0 +1,41 @@
|
||||
<!--
|
||||
Copyright JS Foundation and other contributors, http://js.foundation
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<script type="text/html" data-help-name="catch">
|
||||
<p>Abfang von Fehlern von Nodes im selben Flow-Tab.</p>
|
||||
<h3>Ausgangsdaten</h3>
|
||||
<dl class="message-properties">
|
||||
<dt>error.message <span class="property-type">string</span></dt>
|
||||
<dd>Fehlermeldung.</dd>
|
||||
<dt>error.source.id <span class="property-type">string</span></dt>
|
||||
<dd>ID des fehlerauslösenden Nodes.</dd>
|
||||
<dt>error.source.type <span class="property-type">string</span></dt>
|
||||
<dd>Typ des fehlerauslösenden Nodes.</dd>
|
||||
<dt>error.source.name <span class="property-type">string</span></dt>
|
||||
<dd>Name des fehlerauslösenden Nodes (falls festgelegt).</dd>
|
||||
</dl>
|
||||
<h3>Details</h3>
|
||||
<p>Wenn ein Node bei der Verarbeitung einer Nachricht einen Fehler verursacht, wird der Flow in der Regel angehalten.
|
||||
Der catch-Node kann verwendet werden, um diese Fehler abzufangen und sie mit einem dedizierten Flow zu bearbeiten.</p>
|
||||
<p>Der Node fängt standardmäßig die Fehler aller Nodes im selben Flow ab.
|
||||
Alternativ kann er auch an bestimmte Nodes gebunden werden.</p>
|
||||
<p>Wenn ein Fehler ausgelöst wird, empfangen alle angebundenen catch-Nodes die Fehlermeldung.</p>
|
||||
<p>Wenn ein Fehler in einem Subflow ausgelöst wird, wird der Fehler von einem catch-Node
|
||||
innerhalb des Subflows abgefangen.
|
||||
Wenn im Subflow keine catch-Nodes vorhanden sind, wird die Fehlermeldung eine Ebene höher zum Flow weitergereicht,
|
||||
in der sich die Subflow-Instanz befindet.</p>
|
||||
<p>Wenn die Nachricht bereits über eine <code>error</code>-Eigenschaft verfügt, wird sie nach <code>_error</code> kopiert.</p>
|
||||
</script>
|
||||
@@ -0,0 +1,34 @@
|
||||
<!--
|
||||
Copyright JS Foundation and other contributors, http://js.foundation
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<script type="text/html" data-help-name="status">
|
||||
<p>Berichten von Statusnachrichten anderer Nodes im selben Flow.</p>
|
||||
<h3>Ausgangsdaten</h3>
|
||||
<dl class="message-properties">
|
||||
<dt>status.text <span class="property-type">string</span></dt>
|
||||
<dd>Statustext.</dd>
|
||||
<dt>status.source.type <span class="property-type">string</span></dt>
|
||||
<dd>Typ des Status meldenden Nodes.</dd>
|
||||
<dt>status.source.id <span class="property-type">string</span></dt>
|
||||
<dd>ID des Status meldenden Nodes.</dd>
|
||||
<dt>status.source.name <span class="property-type">string</span></dt>
|
||||
<dd>Name des Status meldenden Nodes (falls festgelegt).</dd>
|
||||
</dl>
|
||||
<h3>Details</h3>
|
||||
<p>Dieser Node erzeugt keine Nutzdaten (Payload).</p>
|
||||
<p>Der Node meldet standardmäßig den Status aller Nodes im selben Flow.
|
||||
Alternativ kann er auch an bestimmte Nodes gebunden werden.</p>
|
||||
</script>
|
||||
@@ -0,0 +1,37 @@
|
||||
<!--
|
||||
Copyright JS Foundation and other contributors, http://js.foundation
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<script type="text/html" data-help-name="link in">
|
||||
<p>Erstellung virtueller Verbindungen (Links) zwischen Flows.</p>
|
||||
<h3>Details</h3>
|
||||
<p>Der Node kann mit jedem beliebigen link out-Node in einen beliebigen Flow-Tab verlinkt werden.
|
||||
Sobald sie verlinkt sind, verhalten sie sich so, als wären sie direkt miteinander verbunden.</p>
|
||||
<p>Die Links zwischen Link-Nodes werden nur angezeigt, wenn ein Link-Node ausgewählt ist.
|
||||
Wenn Links zu anderen Flow-Tabs vorhanden sind, werden virtuelle Link-Nodes als Gegenparts angezeigt,
|
||||
über die durch Klicken zum entsprechenden Flow-Tab gesprungen werden kann.</p>
|
||||
<p><b>Hinweis</b>: Links können zu Subflows weder rein- noch rausgehend erstellt werden.</p>
|
||||
</script>
|
||||
|
||||
<script type="text/html" data-help-name="link out">
|
||||
<p>Erstellung virtueller Verbindungen (Links) zwischen Flows.</p>
|
||||
<h3>Details</h3>
|
||||
<p>Der Node kann mit jedem beliebigen link in-Node in einen beliebigen Flow-Tab verlinkt werden.
|
||||
Sobald sie verlinkt sind, verhalten sie sich so, als wären sie direkt miteinander verbunden.</p>
|
||||
<p>Die Links zwischen Link-Nodes werden nur angezeigt, wenn ein Link-Node ausgewählt ist.
|
||||
Wenn Links zu anderen Flow-Tabs vorhanden sind, werden virtuelle Link-Nodes als Gegenparts angezeigt,
|
||||
über die durch Klicken zum entsprechenden Flow-Tab gesprungen werden kann.</p>
|
||||
<p><b>Hinweis</b>: Links können zu Subflows weder rein- noch rausgehend erstellt werden.</p>
|
||||
</script>
|
||||
@@ -0,0 +1,22 @@
|
||||
<!--
|
||||
Copyright JS Foundation and other contributors, http://js.foundation
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<script type="text/html" data-help-name="comment">
|
||||
<p>Kommentierung von Flows.</p>
|
||||
<h3>Details</h3>
|
||||
<p>Das Textfeld des Nodes verwendet den Markdown-Syntax.
|
||||
Der eingegebene Text wird in der Info-Seitenleiste angezeigt.</p>
|
||||
</script>
|
||||
@@ -0,0 +1,28 @@
|
||||
<!--
|
||||
Copyright JS Foundation and other contributors, http://js.foundation
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<script type="text/html" data-help-name="unknown">
|
||||
<p>Unbekannter Node-Typ für diese Node-RED-Installation.</p>
|
||||
<h3>Details</h3>
|
||||
<p><i>Wenn Sie den Node in diesem Zustand übernehmen (deploy), wird die Konfiguration beibehalten,
|
||||
aber der Flow wird erst gestartet, wenn der fehlende Node-Typ installiert ist.</i></p>
|
||||
<p>Benutzen Sie Menü-Option <code>Palette verwalten</code>, um die fehlenden Nodes zu suchen und zu installieren,
|
||||
oder verwenden Sie <b>npm install <module></b>, um die fehlenden Module zu installieren.
|
||||
Starten Sie danach Node-RED neu und importieren Sie die Nodes erneut.</p>
|
||||
<p>Es ist möglich, dass der Node-Typ bereits installiert ist, aber bestimmte Abhängigkeiten vermisst werden.
|
||||
Prüfen Sie das Node-RED-Protokoll auf Fehlermeldungen in Bezug auf den vermissten Node-Typ.</p>
|
||||
<p>Andernfalls kontaktieren Sie den Entwickler des Nodes, um Informationen über den vermissten Node-Typ zu bekommen.</p>
|
||||
</script>
|
||||
@@ -0,0 +1,61 @@
|
||||
<!--
|
||||
Copyright JS Foundation and other contributors, http://js.foundation
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<script type="text/html" data-help-name="function">
|
||||
<p>JavaScript-Funktion zur Weiterverarbeitung eingehender Nachrichten.</p>
|
||||
<p>Die empfangenen Nachrichten werden der Funktion als JavaScript-Objekt mit dem Namen <code>msg</code> übergeben.</p>
|
||||
<p>Per Konvention enthält die <code>msg.payload</code>-Eigenschaft die eigentliche Nachricht.</p>
|
||||
<p>Von der Funktion wird erwartet, dass sie ein (oder mehrere) Nachrichtenobjekt(e) zurückgibt.
|
||||
Es kann aber auch nichts zurückgeben werden, um einen Flow zu stoppen.</p>
|
||||
<p>In den <b>Start</b>-Tab kann Code eingetragen werden, der beim Node-Start ausgeführt wird.
|
||||
In den <b>Stopp</b>-Tab kann Code eingetragen werden, der beim Node-Stopp ausgeführt wird.</p>
|
||||
<p>Wenn ein promise-Objekt aus dem Start-Code zurückgegeben wird,
|
||||
beginnt danach die reguläre Verarbeitung der Eingangsnachrichten.</p>
|
||||
<h3>Details</h3>
|
||||
<p>Siehe <a target="_blank" href="https://nodered.org/docs/writing-functions.html">Onlinedokumentation</a>
|
||||
für weitere Informationen zum Schreiben von Funktionen.</p>
|
||||
<h4><b>Nachrichten senden</b></h4>
|
||||
<p>Die Funktion kann die Nachrichten zurückgeben, die sie an die nächsten Nodes im Flow weitergeben möchte,
|
||||
oder kann <code>node.send(msg)</code> aufrufen.</p>
|
||||
<p>Es kann folgendes zurückgeben/senden werden:</p>
|
||||
<ul>
|
||||
<li>Ein einzelnes Nachrichtenobjekt, das an Nodes am ersten Ausgang übergeben wird</li>
|
||||
<li>Ein Array von Nachrichtenobjekten, die an die Nodes an den entsprechenden Ausgängen übergeben werden</li>
|
||||
</ul>
|
||||
<p><b>Hinweis</b>: Der Start-Code wird nur während der Initialisierung des Nodes ausgeführt.
|
||||
Wenn <code>node.send</code> im Start-Code aufgerufen wird, können nachfolgende Nodes die Nachricht möglicherweise nicht empfangen.</p>
|
||||
<p>Wenn ein Element des Arrays selbst ein Array von Nachrichten ist, werden mehrere Nachrichten an den entsprechenden Ausgang gesendet.</p>
|
||||
<p>Wenn null zurückgegeben wird, entweder direkt oder als ein Array-Element, wird keine Nachricht weitergegeben.</p>
|
||||
<h4><b>Protokollierung und Fehlerbehandlung</b></h4>
|
||||
<p>Um alle Informationen zu protokollieren oder einen Fehler zu melden, sind die folgenden Funktionen verfügbar:</p>
|
||||
<ul>
|
||||
<li><code>node.log("Protokollnachricht")</code></li>
|
||||
<li><code>node.warn("Warnmeldungstext")</code></li>
|
||||
<li><code>node.error("Fehlermeldungstext")</code></li>
|
||||
</ul>
|
||||
</p>
|
||||
<p>Der catch-Node kann auch zur Bearbeitung von Fehlern verwendet werden.
|
||||
Er wird aufgerufen, indem <code>msg</code> als zweites Argument an <code>node.error</code> übergeben wird:</p>
|
||||
<pre>node.error("Fehlermeldungstext" ,msg);</pre>
|
||||
<h4><b>Zugriff auf Node-Informationen</b></h4>
|
||||
<p>Im Funktionsblock können die ID und der Name des Nodes mit den folgenden Eigenschaften referenziert werden:</p>
|
||||
<ul>
|
||||
<li><code>node.id</code> - ID des Nodes</li>
|
||||
<li><code>node.name</code> - Name des Nodes</li>
|
||||
</ul>
|
||||
<h4><b>Umgebungsvariablen verwenden</b></h4>
|
||||
<p>Auf Umgebungsvariablen kann mit <code>env.get("Umgebungsvariablenname")</code> zugegriffen werden.</p>
|
||||
</script>
|
||||
@@ -0,0 +1,47 @@
|
||||
<!--
|
||||
Copyright JS Foundation and other contributors, http://js.foundation
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<script type="text/html" data-help-name="switch">
|
||||
<p>Weiterleitung von Nachrichten basierend auf den Werten ihrer Eigenschaften oder Position in der Sequenz.</p>
|
||||
<h3>Details</h3>
|
||||
<p>Bei Eingang einer Nachricht wertet der Node einstellbare Regeln aus und
|
||||
leitet die Nachricht an den entsprechenden Ausgang der erfüllten Regel weiter.</p>
|
||||
<p>Optional kann der Node so eingestellt werden, dass er die Auswertung nach der ersten erfüllten Regel beendet.</p>
|
||||
<p>Die Regeln können anhand einer einzelnen Nachrichteneigenschaft, einer Flow- oder globalen Kontext-Eigenschaft oder
|
||||
anhand dem Ergebnis eines JSONata-Ausdrucks ausgewertet werden.</p>
|
||||
<h4><b>Regeln</b></h4>
|
||||
<p>Es gibt vier Regeltypen:</p>
|
||||
<ol>
|
||||
<li><b>value rules</b>: Regeln werden hinsichtlich einer eingestellten Eigenschaft ausgewertet</li>
|
||||
<li><b>sequence rules</b>: Regeln beziehen sich auf Nachrichtensequenzen,
|
||||
wie sie beispielsweise durch den split-Node erzeugt werden</li>
|
||||
<li>Ein <b>JSONata-Ausdruck</b> kann die gesamte Eingangsnachricht auswerten und einen <code>true</code>-Wert zurückliefern,
|
||||
um eine Regelerfüllung zu signalisieren</li>
|
||||
<li>Die <b>ansonsten</b>-Regel wird angewendet, wenn keine vorhergehende Regel übereinstimmt</li>
|
||||
</ol>
|
||||
<h4><b>Bemerkungen</b></h4>
|
||||
<p>Die Regeln <code>ist true/false</code> und <code>ist null</code> führen strenge Vergleiche mit diesen Typen durch.
|
||||
Sie konvertieren nicht zwischen den Typen.</p>
|
||||
<p>Die Regeln <code>ist leer</code> und <code>ist nicht leer</code> können nur für Zeichenfolgen (string), Datenfelder (array) und binäre Puffer (buffer) benutzt werden,
|
||||
sowie für Objekte, bei denen auf die Anzahl der Eigenschaften geprüft wird.
|
||||
Die Regel ist niemals erfült, wenn die Eigenschaft einen <code>boolean</code>-, <code>null</code>- oder <code>undefined</code>-Wert hat.
|
||||
<h4><b>Behandlung von Nachrichtensequenzen</b></h4>
|
||||
<p>Standardmäßig ändert der Node nicht die <code>msg.parts</code>-Eigenschaft für Nachrichten, die Teil einer Sequenz sind.</p>
|
||||
<p>Bei aktivierter Option <b>Nachrichtensequenzen erzeugen</b> werden Nachrichtensequenzen für jede passende Regel erzeugt.
|
||||
In diesem Modus puffert der Node die gesamte eingehende Sequenz, bevor er die neuen Sequenzen weiter sendet.
|
||||
Mit der Laufzeiteinstellung <code>nodeMessageBufferMaxLength</code> kann begrenzt werden,
|
||||
wie viele Nachrichten im Node zwischengespeichert werden sollen.</p>
|
||||
</script>
|
||||
@@ -0,0 +1,38 @@
|
||||
<!--
|
||||
Copyright JS Foundation and other contributors, http://js.foundation
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<script type="text/html" data-help-name="change">
|
||||
<p>Setzen, Ändern, Löschen oder Verschieben von Eigenschaften einer Nachricht, eines Flow- oder eines globalen Kontextes.</p>
|
||||
<p>Im Node können mehrere Regeln definiert werden, die in vorgegebener Reihenfolge abgearbeitet werden.</p>
|
||||
<h3>Details</h3>
|
||||
<p>Die verfügbaren Operationen sind:</p>
|
||||
<dl class="message-properties">
|
||||
<dt>Setze</dt>
|
||||
<dd>Setzen einer Eigenschaft.
|
||||
Der Wert kann eine Vielzahl von verschiedenen Typen sein oder
|
||||
von einer bestehenden Nachricht- oder einer Kontext-Eigenschaft übernommen werden.</dd>
|
||||
<dt>Ändere</dt>
|
||||
<dd>Suchen und Ersetzen von Teilen einer Eigenschaft.
|
||||
Wenn reguläre Ausdrücke verwendet werden, kann auch durch sogenannte Capture Groups ersetzt werden, z.B. <code>$1</code>.
|
||||
Beim Ersetzen wird der Typ nur geändert, wenn eine vollständige Übereinstimmung vorliegt.</dd>
|
||||
<dt>Lösche</dt>
|
||||
<dd>Löschen einer Eigenschaft.</dd>
|
||||
<dt>Verschiebe</dt>
|
||||
<dd>Verschieben oder umbenennen einer Eigenschaft.</dd>
|
||||
</dl>
|
||||
<!-- <p>Der Typ "expression" verwendet die Abfrage- und Ausdruckssprache <a href="http://jsonata.org/" target="_new">JSONata</a>.</p> -->
|
||||
<!-- was ist mit "expression" gemeint?!? vermutlich nicht mehr aktuell -->
|
||||
</script>
|
||||
@@ -0,0 +1,44 @@
|
||||
<!--
|
||||
Copyright JS Foundation and other contributors, http://js.foundation
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<script type="text/html" data-help-name="range">
|
||||
<p>Umskalierung eines Zahlenwertes auf einen anderen Wertebereich.</p>
|
||||
<h3>Eingangsdaten</h3>
|
||||
<dl class="message-properties">
|
||||
<dt>payload <span class="property-type">number</span></dt>
|
||||
<dd>Der Payload <i>muss</i> eine Zahl sein.
|
||||
Alles andere wird versucht als Zahl interpretiert zu werden und bei Fehlschlag abgelehnt.</dd>
|
||||
</dl>
|
||||
<h3>Ausgangsdaten</h3>
|
||||
<dl class="message-properties">
|
||||
<dt>payload <span class="property-type">number</span></dt>
|
||||
<dd>Der auf den neuen Wertebereich umgerechnete Zahlenwert.</dd>
|
||||
</dl>
|
||||
<h3>Details</h3>
|
||||
<p>Dieser Node skaliert den empfangenen Wert linear.
|
||||
Standardmäßig ist das Ergebnis nicht auf Ausgangswertebereich beschränkt.</p>
|
||||
<p><i>Skalierung und Begrenzung</i> bedeutet,
|
||||
dass das Ergebnis niemals außerhalb des Ausgangswertebereich liegt.</p>
|
||||
<p><i>Skalieren und Begrenzung mit Überlauf</i> bedeutet,
|
||||
dass das Ergebnis in den Ausgangswertebereich <i>über- bzw. umlaufend gepackt</i> wird.</p>
|
||||
<p>Beispiel einer Skalierung vom Eingangswerterbereich 0-10 auf Ausgangswertebereich 0-100:</p>
|
||||
<table style="outline-width:#888 solid thin">
|
||||
<tr><th width="260px">Modus</th><th width="110px">Eingangswert</th><th width="110px">Ausgangswert</th></tr>
|
||||
<tr><td><center>Skalieren</center></td><td><center>12</center></td><td><center>120</center></td></tr>
|
||||
<tr><td><center>Skalieren und begrenzen</center></td><td><center>12</center></td><td><center>100</center></td></tr>
|
||||
<tr><td><center>Skalieren und begrenzen mit Überlauf</center></td><td><center>12</center></td><td><center>20</center></td></tr>
|
||||
</table>
|
||||
</script>
|
||||
@@ -0,0 +1,57 @@
|
||||
<!--
|
||||
Copyright JS Foundation and other contributors, http://js.foundation
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<script type="text/html" data-help-name="template">
|
||||
<p>Festlegen einer Eigenschaft anhand einer Vorlage (template).</p>
|
||||
<h3>Eingangsdaten</h3>
|
||||
<dl class="message-properties">
|
||||
<dt>msg <span class="property-type">object</span></dt>
|
||||
<dd>msg-Objekt mit Informationen zum Befüllen der Vorlage.</dd>
|
||||
<dt class="optional">template <span class="property-type">string</span></dt>
|
||||
<dd>Mit msg.payload zu befüllende Vorlage.
|
||||
Falls nicht im Editorfenster angegeben, kann die Vorlage auch als Eigenschaft von msg vorgegeben werden.</dd>
|
||||
</dl>
|
||||
<h3>Ausgangsdaten</h3>
|
||||
<dl class="message-properties">
|
||||
<dt>msg <span class="property-type">object</span></dt>
|
||||
<dd>Nachricht auf Basis der Vorlage und gefüllt mit Eigenschaften aus der eingehenden Nachricht.</dd>
|
||||
</dl>
|
||||
<h3>Details</h3>
|
||||
<p>Die Vorlage verwendet standardmäßig das
|
||||
<a href="http://mustache.github.io/mustache.5.html" target="_blank">Mustache</a>-Format,
|
||||
was aber bei Bedarf ausgeschaltet werden kann.</p>
|
||||
<p>Beispiel: Wenn die Vorlage</p>
|
||||
<pre>Hallo {{payload.name}}. Heute ist {{date}}</pre>
|
||||
<p>die Nachricht</p>
|
||||
<pre>
|
||||
{
|
||||
date: "Montag",
|
||||
payload: {
|
||||
name: "Fred"
|
||||
}
|
||||
}
|
||||
</pre>
|
||||
<p>empfängt, wird die resultierende Ausgangsnachricht wie folgt sein:</p>
|
||||
<pre>Hallo Fred. Heute ist Montag</pre>
|
||||
<p>Es ist möglich, eine Eigenschaft aus dem Flowkontext oder dem globalen Kontext zu verwenden,
|
||||
indem <code>{{flow.name}}</code> oder <code>{{global.name}}</code> verwendet wird.
|
||||
Oder für den persistenten Speicher <code>store</code> kann <code>{{flow[store].name}}</code> oder
|
||||
<code>{{global[store].name}}</code> verwendet werden.
|
||||
<p><b>Hinweis</b>: Standardmäßig werden bei <i>Mustache</i> sog. <i>Escaper</i>
|
||||
bei allen nicht-numerischen und HTML-Entitäten erzeugt.
|
||||
Z.B. <code>&</code> wird durch <code>&amp;</code> ersetzt.
|
||||
Um dies zu verhindern, müssen <code>{{{dreifache}}}</code> Klammern verwendet werden.
|
||||
</script>
|
||||
@@ -0,0 +1,55 @@
|
||||
<!--
|
||||
Copyright JS Foundation and other contributors, http://js.foundation
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<script type="text/html" data-help-name="delay">
|
||||
<p>Verzögerung von Nachrichten oder Begrenzung ihrer Durchlaufrate.</p>
|
||||
<h3>Eingangsdaten</h3>
|
||||
<dl class="message-properties">
|
||||
<dt class="optional">delay <span class="property-type">number</span></dt>
|
||||
<dd>Legt die Verzögerung in Millisekunden fest, die auf die Nachricht angewendet werden soll.
|
||||
Zur Nutzung dieser Option muss <i>Verzög. mit msg.delay überschreibbar</i> aktiviert sein.</dd>
|
||||
<dt class="optional">rate <span class="property-type">number</span></dt>
|
||||
<dd>Setzt die Verzögerung in Millisekunden zwischen den Nachrichten. Diese Node überschreibt die
|
||||
bestehende Verzögerung die in der Node konfiguration, wenn die empfangende Nachricht <code>msg.rate</code>
|
||||
in Millisekunden enthält. Dies trifft nur zu, wenn in der Node konfiguriert ist, das empfangene
|
||||
Nachrichten den konfigurierten Wert überschreiben können.</dd>
|
||||
<dt class="optional">reset</dt>
|
||||
<dd>Wenn bei der empfangenen Nachricht diese Eigenschaft auf einen beliebigen Wert gesetzt ist,
|
||||
werden alle im Node gepufferten Nachrichten gelöscht.</dd>
|
||||
<dt class="optional">flush</dt>
|
||||
<dd>Wenn bei der empfangenen Nachricht diese Eigenschaft auf einen beliebigen Wert gesetzt ist,
|
||||
werden alle im Node gepufferten Nachrichten sofort gesendet.</dd>
|
||||
<dt class="optional">flush</dt>
|
||||
<dd>Wenn bei der empfangenen Nachricht diese Eigenschaft auf einen numerischen Wert gesetzt ist,
|
||||
wird diese Anzahl an Nachrichten sofort gesendet. Wenn ein anderer Typ gesetzt ist (z.B. Boolean),
|
||||
werden alle in der Node gepufferten Nachrichten gesendet.</dd>
|
||||
<dt class="optional">toFront</dt>
|
||||
<dd>Wenn diese Eigenschaft im Ratenbegrenzungsmodus für die empfangene Nachricht auf den booleschen Wert
|
||||
<code>true</code> gesetzt ist, Anschließend wird die Nachricht an den Anfang der Warteschlange verschoben
|
||||
und als nächstes freigegeben. Dies kann in Kombination mit <code>msg.flush=1</code> verwendet werden, um sofort erneut zu senden.
|
||||
</dd>
|
||||
</dl>
|
||||
<h3>Details</h3>
|
||||
<p>Wenn Verzögerung als Nachrichtenaktion eingestellt ist, kann die Verzögerungszeit ein fixer Wert,
|
||||
ein Zufallswert innerhalb eines Bereichs oder ein für jede Nachricht dynamisch vorgebbarer Wert handeln.</p>
|
||||
<p>Bei Begrenzung auf Nachrichtenrate werden die Nachrichten über den eingestellten Zeitraum verteilt.
|
||||
Der Status zeigt die Anzahl der sich aktuell in der Warteschlange befindlichen Nachrichten an.
|
||||
Zwischenzeitlich eintreffende Nachrichten können optional beim Eintreffen verworfen werden.</p>
|
||||
<p>Die Ratenbegrenzung kann auf alle Nachrichten angewendet werden oder
|
||||
die Nachrichten werden anhand des <code>msg.topic</code>-Wertes gruppiert.
|
||||
Bei der Gruppierung werden zwischenzeitlich eintreffende Nachrichten automatisch gelöscht.
|
||||
In jedem Zeitintervall werden die neuesten Nachricht entweder für alle oder
|
||||
für das nächste Thema (Topic) in der Reihe gesendet.</p>
|
||||
</script>
|
||||
@@ -0,0 +1,50 @@
|
||||
<!--
|
||||
Copyright JS Foundation and other contributors, http://js.foundation
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<script type="text/html" data-help-name="trigger">
|
||||
<p>Senden einer und optional einer weiteren verzögerten Nachricht bei Auslösung (Trigger),
|
||||
sofern der Trigger nicht verlängert oder zurückgesetzt wird.</p>
|
||||
<h3>Eingangsdaten</h3>
|
||||
<dl class="message-properties">
|
||||
<dt class="optional">delay <span class="property-type">number</span></dt>
|
||||
<dd>Legt die Verzögerung in Millisekunden fest, die auf die Nachricht angewendet werden soll.
|
||||
Zur Nutzung dieser Funktion muss die Option <i>Verzögerung mit msg.delay überschreibbar</i> aktiviert sein.</dd>
|
||||
<dt class="optional">reset</dt>
|
||||
<dd>Bei Empfang einer Nachricht mit dieser Eigenschaft wird jede Verzögerung oder Wiederholung
|
||||
rückgesetzt und keine weitere Nachricht gesendet.</dd>
|
||||
</dl>
|
||||
<h3>Details</h3>
|
||||
<p>Dieser Node kann verwendet werden, um ein Zeitlimit in einem Flow zu erstellen.
|
||||
Bei Empfang einer Nachricht wird standardmäßig eine Nachricht mit einem <code>payload</code> von <code>1</code> versendet.
|
||||
Optional wird nach einer einstellbaren Wartezeit (standardmäßig 250 ms) eine zweite Nachricht
|
||||
mit einem <code>payload</code> von <code>0</code> sendet.
|
||||
Dies kann beispielsweise zum Blinken einer LED verwendet werden, die an einen GPIO-Pin des Raspberry Pi angeschlossen ist.</p>
|
||||
<p>Als Nutzdaten (Payload) jeder zu sendenen Nachricht können eine Vielzahl von Werten eingestellt werden inklusive der Option,
|
||||
überhaupt nicht zu senden.
|
||||
Wenn beispielsweise die erste Ausgnagsnachricht auf <i>nichts</i> gesetzt und die Option
|
||||
<i>Verzögerung verlängern bei Eingang neuer Nachrichten</i> aktiviert ist,
|
||||
agiert der Node als Überwachungszeitgeber (Watchdog-Timer).
|
||||
Er sendet hier nur dann eine Nachricht, wenn innerhalb der eingestellten Verzögerungszeit keine Nachricht empfangen wird.</p>
|
||||
<p>Beim Nachrichtentyp <i>Zeichenfolge (string)</i> werden auch <a href="http://mustache.github.io/mustache.5.html" target="_blank">Mustache</a>-Vorlagen unterstützt.</p>
|
||||
<p>Wenn eine Nachricht mit der <code>reset</code> oder <code>payload</code>-Eigenschaft gleich dem konfigurierten Wert empfangen wird,
|
||||
wird eine laufende Verzögerung oder Wiederholung rückgesetzt und keine Nachricht gesendet.</p>
|
||||
<p>Der Node kann auch so eingestellt werden, dass er eine Nachricht normal in den vorgegebenen Intervallen sendet,
|
||||
bis er durch eine empfangene Nachricht rückgesetzt wird.</p>
|
||||
<p>Außerdem kann der Node auch so eingestellt werden, dass er Nachrichten anhand einer einstellbaren <code>msg</code>-Eigenschaft
|
||||
als separate Nachrichtenströme behandelt.</p>
|
||||
<p>Der Status zeigt die Aktivität des Nodes an.
|
||||
Bei Verwendung mehrerer Nachrichtenströme zeigt der Status deren aktuelle Anzahl an.</p>
|
||||
</script>
|
||||
@@ -0,0 +1,89 @@
|
||||
<!--
|
||||
Copyright JS Foundation and other contributors, http://js.foundation
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<script type="text/html" data-help-name="exec">
|
||||
<p>Ausführung eines Systembefehls und Rückgabe seiner Ausgabe.</p>
|
||||
<p>Der Node kann so eingestellt werden, dass er entweder bis zum Befehlabschluss wartet (exec) oder
|
||||
die Ausgabe sogleich sendet (spawn), wie der Befehl sie generiert.</p>
|
||||
<p>Der auszuführende Befehl kann im Node eingestellt und/oder
|
||||
über die empfangene Nachricht übergeben werden.</p>
|
||||
<h3>Eingangsdaten</h3>
|
||||
<dl class="message-properties">
|
||||
<dt class="optional">payload <span class="property-type">string</span></dt>
|
||||
<dd>Wird an auszuführenden Befehl angehängt, sofern im Node aktiviert.</dd>
|
||||
<dt class="optional">kill <span class="property-type">string</span></dt>
|
||||
<dd>Typ des Kill-Signals, das an den zu beendenden exec-Node-Prozess gesendet wird.</dd>
|
||||
<dt class="optional">pid <span class="property-type">number | string</span></dt>
|
||||
<dd>Prozess-ID des zu beendenden exec-Node-Prozesses.</dd>
|
||||
</dl>
|
||||
<h3>Ausgangsdaten</h3>
|
||||
<ol class="node-ports">
|
||||
<li>Standardausgabe (stdout)
|
||||
<dl class="message-properties">
|
||||
<dt>payload <span class="property-type">string</span></dt>
|
||||
<dd>Standardausgabe des Befehls.</dd>
|
||||
</dl>
|
||||
<dl class="message-properties">
|
||||
<dt>rc <span class="property-type">object</span></dt>
|
||||
<dd>Rückgabe-Code-Objekts (auch an Port 3 verfügbar) - nur im exec-Modus verfügbar.</dd>
|
||||
</dl>
|
||||
</li>
|
||||
<li>Standardfehlerausgabe (stderr)
|
||||
<dl class="message-properties">
|
||||
<dt>payload <span class="property-type">string</span></dt>
|
||||
<dd>Standardfehlerausgabe des Befehls.</dd>
|
||||
</dl>
|
||||
<dl class="message-properties">
|
||||
<dt>rc <span class="property-type">object</span></dt>
|
||||
<dd>Rückgabe-Code-Objekts (auch an Port 3 verfügbar) - nur im exec-Modus verfügbar.</dd>
|
||||
</dl>
|
||||
</li>
|
||||
<li>Rückgabe-Code
|
||||
<dl class="message-properties">
|
||||
<dt>payload <span class="property-type">object</span></dt>
|
||||
<dd>Objekt mit dem Rückgabe-Code und gegebenenfalls <code>message</code> oder <code>signal</code>-Eigenschaften.</dd>
|
||||
</dl>
|
||||
</li>
|
||||
</ol>
|
||||
<h3>Details</h3>
|
||||
<p>Standardmäßig wartet der zur Befehlsausführung genutzte Systemaufruf <code>exec</code>,
|
||||
bis die Ausführung abgeschlossen ist, und gibt anschließend dessen Ausgaben zurück.
|
||||
Ein erfolgreich ausgeführter Befehl sollte z.B. den Rückgabe-Code <code>{ code: 0 }</code> haben.</p>
|
||||
<p>Optional kann stattdessen <code>spawn</code> verwendet werden, wodurch die Standardausgabe und Standardfehlerausgabe
|
||||
bereits während der Befehlsausführung in der Regel Zeile für Zeile rückgegeben werden.
|
||||
Nach Befehlsabschluss wird ein Objekt am 3. Port ausgegeben.
|
||||
Ein erfolgreich ausgeführter Befehl sollte z.B. <code>{ code: 0 }</code> zurückgeben.</p>
|
||||
<p>Fehler können zusätzliche Informationen über den dritten Port als <code>msg.payload</code> zurückgeben,
|
||||
z.B. eine <code>message</code>- oder <code>signal</code>-Zeichenfolge.</p>
|
||||
<p>Der auszuführende Befehl wird innerhalb des Nodes mit der Option zum Anhängen von
|
||||
<code>msg.payload</code> und weiteren Parametern definiert.</p>
|
||||
<p>Befehle oder Parameter mit Leerzeichen sollten in Anführungszeichen eingeschlossen werden,
|
||||
z.B. <code>"Dies ist ein einzelner Parameter"</code></p>
|
||||
<p>Die zurückgegebenen Daten (Payload) sind in der Regel eine <i>Zeichenfolge (string)</i>,
|
||||
außer es werden nicht UTF-8-Zeichen wie bei einem <i>binären Puffer (buffer)</i> erkannt.</p>
|
||||
<p>Bei einem aktiven Node werden Status und die PID angezeigt.
|
||||
Änderungen können mittels status-Node gelesen werden.</p>
|
||||
<h4><b>Prozesse beenden</b></h4>
|
||||
<p>Durch Senden von <code>msg.kill</code> wird ein einzelner aktiver Prozess beendet.
|
||||
<code>msg.kill</code> sollte als Zeichenfolge (string) den Signaltyp enthalten,
|
||||
z.B. <code>SIGINT</code>, <code>SIGQUIT</code> oder <code>SIGHUP</code>.
|
||||
Der Standardwert ist <code>SIGTERM</code>, wenn die Zeichenfolge leer ist.</p>
|
||||
<p>Wenn der Node mehr als einen Befehl bzw. Prozess ausführt,
|
||||
muss zusätzlich über <code>msg.pid</code> die PID des zu beendenden Prozesses übergeben werden.</p>
|
||||
<p>Wenn ein <code>Zeitlimit</code> angegeben ist, wird der Prozess automatisch nach Ablauf der Zeit beendet.</p>
|
||||
<p><b>Tipp</b>: Wenn Sie eine Python-App ausführen, müssen Sie möglicherweise den Parameter <code>-u</code> verwenden,
|
||||
um die Ausgabepufferung zu stoppen.</p>
|
||||
</script>
|
||||
@@ -0,0 +1,40 @@
|
||||
<script type="text/html" data-help-name="rbe">
|
||||
<p>Report by Exception (RBE) - Daten-Weiterleitung nur bei Änderung der Nutzdaten (Payload).
|
||||
Der Node kann auch blockieren oder weiterleiten, wenn die Wertänderung eine Grenze überschreitet (Totband- und Nahband-Modus).</p>
|
||||
<h3>Eingangsdaten</h3>
|
||||
<dl class="message-properties">
|
||||
<dt>payload
|
||||
<span class="property-type">number | string | (object)</span>
|
||||
</dt>
|
||||
<dd>Der RBE-Modus mit Prüfung auf Wertänderung akzeptiert Zahlen (numbers), Zeichenfolgen (string) und einfache Objekte (object).
|
||||
Bei den anderen wertvergleichenden Modies müssen analysierbare (parseable) Zahlenwerte übergeben werden.</dd>
|
||||
<dt class="optional">topic <span class="property-type">string</span>
|
||||
</dt>
|
||||
<dd>Wenn vorgegeben erfolgt die Auswertung separat für jedes Topic</dd>
|
||||
<dt class="optional">reset<span class="property-type">any</span></dt>
|
||||
<dd>Wenn gesetzt wird/werden der/die gespeicherte(n) Wert(e) rückgesetzt</dd>
|
||||
</dl>
|
||||
<h3>Ausgangsdaten</h3>
|
||||
<dl class="message-properties">
|
||||
<dt>payload
|
||||
<span class="property-type">wie Eingangsdaten</span>
|
||||
</dt>
|
||||
<dd>Wenn Bedingung erfüllt, sind die Ausgangsdaten gleich den Eingangsdaten</dd>
|
||||
</dl>
|
||||
<h3>Details</h3>
|
||||
<p>Im <i>RBE</i>-Modus mit Prüfung auf Wertänderung blockiert dieser Node die Datenweitergabe bis
|
||||
<code>msg.payload</code> (oder die eingestellte Eigenschaft) verändert ist gegenüber dessen vorherigen Wert.
|
||||
Wenn benötigt, wird der Anfangswert ignoriert, sodass beim Start nichts gesendet wird.</p>
|
||||
<p>In den <i>Totband</i>-Modies werden die Eingangswerte geblockt,
|
||||
<i>bis</i> die Wertänderung größer oder größer-gleich ist als ± des Bandes um den voherigen Wert.</p>
|
||||
<p>In den <i>Nahband</i>-Modies werden die Eingangswerte geblockt,
|
||||
<i>wenn</i> die Wertänderung größer oder größer-gleich ist als ± des Bandes um den voherigen Wert.
|
||||
Dies ist beispielsweise nützlich, um Ausreißer eines fehlerhaften Sensors zu ignorieren.</p>
|
||||
<p>In den Totband und Nahband-Modies müssen die Eingangswerte analysierbare (parseable) Zahlenwerte sein und
|
||||
beide unterstützen auch % (prozentuale Angabe), d.h. der Node sendet nur, wenn der Eingangswert mehr als x% vom vorherigen Wert abweicht.</p>
|
||||
<p>Die Totband- und Nahband-Modies erlauben den Vergleich entweder gegen den letzten gültigen Ausgangswert,
|
||||
dieses zum Ignorieren von Werten außerhalb des gültigen Bereichs, oder gegen den des vorherigen Eingangswertes,
|
||||
welches den Sollwert rücksetzt, was einen allmähligen Drift (Totband) oder einen eine schrittweise Veränderung (Nahband) ermöglicht.</p>
|
||||
<p><b>Hinweis</b>: Dieser Node arbeitet auf per-<code>msg.topic</code>-Basis.
|
||||
Dies bedeutet, dass ein einzelner rbe-Node mehrere verschiedene Topics parallel bearbeiten kann.</p>
|
||||
</script>
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,19 @@
|
||||
<!--
|
||||
Copyright JS Foundation and other contributors, http://js.foundation
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<script type="text/html" data-help-name="tls-config">
|
||||
<p>Konfigurationsoptionen für TLS-Verbindungen.</p>
|
||||
</script>
|
||||
@@ -0,0 +1,22 @@
|
||||
<!--
|
||||
Copyright JS Foundation and other contributors, http://js.foundation
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<script type="text/html" data-help-name="http proxy">
|
||||
<p>Konfigurationsoptionen für HTTP-Proxy.</p>
|
||||
<h3>Details</h3>
|
||||
<p>Wenn auf einen Host zugegriffen wird, der auf der Liste der zu ignorierenden Hosts steht,
|
||||
wird kein Proxy benutzt.</p>
|
||||
</script>
|
||||
@@ -0,0 +1,140 @@
|
||||
<!--
|
||||
Copyright JS Foundation and other contributors, http://js.foundation
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<script type="text/html" data-help-name="mqtt in">
|
||||
<p>Verbindungsherstellung zu einem MQTT-Broker und Abonnement von Topic-Nachrichten.</p>
|
||||
<h3>Ausgangsdaten</h3>
|
||||
<dl class="message-properties">
|
||||
<dt>payload <span class="property-type">string | buffer</span></dt>
|
||||
<dd>Zeichenfolge, sofern sie nicht als binärer Puffer (buffer) erkannt wurde.</dd>
|
||||
<dt>topic <span class="property-type">string</span></dt>
|
||||
<dd>MQTT-Topic mit / (Schrägstrich) als Hierarchie-Trennzeichen.</dd>
|
||||
<dt>qos <span class="property-type">number</span></dt>
|
||||
<dd>QoS (Quality of Service)<br/>
|
||||
0: Einmal gesendet ohne Empfangsgarantie (fire und forget)<br/>
|
||||
1: Garantiert mindestens einmal empfangen (at least once)<br/>
|
||||
2: Garantiert exakt einmal empfangen (once and once only).</dd>
|
||||
<dt>retain <span class="property-type">boolean</span></dt>
|
||||
<dd>Bei <code>true</code> kann es eine aufbewahrte ältere Nachricht sein.</dd>
|
||||
|
||||
<dt class="optional">responseTopic <span class="property-type">string</span></dt>
|
||||
<dd><b>MQTTv5</b>: MQTT-Antwort-Topic der Nachricht.</dd>
|
||||
<dt class="optional">correlationData <span class="property-type">buffer</span></dt>
|
||||
<dd><b>MQTTv5</b>: Korrelationsdaten der Nachricht.</dd>
|
||||
<dt class="optional">contentType <span class="property-type">string</span></dt>
|
||||
<dd><b>MQTTv5</b>: Inhaltstyp der Nutzdaten (Payload).</dd>
|
||||
<dt class="optional">userProperties <span class="property-type">object</span></dt>
|
||||
<dd><b>MQTTv5</b>: Alle Benutzer-Eigenschaften der Nachricht.</dd>
|
||||
<dt class="optional">messageExpiryInterval <span class="property-type">number</span></dt>
|
||||
<dd><b>MQTTv5</b>: Ablaufzeit der Nachricht in Sekunden.</dd>
|
||||
</dl>
|
||||
<h3>Details</h3>
|
||||
<p>Das abonnierte Topic darf MQTT-Platzhalterzeichen (wildcards) enthalten (+ für eine Ebene und # für mehrere Ebenen).</p>
|
||||
<p>Diese Node erfordert eine Verbindung zu einem MQTT-Broker, der über die Auswahlliste selektiert werden kann. Eine neue Verbindung wird durch Klicken auf das Stiftsymbol erstellt.</p>
|
||||
<p>Mehrere MQTT-Nodes (in oder out) können bei Bedarf dieselbe Broker-Verbindung nutzen.</p>
|
||||
<h4>Dynamische Steuerung</h4>
|
||||
Die von der Node genutzte Verbindung kann dynamisch gesteuert werden, wenn die MQTT-Node eine der folgenden Nachrichten erhält. Die Payload dieser Nachrichten werden nicht veröffentlicht.
|
||||
<h4>Eingangsdaten</h4>
|
||||
<p>Nur Verfügbar, wenn die Node für dynamische Abonnements konfiguriert wurde.</p>
|
||||
<dl class="message-properties">
|
||||
<dt>action <span class="property-type">string</span></dt>
|
||||
<dd>Der Name der Aktion, die die MQTT-Node ausführen soll. Verfügbare Aktionen sind: <code>"connect"</code>, <code>"disconnect"</code>, <code>"getSubscriptions"</code>, <code>"subscribe"</code> und <code>"unsubscribe"</code>.</dd>
|
||||
<dt class="optional">topic <span class="property-type">string|object|array</span></dt>
|
||||
<dd>Bei den Aktionen <code>"subscribe"</code> und <code>"unsubscribe"</code> gibt diese Eigenschaft die MQTT-Topic an. Dabei kann es sich um Folgendes handeln:
|
||||
<ul>
|
||||
<li>eine Zeichenfolge, die den Topic-Filter enthält</li>
|
||||
<li>ein Objekt mit den Eigenschaften <code>topic</code> und <code>qos</code></li>
|
||||
<li>ein Array aus Zeichenfolgen oder Objekten, um mehrere Topics gleichzeitig zu verwalten</li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="optional">broker <span class="property-type">broker</span> </dt>
|
||||
<dd>Für die Aktion <code>"connect"</code> kann diese Eigenschaft jede der einzelnen Broker-Konfigurationseinstellungen überschreiben, einschließlich: <ul>
|
||||
<li><code>broker</code></li>
|
||||
<li><code>port</code></li>
|
||||
<li><code>url</code> - überschreibt Broker/Port, um eine vollständige Verbindungs-URL bereitzustellen</li>
|
||||
<li><code>username</code></li>
|
||||
<li><code>password</code></li>
|
||||
</ul>
|
||||
<p>Wenn diese Eigenschaft gesetzt ist und der Broker bereits verbunden ist, wird ein Fehler protokolliert, es sei denn, die Eigenschaft <code>force</code> gesetzt - in diesem Fall wird die Verbindung zum Broker getrennt, die neuen Einstellungen angewendet und erneut verbunden.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
</script>
|
||||
|
||||
<script type="text/html" data-help-name="mqtt out">
|
||||
<p>Verbindungsherstellung zu einem MQTT-Broker und publizieren von Topic-Nachrichten.</p>
|
||||
<h3>Eingangsdaten</h3>
|
||||
<dl class="message-properties">
|
||||
<dt>payload <span class="property-type">string | buffer</span></dt>
|
||||
<dd>Zu publiziernde Nutzdaten.<br/>
|
||||
Wenn nicht gesetzt wird keine Nachricht gesendet.
|
||||
Um eine leere Nachricht zu senden, muss eine leere Zeichenfolge (string) übergeben werden.</dd>
|
||||
<dt class="optional">topic <span class="property-type">string</span></dt>
|
||||
<dd>MQTT-Topic mit / (Schrägstrich) als Hierarchie-Trennzeichen.</dd>
|
||||
<dt class="optional">qos <span class="property-type">number</span></dt>
|
||||
<dd>QoS (Quality of Service)<br/>
|
||||
0: Einmal gesendet ohne Empfangsgarantie (fire und forget)<br/>
|
||||
1: Garantiert mindestens einmal empfangen (at least once)<br/>
|
||||
2: Garantiert exakt einmal empfangen (once and once only).</dd>
|
||||
<dt class="optional">retain <span class="property-type">boolean</span></dt>
|
||||
<dd>Bei <code>true</code> wird die Nachricht beim Broker aufbewahrt.
|
||||
Standard (default) ist <code>false</code>.</dd>
|
||||
<dt class="optional">responseTopic <span class="property-type">string</span></dt>
|
||||
<dd><b>MQTTv5</b>: MQTT-Antwort-Topic für die Nachricht.</dd>
|
||||
<dt class="optional">correlationData <span class="property-type">buffer</span></dt>
|
||||
<dd><b>MQTTv5</b>: Korrelationsdaten für die Nachricht.</dd>
|
||||
<dt class="optional">contentType <span class="property-type">string</span></dt>
|
||||
<dd><b>MQTTv5</b>: Inhaltstyp der Nutzdaten (Payload).</dd>
|
||||
<dt class="optional">userProperties <span class="property-type">object</span></dt>
|
||||
<dd><b>MQTTv5</b>: Alle Benutzer-Eigenschaften der Nachricht.</dd>
|
||||
<dt class="optional">messageExpiryInterval <span class="property-type">number</span></dt>
|
||||
<dd><b>MQTTv5</b>: Ablaufzeit der Nachricht in Sekunden.</dd>
|
||||
<dt class="optional">topicAlias <span class="property-type">number</span></dt>
|
||||
<dd><b>MQTTv5</b>: Der zu benutzende MQTT-Topic-Alias.</dd>
|
||||
</dl>
|
||||
<h3>Details</h3>
|
||||
<p><code>msg.payload</code> wird als Nutzdaten (Payload) der zu publizierenden Nachricht verwendet.
|
||||
Wenn es ein Objekt enthält, wird es vorm Senden in eine JSON-Zeichenfolge (string) konvertiert.
|
||||
Wenn es einen binären Puffer (buffer) enthält, wird die Nachricht unverändert gesendet.</p>
|
||||
<p>Das Topic kann im Node eingestellt werden oder, falls leer gelassen,
|
||||
durch <code>msg.topic</code> vorgegeben werden.</p>
|
||||
<p>Ebenso können die QoS- und Retain-Werte im Node eingestellt werden oder, falls leer gelassen,
|
||||
durch <code>msg.qos</code> bzw. <code>msg.retain</code> vorgegeben werden.
|
||||
Um ein beim Broker vorgehaltenes Topic zu löschen,
|
||||
kann eine leere Nachricht mit dem Topic und Retain gleich <code>true</code> gesendet werden.</p>
|
||||
<p>Dieser Node erfordert eine Verbindung zu einem MQTT-Broker, der über die Auswahlliste selektiert werden kann.
|
||||
Eine neue Verbindung wird durch Klicken auf das Stiftsymbol erstellt.</p>
|
||||
<p>Mehrere MQTT-Nodes (in oder out) können bei Bedarf dieselbe Broker-Verbindung nutzen.</p>
|
||||
</script>
|
||||
|
||||
<script type="text/html" data-help-name="mqtt-broker">
|
||||
<p>Konfiguration der Verbindung zu einem MQTT-Broker.</p>
|
||||
<p>Diese Konfiguration erstellt eine einzelne Verbindung zu einem Broker,
|
||||
welche anschließend von den mqtt in- und
|
||||
mqtt out-Nodes verwendet werden.</p>
|
||||
<p>Der Node generiert eine beliebige Client-ID, falls sie nicht vorgegeben ist und der
|
||||
Node eine bereinigte Sitzung (clean session) verwenden soll.
|
||||
Wenn eine Client-ID vorgegeben wird, muss sie für den Broker eindeutig sein, zu dem die Verbindung hergestellt werden soll.</p>
|
||||
<h3>Nachricht bei Verbindungsaufbau</h3>
|
||||
<p>Diese Nachricht wird vom Broker mit dem eingestellten Topic publiziert, wenn die Verbindung hergestellt wurde.</p>
|
||||
<h3>Nachricht vor Verbindungsabbau</h3>
|
||||
<p>Diese Nachricht wird vom Broker mit dem eingestellten Topic publiziert, bevor die Verbindung normal abgebaut wird,
|
||||
egal ob durch erneute Übernahme (deploy) des Nodes oder durch Herunterfahren von Node-RED.</p>
|
||||
<h3>Nachricht bei unerwarteten Verbindungsabbruch</h3>
|
||||
<p>Diese Nachricht wird vom Broker mit dem eingestellten Topic veröffentlicht,
|
||||
wenn die Verbindung unerwartet abgebrochen ist.</p>
|
||||
<h3>WebSockets</h3>
|
||||
<p>Der Node kann für die Verwendung einer WebSocket-Verbindung eingestellt werden.
|
||||
Dazu ist im Server-Feld die vollständige URI für die Verbindung vorzugeben. Beispiel:</p>
|
||||
<pre>ws://example.com:4000/mqtt</pre>
|
||||
</script>
|
||||
@@ -0,0 +1,98 @@
|
||||
<!--
|
||||
Copyright JS Foundation and other contributors, http://js.foundation
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<script type="text/html" data-help-name="http in">
|
||||
<p>Erstellung eines HTTP-Endpunktes zur Erzeugung von Web-Diensten.</p>
|
||||
<h3>Ausgangsdaten</h3>
|
||||
<dl class="message-properties">
|
||||
<dt>payload</dt>
|
||||
<dd>Für eine GET-Anforderung enthält es ein Objekt aller Abfrage-Parameter (query string parameters).
|
||||
Ansonsten enthält es den Hauptteil (Body) der HTTP-Anforderung.</dd>
|
||||
<dt>req <span class="property-type">object</span></dt>
|
||||
<dd>HTTP Anforderungsobjekt.<br/>
|
||||
Es enthält mehrere Eigenschaften, die Informationen zu der Anforderung bereitstellen.
|
||||
<ul>
|
||||
<li><code>body</code>: Hauptteil der eingehenden Anforderung. Das Format hängt von der Anforderung ab.</li>
|
||||
<li><code>headers</code>: Objekt mit HTTP-Request-Header</li>
|
||||
<li><code>query</code>: Objekt mit Anfrage-Parametern (query string parameters)</li>
|
||||
<li><code>params</code>: Objekt mit den Routing-Parametern</li>
|
||||
<li><code>cookies</code>: Objekt mit den Cookies der Anfrage</li>
|
||||
<li><code>files</code>: Objekt mit allen Dateien, die mit der POST-Anforderung gesendet wurden, sofern im Node aktiviert</li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt>res <span class="property-type">object</span></dt>
|
||||
<dd>HTTP-Antwortobjekt.<br/>
|
||||
Diese Eigenschaft sollte nicht direkt verwendet werden.
|
||||
Im http response-Node ist dokumentiert, wie auf eine Anforderung reagiert wird.
|
||||
Diese Eigenschaft muss an der Nachricht angehängt bleiben, die an den Antwort-Node übergeben wird.</dd>
|
||||
</dl>
|
||||
<h3>Details</h3>
|
||||
<p>Der Node ist auf dem eingestellten Pfad für Anforderungen eines bestimmten Typs empfangsbereit.
|
||||
Der Pfad kann vollständig angegeben werden, z.B. <code>/user</code> oder benannte Parameter beinhalten,
|
||||
die einen beliebigen Wert akzeptieren, z.B. <code>/user/:name</code>.
|
||||
Wenn benannte Parameter verwendet werden, kann auf ihren aktuellen Wert über <code>msg.req.params</code>
|
||||
zugegriffen werden.</p>
|
||||
<p>Für Anforderungen, die einen Hauptteil (Body) enthalten, wie z.B. POST oder PUT, wird der Inhalt der
|
||||
Anforderung über <code>msg.payload</code> verfügbar gemacht.</p>
|
||||
<p>Wenn der Inhaltstyp der Anforderung ermittelt werden kann, wird der Hauptteil als passender Typ analysiert.
|
||||
Z.B. <code>application/json</code> wird zu einem JavaScript-Objekt analysiert.</p>
|
||||
<p><b>Hinweis</b>: Dieser Node sendet keine Antwort an die Anforderung.
|
||||
Der Flow muss einen http response-Node enthalten,
|
||||
um die Anforderung zu vervollständigen.</p>
|
||||
</script>
|
||||
|
||||
<script type="text/html" data-help-name="http response">
|
||||
<p>Senden von Antworten auf Anforderungen, die von einem http in-Node empfangen wurden.</p>
|
||||
<h3>Eingangsdaten</h3>
|
||||
<dl class="message-properties">
|
||||
<dt>payload <span class="property-type">string</span></dt>
|
||||
<dd>Hauptteil (Body) der Antwort.</dd>
|
||||
<dt class="optional">statusCode <span class="property-type">number</span></dt>
|
||||
<dd>Wenn gesetzt, wird diese als Antwort-Statuscode verwendet. Standardwert: 200.</dd>
|
||||
<dt class="optional">headers <span class="property-type">object</span></dt>
|
||||
<dd>Wenn gesetzt, enthält es die HTTP-Header für die Antwort.</dd>
|
||||
<dt class="optional">cookies <span class="property-type">object</span></dt>
|
||||
<dd>Wenn gesetzt, kann es zum Setzen oder Löschen von Cookies verwendet werden.</dd>
|
||||
</dl>
|
||||
<h3>Details</h3>
|
||||
<p>Der <code>statusCode</code> und die <code>headers</code> können auch innerhalb des Node angegeben werden.
|
||||
Wenn eine Eigenschaft innerhalb des Nodes angegeben ist,
|
||||
kann sie nicht durch die entsprechende Nachrichteneigenschaft überschrieben werden.</p>
|
||||
<h4><b>Cookie-Behandlung</b></h4>
|
||||
<p>Die <code>cookies</code>-Eigenschaft muss ein Objekt mit Name/Wert-Paaren sein.
|
||||
Bei dem Wert kann es sich entweder um eine Zeichenfolge (string) zur Festlegung des Cookies mit Standardwerten handeln
|
||||
oder es kann ein Objekt mit Optionen sein.</p>
|
||||
<p>Im folgenden Beispiel werden zwei Cookies festgelegt - einer mit dem Namen <code>name</code> und dem
|
||||
Wert <code>nick</code> und der andere <code>session</code> mit dem Wert
|
||||
<code>1234</code> und einer festgelegten Ablaufzeit von 15 Minuten.</p>
|
||||
<pre>
|
||||
msg.cookies = {
|
||||
name: 'nick',
|
||||
session: {
|
||||
value: '1234',
|
||||
maxAge: 900000
|
||||
}
|
||||
}</pre>
|
||||
<p>Die gültigen Optionen sind:</p>
|
||||
<ul>
|
||||
<li><code>domain</code>: Domänenname für das Cookie, angegeben als Zeichenfolge (string)</li>
|
||||
<li><code>expires</code>: Ablaufzeit in GMT. Wenn nicht vorgeben oder Null (0), wird ein Sitzungscookie erstellt.</li>
|
||||
<li><code>maxAge</code>: Ablaufzeit in Bezug auf die aktuelle Zeit in Millisekunden, angegeben als Zeichenfolge (string)</li>
|
||||
<li><code>path</code>: Pfad für das Cookie. Standardwert: / (Schrägstrich), angegeben als Zeichenfolge (string)</li>
|
||||
<li><code>value</code>: Wert, der für das Cookie verwendet werden soll, angegeben als Zeichenfolge (string)</li>
|
||||
</ul>
|
||||
<p>Um ein Cookie zu löschen, ist sein <code>value</code> auf <code>null</code> zu setzen.</p>
|
||||
</script>
|
||||
@@ -0,0 +1,98 @@
|
||||
<!--
|
||||
Copyright JS Foundation and other contributors, http://js.foundation
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<script type="text/html" data-help-name="http request">
|
||||
<p>Senden von HTTP-Anforderungen und Rückgabe der Antwort.</p>
|
||||
<h3>Eingangsdaten</h3>
|
||||
<dl class="message-properties">
|
||||
<dt class="optional">url <span class="property-type">string</span></dt>
|
||||
<dd>Wenn nicht im Node eingestellt, setzt diese optionale Eigenschaft die URL der Anforderung.</dd>
|
||||
<dt class="optional">method <span class="property-type">string</span></dt>
|
||||
<dd>Wenn nicht im Node eingestellt, setzt diese optionale Eigenschaft die HTTP-Methode der Anforderung
|
||||
(<code>GET</code>, <code>PUT</code>, <code>POST</code>, <code>PATCH</code> oder <code>DELETE</code>).</dd>
|
||||
<dt class="optional">headers <span class="property-type">object</span></dt>
|
||||
<dd>HTTP-Header der Anforderung.</dd>
|
||||
<dt class="optional">cookies <span class="property-type">object</span></dt>
|
||||
<dd>Wenn gesetzt, kann es verwendet werden, um Cookies mit der Anforderung zu senden.</dd>
|
||||
<dt class="optional">payload</dt>
|
||||
<dd>Hauptteil der Anforderung.</dd>
|
||||
<dt class="optional">rejectUnauthorized</dt>
|
||||
<dd>Wenn auf <code>false</code> gesetzt, können Anforderungen an https-Sites gesendet werden, die selbst signierte Zertifikate verwenden.</dd>
|
||||
<dt class="optional">followRedirects</dt>
|
||||
<dd>Wenn auf <code>false</code> gesetzt, wird ein nachfolgendes Redirect (HTTP 301) verhindert.
|
||||
Standard ist <code>true</code>.</dd>
|
||||
<dt class="optional">requestTimeout</dt>
|
||||
<dd>Wenn dieser Wert auf eine positive Zahl eingestellt ist,
|
||||
wird damit der global eingestellte Parameter <code>httpRequestTimeout</code> überschrieben.</dd>
|
||||
</dl>
|
||||
<h3>Ausgangsdaten</h3>
|
||||
<dl class="message-properties">
|
||||
<dt>payload <span class="property-type">string | object | buffer</span></dt>
|
||||
<dd>Hauptteil der Antwort.<br/>
|
||||
Der Node kann eingestellt werden, um den Hauptteil als String zurückzugeben,
|
||||
zu versuchen, ihn als JSON-String zu analysieren oder ihn als binären Puffer (buffer) zu belassen.</dd>
|
||||
<dt>statusCode <span class="property-type">number</span></dt>
|
||||
<dd>Statuscode der Antwort oder der Fehlercode, wenn die Anforderung nicht abgeschlossen werden konnte.</dd>
|
||||
<dt>headers <span class="property-type">object</span></dt>
|
||||
<dd>Objekt mit dem HTTP-Header der Antwort.</dd>
|
||||
<dt>responseUrl <span class="property-type">string</span></dt>
|
||||
<dd>Falls während der Bearbeitung der Anforderung Umleitungen aufgetreten sind, ist diese Eigenschaft die letzte umgelenkte URL.
|
||||
Andernfalls die URL der ursprünglichen Anforderung.</dd>
|
||||
<dt>responseCookies <span class="property-type">object</span></dt>
|
||||
<dd>Wenn die Antwort Cookies enthält, ist dieses Element ein Objekt von Name/Wert-Paaren für jedes Cookie.</dd>
|
||||
</dl>
|
||||
<h3>Details</h3>
|
||||
<p>Wenn innerhalb des Nodes eingestellt, kann die URL-Eigenschaft
|
||||
<a href="http://mustache.github.io/mustache.5.html" target="_blank">mustache-style</a>-Tags enthalten.
|
||||
Diese ermöglichen es, die URL aus den Werten der eingehenden Nachricht aufzubauen.
|
||||
Wenn die URL beispielsweise <code>example.com/{{{topic}}}</code> lautet,
|
||||
wird der Wert von <code>msg.topic</code> automatisch eingefügt.
|
||||
Die Verwendung von {{{...}} hindert Mustache am Escaping von Zeichen wie z.B. / & usw.</p>
|
||||
<p><b>Hinweis</b>: Wenn Node-RED hinter einem Proxy läuft, sollte die Umgebungsvariable <code>http_proxy=...</code>
|
||||
gesetzt und Node-RED neu gestartet werden.
|
||||
Alternativ kann eine Proxy-Konfiguration verwendet werden, die dann Vorrang vor der Umgebungsvariable hat.</p>
|
||||
<h4><b>Verwendung mehrerer HTTP-Anforderungs-Nodes</b></h4>
|
||||
<p>Um mehr als einen dieser Nodes im gleichen Flow verwenden zu können,
|
||||
ist Aufmerksamkeit bei der Verwendung der <code>msg.headers</code>-Eigenschaft gefordert.
|
||||
Der erste Node setzt diese Eigenschaft mit dem Antwort-Header.
|
||||
Der nächste Node verwendet dann diesen Header für seine Anfrage, was aber nicht die richtige Art und Weise ist.
|
||||
Wenn die <code>msg.headers</code>-Eigenschaft zwischen den Nodes unverändert bleibt, wird sie vom zweiten Node ignoriert.
|
||||
Um benutzerdefinierte Header festzulegen, sollte <code>msg.headers</code> zuerst gelöscht oder
|
||||
auf ein leeres Objekt gesetzt werden: <code>{}</code></p>
|
||||
<h4><b>Behandlung von Cookies</b></h4>
|
||||
<p>Die an den Node übergebene <code>cookies</code>-Eigenschaft muss ein Objekt von Name/Wert-Paaren sein.
|
||||
Der Wert kann entweder ein String sein, um den Wert des Cookies zu setzen,
|
||||
oder es kann ein Objekt mit einer einzigen <code>value</code>-Eigenschaft sein.<p>
|
||||
<p>Alle auf Anforderung zurückgegebene Cookies werden über die <code>responseCookies</code>-Eigenschaft zurückgegeben.</p>
|
||||
<h4><b>Behandlung von Content-Typen</b></h4>
|
||||
<p>Wenn <code>msg.payload</code> ein Objekt ist, setzt der Node automatisch den Inhaltstyp der Anforderung
|
||||
auf <code>application/json</code> und kodiert den Hauptteil als solchen.</p>
|
||||
<p>Um die Anforderung als Formulardaten zu kodieren, sollte <code>msg.headers["content-type"]</code> auf
|
||||
<code>application/x-www-form-urlencoded</code> gesetzt werden.</p>
|
||||
<h4><b>Datei-Upload</b></h4>
|
||||
<p>Um einen Datei-Upload umzusetzen, sollte <code>msg.headers["content-type"]</code> auf <code>multipart/form-data</code>
|
||||
gesetzt werden und das an den Node zu sendende <code>msg.payload</code> muss ein Objekt mit folgender Struktur sein:</p>
|
||||
<pre><code>{
|
||||
"KEY": {
|
||||
"value": FILE_CONTENTS,
|
||||
"options": {
|
||||
"filename": "FILENAME"
|
||||
}
|
||||
}
|
||||
}</code></pre>
|
||||
<p>Die Inhalte von <code>KEY</code>, <code>FILE_CONTENTS</code> und <code>FILENAME</code>
|
||||
sollten auf passende Werte gesetzt sein.</p>
|
||||
</script>
|
||||
@@ -0,0 +1,42 @@
|
||||
<!--
|
||||
Copyright JS Foundation and other contributors, http://js.foundation
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<script type="text/html" data-help-name="websocket in">
|
||||
<p>WebSocket-Eingangs-Node.</p>
|
||||
<p>Standardmäßig befinden sich die vom WebSocket empfangenen Daten in <code>msg.payload</code>.
|
||||
Der Socket kann eingestellt werden, einen korrekt gebildeten JSON-Zeichenfolge (string) zu erwarten.
|
||||
In diesem Fall wird das JSON analysiert (parse) und das resultierende Objekt als gesamte Nachricht gesendet.</p>
|
||||
</script>
|
||||
|
||||
<script type="text/html" data-help-name="websocket out">
|
||||
<p>WebSocket-Ausgang-Node.</p>
|
||||
<p>Standardmäßig wird <code>msg.payload</code> über den WebSocket gesendet.
|
||||
Der Socket kann eingestellt werden, das gesamte <code>msg</code>-Objekt als JSON-Zeichenfolge (string) zu kodieren und
|
||||
über den WebSocket zu senden.</p>
|
||||
<p>Wenn die an diesem Node ankommende Nachricht von einem WebSocket-Eingangs-Node ausgeht,
|
||||
wird die Nachricht an den Client zurückgesendet, der den Flow ausgelöst hat.
|
||||
Andernfalls wird die Nachricht an alle verbundenen Clients gesendet.</p>
|
||||
<p>Wenn eine von einem WebSocket-Eingangs-Node ausgehende Nachricht an alle verbundenen Clients gesendet werden soll,
|
||||
muss die <code>msg._session</code>-Eigenschaft im Flow gelöscht werden.</p>
|
||||
</script>
|
||||
|
||||
<script type="text/html" data-help-name="websocket-listener">
|
||||
<p>Konfigurations-Node zur Erstellung eines WebSocket-Server-Endpunktes mit vorgegebenen Pfad.</p>
|
||||
</script>
|
||||
|
||||
<script type="text/html" data-help-name="websocket-client">
|
||||
<p>Konfigurations-Node zur Verbindung eines WebSocket-Clients mit vorgegebener URL.</p>
|
||||
</script>
|
||||
@@ -0,0 +1,47 @@
|
||||
<!--
|
||||
Copyright JS Foundation and other contributors, http://js.foundation
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<script type="text/html" data-help-name="tcp in">
|
||||
<p>TCP-Eingang zur Verbindung mit einem entfernten TCP-Port oder Akzeptanz eingehender Verbindungen.</p>
|
||||
<p><b>Hinweis</b>: Auf einigen Systemen benötigen Sie möglicherweise Root- oder Administrator-Zugriffsrechte,
|
||||
um Ports unter 1024 und/oder Broadcast nutzen zu können.</p>
|
||||
</script>
|
||||
|
||||
<script type="text/html" data-help-name="tcp out">
|
||||
<p>TCP-Ausgang zur Verbindung mit einem entfernten TCP-Port, Akzeptanz eingehender Verbindungen oder
|
||||
Antwort auf Nachrichten, die von einem <b>tcp in</b>-Node empfangen werden.</p>
|
||||
<p>Nur der <code>msg.payload</code>-Inhalt wird gesendet.</p>
|
||||
<p>Wenn <code>msg.payload</code> einen String mit Base64-Kodierung von binären Daten beinhaltet,
|
||||
bewirkt die Option <i>Base64-Nachricht dekodieren</i>,
|
||||
dass sie vorm Senden wieder in Binärdaten umgewandelt wird.</p>
|
||||
<p>Wenn <code>msg._session</code> nicht vorhanden ist,
|
||||
werden die Nutzdaten (Payload) an <b>alle</b> verbundenen Clients gesendet.</p>
|
||||
<p><b>Hinweis</b>: Auf einigen Systemen benötigen Sie möglicherweise Root- oder Administrator-Zugriffsrechte,
|
||||
um Ports unter 1024 und/oder Broadcast nutzen zu können.</p>
|
||||
</script>
|
||||
|
||||
<script type="text/html" data-help-name="tcp request">
|
||||
<p>Einfacher TCP-Anforderungs-Node zum
|
||||
Senden von <code>msg.payload</code> an einen Server-TCP-Port und erwarten einer Antwort.</p>
|
||||
<p>Der Node verbindet sich, sendet einen <i>request</i> (Anfrage) und liest den <i>response</i> (Antwort).
|
||||
Er kann entweder eine vorgegebene Zeichenanzahl in einem festen Puffer abzählen,
|
||||
auf ein passendes Zeichen zur Rückkehr reagieren, ein festes Zeitlimit ab der ersten Antwort abwarten und dann rückkehren,
|
||||
endlos auf Daten warten oder sofort die Verbindug schliessen, ohne auf Antwort zu warten.</p>
|
||||
<p>Die Antwort wird in <code>msg.payload</code> als binärer Puffer (buffer) ausgegeben,
|
||||
sodass sie ggf. mit der <code>.toString()</code>-Funktion umgewandelt werden kann.</p>
|
||||
<p>Wenn <i>Server</i> oder <i>Port</code> nicht vorgegeben werden,
|
||||
müssen diese mit den <code>msg.host</code>- und <code>msg.port</code>-Eigenschaften übergeben werden.</p>
|
||||
</script>
|
||||
@@ -0,0 +1,35 @@
|
||||
<!--
|
||||
Copyright JS Foundation and other contributors, http://js.foundation
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<script type="text/html" data-help-name="udp in">
|
||||
<p>UDP-Eingangs-Node zur Erzeugung einer <code>msg.payload</code> mit Buffer, String oder base64-kodierten String.
|
||||
Multicast wird unterstützt.</p>
|
||||
<p>Über die Eigenschaften <code>msg.ip</code> und <code>msg.port</code> können IP-Addresse und Port vorgeben werden,
|
||||
von dem die Nachtrichten empfangen werden.</p>
|
||||
<p><b>Hinweis</b>: Auf einigen Systemen benötigen Sie möglicherweise Root- oder Administrator-Zugriffsrechte,
|
||||
um Ports unter 1024 und/oder Broadcast nutzen zu können.</p>
|
||||
</script>
|
||||
|
||||
<script type="text/html" data-help-name="udp out">
|
||||
<p>UDP-Ausgangs-Node zum Senden von <code>msg.payload</code> an vorgegebenen UDP-Host und -Port.
|
||||
Multicast wird unterstützt.</p>
|
||||
<p>Über die Eigenschaften <code>msg.ip</code> und <code>msg.port</code> können IP-Addresse und Port vorgeben werden,
|
||||
an den die Nachtrichten gesendet werden. Statisch im Node vorgebene Werte haben aber Vorrang.</p>
|
||||
<p>Bei Verwendung von Broadcast sollte die Adresse auf die lokale Broadcast-IP-Adresse oder
|
||||
auf 255.255.255.255 (globale Broadcast-Adresse) eingestellt werden.</p>
|
||||
<p><b>Hinweis</b>: Auf einigen Systemen benötigen Sie möglicherweise Root- oder Administrator-Zugriffsrechte,
|
||||
um Ports unter 1024 und/oder Broadcast nutzen zu können.</p>
|
||||
</script>
|
||||
@@ -0,0 +1,58 @@
|
||||
<!--
|
||||
Copyright JS Foundation and other contributors, http://js.foundation
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<script type="text/html" data-help-name="csv">
|
||||
<p>Konvertierung zwischen einer CSV-formatierten Zeichenfolge (string) und ihrer JavaScript-Objektdarstellung in beide Richtungen.</p>
|
||||
<h3>Eingangsdaten</h3>
|
||||
<dl class="message-properties">
|
||||
<dt>payload <span class="property-type">object | array | string</span></dt>
|
||||
<dd>JavaScript-Objekt, Array oder CSV-Zeichenfolge.</dd>
|
||||
</dl>
|
||||
<h3>Ausgangsdaten</h3>
|
||||
<dl class="message-properties">
|
||||
<dt>payload <span class="property-type">object | array | string</span></dt>
|
||||
<dd>
|
||||
<ul>
|
||||
<li>Wenn die Eingangsdaten ein Zeichenfolge (string) sind, wird versucht, sie als CSV zu analysieren (parse),
|
||||
und es wird für jede Zeile ein JavaScript-Objekt mit Schlüssel/Wert-Paaren erstellt.
|
||||
Der Node sendet dann entweder eine Nachricht für jede CSV-Zeile oder
|
||||
eine einzige Nachricht mit einem Array von Objekten.</li>
|
||||
<li>Wenn die Eingangsdaten ein JavaScript-Objekt sind, wird versucht, eine CSV-Zeichenfolge zu erzeugen</li>
|
||||
<li>Wenn die Eingangsdaten ein Array mit einfachen Werten sind, wird eine einzeilige CSV-Zeichenfolge erstellt</li>
|
||||
<li>Wenn die Eingangsdaten ein Array von Arrays oder Objekten sind, wird ein mehrzeiliger CSV-Zeichenfolge erstellt</li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
<h3>Details</h3>
|
||||
<p>Die Spaltenvorlage besteht aus der geordneten und durch Komma getrennten Liste der Spaltennamen.
|
||||
Bei der Konvertierung von CSV nach Objekt werden die Spaltennamen als Eigenschaftsnamen verwendet.
|
||||
Alternativ können die Spaltennamen auch aus der ersten Zeile des CSV übernommen werden.</p>
|
||||
<p>Bei der Konvertierung nach CSV wird die Spaltenvorlage verwendet, um festzustellen,
|
||||
welche Eigenschaften aus dem Objekt in welcher Reihenfolge extrahiert werden sollen.</p>
|
||||
<p>Wenn die Spaltenvorlage nicht vorgegeben ist, kann eine einfache, Komma getrennte Liste über
|
||||
die <code>msg.columns</code>-Eigenschaft übergeben werden, um vorzugeben, was der Node extrahieren soll,
|
||||
und wie es sortiert sein soll.
|
||||
Wenn das nicht vorgegeben ist, werden alle Objekt-Eigenschaften in der Reihenfolge ausgegeben,
|
||||
wie die Eigenschaften in der ersten Zeile gefunden wurden.</p>
|
||||
<p>Wenn die Eingangsdaten ein Array sind, wird die Spaltenvorlage nur verwendet,
|
||||
um optional eine Reihe von Spaltentiteln zu erzeugen.</p>
|
||||
<p>Mit der Option <i>Zahlenwerte ermitteln</i> werden Zeichenfolgen als Zahlenwerte ausgewertet, z.B. der mittlere Wert der CSV-Zeile <code>1,"1.5",2</code></p>
|
||||
<p>Mit der Option <i>Leere Zeichenfolgen (string) einbeziehen</i> werden auch leere Zeichenfolgen übergeben, z.B. der mittlere Wert der CSV-Zeile <code>"1","",3</code></p>
|
||||
<p>Mit der Option <i>Nullwerte einbeziehen</i> werden auch Nullwerte rückgegeben, z.B. der mittlere Wert der CSV-Zeile <code>"1",,3</code></p>
|
||||
<p>Der Node kann mehrteilige Eingangsdaten akzeptieren, solange die <code>parts</code>-Eigenschaft korrekt gesetzt ist.</p>
|
||||
<p>Wenn mehrere Nachrichten ausgegeben werden, sind ihre <code>parts</code>-Eigenschaften gesetzt und sie bilden eine vollständige Nachrichtensequenz.</p>
|
||||
<p><b>Hinweis</b>:Die Spaltenvorlage muss Komma-getrennt sein, auch wenn für die Daten ein anderes Trennzeichen gewählt wird.</p>
|
||||
</script>
|
||||
@@ -0,0 +1,37 @@
|
||||
<!--
|
||||
Copyright JS Foundation and other contributors, http://js.foundation
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<script type="text/html" data-help-name="html">
|
||||
<p>Extraktion von Elementen unter Verwendung eines CSS-Selektors aus einem HTML-Dokument, das sich in <code>msg.payload</code> befindet.</p>
|
||||
<h3>Eingangsdaten</h3>
|
||||
<dl class="message-properties">
|
||||
<dt>payload <span class="property-type">string</span></dt>
|
||||
<dd>HTML-Zeichenfolge (string), aus dem Elemente extrahiert werden sollen.</dd>
|
||||
<dt class="optional">select <span class="property-type">string</span></dt>
|
||||
<dd>Sofern nicht im Node vorgegeben, kann der Selektor auch als <code>msg.select</code>-Eigenschaft übergeben werden.</dd>
|
||||
</dl>
|
||||
<h3>Ausgangsdaten</h3>
|
||||
<dl class="message-properties">
|
||||
<dt>payload <span class="property-type">array | string</span></dt>
|
||||
<dd>Das Ergebnis kann entweder eine einzelne Nachricht mit dem Array der passendes Elemente oder
|
||||
mehrere Nachrichten mit je einem passenden Element sein.
|
||||
Wenn mehrere Nachrichten gesendet werden, enthalten sie auch die <code>parts</code>-Eigenschaft.</dd>
|
||||
</dl>
|
||||
<h3>Details</h3>
|
||||
<p>Dieser Node unterstützt eine Kombination aus CSS- und jQuery-Selektoren.
|
||||
Siehe die <a href="https://github.com/fb55/CSSselect#user-content-supported-selectors" target="_blank">css-select Dokumentation</a>
|
||||
für weitere Informationen über die unterstützte Syntax.</p>
|
||||
</script>
|
||||
@@ -0,0 +1,54 @@
|
||||
<!--
|
||||
Copyright JS Foundation and other contributors, http://js.foundation
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<script type="text/html" data-help-name="json">
|
||||
<p>Konvertierung zwischen JSON-Zeichenfolge (string) und JavaScript-Objektdarstellung in beide Richtungen.</p>
|
||||
<h3>Eingangsdaten</h3>
|
||||
<dl class="message-properties">
|
||||
<dt>payload <span class="property-type">object | string</span></dt>
|
||||
<dd>JavaScript-Objekt oder JSON-Zeichenfolge (string).</dd>
|
||||
<dt>schema <span class="property-type">object</span></dt>
|
||||
<dd>Optionales JSON-Schema-Objekt, gegen das das JSON-Objekt validiert wird.</dd>
|
||||
</dl>
|
||||
<h3>Ausgangsdaten</h3>
|
||||
<dl class="message-properties">
|
||||
<dt>payload <span class="property-type">object | string</span></dt>
|
||||
<dd>
|
||||
<ul>
|
||||
<li>Wenn die Eingangsdaten eine JSON-Zeichenfolge (string) darstellen, wird versucht sie in ein JavaScript-Objekt zu analysieren (parsen).</li>
|
||||
<li>Wenn die Eingangsdaten ein JavaScript-Objekt darstellen, wird eine JSON-Zeichenfolge (string) erstellt.
|
||||
Die Zeichenfolge (string) kann optional gut leserlich formatiert werden.</li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt>schemaError <span class="property-type">array</span></dt>
|
||||
<dd>Wenn die JSON-Schema-Validierung fehlschlägt, wird für den catch-Node eine <code>schemaError</code>-Eigenschaft erstellt,
|
||||
die ein Array von Fehlern enthält.</dd>
|
||||
</dl>
|
||||
<h3>Details</h3>
|
||||
<p>Standardmäßig verarbeitet der Node <code>msg.payload</code>,
|
||||
kann aber auch eine beliebige Nachrichteneigenschaft konvertieren.</p>
|
||||
<p>Die Konvertierungsrichtung kann im Node auch vorgegeben werden, um eine bestimmte Ziel-Kodierung sicherzustellen.
|
||||
Dies kann z.B. zusammen mit dem http in-Node benutzt werden, um sicherzustellen,
|
||||
dass die Nutzdaten (Payload) ein analysiertes (parsed) Objekt ist,
|
||||
auch wenn eine eingehende Anfrage seinen Inhaltstyp nicht korrekt eingestellt hat,
|
||||
damit der http in-Node die Konvertierung durchführen kann.</p>
|
||||
<p>Wenn der Node auf Zeichenfolgen-Eingang (string) eingestellt ist und es einen String empfängt,
|
||||
werden keine weiteren Prüfungen der Eigenschaft durchgeführt.
|
||||
Der Node prüft weder, ob die Zeichenfolge (string) ein gültiges JSON enthält, noch wird er ihn neu formatieren,
|
||||
wenn die Format-Option ausgewählt ist.</p>
|
||||
<p>Für weitere Details über das JSON-Schema siehe die
|
||||
<a href="http://json-schema.org/latest/json-schema-validation.html">JSON-Schema-Spezifikation</a>.</p>
|
||||
</script>
|
||||
@@ -0,0 +1,54 @@
|
||||
<!--
|
||||
Copyright JS Foundation and other contributors, http://js.foundation
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<script type="text/html" data-help-name="xml">
|
||||
<p>Konvertierung zwischen XML-Zeichenfolge (string) und JavaScript-Objekt in beiden Richtungen.</p>
|
||||
<h3>Eingangsdaten</h3>
|
||||
<dl class="message-properties">
|
||||
<dt>payload <span class="property-type">object | string</span></dt>
|
||||
<dd>JavaScript-Objekt oder XML-Zeichenfolge (string).</dd>
|
||||
<dt class="optional">options <span class="property-type">object</span></dt>
|
||||
<dd>Optionale Eigenschaft zur Übergabe von Optionen an die Konvertier-Bibliothek von und zu XML.
|
||||
Siehe <a href="https://github.com/Leonidas-from-XIV/node-xml2js/blob/master/README.md#options" target="_blank">xml2js Dokumente</a>
|
||||
für weitere Informationen.</dd>
|
||||
</dl>
|
||||
<h3>Ausgangsdaten</h3>
|
||||
<dl class="message-properties">
|
||||
<dt>payload <span class="property-type">object | string</span></dt>
|
||||
<dd>
|
||||
<ul>
|
||||
<li>Wenn die Eingangsdaten eine Zeichenfolge (string) sind,
|
||||
wird versucht sie als XML zu analysieren (parse) und daraus ein JavaScript-Objekt zu erstellen.</li>
|
||||
<li>Wenn die Eingangsdaten ein JavaScript-Objekt darstellen,
|
||||
wird versucht daraus ein XML-Zeichenfolge (string) zu erstellen.</li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
<h3>Details</h3>
|
||||
<p>Bei der Konvertierung zwischen XML und einem Objekt werden standardmäßig alle XML-Attribute als Eigenschaft mit Namen <code>$</code> hinzugefügt.
|
||||
Jeder Textinhalt wird als Eigenschaft mit Namen <code>_</code> hinzugefügt.
|
||||
Diese Eigenschaftsnamen können in der Node-Konfiguration angegeben werden.</p>
|
||||
<p>Zum Beispiel wird das folgende XML wie dargestellt konvertiert:</p>
|
||||
<pre><p class="tag">Hello World</p></pre>
|
||||
<pre>{
|
||||
"p": {
|
||||
"$": {
|
||||
"class": "tag"
|
||||
},
|
||||
"_": "Hello World"
|
||||
}
|
||||
}</pre>
|
||||
</script>
|
||||
@@ -0,0 +1,34 @@
|
||||
<!--
|
||||
Copyright JS Foundation and other contributors, http://js.foundation
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<script type="text/html" data-help-name="yaml">
|
||||
<p>Konvertierung zwischen YAML-formatierter Zeichenfolge (string) und JavaScript-Objekt-Darstellung in beide Richtungen.</p>
|
||||
<h3>Eingangsdaten</h3>
|
||||
<dl class="message-properties">
|
||||
<dt>payload <span class="property-type">object | string</span></dt>
|
||||
<dd>JavaScript-Objekt oder YAML-Zeichenfolge (string).</dd>
|
||||
</dl>
|
||||
<h3>Ausgangsdaten</h3>
|
||||
<dl class="message-properties">
|
||||
<dt>payload <span class="property-type">object | string</span></dt>
|
||||
<dd>
|
||||
<ul>
|
||||
<li>Wenn die Eingangsdaten eine YAML-Zeichenfolge (string) sind, wird versucht daraus ein JavaScript-Objekt zu erzeugen.</li>
|
||||
<li>Wenn die Eingangsdaten ein JavaScript-Objekt darstellt, wird daraus eine YAML-Zeichenfolge (string) erstellt.</li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
</script>
|
||||
@@ -0,0 +1,163 @@
|
||||
<!--
|
||||
Copyright JS Foundation and other contributors, http://js.foundation
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<script type="text/html" data-help-name="split">
|
||||
<p>Aufteilung einer Nachricht in Nachrichtensequenzen.</p>
|
||||
<h3>Eingangsdaten</h3>
|
||||
<dl class="message-properties">
|
||||
<dt>payload <span class="property-type">object | string | array | buffer</span></dt>
|
||||
<dd>Das Node-Verhalten wird durch den <code>msg.payload</code>-Typ bestimmt:
|
||||
<ul>
|
||||
<li><b>Zeichenfolge (string) / Binärer Puffer (buffer)</b>: Die Nachricht wird anhand des vorgegebenen Zeichens (Standard: <code>\n</code>),
|
||||
der Buffer-Sequenz oder in feste Längen aufgeteilt</li>
|
||||
<li><b>Datenfeld (array)</b>: Die Nachricht wird entweder in einzelne Array-Elemente oder Arrays mit fester Länge aufgeteilt</li>
|
||||
<li><b>Objekt (object)</b>: Jedes Schlüssel/Wert-Paar wird einzeln als Nachricht gesendet</li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
<h3>Ausgangsdaten</h3>
|
||||
<dl class="message-properties">
|
||||
<dt>parts <span class="property-type">object</span></dt>
|
||||
<dd>Diese Eigenschaft enthält Informationen darüber, wie die Nachricht von der ursprünglichen Nachricht abgeteilt wurde.
|
||||
Bei Übergabe an ein join-Node kann die Sequenz wieder zu einer einzigen Nachricht zusammengeführt werden.
|
||||
Diese Eigenschaft hat die folgenden Eigenschaften:
|
||||
<ul>
|
||||
<li><code>id</code>: Identifikator der Nachrichten-Gruppe</li>
|
||||
<li><code>index</code>: Position innerhalb der Gruppe</li>
|
||||
<li><code>count</code>: Gesamtzahl der Nachrichten in der Gruppe (sofern bekannt). Siehe dazu unten <i>Streaming-Modus</i>.</li>
|
||||
<li><code>type</code>: Nachrichtentyp string/array/object/buffer</li>
|
||||
<li><code>ch</code>: Die für das Aufteilen der String- oder Buffer-Nachricht verwendeten Daten, entweder als String oder als Byte-Array.</li>
|
||||
<li><code>key</code>: Schlüssel der Eigenschaft, aus der diese Nachricht erstellt wurde (nur bei einem Objekt).
|
||||
Optional kann dieser Wert auch in andere Nachrichteneigenschaft kopiert werden, wie z.B. <code>msg.topic</code>.</li>
|
||||
<li><code>len</code>: Nachrichtenlänge bei Aufteilung in feste Längen</li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
<h3>Details</h3>
|
||||
<p>Dieser Node macht es einfach, einen Flow zu erstellen, der gemeinsame Aktionen über eine Sequenz von Nachrichten ausführt,
|
||||
bevor die Sequenz mittels join-Node wieder zu einer einzigen Nachricht neu kombiniert wird.</p>
|
||||
<p>Der Node verwendet die <code>msg.parts</code>-Eigenschaft, um die einzelnen Sequenzteile nachzuverfolgen.</p>
|
||||
<h4><b>Streaming-Modus</b></h4>
|
||||
<p>Der Node kann auch zum Aufbereiten eines Nachrichtenstroms verwendet werden.
|
||||
So kann beispielsweise ein serielles Gerät, das <code>newline</code>-terminierte Befehle sendet,
|
||||
eine Nachricht mit einem noch unvollständigen Befehl am Ende liefern.
|
||||
Im Streaming-Modus teilt der Node die Nachricht in komplette Befehlsegmente auf.
|
||||
Befindet sich am Nachrichtenende ein unvollständiges Befehlsegment,
|
||||
so wird es im Node aufbewahrt und der nächsten empfangenen Nachricht vorangestellt.</p>
|
||||
<p>In diesem Modus wird die <code>msg.parts.count</code>-Eigenschaft nicht gesetzt,
|
||||
da die Anzahl der zu erwartenden Nachrichten im Stream unbekannt ist.
|
||||
Das bedeutet, dass ein nachfolgender join-Node nicht im Automatikmodus verwendet werden kann.</p>
|
||||
</script>
|
||||
|
||||
<script type="text/html" data-help-name="join">
|
||||
<p>Verbindung von Nachrichtensequenzen zu einer einzigen Nachricht.</p>
|
||||
<p>Es sind drei Modi verfügbar:</p>
|
||||
<dl>
|
||||
<dt>Automatisch</dt>
|
||||
<dd>In Kombination mit dem split-Node verbindet es automatisch die Nachrichten, um die zuvor durchgeführte Aufteilung rückgängig zu machen.</dd>
|
||||
<dt>Manuell</dt>
|
||||
<dd>Die Nachrichtensequenzen können auf verschiedene Weisen verbunden werden.</dd>
|
||||
<dt>Sequenz reduzieren</dt>
|
||||
<dd>Einen Ausdruck auf alle Nachrichten einer Sequenz anwenden, um sie auf eine einzige Nachricht zu reduzieren.</dd>
|
||||
</dl>
|
||||
<h3>Eingangsdaten</h3>
|
||||
<dl class="message-properties">
|
||||
<dt class="optional">parts <span class="property-type">object</span></dt>
|
||||
<dd>Zur automatischen Verbindung einer Nachrichtensequenz sollten alle über diese Eigenschaft verfügen.
|
||||
Der split-Node erzeugt diese Eigenschaft, sie kann aber auch manuell erstellt werden.
|
||||
Sie hat die folgenden Eigenschaften:
|
||||
<ul>
|
||||
<li><code>id</code>: Identifikator der Nachrichten-Gruppe</li>
|
||||
<li><code>index</code>: Position innerhalb der Gruppe</li>
|
||||
<li><code>count</code>: Gesamtzahl der Nachrichten in der Gruppe (sofern bekannt). Siehe dazu unten "Streaming-Modus".</li>
|
||||
<li><code>type</code>: Nachrichtentyp string/array/object/buffer</li>
|
||||
<li><code>ch</code>: Die für das Aufteilen der String- oder Buffer-Nachricht verwendeten Daten, entweder als String oder als Byte-Array.</li>
|
||||
<li><code>key</code>: Schlüssel der Eigenschaft, aus der diese Nachricht erstellt wurde (nur bei einem Objekt).
|
||||
Optional kann dieser Wert auch in andere Nachrichteneigenschaft kopiert werden, wie z.B. <code>msg.topic</code>.</li>
|
||||
<li><code>len</code>: Nachrichtenlänge bei Aufteilung in feste Längen</li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="optional">complete</dt>
|
||||
<dd>Wenn gesetzt, werden die Nutzdaten (Payload) hinzugefügt und die Ausgangsnachricht im aktuellen Zustand gesendet.</dd>
|
||||
</dl>
|
||||
<h3>Details</h3>
|
||||
|
||||
<h4><b>Automatischer Modus</b></h4>
|
||||
<p>Der automatische Modus verwendet die <code>parts</code>-Eigenschaften der eingehenden Nachrichten,
|
||||
um die Sequenz in richtiger Reihenfolge zu verknüpften.
|
||||
Dies ermöglicht die Aufteilung des split-Nodes automatisch rückgängig zu machen.</p>
|
||||
|
||||
<h4><b>Manueller Modus</b></h4>
|
||||
<p>Im manuellen Modus werden Nachrichtensequenzen auf verschiedenen Arten zusammengefügt:</p>
|
||||
<ul>
|
||||
<li><b>String</b> oder <b>Buffer</b>: Verbinden der ausgewählten Eigenschaft jeder Nachricht
|
||||
mit den vorgegebenen Join-Zeichen oder -Buffer</li>
|
||||
<li><b>Array</b>: Erstellung eines Ausgangsarrays durch Hinzufügen jeder ausgewählten Eigenschaft oder ganzer Nachrichten</li>
|
||||
<li><b>Schlüssel/Wert-Objekt</b>: Erzeugung von Schlüssel und Wert aus Eigenschaft jeder Nachricht</li>
|
||||
<li><b>Zusammengeführtes Objekt</b>: Erzeugung durch Zusammenführen der Eigenschaften jeder Nachricht als ein einziges Objekt</li>
|
||||
</ul>
|
||||
<p>Die anderen Eigenschaften der Ausgangsnachricht werden von der zuletzt empfangenen Nachricht übernommen,
|
||||
bevor das Ergebnis gesendet wird.</p>
|
||||
<p>Mit <i>Anzahl</i> kann vorgegeben werden, wie viele Nachrichten vor dem Erzeugen der Ausgangsnadchricht empfangen werden sollen.
|
||||
Bei Objektausgaben kann der Node nach Erreichen dieser Anzahl so eingestellt werden,
|
||||
dass er bei jeder nachfolgenden empfangenen Nachricht eine weitere Nachricht sendet.</p>
|
||||
<p>Mittels <i>Zeitablauf</i> kann das Senden einer neuen Nachricht mit dem Inhalt ausgelöst werden, was bisher empfangen wurde.</p>
|
||||
<p>Wenn eine Nachricht mit der <code>msg.complete</code>-Eigenschaft empfangen wird,
|
||||
wird die Ausgangsnachricht finalisiert und gesendet.
|
||||
Dadurch wird die Zählung aller Teile zurückgesetzt.</p>
|
||||
<p>Wenn eine Nachricht mit der <code>msg.reset</code>-Eigenschaft empfangen wird,
|
||||
wird die unvollständige Nachricht gelöscht und nicht gesendet.
|
||||
Dadurch wird die Zählung aller Teile zurückgesetzt.</p>
|
||||
|
||||
<h4><b>Modus Sequenz reduzieren</b></h4>
|
||||
<p>In diesem Modus wird auf jede Nachricht einer Sequenz ein Ausdruck angewendet und
|
||||
das Ergebnis zu einer einzigen Nachricht akkumuliert.</p>
|
||||
<dl class="message-properties">
|
||||
<dt>Anfangswert</dt>
|
||||
<dd>Anfangswert des akkumulierten Wertes (<code>$A</code>).</dd>
|
||||
<dt>Reduktions-Ausdruck</dt>
|
||||
<dd>JSONata-Ausdruck, der für jede Nachricht in der Sequenz aufgerufen wird.
|
||||
Das Ergebnis wird als akkumulierter Wert an den nächsten Aufruf des Ausdrucks übergeben.
|
||||
Im Ausdruck können folgende spezielle Variablen verwendet werden:
|
||||
<ul>
|
||||
<li><code>$A</code>: Akkumulierter Wert</li>
|
||||
<li><code>$I</code>: Index der Nachricht innerhalb der Sequenz</li>
|
||||
<li><code>$N</code>: Anzahl der Nachrichten der Sequenz</li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt>Fix-up-Ausdruck</dt>
|
||||
<dd>Optionaler JSONata-Ausdruck, der nach Anwendung des Reduktions-Ausdrucks auf alle Nachrichten in der Sequenz angewendet wird.
|
||||
Im Ausdruck können folgende spezielle Variablen verwendet werden:
|
||||
<ul>
|
||||
<li><code>$A</code>: Akkumulierter Wert</li>
|
||||
<li><code>$N</code>: Anzahl der Nachrichten der Sequenz</li>
|
||||
</ul>
|
||||
</dd>
|
||||
<p>Standardmäßig wird der Reduktions-Ausdruck in Reihenfolge von der ersten bis zur letzten Nachricht der Sequenz angewendet.
|
||||
Er kann optional in umgekehrter Reihenfolge angewendet werden.</p>
|
||||
</dl>
|
||||
<p><b>Beispiel</b>: Die folgenden Einstellungen berechnen bei einer Sequenz von Zahlenwerten den Mittelwert:
|
||||
<ul>
|
||||
<li><b>Reduktions-Ausdruck</b>: <code>$A+payload</code></li>
|
||||
<li><b>Anfangswert</b>: <code>0</code></li>
|
||||
<li><b>Fix-up-Ausdruck</b>: <code>$A/$N</code></li>
|
||||
</ul>
|
||||
</p>
|
||||
<h4><b>Speichern von Nachrichten</b></h4>
|
||||
<p>Dieser Node puffert Nachrichten intern, um sequenzübergreifend zu arbeiten.
|
||||
Mit der Laufzeiteinstellung <code>nodeMessageBufferMaxLength</code> kann begrenzt werden,
|
||||
wie viele Nachrichten im Node zwischengespeichert werden sollen.</p>
|
||||
</script>
|
||||
@@ -0,0 +1,45 @@
|
||||
<!--
|
||||
Copyright JS Foundation and other contributors, http://js.foundation
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<script type="text/html" data-help-name="sort">
|
||||
<p>Sortierung einer Nachrichteneigenschaft oder einer Nachrichtensequenz.</p>
|
||||
<p>Der Node sortiert entweder das Array der vorgegebenen Nachrichteneigenschaft oder
|
||||
die Reihenfolge einer Nachrichtensequenz neu.</p>
|
||||
<p>Die Sortierreihenfolge kann sein:</p>
|
||||
<ul>
|
||||
<li><b>aufsteigend</b> oder</li>
|
||||
<li><b>absteigend</b></li>
|
||||
</ul>
|
||||
<p>Für Zahlenwerte kann die numerische Sortierreihenfolge festgelegt werden.</p>
|
||||
<p>Der Sortierschlüssel kann ein Elementwert oder ein JSONata-Ausdruck beim Sortieren einer Nachrichteneigenschaft
|
||||
bzw. eine Nachrichteneigenschaft oder ein JSONata-Ausdruck beim Sortieren einer Nachrichtensequenz sein.<p>
|
||||
<p>Zum Sortieren einer Nachrichtensequenz benötigt der sort-Node die gesetzte <code>msg.parts</code>-Eigenschaft bei den empfangenen Nachrichten.
|
||||
Diese Eigenschaft wird vom split-Node erzeugt und kann aber auch manuell erzeugt werden.
|
||||
Sie hat die folgenden Eigenschaften:</p>
|
||||
<p>
|
||||
<ul>
|
||||
<li><code>id</code>: Identifikator der Nachrichten-Gruppe</li>
|
||||
<li><code>index</code>: Position innerhalb der Gruppe</li>
|
||||
<li><code>count</code>: Gesamtzahl der Nachrichten in der Gruppe</li>
|
||||
</ul>
|
||||
</p>
|
||||
<p><b>Hinweis</b>: Dieser Node speichert intern Nachrichten um seine Aufgabe erfüllen zu können.
|
||||
Um einen unerwarteten Speicherverbrauch zu vermeiden, kann die Anzahl der gespeicherten Nachrichten begrenzt werden.
|
||||
Standardmäßig ist die Nachrichtenanzahl nicht begrenzt.
|
||||
Mit der Laufzeiteinstellung <code>nodeMessageBufferMaxLength</code> kann begrenzt werden,
|
||||
wie viele Nachrichten im Node zwischengespeichert werden sollen.</p>
|
||||
</p>
|
||||
</script>
|
||||
@@ -0,0 +1,44 @@
|
||||
<!--
|
||||
Copyright JS Foundation and other contributors, http://js.foundation
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<script type="text/html" data-help-name="batch">
|
||||
<p>Erstellung von Nachrichtensequenzen nach verschiedenen Regeln.</p>
|
||||
<h3>Details</h3>
|
||||
<p>Es gibt drei Modi für die Erstellung von Nachrichtensequenzen:</p>
|
||||
<dl>
|
||||
<dt>Gruppierung anhand Nachrichtenanzahl</dt>
|
||||
<dd>Die Nachrichten werden zu Sequenzen einer vorgegebenen Länge gruppiert.
|
||||
Die Option <i>Überlappung</i> gibt an, wie viele Nachrichten vom Ende einer Sequenz
|
||||
am Anfang der nächsten Sequenz wiederholt werden sollen.</dd>
|
||||
|
||||
<dt>Gruppierung anhand Zeitintervall</dt>
|
||||
<dd>Gruppierung von Nachrichten, die innerhalb des vorgegebenen Intervalls eingehen.
|
||||
Wenn keine Nachrichten innerhalb des Intervalls eingehen, kann der Node optional eine leere Nachricht senden.</dd>
|
||||
|
||||
<dt>Verknüpfung von Sequenzen</dt>
|
||||
<dd>Erzeugt eine Nachrichtensequenz durch die Verkettung eingehender Sequenzen.
|
||||
Jede Nachricht muss eine <code>msg.topic</code>- und eine <code>msg.parts</code>-Eigenschaft haben,
|
||||
damit die Sequenz identifiziert werden kann.
|
||||
Der Node wird mit einer Liste von <code>topic</code>-Werten eingestellt,
|
||||
mit der die Verknüpfungs-Reihenfolge der Sequenzen definiert wird.</dd>
|
||||
|
||||
</dl>
|
||||
<h4><b>Speichern der Nachrichten</b></h4>
|
||||
<p>Dieser Node puffert Nachrichten intern, um sequenzübergreifend arbeiten zu können.
|
||||
Mit der Laufzeiteinstellung <code>nodeMessageBufferMaxLength</code> kann begrenzt werden,
|
||||
wie viele Nachrichten im Node zwischengespeichert werden sollen.</p>
|
||||
<p>Wenn eine Nachricht mit gesetzter <code>msg.reset</code>-Eigenschaft empfangen wurde, wird die zwischengespeicherte Nachricht gelöscht und nicht gesendet.</p>
|
||||
</script>
|
||||
@@ -0,0 +1,62 @@
|
||||
<!--
|
||||
Copyright JS Foundation and other contributors, http://js.foundation
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<script type="text/html" data-help-name="file">
|
||||
<p>Schreiben von <code>msg.payload</code> in eine Datei entweder hinzufügend oder ersetzend.
|
||||
Alternativ Löschen der Datei.</p>
|
||||
<h3>Eingangsdaten</h3>
|
||||
<dl class="message-properties">
|
||||
<dt class="optional">filename <span class="property-type">string</span></dt>
|
||||
<dd>Sofern nicht im Node eingestellt, legt diese optionale Eigenschaft den Namen der zu aktualisierenden Datei fest.</dd>
|
||||
</dl>
|
||||
<h3>Ausgangsdaten</h3>
|
||||
<p>Nach Abschluss des Schreibvorgangs wird die Eingangsnachricht an den Ausgang gesendet.</p>
|
||||
<h3>Details</h3>
|
||||
<p>Jede Nachrichten-Nutzdaten (Payload) werden standardmäßig am Ende der Datei hinzugefügt,
|
||||
optional mit Zeilenumbruchzeichen (\n) nach jeder Nachricht.</p>
|
||||
<p>Wenn <code>msg.filename</code> verwendet wird, wird die Datei nach jedem Schreiben geschlossen.
|
||||
Für eine optimale Leistung sollten feste Dateinamen verwendet werden.</p>
|
||||
<p>Alternativ kann angegeben werden, dass die gesamte Datei überschrieben wird.
|
||||
Zum Beispiel wird diese Option beim Schreiben von Binärdaten in eine Datei verwendet,
|
||||
wo dann auch die Zeilenumbruch-Hinzufüge-Option deaktiviert sein sollte.</p>
|
||||
<p>Alternativ kann dieser Node so eingestellt werden, dass er die Datei löscht.</p>
|
||||
</script>
|
||||
|
||||
<script type="text/html" data-help-name="file in">
|
||||
<p>Lesen von Dateiinhalt als Zeichenfolge (string) oder binären Puffer (buffer).</p>
|
||||
<h3>Eingangsdaten</h3>
|
||||
<dl class="message-properties">
|
||||
<dt class="optional">filename <span class="property-type">string</span></dt>
|
||||
<dd>Sofern nicht im Node eingestellt, legt diese optionale Eigenschaft den Namen der zu lesenden Datei fest.</dd>
|
||||
</dl>
|
||||
<h3>Ausgangsdaten</h3>
|
||||
<dl class="message-properties">
|
||||
<dt>payload <span class="property-type">string | buffer</span></dt>
|
||||
<dd>Dateiinhalt entweder als Zeichenfolge (string) oder binärer Puffer (buffer).</dd>
|
||||
<dt class="optional">filename <span class="property-type">string</span></dt>
|
||||
<dd>Sofern nicht im Node eingestellt, enthält diese optionale Eigenschaft den Namen der zu lesenden Datei.</dd>
|
||||
</dl>
|
||||
<h3>Details</h3>
|
||||
<p>Der Dateiname sollte ein absoluter Pfad sein.
|
||||
Andernfalls wird er relativ zum Arbeitsverzeichnis des Node-RED-Prozesses angewandt.</p>
|
||||
<p>Unter Windows müssen die Pfadtrenner (\) in Escape-Codes umgewandelt werden, z.B.: <code>\\Users\\myUser</code></p>
|
||||
<p>Optional kann eine Textdatei in einzelne Zeilen mit jeweils eine Nachricht pro Zeile aufgeteilt werden.
|
||||
Eine Binärdatei wird in kleine Teile in Größe abhängig vom Betriebssystem aufgeteilt,
|
||||
aber typischerweise 64k (Linux/Mac) oder 41k (Windows).</p>
|
||||
<p>Bei Aufteilung in mehrere Nachrichten besitzt jede eine <code>parts</code>-Eigenschaft,
|
||||
welche eine komplette Nachrichten-Sequenz bildet.</p>
|
||||
<p>Fehler sollten mittels catch-Nodes abgefangen und behandelt werden.</p>
|
||||
</script>
|
||||
@@ -0,0 +1,31 @@
|
||||
<!--
|
||||
Copyright JS Foundation and other contributors, http://js.foundation
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<script type="text/html" data-help-name="watch">
|
||||
<p>Überwachung eines Verzeichnisses oder einer Datei auf Änderungen.</p>
|
||||
<p>Es kann eine kommagetrennte Liste von Verzeichnissen und/oder Dateien angegeben werden.
|
||||
Es müssen Anführungszeichen "..." um alle Leerzeichen enthaltenden Einträge gesetzt werden.</p>
|
||||
<p>Unter Windows müssen in allen Verzeichnisnamen doppelte Schrägstriche \\ verwendet werden.</p>
|
||||
<p>Der vollständige Dateiname der geänderten Datei wird in <code>msg.payload</code> und <code>msg.filename</code> gemeldet,
|
||||
während die Überwachungsliste in <code>msg.topic</code> zurückgegeben wird.</p>
|
||||
<p><code>msg.file</code> enthält nur den kurzen Dateinamen der geänderten Datei.
|
||||
<code>msg.type</code> enthält den Typ des geänderten Elements, normalerweise <i>file</i> oder <i>directory</i>,
|
||||
während <code>msg.size</code> die Dateigröße in Bytes enthält.</p>
|
||||
<p>Natürlich ist unter Linux <i>alles</i> eine Datei und kann somit beobachtet werden ...</p>
|
||||
<p><b>Hinweis</b>: Das Verzeichnis oder die Datei muss vorhanden sein, um beobachtet werden zu können.
|
||||
Wenn die Datei oder das Verzeichnis gelöscht wird, kann es nicht weiter überwacht werden,
|
||||
auch wenn sie/es wieder neu erstellt wird.</p>
|
||||
</script>
|
||||
Reference in New Issue
Block a user