Cookie の設定を選択する

当社は、当社のサイトおよびサービスを提供するために必要な必須 Cookie および類似のツールを使用しています。当社は、パフォーマンス Cookie を使用して匿名の統計情報を収集することで、お客様が当社のサイトをどのように利用しているかを把握し、改善に役立てています。必須 Cookie は無効化できませんが、[カスタマイズ] または [拒否] をクリックしてパフォーマンス Cookie を拒否することはできます。

お客様が同意した場合、AWS および承認された第三者は、Cookie を使用して便利なサイト機能を提供したり、お客様の選択を記憶したり、関連する広告を含む関連コンテンツを表示したりします。すべての必須ではない Cookie を受け入れるか拒否するには、[受け入れる] または [拒否] をクリックしてください。より詳細な選択を行うには、[カスタマイズ] をクリックしてください。

MQTT クライアントで AWS IoT MQTT メッセージを表示する

フォーカスモード
MQTT クライアントで AWS IoT MQTT メッセージを表示する - AWS IoT Core

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

このセクションでは、 AWS IoT コンソールで AWS IoT MQTT テストクライアントを使用して、 によって送受信された MQTT メッセージを監視する方法について説明します AWS IoT。このセクションで使用される例は、AWS IoT Core チュートリアルの開始方法 で使用される例に関連しています。ただし、例で使用されている topicName を、ご利用の IoT ソリューションで使用されている任意のトピック名またはトピックフィルターに置き換えることができます。

デバイスは、トピックによって識別される MQTT メッセージを発行して状態を通信し AWS IoT、MQTT メッセージ AWS IoT を発行してデバイスとアプリケーションに変更とイベントを通知します。MQTT クライアントを使用すると、これらのトピックをサブスクライブして、メッセージを発生時に確認できます。MQTT テストクライアントを使用して、 のサブスクライブしているデバイスやサービスに MQTT メッセージを発行することもできます AWS アカウント。

MQTT クライアントで MQTT メッセージを表示する

次の手順では、デバイスがメッセージを発行する特定の MQTT トピックをサブスクライブし、それらのメッセージを AWS IoT コンソール に表示する方法について説明します。

MQTT テストクライアントで MQTT メッセージを表示するには
  1. AWS IoT コンソールの左側のメニューで、[Test] (テスト)、[MQTT test client] (MQTT テストクライアント) の順に選択します。

    左側のナビゲーションにあるコンソールメニューから、[MQTT テストクライアント] を選択します。
  2. [Subscribe to a topic] (トピックにサブスクライブする) タブで、topicName を入力して、デバイスが発行する対象のトピックにサブスクライブします。開始方法のサンプルアプリケーションについては、# にサブスクライブします。これにより、すべてのメッセージトピックにサブスクライブします。

    開始方法の例を使用して続行し、[Subscribe to a topic] (トピックをサブスクライブする) タブの [Topic filter] (トピックフィルター) フィールドで# と入力し、[Subscribe (サブスクライブ)]を選択します。

    トピックタブへのサブスクライブ。

    トピックメッセージログページ # が開き、# が [Subscriptions] (サブスクリプション) リストに表示されます。で設定したデバイスがサンプルプログラムデバイスを設定するを実行している場合は、# メッセージログ AWS IoT に に送信するメッセージが表示されます。サブスクライブされたトピックを含むメッセージが によって受信されると、メッセージログエントリが Publish セクションの下に表示されます AWS IoT。

    トピックを表示するセクションは正常にサブスクライブされました。
  3. # メッセージログページでは、トピックにメッセージを発行することもできますが、トピック名を指定する必要があります。# トピックに発行することはできません。

    サブスクライブしたトピックに発行されたメッセージは、受信されるとメッセージログに表示されます。最初に表示されるのは、最新のメッセージです。

MQTT メッセージのトラブルシューティング

ワイルドカードトピックフィルターを使用する

メッセージが期待どおりにメッセージログに表示されない場合は、トピックフィルター の説明に従って、ワイルドカードトピックフィルターをサブスクライブしてみてください。MQTT マルチレベルワイルドカードトピックフィルターはハッシュまたはポンド記号 ( # ) であり、[Subscription topic] (サブスクリプショントピック) フィールドでトピックフィルターとして使用できます。

# トピックフィルターにサブスクライブすると、メッセージブローカーによって受信されるすべてのトピックがサブスクライブされます。トピックフィルターパスの要素を # 複数レベルのワイルドカード文字または「+」単一レベルのワイルドカード文字に置き換えることで、絞り込むことができます。

トピックフィルターでワイルドカードを使用する場合
  • マルチレベルのワイルドカード文字は、トピックフィルターの最後の文字にする必要があります。

  • トピックフィルターパスには、トピックレベルごとに 1 つの単一レベルのワイルドカード文字のみを使用できます。

以下に例を示します。

トピックのフィルター

次でメッセージを表示します

#

任意のトピック名

topic_1/#

topic_1/ で始まるトピック名

topic_1/level_2/#

topic_1/level_2/で始まるトピック名

topic_1/+/level_3

topic_1/ で始まり、/level_3で終わり、その間に任意の値の 1 つの要素があるトピック名。

トピックフィルターの詳細については、トピックフィルター を参照してください。

トピック名のエラーをチェックする

MQTT トピック名とトピックフィルターでは、大文字と小文字が区別されます。例えば、サブスクライブしたトピックである topic_1 ではなく Topic_1 (大文字の T) にデバイスがメッセージを発行している場合、そのメッセージは MQTT テストクライアントに表示されません。ただし、ワイルドカードトピックフィルターをサブスクライブすると、デバイスがメッセージを発行していることが表示され、想定したものとは異なるトピック名を使用していることがわかります。

MQTT クライアントから MQTT メッセージを発行する

MQTT トピックにメッセージを発行するには
  1. MQTT テストクライアントページの [Publish to a topic] (トピックへの発行) タブの [Topic name] (トピック名) フィールドに、メッセージの topicName を入力します。この例では my/topic を使用します。

    注記

    MQTT テストクライアントで使用する場合でも、システム実装で使用する場合でも、トピック名に個人を特定できる情報を使用しないでください。トピック名は、暗号化されていない通信およびレポートに表示できます。

  2. メッセージペイロードウィンドウで、次の JSON を入力します。

    { "message": "Hello, world", "clientType": "MQTT test client" }
  3. [Publish] (発行) を選択して、メッセージを AWS IoTに発行します。

    注記

    メッセージを発行する前に、my/topic トピックにサブスクライブしていることを確認してください。

    トピックタブへの公開。
  4. [Subscriptions] (サブスクリプション) のリストで、[my/topic] を選びます。発行メッセージペイロードウィンドウの下の MQTT テストクライアントにメッセージが表示されます。

    公開されたトピックを示す画面が受信されました。

MQTT メッセージを他のトピックに発行するには、[Topic name] (トピック名) フィールドの topicNameを変更し、[Publish] (発行) ボタンを選びます。

重要

重複するトピック (例: probe1/temperature および probe1/#) で複数のサブスクリプションを作成する場合、両方のサブスクリプションに一致するトピックに発行された 1 つのメッセージが、重複するサブスクリプションごとに 1 回ずつ、複数回にわたって配信される可能性があります。

MQTT クライアントで共有サブスクリプションをテストする

このセクションでは、 AWS IoT コンソールで AWS IoT MQTT クライアントを使用して、共有サブスクリプション AWS IoT を使用して送受信された MQTT メッセージを監視する方法について説明します。 共有サブスクリプション では、複数のクライアントがトピックへのサブスクリプションを共有し、ランダムディストリビューションを使用してそのトピックに発行されたメッセージを受信するクライアントが 1 つだけになります。同じサブスクリプションを共有する複数の MQTT クライアント (この例では 2 つの MQTT クライアント) をシミュレートするには、複数のウェブブラウザからAWS IoT コンソールで AWS IoT MQTT クライアントを開きます。このセクションで使用されている例は、「AWS IoT Core チュートリアルの開始方法」で使用されている例とは関連がありません。詳細については、「共有サブスクリプション」を参照してください。

MQTT トピックのサブスクリプションを共有するには
  1. AWS IoT コンソールのナビゲーションペインで、[テスト] を選択し、次に [MQTT テストクライアント] を選択します。

  2. [Subscribe to a topic] (トピックにサブスクライブする) タブで、topicName を入力して、デバイスが発行する対象のトピックにサブスクライブします。共有サブスクリプションを使用するには、以下のように共有サブスクリプションのトピックフィルターにサブスクライブします。

    $share/{ShareName}/{TopicFilter}

    サンプルのトピックフィルターは、メッセージトピック topic1 にサブスクライブしている $share/group1/topic1 にすることができます。

    共有サブスクリプションのトピックフィルターを指定する方法を示すタブ。
  3. 別のウェブブラウザを開き、手順 1 と手順 2 を繰り返します。この方法では、同じサブスクリプション $share/group1/topic1 を共有する 2 つの異なる MQTT クライアントをシミュレートしています。

  4. 1 つの MQTT クライアントを選択し、[トピックに公開する] タブの [トピック名] フィールドに、メッセージの topicName を入力します。この例では topic1 を使用します。メッセージを数回公開してみてください。両方の MQTT クライアントのサブスクリプションリストで、クライアントがランダム配信を使用してメッセージを受信していることを確認できるようになります。この例では、同じメッセージ「Hello from AWS IoT console」を 3 回公開します。左側の MQTT クライアントはメッセージを 2 回受信し、右側の MQTT クライアントはメッセージを 1 回受信しました。

    共有サブスクリプションは、1 つのトピックへのサブスクリプションを 2 つのクライアントで共有できますが、そのトピックに公開されたメッセージをランダム配信を使って受信できるのは 1 つのクライアントのみです。
プライバシーサイト規約Cookie の設定
© 2025, Amazon Web Services, Inc. or its affiliates.All rights reserved.