すべてのプロダクト
Search
ドキュメントセンター

IoT Platform:MQTT.fx を使用した IoT Platform への接続

最終更新日:Jun 05, 2026

MQTT.fx は、Eclipse Paho をベースに構築された Java ベースの MQTT クライアントであり、Windows、Mac、Linux をサポートしています。MQTT.fx を使用して、IoT Platform とのデバイス接続性を検証し、トピックをサブスクライブし、メッセージを公開できます。このトピックでは、Windows 上の MQTT.fx を使用して、IoT Platform への MQTT デバイス接続をシミュレートします。

前提条件

  • プロダクトとデバイスを作成し、MQTT 接続パラメーターを取得します。プロダクトとデバイスの作成MQTT 署名パラメーターの値の取得

    この例では、「MQTT-TLS 接続」で説明されているように、次の表のデバイス証明書と MQTT 接続パラメーターを使用します。

    パラメーター
    ProductKey a1***
    DeviceName device1
    DeviceSecret f35***d9e
    clientId a1***.device1|securemode=2,signmethod=hmacsha256,timestamp=2524608000000|
    username device1&a1***
    passwd 86761***21d
    mqttHostUrl a1***.iot-as-mqtt.cn-shanghai.aliyuncs.com
    port 1883
  • アップリンクおよびダウンリンク通信をテストするために、TSL モデルのプロパティを定義します。プロダクトの TSL モデルの定義
    この例では、次の図に示す TSL モデルを定義します:TSL model
重要 MQTT.fx によってシミュレートされたオンラインデバイスは、非パススルー通信のみをサポートします。パススルー通信をテストするには、実際のデバイスまたは SDK を使用してください。

MQTT.fx 接続の設定

  1. MQTT.fx をダウンロードしてインストールします。
    このトピックでは、mqttfx-5.2.0-windows-x64 を例として使用します。実際の UI はスクリーンショットと異なる場合があります。
    説明 必要に応じて、MQTT.fx ツールのライセンスをリクエストしてください。
  2. MQTT.fx を開きます。メニューバーで [Extras] をクリックし、[Edit Connection Profiles] を選択します。
    Edit Connection Profiles
  3. [Edit Connection Profiles] ページで、次のパラメーターを設定します。
    1. 基本情報を設定します。
      パラメーター 説明
      Profile Name カスタム名 (例: iot connection) を入力します。
      Profile Type ApsaraMQ for MQTT クライアント接続の場合は、[MQTT Broker] を選択します。
      Broker Address MQTT 接続ドメインです。 セクションの 前提条件a1***.iot-as-mqtt.cn-shanghai.aliyuncs.com
      • a1*** はプロダクトの ProductKey です。
      • cn-shanghai はリージョンです。

      ポート番号を含めないでください。

      ブローカーポート 1883 に設定します。
      クライアント ID MQTT のプロトコルフィールドです。

      固定フォーマット:${ClientId}|securemode=${Mode},signmethod=${SignMethod}|timestamp=${timestamp}|

      前提条件」セクションで取得した clientId の値を入力します:a1***.device1|securemode=2,signmethod=hmacsha256,timestamp=2524608000000|

      パラメーターの説明:

      • ${ClientId}:デバイス、アプリ、または Web クライアントのクライアント ID です。
        重要 この値はカスタムで、長さは 64 文字以内である必要があります。デバイスの場合は、その MAC アドレスまたはシリアル番号 (SN) を使用します。これにより、異なるデバイスを識別できます。
      • ${Mode}:セキュリティモードです。有効な値は 2 (TLS 直接接続モード。SSL/TLS 設定が必要です) と 3 (TCP 直接接続モード。SSL/TLS 設定は不要です) です。
      • ${SignMethod}:アルゴリズムタイプです。サポートされている値は hmacsha256hmacmd5hmacsha1 です。
      • ${timestamp}:現在時刻 (ミリ秒) です。timestamp は空にすることができます。

      IoT Platform が提供する接続パラメーターでは、${ClientId} のデフォルトは ${ProductKey} + '.' + ${DeviceName} で構成される文字列、${Mode} のデフォルトは 2${SignMethod} のデフォルトは hmacsha256 です。必要に応じて変更できます。

      重要
      • MQTT.fx の [Client ID] とデバイスの ${ClientId} を混同しないでください。
      • パラメーター間または文字列の末尾にある縦棒 (|) を省略しないでください。
      • パラメーターを設定する際は、パラメーター値の中または前後にスペースが含まれていないことを確認してください。
      • [Client ID] を入力した後、[生成] をクリックしないでください。
      一般 デフォルト値を使用します。要件に合わせて調整してください。
    2. [ユーザー認証情報] をクリックし、[ユーザー名/パスワードを使用] チェックボックスを選択して、[ユーザー名][パスワード] を設定します。
      MQTT.fx User Credentials
      パラメーター 説明
      ユーザー名 フォーマット:${DeviceName}&${ProductKey}

      [前提条件] セクションで取得した ユーザー名 の値を入力します: device1&a1***

      • device1 はデバイスの DeviceName です。
      • a1*** はデバイスの ProductKey です。
      パスワード DeviceSecret と選択した署名メソッドを使用して連結されたパラメーターを暗号化することで生成されます。

      前提条件セクションで取得した passwd の値を入力します: 86761***21d

      重要
      • 一部の MQTT.fx バージョンでは、パスワード文字列を貼り付けても表示されません。カーソルがテキストボックスの末尾に移動した場合、貼り付けは成功しています。パスワードを再度貼り付けないでください。
      • パラメーターとその値では、大文字と小文字が区別されます。
      • Client ID:Client ID の設定で ${ClientId} または ${SignMethod} を変更した場合は、パスワードを再計算する必要があります。新しいパスワードが、更新されたパラメーターと一致する値を使用していることを確認してください。パラメーター設定と計算方法の詳細については、「Node.js スクリプトを使用したパスワードの計算」をご参照ください。
    3. TLS 直接接続モード (securemode=2) の場合は、[SSL/TLS] をクリックし、[SSL/TLS を有効にする] チェックボックスを選択して、[プロトコル][TLSv1.2] に設定します。
      重要 注:TCP 直接接続モード (securemode=3) の場合、SSL/TLS 設定は不要です。次のステップに進んでください。
      Enable SSL/TLS
  4. 構成が完了したら、右下隅の[OK]をクリックします。
  5. [接続] をクリックします。
    右側の緑色のライトは、接続が成功したことを示します。Connect

    IoT Platform コンソール、対応するインスタンスで[デバイス管理] > [デバイス] を選択します。プロダクトを選択してデバイスのステータスを確認します。デバイスのステータスは [オンライン] になっているはずです。

    Online

以降のセクションでは、カスタムトピックと TSL モデルトピックを使用して上り/下り通信をテストする方法について説明します。この例と結果が異なる場合、接続に失敗しています。ログ情報に基づいて構成を修正してください。

カスタムトピックを使用した通信

カスタムトピックの詳細については、「カスタムトピックを使用した通信」をご参照ください。この例では、IoT Platform が提供するデフォルトのカスタムトピックを使用します:
トピック 権限 説明
/a1***/device1/user/update/error パブリッシュ アップリンク:デバイスが IoT Platform にメッセージをパブリッシュします。
/a1***/device1/user/get サブスクライブ ダウンリンク:デバイスが IoT Platform からのメッセージを受信するためにサブスクライブします。

アップリンク通信

  1. MQTT.fx で、[Publish] をクリックします。[Publish] テキストボックスに、パブリッシュ権限を持つトピック /a1***/device1/user/update/error を入力します。
  2. テキストエディターペインにメッセージ本文を入力し、[Publish] をクリックします。
    Publish a message in MQTT.fx
  3. IoT Platform コンソールにログインします。インスタンスの [Simple Log Service] ページで、[デバイスからクラウドへのメッセージ] ログを表示します。IoT プラットフォームログの照会
    View messages from MQTT.fx in IoT Platform

ダウンリンク通信

  1. MQTT.fx で、[Subscribe] をクリックします。[Subscribe] テキストボックスに、サブスクライブ権限を持つトピック /a1***/device1/user/get を入力します。
  2. [Subscribe] をクリックします。

    サブスクリプションが成功すると、トピックがリストに表示されます。

    Custom topic in MQTT.fx subscription list
  3. IoT Platform コンソールにログインします。インスタンスで、[デバイス管理] > [デバイス] を選択します。
  4. デバイスの [操作] 列で、[表示] をクリックして [デバイス詳細] ページに移動します。
  5. [トピックリスト] タブをクリックします。サブスクライブしたトピックの [操作] 列で、[メッセージを公開] をクリックします。
  6. メッセージ本文 (例:This is a test.) を入力し、[OK] をクリックします。
  7. MQTT.fx に戻り、受信したメッセージを表示します。
    接收消息

TSL モデルの Topic を使用した通信

TSL モデルの通信 Topic については、Topic とはをご参照ください。この例では、次の TSL モデル通信 Topic を使用します:
Topic 権限 説明
/sys/a1****/device1/thing/event/property/post 公開 アップリンク:デバイスはプロパティデータを IoT Platform にレポートします。
/sys/a1****/device1/thing/event/property/post_reply サブスクライブ ダウンリンク:デバイスは IoT Platform からのプロパティレポートの応答を受信するためにサブスクライブします。
/sys/a1****/device1/thing/service/property/set サブスクライブ ダウンリンク:デバイスは IoT Platform からのプロパティ設定コマンドを受信するためにサブスクライブします。

デバイスプロパティのレポート

  1. MQTT.fx で、[サブスクライブ] をクリックします。[サブスクライブ] テキストボックスに、[サブスクライブ] 権限を持つ Topic を入力します: /sys/a1****/device1/thing/event/property/post_reply
  2. MQTT.fx で、[パブリッシュ] をクリックします。[パブリッシュ] テキストボックスに、[パブリッシュ] 権限を持つ Topic を入力します: /sys/a1****/device1/thing/event/property/post
  3. テキストエディターペインで、レポートするプロパティデータを入力し、[パブリッシュ] をクリックします。
    レポートされるプロパティデータは、「デバイスプロパティのレポート」で説明されているように、標準の Alink JSON フォーマットを使用する必要があります。この例では、LightCurrent プロパティと LightSwitch プロパティのデータをレポートします。物模型属性
  4. MQTT.fx で、[サブスクライブ] をクリックして、IoT Platform がデバイスに返す応答メッセージを表示します。
    次の図に示すように、デバイスはプロパティを正常にレポートしました。响应消息
  5. IoT Platform コンソールにログインします。インスタンスで、[デバイス管理] > [デバイス]を選択します。
  6. デバイスの [操作] 列で [表示] をクリックします。[デバイス詳細] ページで、[TSL モデルデータ] をクリックしてデバイスデータを表示します。

デバイスプロパティの設定

  1. MQTT.fx で、[サブスクライブ] をクリックします。[サブスクライブ] テキストボックスに、[サブスクライブ] 権限を持つ Topic を入力します: /sys/a1****/device1/thing/service/property/set
  2. IoT Platform コンソールにログインします。インスタンスで、[運用保守] > [オンラインデバッグ]を選択します。
  3. デバッグするデバイスを選択します。[プロパティのデバッグ] タブで、メインライトスイッチ[オフ-0] に設定します。
  4. [設定] をクリックして命令を送信します。
  5. MQTT.fx の [サブスクライブ] タブで、デバイスが受信したメッセージを表示します。
    属性设置

ログの表示

  • IoT Platform コンソールにログインします。インスタンスの Simple Log Service ページで、時間、TraceID、ビジネスタイプなどの運用ログを確認します。詳細については、IoT プラットフォームログのクエリをご参照ください。
  • MQTT.fx で、[ログ] をクリックして操作ログとエラーログを表示します。MQTT.fx logs