# MQTT.fxでの接続

本記事では、[MQTT.fx](http://www.mqttfx.jensd.de/)を[MQTTクライアント](https://www.emqx.com/en/blog/introduction-to-the-commonly-used-mqtt-client-library)のテストツールとして使用し、EMQX Platformのデプロイメントに接続する方法を解説します。

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

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

## 前提条件

> 1. [MQTT.fxクライアントのインストール](http://www.mqttfx.jensd.de/index.php/download)  
> 2. EMQX Platformでデプロイメントを作成済みで、デプロイメントの状態が**running**であること

## 接続設定

### ブローカー情報

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

- 専用プランのアドレス：ドメイン名  
  ポート：1883（mqtt）、8083（ws）はデフォルトで有効。TLS/SSL設定により8883（mqtts）および8084（wss）を有効化可能  
- BYOCプランのアドレス：デプロイ時に指定したドメイン名  
  ポート：1883（mqtt）、8083（ws）、8883（mqtts）、8884（wss）

### 認証

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

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

## 接続手順

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

   ![MQTT.fxの接続プロファイルを開く](./_assets/mqttfx_profile.png)

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

   ![MQTT.fxの接続設定](./_assets/mqttfx_new_profile.png)

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

   ![MQTT.fxでMQTTブローカーに接続](./_assets/mqttfx_connect.png)

## さらに詳しく

サブスクライブ、パブリッシュなどの詳細な機能については、以下を参照してください：  
[MQTT.fxを使ってEMQX Platformに接続する方法](https://www.emqx.com/en/blog/connecting-to-emqx-cloud-with-mqttfx)
