OPC UA 用コネクタは、OPC UA サーバーから JSON 形式のメッセージを MQTT ブローカーに発行します。 各メッセージには、ペイロードと、MQTT ユーザー プロパティ セクションに含まれるプロパティのコレクションがあります。 ペイロードには OPC UA サーバーからのメッセージが含まれており、プロパティはメッセージに関するメタデータを提供します。
ペイロード
OPC UA メッセージのペイロードは、OPC UA サーバーからのメッセージを含む JSON オブジェクトです。 次の例は、クイックスタートで使用されるサンプルのアセットであるサーモスタットからのメッセージのペイロードを示しています。 次のコマンドを実行して、azure-iot-operations/data
トピックのメッセージをサブスクライブします。
mosquitto_sub --host aio-broker --port 18883 --topic "azure-iot-operations/data/#" -v --debug --cafile /var/run/certs/ca.crt -D CONNECT authentication-method 'K8S-SAT' -D CONNECT authentication-data $(cat /var/run/secrets/tokens/broker-sat)
上記のコマンドからの出力は、次の例のようになります。
Client $server-generated/05a22b94-c5a2-4666-9c62-837431ca6f7e received PUBLISH (d0, q0, r0, m0, 'azure-iot-operations/data/thermostat', ... (152 bytes))
{"temperature":{"SourceTimestamp":"2024-07-29T15:02:17.1858435Z","Value":4558},"Tag 10":{"SourceTimestamp":"2024-07-29T15:02:17.1858869Z","Value":4558}}
Client $server-generated/05a22b94-c5a2-4666-9c62-837431ca6f7e received PUBLISH (d0, q0, r0, m0, 'azure-iot-operations/data/thermostat', ... (152 bytes))
{"temperature":{"SourceTimestamp":"2024-07-29T15:02:18.1838125Z","Value":4559},"Tag 10":{"SourceTimestamp":"2024-07-29T15:02:18.1838523Z","Value":4559}}
Client $server-generated/05a22b94-c5a2-4666-9c62-837431ca6f7e received PUBLISH (d0, q0, r0, m0, 'azure-iot-operations/data/thermostat', ... (152 bytes))
{"temperature":{"SourceTimestamp":"2024-07-29T15:02:19.1834363Z","Value":4560},"Tag 10":{"SourceTimestamp":"2024-07-29T15:02:19.1834879Z","Value":4560}}
Client $server-generated/05a22b94-c5a2-4666-9c62-837431ca6f7e received PUBLISH (d0, q0, r0, m0, 'azure-iot-operations/data/thermostat', ... (152 bytes))
{"temperature":{"SourceTimestamp":"2024-07-29T15:02:20.1861251Z","Value":4561},"Tag 10":{"SourceTimestamp":"2024-07-29T15:02:20.1861709Z","Value":4561}}
Client $server-generated/05a22b94-c5a2-4666-9c62-837431ca6f7e received PUBLISH (d0, q0, r0, m0, 'azure-iot-operations/data/thermostat', ... (152 bytes))
{"temperature":{"SourceTimestamp":"2024-07-29T15:02:21.1856798Z","Value":4562},"Tag 10":{"SourceTimestamp":"2024-07-29T15:02:21.1857211Z","Value":4562}}
ユーザー プロパティ
OPC UA 用コネクタによって発行されるメッセージのヘッダーは、OPC UA のCloudEvents 仕様に基づいています。 OPC UA メッセージのヘッダーは、MQTT ブローカーに発行されるメッセージのユーザー プロパティになります。 次の例は、クイックスタートで使用されるサンプルのアセットであるサーモスタットからのメッセージのユーザー プロパティを示しています。 次のコマンドを実行して、azure-iot-operations/data
トピックのメッセージをサブスクライブします。
mosquitto_sub --host aio-broker --port 18883 --topic "azure-iot-operations/data/#" -V mqttv5 -F %P --cafile /var/run/certs/ca.crt -D CONNECT authentication-method 'K8S-SAT' -D CONNECT authentication-data $(cat /var/run/secrets/tokens/broker-sat)
上記のコマンドからの出力は、次の例のようになります。
uuid:813740c3-48f3-4332-a7cf-bf5424918b8d externalAssetId:813740c3-48f3-4332-a7cf-bf5424918b8d serverToConnectorMilliseconds:0.3153 id:908fb134-2619-42a5-9aa2-4826bac5b3e0 specversion:1.0 type:ua-keyframe source:urn:OpcPlc:opcplc-000000 time:2024-08-05T14:19:08.8738457Z datacontenttype:application/json subject:813740c3-48f3-4332-a7cf-bf5424918b8d sequence:9768 traceparent:00-4eb4313536bc006c918e936686921cfc-4ee795f6fdd5fae7-01 recordedtime:2024-08-05 14:19:08.874 +00:00
uuid:813740c3-48f3-4332-a7cf-bf5424918b8d externalAssetId:813740c3-48f3-4332-a7cf-bf5424918b8d serverToConnectorMilliseconds:0.3561 id:a4acba23-ff15-4b1b-9544-e07deb4e941b specversion:1.0 type:ua-keyframe source:urn:OpcPlc:opcplc-000000 time:2024-08-05T14:19:09.8746396Z datacontenttype:application/json subject:813740c3-48f3-4332-a7cf-bf5424918b8d sequence:9769 traceparent:00-388697f77c2dcb5e9b30589c0a4cef6e-de9351186ff5833e-01 recordedtime:2024-08-05 14:19:09.875 +00:00
uuid:813740c3-48f3-4332-a7cf-bf5424918b8d externalAssetId:813740c3-48f3-4332-a7cf-bf5424918b8d serverToConnectorMilliseconds:0.3423 id:875739f2-c8f0-4a17-bd4a-d40343ff2a50 specversion:1.0 type:ua-keyframe source:urn:OpcPlc:opcplc-000000 time:2024-08-05T14:19:10.8754860Z datacontenttype:application/json subject:813740c3-48f3-4332-a7cf-bf5424918b8d sequence:9770 traceparent:00-7c65a93fa7668bbe0cdfd051168c88ac-ab86b83fb1b7944f-01 recordedtime:2024-08-05 14:19:10.875 +00:00
uuid:813740c3-48f3-4332-a7cf-bf5424918b8d externalAssetId:813740c3-48f3-4332-a7cf-bf5424918b8d serverToConnectorMilliseconds:0.3277 id:255ea77e-b313-43be-9ec0-44b98bb1c632 specversion:1.0 type:ua-keyframe source:urn:OpcPlc:opcplc-000000 time:2024-08-05T14:19:11.8765569Z datacontenttype:application/json subject:813740c3-48f3-4332-a7cf-bf5424918b8d sequence:9771 traceparent:00-5851e56a6f358ab5e1af1d798f7580a1-bf6dfbda8196cba0-01 recordedtime:2024-08-05 14:19:11.877 +00:00
件名フィールドには、メッセージが関連付けられているアセットの名前が含まれています。 シーケンス フィールドには、メッセージのシーケンス番号が含まれています。
注
運用エクスペリエンス Web UI を使用して作成されたアセットには、そのアセットから送信されるすべてのメッセージの件名プロパティが externalAssetId
値に設定されるという既知の問題があります。 この場合、subject
はアセットのフレンドリ名ではなく GUID です。