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

IoT Platform:MQTT.fx を使用した MQTT クラウドゲートウェイへの接続

最終更新日:Apr 25, 2026

このトピックでは、Windows コンピューター上の MQTT.fx を使用して MQTT クラウドゲートウェイデバイスをシミュレートし、IoT Platform に接続してデータをレポートする方法について説明します。

前提条件

  • Enterprise Edition インスタンスを購入します。本チュートリアルでは、中国 (上海) リージョンの排他的 Enterprise Edition インスタンスを使用します。

  • MQTT.fx ソフトウェアをダウンロードしてインストールします。手順については、「MQTT.fx」をご参照ください。

    サードパーティ製ソフトウェアは定期的に更新されるため、ご利用の UI が異なる場合があります。

  • カスタム証明書を生成します。

    本チュートリアルでは、ルート証明書 (root-ca.crt)、サーバー側秘密鍵 (server.key)、およびサーバー証明書 (server.crt) を含むカスタム証明書が必要です。

    OpenSSL を使用して証明書を生成できます。詳細については、「カスタム証明書の生成」をご参照ください。

背景情報

MQTT.fx は Eclipse Paho に基づいて Java で記述された MQTT クライアントです。Windows、macOS、Linux をサポートしています。MQTT.fx を使用して、デバイスが IoT Platform に接続でき、トピック経由で通信できることを検証できます。

デバイスは、カスタム証明書、サーバー側認証、カスタムトピックなどの機能を使用して、IoT Platform に接続および通信できます。

MQTT クラウドゲートウェイのデバイス認証および通信に関する詳細については、「MQTT クラウドゲートウェイの概要」をご参照ください。

MQTT.fx を使用したデバイス接続 (片方向認証)

ステップ 1:クラウドゲートウェイおよびデバイスの作成

  1. MQTT クラウドゲートウェイを作成します。ゲートウェイを設定する際、サーバー側秘密鍵 パラメーターには server.key ファイルの内容を、サーバー証明書 パラメーターには server.crt ファイルの内容を使用します。

    その他のパラメーターは次のように設定します。プロトコル には MQTT を選択し、カスタムポート番号 はデフォルト値の 1883 のままとし、認証タイプ には 片方向認証 を選択し、データ解析を有効化 には いいえ を選択し、デバイス X.509 証明書認証を有効化 には いいえ を選択し、OCSP を有効化 には 無効 を選択します。

  2. クラウドゲートウェイリストで、ゲートウェイ URL をコピーして保存します。

    クラウドゲートウェイリストには、ゲートウェイ名、プロトコル、ゲートウェイ URL、ステータスなどの情報が表示されます。

  3. デバイスをバッチで追加します。本チュートリアルでは、デバイスを 1 台追加します。MQTT ユーザー名device_01MQTT パスワードhello123 に設定します。

ステップ 2:MQTT.fx 接続の設定

  1. MQTT.fx ソフトウェアを開きます。メニューバーで、Extras をクリックし、Edit Connection Profiles を選択します。

  2. Edit Connection Profiles ページで、次のパラメーターを設定します。

    1. 基本情報を設定します。その他のパラメーターはデフォルト値を使用します。

      パラメーター

      説明

      プロファイル名

      任意の名前を入力します。

      プロファイルタイプ

      接続タイプとして MQTT Broker を選択します。

      ブローカーアドレス

      保存した ゲートウェイ URL のドメイン名を入力します。

      ブローカーポート

      カスタムポート番号を設定します。デフォルトは 1883 です。

      クライアント ID

      省略可能です。最大 64 文字の任意のクライアント ID を指定できます。識別しやすくするため、デバイスの MAC アドレスまたはシリアル番号 (SN) を使用することを推奨します。

    2. User Credentials をクリックし、Use Username/Password チェックボックスをオンにして、User Name および Password を設定します。

      User Name および Password は、追加したデバイスの MQTT ユーザー名 および MQTT パスワード と一致させる必要があります。

    3. SSL/TLS をクリックし、Enable SSL/TLS チェックボックスをオンにして、ProtocolTLSv1.2 に設定します。

    4. CA 証明書ファイル を選択し、root-ca.crt ファイルのパスを指定します。

  3. パラメーターを設定したら、OK をクリックします。

  4. Connect をクリックします。

    右側の緑色のランプが点灯している場合は、接続に成功しています。IoT Platform コンソール で、ご利用のインスタンスの デバイス > デバイス ページに移動します。デバイス device_01 のステータスは オンライン になります。

MQTT.fx を使用したデバイス接続 (第三者認証)

ステップ 1:デバイス認証関数の作成

  1. Function Compute コンソール にログインします。左側のナビゲーションウィンドウで、サービスと関数 をクリックします。

  2. 上部のナビゲーションバーでリージョンを選択します。サービス ページで、サービスの作成 をクリックします。

  3. サービスの作成 パネルで、サービス名 を入力します。例:IoT_Service。その後、OK をクリックします。

  4. 関数 ページで、関数の作成 をクリックします。

  5. 関数の作成 ページで、パラメーターを設定し、次の図に示すように 作成 をクリックします。

    image

  6. 関数の詳細 ページで、サンプルコードを次のコードに置き換え、Deploy Code をクリックします。

    認証関数は、UserNamedeviceName として返します。

    # -*- coding: utf-8 -*-
    import logging
    import json
    import time
    import enum
    import random
    import string
    
    class Request:
        def __init__(self, json_str):
            self.clientId = None
            self.username = None
            self.password = None
            self.certificateCommonName = None
    
            for key, value in json.loads(json_str).items():
                setattr(self, key, value)
    
    class Response:
        def __init__(self):
            self.deviceName = None
            self.result = 'true'
            self.message = 'success'
    
        def handler(self, request):
            # Verify the validity of the username and password based on your business requirements.
        
            self.deviceName = request.username
            
            
            return json.dumps(self.__dict__)
    
    def handler(event, context):
        request = Request(event)
        return Response().handler(request)

ステップ 2:MQTT クラウドゲートウェイの作成

  1. MQTT クラウドゲートウェイを作成します。ゲートウェイを設定する際、サーバー側秘密鍵 パラメーターには server.key ファイルの内容を、サーバー証明書 パラメーターには server.crt ファイルの内容を使用します。デバイス認証用の Function Compute (FC) サービスおよび関数には、作成した IoT_Service および three_part_auth を選択します。

    その他のパラメーターは次のように設定します。プロトコル には MQTT を設定し、カスタムポート番号 はデフォルト値の 1883 のままとし、認証タイプ には 第三者認証 を設定し、データ解析を有効化 には いいえ を設定し、デバイス X.509 証明書認証を有効化 には いいえ を設定し、OCSP を有効化 には 無効 を設定し、権限付与 には AliyunIOTAccessingFCRole を設定します。

  2. クラウドゲートウェイリストで、ゲートウェイ URL をコピーして保存します。

    クラウドゲートウェイリストには、ゲートウェイ名、プロトコル、ゲートウェイ URL、ステータスなどの情報が表示されます。

ステップ 3:MQTT.fx 接続の設定

  1. MQTT.fx ソフトウェアを開きます。メニューバーで、Extras をクリックし、Edit Connection Profiles を選択します。

  2. Edit Connection Profiles ページで、次のパラメーターを設定します。

    1. 基本情報を設定します。その他のパラメーターはデフォルト値を使用します。

      パラメーター

      説明

      プロファイル名

      任意の名前を入力します。

      プロファイルタイプ

      接続タイプとして MQTT Broker を選択します。

      ブローカーアドレス

      保存した ゲートウェイ URL のドメイン名を入力します。

      ブローカーポート

      カスタムポート番号を設定します。デフォルトは 1883 です。

      クライアント ID

      省略可能です。最大 64 文字の任意のクライアント ID を指定できます。識別しやすくするため、デバイスの MAC アドレスまたはシリアル番号 (SN) を使用することを推奨します。

    2. User Credentials をクリックし、Use Username/Password チェックボックスをオンにして、User Name (例:threeParty_device_001) および Password を設定します。

      説明
      • User Name:4~32 文字で、英数字、ハイフン (-)、アンダースコア (_)、アットマーク (@)、ピリオド (.)、コロン (:) を使用できます。プロダクト内で一意である必要があります。

      • Password:1~32 文字で、英数字、ハイフン (-)、アンダースコア (_)、アットマーク (@)、ピリオド (.)、コロン (:) を使用できます。

    3. SSL/TLS をクリックし、Enable SSL/TLS チェックボックスをオンにして、ProtocolTLSv1.2 に設定します。

    4. CA 証明書ファイル を選択し、root-ca.crt ファイルのパスを指定します。

  3. パラメーターを設定したら、OK をクリックします。

  4. Connect をクリックします。

    右側の緑色のランプが点灯している場合は、接続に成功しています。IoT Platform は、FC 認証関数が返す deviceName (threeParty_device_001) をデバイスの DeviceName として使用します。その後、プラットフォームが自動的にデバイスを作成し、IoT Platform コンソールデバイス > デバイス ページに オンライン ステータスで表示されます。

カスタムトピックを使用したデータのレポート

  1. MQTT.fx で、Publish をクリックします。Publish テキストボックスに、カスタムトピック /home/garden/fountain を入力します。

  2. ペイロードエディターでメッセージ本文を入力し、Publish をクリックします。

  3. IoT Platform コンソール にログインします。ご利用のインスタンスで、メンテナンス > Log Service ページに移動し、デバイスからクラウドへのメッセージ ログを確認します。詳細については、「クラウド側ログの照会」をご参照ください。表示 をクリックするとメッセージの詳細が開き、トピック、タイムスタンプ、ペイロードが表示されます。