このトピックには、以下のセクションが含まれています。
WebSphere MQ Telemetry Transport を介してブローカーに接続するクライアントからのメッセージを受信するには、SCADAInput ノードを使用します。 SCADA デバイス・クライアントは、MQIsdp プロトコルを使用して、SCADAInput ノードが WebSphere Event Broker によって認識される形式に変換するメッセージを送信します。 このノードは、これらのメッセージの処理環境も確立します。
SCADA デバイスから受信するメッセージを処理するメッセージ・フローは、常に SCADAInput ノードから開始されます。SCADAInput ノードのプロパティーを設定すると、メッセージの受信方法を制御できます。 例えば、メッセージをトランザクション制御下で処理するように指示できます。
SCADA ノードを含むメッセージ・フローをブローカーにデプロイする場合、メッセージ・フローの数にかかわりなく、単一の実行グループにデプロイする必要があります。
SCADA は主にパブリッシュ/サブスクライブなので、通常 Publication ノードを組み込んでフローを終了します。 Publication ノードを組み込みたくないシナリオの場合には、SCADAOutput ノードを組み込むことができます。 そうする場合には、メッセージのソースにかかわらず SCADAInput ノードも組み込む必要があります。 SCADAInput ノードは、SCADAOutput ノードが必要とする接続情報を提供するからです。
SCADAInput ノードで開始されるメッセージ・フローに出力ノードを組み込む場合には、サポートされるいずれかの出力ノード (ユーザー定義の出力ノードも含む) を使用できます。 必要な任意の変換を提供するようにブローカーに要求するようにメッセージ・フローを構成できますので、SCADA デバイスからメッセージを受け取り、サポートされるトランスポートすべてを使用してブローカーに接続するクライアント用のメッセージを生成する、メッセージ・フローを作成できます。
特定のトピックのメッセージをパブリッシュして、ブローカーが SCADA リスナーを開始または停止するように要求できます。これは、すべてのポートまたはメッセージ内で識別される単一ポートに対して行うことができます。
z/OS システム上にデプロイされるメッセージ・フロー中で、SCADAInput ノードを使用することはできません。
サブフローとして使用するメッセージ・フローを作成する場合には、標準入力ノードを使用することはできず、入力ノードのインスタンスを最初のノードとして使用して、サブフロー用の in ターミナルを作成する必要があります。
ご使用のメッセージ・フローが SCADA 接続を経由してメッセージを受け取らない場合には、サポートされる入力ノードのいずれかを選択できます。
ワークベンチでは、SCADAInput ノードは次のアイコンで表されます。
このノードの使用方法の例として、リモート・センサーが操作環境の変化 (屋外温度の低下など) を検出した場合に、リモート・センサーからのメッセージを受信するメッセージ・フローを、SCADAInput ノードを使って作成すると想定します。 このノードを MQOutput ノードに接続します。MQOutput ノードは、これらのメッセージを WebSphere MQ アプリケーションがサービスするキューで使用可能にします。 このアプリケーションは、受信した情報を分析して、これに応答します。
SCADAInput ノードのインスタンスをメッセージ・フローに入れると、SCADAInput ノードを構成することができます。 エディター・ビューでノードを右クリックし、「プロパティー」をクリックします。ノードの基本プロパティーが、プロパティー・ダイアログに表示されます。
値を入力する必要のある (デフォルト値が定義されていない) すべての必須プロパティーには、プロパティー・ダイアログにアスタリスクが表示されます。
以下のように、SCADAInput ノードを構成します。
メッセージ・セットのペイロード部分を「オン」または「オフ」にセットした制御トピック $SYS/SCADA/MQIsdpListener/<port_number> でパブリッシュすることによって、リスナーの状況を更新することができます。
ブローカー・データベースとして DB2 を使用している場合、DB2 構成パラメーター maxappls および maxagents に設定した値以下の値を指定する必要があります。 詳細は、データベースへのアクセスの構成を参照してください。
多くのクライアント (200 を超えるクライアント) が接続する場合にのみ、このオプションを使用します。
「キャンセル」をクリックすると、ダイアログを閉じてプロパティーに対して行った変更をすべて破棄します。
SCADAInput は、out ターミナルに正常に取り出される各メッセージをルーティングします。 これが失敗すると、メッセージは failure ターミナルに伝搬されます。 ノードをこのターミナルに接続し、この状態を処理することができます。 failure ターミナルに接続していなかった場合、その問題が解決されるまで、メッセージはこのノードでループし続けます。
メッセージ・フロー内でさらに例外がスローされた後、このノードによってメッセージがキャッチされる場合、メッセージは catch ターミナルにルーティングされます。 catch ターミナルに接続しなかった場合、その問題が解決されるまで、メッセージはこのノードでループし続けます。 メッセージがメッセージ・フロー内でロールバックする可能性がある場合には、ノードが常時このターミナルに接続されているようにしてください。
メッセージ・フローに SCADAInput ノードを組み込む場合、「トランザクション・モード 」で設定する値が、メッセージを同期点下で受信するかどうかを定義します。
(MQOutput ノードは出力ノードのみで、このオプションのオーバーライドを構成できます。)
SCADAInput ノード・ターミナルについては、次の表に説明されています。
ターミナル | 説明 |
---|---|
Failure | エラーが発生した場合にメッセージがルーティングされる出力ターミナル。 |
Out | キューからメッセージが正常に取り出された場合に、メッセージがルーティングされる出力ターミナル。 |
Catch | 例外がダウンストリームでスローされ、ノードによってキャッチされた場合に、メッセージがルーティングされる出力ターミナル。 |
以下の表でノードのプロパティーを説明します。M の見出しの列は、プロパティーが必須 かどうかを示します (デフォルトが定義されていない場合に値を入力することが必要なら、プロパティー・ダイアログにアスタリスクのマークが付きます)。 C の見出しの列は、プロパティーが構成可能 かどうかを示します (メッセージ・フローを bar ファイルに追加してデプロイするとき、値を変更できます)。
SCADAInput ノードの「基本」プロパティーについては、次の表に説明されています。
プロパティー | M | C | デフォルト | 説明 |
---|---|---|---|---|
始動時にリスナーを使用可能にする | はい | いいえ | 選択されている | リスナーを開始する時期。チェック・ボックスを選択した場合、メッセージ・フローがブローカーによって開始されるとリスナーが開始されます。チェック・ボックスを選択しない場合、指定されたポートにメッセージが到達するとリスナーが開始されます。 |
ポート | はい | はい | 1883 | SCADA プロトコルが listen するポート。 |
最大スレッド | はい | はい | 500 | SCADA デバイスをサポートするために始動するスレッドの最大数。 |
スレッド・プール使用 | はい | はい | 選択されていない | スレッド・プールを使用するかどうか。 チェック・ボックスを選択すると、このアクションが実行されます。 |
SCADAInput ノードの「拡張」プロパティーについては、次の表に説明されています。
プロパティー | M | C | デフォルト | 説明 |
---|---|---|---|---|
トランザクション・モード | はい | いいえ | 「はい」 | 着信メッセージが同期点下で受信されるかどうか。 有効な値は、「自動」、「はい」、および「いいえ」です。 |
SCADAInput ノードの説明プロパティーについては、次の表に説明されています。
プロパティー | M | C | デフォルト | 説明 |
---|---|---|---|---|
簡略説明 | いいえ | いいえ | ノードの簡単な説明 | |
詳細説明 | いいえ | いいえ | メッセージ・フロー内のノードの目的を説明するテキスト |