QMqttSubscription Class
QMqttSubscription クラスは、指定されたトピックに関する通知を MQTT ブローカーから受け取ります。詳細...
| ヘッダー: | #include <QMqttSubscription> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Mqtt) target_link_libraries(mytarget PRIVATE Qt6::Mqtt) |
| qmake: | QT += mqtt |
| 継承元: | QObject |
パブリック型
| enum | SubscriptionState { Unsubscribed, SubscriptionPending, Subscribed, UnsubscriptionPending, Error } |
プロパティ
|
|
パブリック関数
| virtual | ~QMqttSubscription() override |
| bool | isSharedSubscription() const |
| quint8 | qos() const |
| QString | reason() const |
| QMqtt::ReasonCode | reasonCode() const |
| QString | sharedSubscriptionName() const |
| QMqttSubscription::SubscriptionState | state() const |
| QMqttTopicFilter | topic() const |
| QMqttUserProperties | userProperties() const |
パブリックスロット
| void | unsubscribe() |
シグナル
| void | messageReceived(QMqttMessage msg) |
| void | qosChanged(quint8) |
| void | stateChanged(QMqttSubscription::SubscriptionState state) |
メンバ型のドキュメント
enum QMqttSubscription::SubscriptionState
この列挙型は、サブスクリプションが取り得る状態を表します。
| 定数 | 値 | 説明 |
|---|---|---|
QMqttSubscription::Unsubscribed | 0 | トピックの購読が解除されました。 |
QMqttSubscription::SubscriptionPending | 1 | サブスクリプションのリクエストが送信されましたが、ブローカーによる確認はまだ行われていません。 |
QMqttSubscription::Subscribed | 2 | 購読に成功し、メッセージを受信できるようになります。 |
QMqttSubscription::UnsubscriptionPending | 3 | トピックの購読解除リクエストが送信されましたが、ブローカーによる確認はまだ行われていません。 |
QMqttSubscription::Error | 4 | エラーが発生しました。 |
プロパティのドキュメント
[read-only] qos : quint8
このプロパティには、サブスクリプションが設定された際のQoSレベルが格納されます。
サブスクリプションのQoSレベルは、クライアントがメッセージを受信する際の最大QoSレベルを指定します。パブリッシャーは、それより低いレベルのメッセージを送信することも可能です。
アクセス関数:
| quint8 | qos() const |
通知信号:
| void | qosChanged(quint8) |
[read-only] reason : QString
このプロパティには、サブスクリプションの理由となる文字列が格納されます。
理由文字列は、サーバーがサブスクリプションに関する追加情報を提供するために使用されます。サーバーがこれを送信するかどうかは任意です。
アクセス関数:
| QString | reason() const |
[read-only] reasonCode : QMqtt::ReasonCode
このプロパティには、サブスクリプションの理由コードが格納されます。
理由コードは、サブスクリプションが失敗した場合はエラーの種類を、成功した場合はQoSのレベルを指定します。
アクセス関数:
| QMqtt::ReasonCode | reasonCode() const |
[read-only] sharedSubscription : bool
このプロパティは、サブスクリプションが共有されているかどうかを示します。
アクセス関数:
| bool | isSharedSubscription() const |
[read-only] sharedSubscriptionName : QString
このプロパティには、共有サブスクリプションの名前が格納されます。
アクセス関数:
| QString | sharedSubscriptionName() const |
[read-only] state : SubscriptionState
このプロパティには、サブスクリプションの状態が格納されます。
アクセス関数:
| QMqttSubscription::SubscriptionState | state() const |
通知シグナル:
| void | stateChanged(QMqttSubscription::SubscriptionState state) |
[read-only] topic : QMqttTopicFilter
このプロパティには、サブスクリプションのトピックが格納されます。
アクセス関数:
| QMqttTopicFilter | topic() const |
メンバー関数のドキュメント
[override virtual noexcept] QMqttSubscription::~QMqttSubscription()
サブスクリプションを削除します。topic の購読がまだ解除されていない場合は、自動的に購読が解除されます。
[signal] void QMqttSubscription::messageReceived(QMqttMessage msg)
このシグナルは、新しいメッセージ「msg 」を受信したときに発生します。
[slot] void QMqttSubscription::unsubscribe()
topic の購読を解除します。
注:これにより 、QMqttClient::subscribe() によって返されるすべての共有ポインタのインスタンスに影響が出る可能性があります。
QMqttUserProperties QMqttSubscription::userProperties() const
サブスクリプションが受け入れられた際に、ブローカーから受け取ったユーザープロパティを返します。
注:この関数は 、クライアントが `QMqttClient::ProtocolVersion` として `QMqttClient::MQTT_5_0 ` を指定した場合にのみ、有効なデータを提供します。
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.