このトピックでは、IoT Platform でサポートされている Message Queuing Telemetry Transport (MQTT) 5.0 のメッセージ プロパティについて説明します。
機能の説明
MQTT 5.0 では、ペイロード形式インジケーターとコンテンツ タイプという 2 つの新しいメッセージ プロパティが導入されています。
これらのプロパティは、PUBLISH メッセージまたは Will メッセージに含めることができます。

ペイロード形式インジケーター
ペイロード形式インジケーターは 1 バイトのみを占有します。有効な値:
1:ペイロードが UTF-8 エンコードの文字データであることを指定します。
0:ペイロードが不特定の形式でエンコードされていることを指定します。たとえば、ペイロードがバイナリ データの場合です。
コンテンツ タイプ
コンテンツ タイプには、メッセージ コンテンツのタイプを指定する文字列が格納されます。このプロパティは、テキストファイルの場合は text/plain などの Multipurpose Internet Mail Extensions (MIME) タイプに設定できます。ビジネス要件に基づいてこのプロパティを構成することもできます。指定されたコンテンツ タイプは、メッセージの転送中に変更することはできません。
メッセージの転送時にコンテンツ タイプを変更する場合は、ユーザー プロパティを構成できます。これは、メッセージの転送中に有効な唯一のプロパティであるためです。
シナリオ
メッセージ プロパティは、システム間のメッセージングにおける相互運用性と構成の透明性を向上させます。これらのプロパティには、次の利点があります。
さまざまなエンコード形式およびコンテンツ タイプのペイロードとの互換性。
中間ノードが ペイロード を解析する必要がない、スムーズなメッセージング プロセス。
さまざまなエンコード形式およびコンテンツ タイプのペイロードとの互換性
MQTT ベースのメッセージングでは、トピック内のデータは同じエンコード形式とコンテンツ タイプを使用する必要があります。ただし、IoT デバイスは進化し続けており、デバイスはさまざまなタイプの ペイロード を使用する場合があります。 この場合、次の図に示すように、メッセージ プロパティを使用してメッセージ ペイロードを記述できます。
デバイス 1:JSON 文字列をパブリッシュします。
デバイス 2:Protocol Buffers(Protobuf)バイナリ データをパブリッシュします。
