node-red/packages/node_modules/@node-red/nodes/locales/ja/logic/17-split.html

138 lines
10 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!--
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/x-red" data-help-name="split">
<p>メッセージをメッセージ列に分割します</p>
<h3>入力</h3>
<dl class="message-properties">
<dt>payload<span class="property-type">オブジェクト | 文字列 | 配列 | バッファ</span></dt>
<dd><code>msg.payload</code>
<ul>
<li><b>文字列</b>/<b>バッファ</b> - (: <code>\n</code>)</li>
<li><b>配列</b> - </li>
<li><b>オブジェクト</b> - /</li>
</ul>
</dd>
</dl>
<h3>出力</h3>
<dl class="message-properties">
<dt>parts<span class="property-type">オブジェクト</span></dt>
<dd>元のメッセージをどのように分割したかに関する情報をこのプロパティに保持します例えば<b>join</b><code>parts</code>
<ul>
<li><code>id</code> - </li>
<li><code>index</code> - </li>
<li><code>count</code> - </li>
<li><code>type</code> - - ///</li>
<li><code>ch</code> - </li>
<li><code>key</code> -
ノードの設定によりキーを<code>msg.topic</code></li>
<li><code>len</code> - </li>
</ul>
</dd>
</dl>
<h3>詳細</h3>
<p>このノードはメッセージ列を構成するメッセージに対して共通処理を行い<b>join</b></p>
<p><code>msg.parts</code></p>
<h4>ストリームモード</h4>
<p>このノードはメッセージ列を再構成して送信する際にも有用です例えば改行終端のコマンドを送信するようなシリアルデバイスではメッセージの最後のコマンド部分が途切れたメッセージを送出する場合がありますストリームモードを用いることで完結した個別コマンドにメッセージを分割することができます入力メッセージの最後に未完部分がある場合<b>split</b></p>
<p>このモードで処理する際にはメッセージ数を予め知ることができないため<code>msg.parts.count</code><b>join</b></p>
</script>
<script type="text/x-red" data-help-name="join">
<p>メッセージ列を結合して一つのメッセージにします</p>
<p>メッセージの結合には次の3つのモードが利用できます</p>
<dl>
<dt>自動</dt>
<dd><b>split</b>split</dd>
<dt>手動</dt>
<dd>メッセージ列をさまざまな方法で結合します</dd>
<dt>列の集約</dt>
<dd>メッセージ列に対して指定した式を適用し1つのメッセージに集約します</dd>
</dl>
<h3>入力</h3>
<dl class="message-properties">
<dt class="optional">parts<span class="property-type">オブジェクト</span></dt>
<dd>自動的にメッセージ列を結合するには全メッセージがこのプロパティを持っていなければなりません<b>split</b><code>parts</code>
<ul>
<li><code>id</code> - </li>
<li><code>index</code> - </li>
<li><code>count</code> - </li>
<li><code>type</code> - - string/array/object/buffer</li>
<li><code>ch</code> - </li>
<li><code>key</code> - </li>
<li><code>len</code> - </li>
</ul>
</dd>
<dt class="optional">complete</dt>
<dd>設定されている場合保持しているメッセージを結合して送信します</dd>
</dl>
<h3>詳細</h3>
<h4>自動モード</h4>
<p>自動モードでは入力メッセージの<code>parts</code><b>split</b></p>
<h4>手動モード</h4>
<p>手動モードではメッセージ列をさまざまな結果に結合できます</p>
<ul>
<li><b>文字列</b><b></b> - </li>
<li><b>配列</b> - </li>
<li><b>key/valueオブジェクト</b> - </li>
<li><b>統合オブジェクト</b> - </li>
</ul>
<p>出力メッセージのその他のプロパティはメッセージを送信する直前のメッセージをコピーします</p>
<p><i>合計値</i></p>
<p><i></i></p>
<p><code>msg.complete</code></p>
<h4>列の集約モード</h4>
<p>列の集約モードを選択するとメッセージ列を構成する各々のメッセージに対して式を適用し集約した値を用いて一つのメッセージを構成します</p>
<dl class="message-properties">
<dt>初期値</dt>
<dd>
集約の初期値(<code>$A</code>)
</dd>
<dt>集約式</dt>
<dd>メッセージグループを構成する各メッセージに適用するJSONata式
式の評価結果は次回の呼び出しの際に集約値として渡します
<ul>
<li><code>$A</code> </li>
<li><code>$I</code> </li>
<li><code>$N</code> </li>
</ul>
</dd>
<dt>最終調整式</dt>
<dd>メッセージグループの集約が完了した後で適用されるJSONata式任意で指定可能です式中では以下の特殊変数を参照できます
<ul>
<li><code>$A</code> </li>
<li><code>$N</code> </li>
</ul>
</dd>
<p>メッセージグループのメッセージに対しデフォルトでは集約式は最初のメッセージから最後のメッセージに対し順に適用します指定により適用を逆順にすることも可能です</p>
</dl>
<p><b>:</b>
<ul>
<li><b>集約式</b>: <code>$A+payload</code></li>
<li><b>初期値</b>: <code>0</code></li>
<li><b>最終調整式</b>: <code>$A/$N</code></li>
</ul>
</p>
<h4>メッセージの蓄積</h4>
<p>このノードの処理ではメッセージ列の処理のためメッセージを内部に蓄積します<code>nodeMessageBufferMaxLength</code></p>
</script>