@@ -78,8 +78,11 @@ struct MqttClientConfig
7878 bool willEnable = false ;
7979 const char * willTopic = nullptr ;
8080 const char * willMessage = nullptr ;
81- MqttQoS willQoS = MqttQoS::QoS1;
81+ // Defaults used when Subscribe / Publish omit an explicit QoS.
82+ MqttQoS willQoS = MqttQoS::QoS1; // /< Last Will QoS when willEnable is true.
8283 bool willRetained = false ;
84+ MqttQoS pubQoS = MqttQoS::QoS1; // /< Default Publish QoS.
85+ MqttQoS subQoS = MqttQoS::QoS1; // /< Default Subscribe QoS.
8386
8487 /* * PEM bytes for host mbedTLS CA chain. nullptr = skip CA install. */
8588 const uint8_t * tlsCaCert = nullptr ;
@@ -158,6 +161,11 @@ class MqttClient : public MatterService
158161 */
159162 CHIP_ERROR Subscribe (const char * topic, MqttQoS qos, MqttOperationCallback callback, void * context = nullptr );
160163
164+ /* *
165+ * @brief Subscribe using @ref MqttClientConfig::subQoS from Init.
166+ */
167+ CHIP_ERROR Subscribe (const char * topic, MqttOperationCallback callback, void * context = nullptr );
168+
161169 CHIP_ERROR Unsubscribe (const char * topic, MqttOperationCallback callback, void * context = nullptr );
162170
163171 /* *
@@ -168,6 +176,12 @@ class MqttClient : public MatterService
168176 CHIP_ERROR Publish (const char * topic, ByteSpan payload, MqttQoS qos, bool retained, MqttOperationCallback callback,
169177 void * context = nullptr );
170178
179+ /* *
180+ * @brief Publish using @ref MqttClientConfig::pubQoS from Init.
181+ */
182+ CHIP_ERROR Publish (const char * topic, ByteSpan payload, bool retained, MqttOperationCallback callback,
183+ void * context = nullptr );
184+
171185 /* *
172186 * @brief Queue a one-shot MQTTYield (optional; idle auto-yield covers keepalive/receive).
173187 */
@@ -228,7 +242,7 @@ class MqttClient : public MatterService
228242
229243 const char * mPendingTopic = nullptr ;
230244 ByteSpan mPendingPayload ;
231- MqttQoS mPendingQos = MqttQoS::QoS1 ;
245+ MqttQoS mPendingQos = MqttQoS::QoS0 ;
232246 bool mPendingRetained = false ;
233247 uint32_t mPendingYieldTimeoutMs = 0 ;
234248
0 commit comments