QMqttServerConnectionProperties 类
QMqttServerConnectionProperties 类表示一个 QMqttClient 连接到的服务器的配置选项。 更多...
头文件 | #include <QMqttServerConnectionProperties> |
CMake | find_package(Qt6 REQUIRED COMPONENTS Mqtt) target_link_libraries(mytarget PRIVATE Qt6::Mqtt) |
qmake | QT += mqtt |
继承 | QMqttConnectionProperties |
公共类型
枚举 | ServerPropertyDetail { None, SessionExpiryInterval, MaximumReceive, MaximumQoS, RetainAvailable, …, AuthenticationData } |
标志 | ServerPropertyDetails |
公共函数
QMqttServerConnectionProperties::ServerPropertyDetails | availableProperties() const |
bool | clientIdAssigned() const |
bool | isValid() const |
quint8 | maximumQoS() const |
QString | reason() const |
QMqtt::ReasonCode | reasonCode() const |
QString | responseInformation() const |
bool | retainAvailable() const |
quint16 | serverKeepAlive() const |
QString | serverReference() const |
bool | sharedSubscriptionSupported() const |
bool | subscriptionIdentifierSupported() const |
bool | wildcardSupported() const |
详细信息
当建立了连接后,服务器可能会发送有关连接属性的附加详细信息。使用 availableProperties() 来识别由服务器设置的属性。如果属性未由服务器设置,则假定默认值,可以通过调用此实例的访问函数获取这些值。
注意:连接属性是 MQTT 5.0 规范的一部分,在以较低协议级别连接时无法使用。有关更多信息,请参阅 QMqttClient::ProtocolVersion。
成员类型文档
enum QMqttServerConnectionProperties::ServerPropertyDetail
flags QMqttServerConnectionProperties::ServerPropertyDetails
此枚举类型指定在建立连接后由服务器或客户端设置的可用属性。
常数 | 值 | 描述 |
---|---|---|
QMqttServerConnectionProperties::None | 0x00000000 | 没有指定任何属性。 |
QMqttServerConnectionProperties::SessionExpiryInterval | 0x00000001 | 服务器在断开连接后保持会话的秒数。 |
QMqttServerConnectionProperties::MaximumReceive | 0x00000002 | 服务器能够同时管理的一个QoS 1和2消息的最大数量。 |
QMqttServerConnectionProperties::MaximumQoS | 0x00000004 | 服务器能够理解的最高QoS级别。 |
QMqttServerConnectionProperties::RetainAvailable | 0x00000010 | 指定是否支持保留消息。 |
QMqttServerConnectionProperties::MaximumPacketSize | 0x00000020 | 指定包括消息头和属性在内的最大数据包大小。 |
QMqttServerConnectionProperties::AssignedClientId | 0x00000040 | 指定服务器是否分配了客户端标识符。 |
QMqttServerConnectionProperties::MaximumTopicAlias | 0x00000080 | 指定主题别名的最大数量。 |
QMqttServerConnectionProperties::ReasonString | 0x00000100 | 指定提供连接状态更多细节的字符串。 |
QMqttServerConnectionProperties::UserProperty | 0x00000200 | 指定额外的用户属性。 |
QMqttServerConnectionProperties::WildCardSupported | 0x00000400 | 指定服务器是否支持通配符订阅。 |
QMqttServerConnectionProperties::SubscriptionIdentifierSupport | 0x00000800 | 指定服务器是否支持订阅标识符。 |
QMqttServerConnectionProperties::SharedSubscriptionSupport | 0x00001000 | 指定服务器是否支持共享订阅。 |
QMqttServerConnectionProperties::ServerKeepAlive | 0x00002000 | 指定服务器期望客户端发送心跳包的秒数。 |
QMqttServerConnectionProperties::ResponseInformation | 0x00004000 | 指定响应信息。 |
QMqttServerConnectionProperties::ServerReference | 0x00008000 | 指定客户端连接的备用服务器地址。 |
QMqttServerConnectionProperties::AuthenticationMethod | 0x00010000 | 指定认证方法。 |
QMqttServerConnectionProperties::AuthenticationData | 0x00020000 | 指定认证数据。 |
ServerPropertyDetails类型是ServerPropertyDetailQFlags<ServerPropertyDetail>的typedef。它存储ServerPropertyDetail值的OR组合。
成员函数文档
QMqttServerConnectionProperties::ServerPropertyDetails QMqttServerConnectionProperties::availableProperties() const
返回服务器指定的可用属性。
bool QMqttServerConnectionProperties::clientIdAssigned() const
如果服务器为客户端分配了新的客户端标识符,则返回true。
bool QMqttServerConnectionProperties::isValid() const
如果服务器作为连接确认的一部分提供了属性,则返回true。如果没有提供属性,则返回false。
quint8 QMqttServerConnectionProperties::maximumQoS() const
返回服务器支持的消息发布的最高QoS级别。发布超过服务器报告的最高QoS级别的QoS级别的消息是协议违规。
如果客户端不需要支持QoS 1或QoS 2,则应将其在任何订阅中的最大QoS级别限制在可以支持的水平;然后服务器会使用支持的最大和受限QoS级别发布消息。
默认值是2
。
另请参阅QMqttClient::publish() 和 QMqttClient::subscribe。
QString QMqttServerConnectionProperties::reason() const
返回与此响应相关的原因字符串。
QMqtt::ReasonCode QMqttServerConnectionProperties::reasonCode() const
返回与此响应相关的错误码。
QString QMqttServerConnectionProperties::responseInformation() const
返回响应信息。
bool QMqttServerConnectionProperties::retainAvailable() const
如果服务器接受保留消息则返回 true
。默认值为 true
。
quint16 QMqttServerConnectionProperties::serverKeepAlive() const
返回服务器请求的会话保活秒数。这将覆盖客户端设置的保活值。
另请参阅 QMqttClient::setKeepAlive。
QString QMqttServerConnectionProperties::serverReference() const
返回一个客户端可以用来连接的服务器地址。通常,这与错误码 0x9c
(使用另一个服务器)或 0x9c
(服务器已移动)一起使用。
bool QMqttServerConnectionProperties::sharedSubscriptionSupported() const
如果服务器接受共享订阅则返回 true
。默认值为 true
。
bool QMqttServerConnectionProperties::subscriptionIdentifierSupported() const
如果服务器接受订阅标识符则返回 true
。可以在创建新订阅时将订阅标识符传递给服务器。
默认值为 true
。
另请参阅 QMqttSubscriptionProperties::setSubscriptionIdentifier().
bool QMqttServerConnectionProperties::wildcardSupported() const
如果服务器接受包含通配符的订阅则返回 true
。默认值为 true
。
© 2024 Qt 公司。此处包含的文档贡献的版权属于各自的所有者。此处提供的文档是根据自由软件基金会发布的 GNU 自由文档许可证版本 1.3 的条款许可的。Qt 和相关商标是芬兰的 Qt 公司或其他国家/地区的商标。