Skip to content

MQTT.fxで接続する

この記事では、MQTT.fxMQTTクライアントのテストツールとして使用し、EMQX Cloudのデプロイメントに接続する方法を説明します。

MQTT.fxは現在最も人気のあるMQTTデスクトップクライアントツールです。MQTT.fxのメジャーバージョン1.0は、Jens DetersによってJavaFX技術を用いて開発されており、Java仮想マシン上で動作するアプリケーションです。残念ながらMQTT.fxのメンテナンスは現在停止しており、Softblade社が開発を支援し、有償ライセンスで運用される商用版MQTT.fx® 5.0をリリースしています。本記事でのMQTT.fxは特に断りがない限りバージョン1.0を指します。

TCPおよびTLSプロトコルはサポートされていますが、WebSocketはサポートされていません

前提条件

  1. MQTT.fxクライアントをインストールしていること。
  2. EMQX Cloudでデプロイメントを作成済みで、デプロイメントの状態がrunningであること。

MQTTブローカーのデプロイ

アプリケーションをEMQX Cloudに接続するには、デプロイメントを作成して設定する必要があります。

サーバレスデプロイメント

  1. EMQX Cloudコンソールでサーバレスデプロイメントを作成します。

  2. デプロイメントが作成されて稼働したら、デプロイメントの概要ページに移動し、以下を含むMQTT接続情報を確認します。

    • ブローカーアドレス

    • ポート番号(サーバレスではTLSポートのみ対応)

  3. サーバレスデプロイメントはTLS接続が必須です。概要ページからCA証明書をダウンロードし、TLS用のポート8883を使用してください。

  4. デプロイメントのアクセス制御 -> クライアント認証で、デフォルト認証(ユーザー名/パスワード)を設定します。

詳細はサーバレスポートガイドを参照してください。

Dedicated Flex または BYOC デプロイメント

  1. EMQX CloudコンソールでDedicated FlexまたはBYOCのデプロイメントを作成できます。

  2. 作成後、デプロイメントの概要ページに移動し、以下を含むMQTT接続情報を取得します。

    • ブローカーアドレス

    • MQTTおよびWebSocket用のTCPおよびTLSポート番号(TCPおよびTLS接続の両方に対応)

  3. デプロイメントのアクセス制御 -> クライアント認証で、デフォルト認証(ユーザー名/パスワード)を設定します。

詳細なポート設定については、Dedicated & BYOCポートガイドをご覧ください。

接続設定

ブローカー情報

デプロイメント概要画面で接続アドレスとポートを取得します(以下のxxxxxはランダムなポート番号を示しており、具体的なポート情報はデプロイメント概要ページの情報を参照してください)。

  • Dedicated Flexプランのアドレス:ドメイン名;ポート:1883(mqtt)、8083(ws)はデフォルトで有効。TLS/SSLを設定することでポート8883(mqtts)および8084(wss)を有効化可能
  • BYOCプランのアドレス:デプロイ時に指定したドメイン名;ポート:1883(mqtt)、8083(ws)、8883(mqtts)、8884(wss)

認証

EMQX Cloudのすべてのデプロイメントではユーザー認証が有効になっているため、MQTT.fxで接続テストを行う際は、UsernameとPasswordの入力が必要です

UsernameとPasswordはAccess Control > Authenticationで設定します。個別に追加することも、一括インポートも可能です。

接続手順

  1. 接続プロファイルを開く

    MQTT.fxの接続プロファイルを開く

  2. 新しい接続設定を作成し、必要な設定を入力する

    MQTT.fxの接続設定

  3. MQTTブローカーに接続する

    MQTT.fxでMQTTブローカーに接続する

さらに詳しく

サブスクライブ、パブリッシュなどの詳細な機能については、以下を参照してください:
MQTT.fxを使ってEMQX Cloudに接続する