こんにちは。CData Software Japan の色川です。
「データ連携」と一口に言っても、業種や業界、通信対象のレイヤなどにより、通信プロトコルやデータ形式に関する標準化の状況は様々です。製造業界や医療業界など幾つかの産業分野では、機器や設備とのデータ連携(通信)においてTCP/IP 上に独自フォーマットの電文(プロトコル)を実装して通信しているケースもまだまだ多いかも知れません。そのような独自プロトコルを利用する設備や機器とのデータ連携においても、ノーコード・ローコードで効率良く自動化を実現したいニーズは多いかとも思います。
CData Arc の「TCP Server コネクタ」はそのような「標準プロトコルに必ずしも適合しない任意のTCP 通信(電文)のデータ連携」に活用できるコネクタです。この記事では、CData Arc の「TCP Server コネクタ」についてご紹介します。
CData Arc
CData Arc は、CData 製品の中で「自動化/Automate」を担うデータ連携ツールです。「B2B 連携をもっとシンプルに」をコンセプトに、ファイル連携 & DB 連携 & API 連携といったB2B 連携に必要なすべてをノーコード・ローコードでつなぐことができるプラットフォームです。
TCP Server コネクタ(概要)
CData Arc の「TCP Server コネクタ」は、TCP 経由でデータを受信するための汎用のエンドポイントとして機能するコネクタです。機能的には「一般的なTCP サーバー機能」を実装しているコネクタで、TCP クライアントとの間で(他の標準プロトコルの規格や制約に必ずしも適合しない)独自フォーマットの電文(プロトコル)を受信する必要がある場合に活用できるコネクタです。
TCP/IP 上で任意のクライアント(機器や設備)から独自フォーマットの電文(プロトコル)を受信して、メッセージを編集・マッピングして、上位のアプリケーションやデータストアに連携するシナリオであれば、このようなフローイメージになるでしょう。
TCP Server コネクタ(使い方)
任意・独自のTCP 通信に対して、受信及び処理対象とすべきメッセージを判別するために、TCP Server コネクタでは、2つの設定アプローチを利用する事ができます。
A. 区切り文字による受信メッセージの判別
受信及び処理対象とすべきメッセージを判別するためのアプローチの1つが、静的な「区切り文字」による判別です。例えば以下の設定の場合"["をメッセージの開始と判別し、"]"をメッセージの終端と判別します。
TCP Server コネクタを上記のように設定したとき、nc(netcat)で下記のようにメッセージを送信すると、期待の内容が受信されていることが確認できます。
B. メッセージ長での受信メッセージの判別
受信及び処理対象とすべきメッセージを判別するためのアプローチのもう1つが「メッセージ長」による判別です。受信すべきメッセージの長さが任意の位置に指定されているようなフォーマットの電文の場合は、こちらのアプローチがフィットします。
例えば以下の設定の場合、受信すべきメッセージの長さは2 バイトで示され、そのバイト位置までは(ヘッダとして)4 バイトのオフセットがあることを示します。受信すべきメッセージの長さが格納されている2 バイトの内容(指定長)に従い、後続のデータを読み取り、受信及び処理対象とすべきメッセージとして扱います。
TCP クライアントの接続・切断の検知
TCP Server コネクタでは、TCP クライアントの「接続」や「切断」を契機としてメッセージを生成する(連携フローを実行する)ことも可能です。
接続クライアントへのメッセージ送信
TCP Server コネクタは、複数のTCP クライアントからのデータ受信をサポートしますが、接続されたTCP クライアントへメッセージを送信する(送り返す)ことも可能です。そのようなシナリオでは、TCP Server コネクタはTCP クライアントからメッセージを受信したときに追加される「X-TCPServer-ConnectionId」ヘッダーで送りかえすべきクライアントを識別します。
TCP Server コネクタで受信した流れのまま((受信したメッセージをルーティングする形で)クライアントに任意のメッセージを送りかえす場合は、このヘッダーがメッセージに引き継がれ、自動的に識別されるフロー構成が想定されますが、受信メッセージ直接ルーティングするようなフロー構成でない場合は、この「X-TCPServer-ConnectionId」の値を保持し、TCP クライアントへ送り返したいめっせーじにヘッダーとして付与する必要があります。
まとめ
この記事では、CData Arc の「TCP Server コネクタ」についてご紹介しました。
製造業界や医療業界など幾つかの産業分野では、機器や設備とのデータ連携(通信)においてTCP/IP 上に独自フォーマットの電文(プロトコル)を実装して通信しているケースもまだまだ多いかも知れません。そのような独自プロトコルを利用する設備や機器とのデータ連携においても、ノーコード・ローコードで効率良く自動化を実現したいニーズは多いかとも思います。CData Arc の「TCP Server コネクタ」はそのような「標準プロトコルに必ずしも適合しない任意のTCP 通信(電文)のデータ連携」に活用できるコネクタです。CData Arc を利用すれば、このようなレイヤの連携シナリオも効率良く自動化することが可能です。
CData Arc はシンプルで拡張性の高いコアフレームワークに、豊富なMFT・EDI・エンタープライズコネクタを備えたパワフルな製品です。CData Drivers との組み合わせで270を超えるアプリケーションへの連携を実現できます。
皆さんのつなぎたいシナリオでぜひ CData Arc を試してみてください。
CData Arc - セキュアなデータ連携とマネージドファイル転送(MFT)
製品を試していただく中で何かご不明な点があれば、テクニカルサポートへお気軽にお問い合わせください。
CData Software Japan - Support Form
この記事では CData Arc™ 2024 - 24.3.9159.0 を利用しています