📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)

523行目: 523行目:
<br>
<br>


===== 使用例 =====
例えば、3台のデバイスに対して「LED照明を付けてほしい」とパブリッシャーが送信する場合、以下に示すようにMQTTトピックを効率的に使用する。<br>
<code>#</code>は、MQTTトピックにおけるワイルドカードであり、該当する全てのトピックを購読することができる。<br>
<br>
* 共通トピックを使用する方法
# パブリッシャー側
mosquitto_pub -t "lights/all" -m "ON" -u <ユーザ名> -P <パスワード>
# サブスクライバ側 (各デバイス側)
mosquitto_sub -t "lights/all" -u <ユーザ名> -P <パスワード>
<br>
* 個別制御も可能な階層的トピック構造
# 全体制御 (パブリッシャー側)
mosquitto_pub -t "lights/#" -m "ON" -u <共通のユーザ名> -P <共通のパスワード>
# 個別制御 (パブリッシャー側)
mosquitto_pub -t "lights/device1" -m "ON" -u <デバイス1のユーザ名> -P <デバイス1のパスワード>
mosquitto_pub -t "lights/device2" -m "OFF" -u <デバイス2のユーザ名> -P <デバイス2のパスワード>
# デバイス側は両方のトピックを購読 (サブスクライバ側)
# オプション1: 共通認証
mosquitto_sub -t "lights/#" -u <共通のユーザ名> -P <共通のパスワード>
# オプション2: デバイスごとの認証 (サブスクライバ側)
mosquitto_sub -t "lights/#" -u <デバイス1のユーザ名> -P <デバイス1のパスワード>
mosquitto_sub -t "lights/#" -u <デバイス2のユーザ名> -P <デバイス2のパスワード>
<br>
また、実務では、複数のデバイスで同じ認証情報を共有するケースは一般的である。(例: 同一のユーザ名とパスワードを使用するデバイスが3台ある場合)<br>
* メリット
*: 設定管理が簡単
*: デバイスの追加が容易
* デメリット
*: セキュリティリスク (認証情報が漏洩した場合の影響大)
*: 個別デバイスの追跡が困難
<br>
<u>ただし、セキュリティを重視する場合は、デバイスごとに異なる認証情報を設定することが推奨される。</u><br>
<br>
===== 運用時の注意 =====
===== 運用時の注意 =====
* セキュリティ
* セキュリティ