Show / Hide Table of Contents

    Class MqttLastWillMessageConfigurationBuilder<TMessage>

    Builds the last will and testament (LWT) message related part of the MqttClientConfiguration.

    Inheritance
    object
    MqttLastWillMessageConfigurationBuilder<TMessage>
    Implements
    IMessageSerializationBuilder<TMessage, MqttLastWillMessageConfigurationBuilder<TMessage>>
    Inherited Members
    object.GetType()
    object.MemberwiseClone()
    object.ToString()
    object.Equals(object)
    object.Equals(object, object)
    object.ReferenceEquals(object, object)
    object.GetHashCode()
    Namespace: Silverback.Messaging.Configuration.Mqtt
    Assembly: Silverback.Integration.MQTT.dll
    Syntax
    public class MqttLastWillMessageConfigurationBuilder<TMessage> : IMessageSerializationBuilder<TMessage, MqttLastWillMessageConfigurationBuilder<TMessage>>
    Type Parameters
    Name Description
    TMessage

    The LWT message type.

    Constructors

    MqttLastWillMessageConfigurationBuilder()

    Builds the last will and testament (LWT) message related part of the MqttClientConfiguration.

    Declaration
    public MqttLastWillMessageConfigurationBuilder()

    Methods

    AddHeader(string, string?)

    Adds an header (user property) to the last will message.

    Declaration
    public MqttLastWillMessageConfigurationBuilder<TMessage> AddHeader(string name, string? value)
    Parameters
    Type Name Description
    string name

    The property name.

    string value

    The property value.

    Returns
    Type Description
    MqttLastWillMessageConfigurationBuilder<TMessage>

    The MqttLastWillMessageConfigurationBuilder<TMessage> so that additional calls can be chained.

    Build()

    Builds the MQTTnet.MqttApplicationMessage instance.

    Declaration
    public MqttLastWillMessageConfiguration Build()
    Returns
    Type Description
    MqttLastWillMessageConfiguration

    The MQTTnet.MqttApplicationMessage.

    ProduceTo(string)

    Specifies the name of the topic to produce the LWT message to.

    Declaration
    public MqttLastWillMessageConfigurationBuilder<TMessage> ProduceTo(string topic)
    Parameters
    Type Name Description
    string topic

    The topic.

    Returns
    Type Description
    MqttLastWillMessageConfigurationBuilder<TMessage>

    The MqttLastWillMessageConfigurationBuilder<TMessage> so that additional calls can be chained.

    Retain()

    Specifies that the LWT message will be sent with the retain flag, causing it to be persisted on the broker.

    Declaration
    public MqttLastWillMessageConfigurationBuilder<TMessage> Retain()
    Returns
    Type Description
    MqttLastWillMessageConfigurationBuilder<TMessage>

    The MqttLastWillMessageConfigurationBuilder<TMessage> so that additional calls can be chained.

    SendMessage(TMessage)

    Sets the payload of the last will message to be published.

    Declaration
    public MqttLastWillMessageConfigurationBuilder<TMessage> SendMessage(TMessage message)
    Parameters
    Type Name Description
    TMessage message

    The actual LWT message to be published.

    Returns
    Type Description
    MqttLastWillMessageConfigurationBuilder<TMessage>

    The MqttLastWillMessageConfigurationBuilder<TMessage> so that additional calls can be chained.

    SerializeAsJson(Action<JsonMessageSerializerBuilder>?)

    Sets the serializer to an instance of JsonMessageSerializer to serialize the produced messages as JSON.

    Declaration
    public MqttLastWillMessageConfigurationBuilder<TMessage> SerializeAsJson(Action<JsonMessageSerializerBuilder>? serializerBuilderAction = null)
    Parameters
    Type Name Description
    Action<JsonMessageSerializerBuilder> serializerBuilderAction

    An optional Action<T> that takes the JsonMessageSerializerBuilder and configures it.

    Returns
    Type Description
    MqttLastWillMessageConfigurationBuilder<TMessage>

    The endpoint builder so that additional calls can be chained.

    SerializeUsing(IMessageSerializer)

    Specifies the IMessageSerializer to be used to serialize the LWT message.

    Declaration
    public MqttLastWillMessageConfigurationBuilder<TMessage> SerializeUsing(IMessageSerializer serializer)
    Parameters
    Type Name Description
    IMessageSerializer serializer

    The IMessageSerializer.

    Returns
    Type Description
    MqttLastWillMessageConfigurationBuilder<TMessage>

    The endpoint builder so that additional calls can be chained.

    WithAtLeastOnceQoS()

    Specifies that the LWT message has to be sent with the at least once quality of service level.

    Declaration
    public MqttLastWillMessageConfigurationBuilder<TMessage> WithAtLeastOnceQoS()
    Returns
    Type Description
    MqttLastWillMessageConfigurationBuilder<TMessage>

    The MqttLastWillMessageConfigurationBuilder<TMessage> so that additional calls can be chained.

    WithAtMostOnceQoS()

    Specifies that the LWT message has to be sent with the at most once quality of service level.

    Declaration
    public MqttLastWillMessageConfigurationBuilder<TMessage> WithAtMostOnceQoS()
    Returns
    Type Description
    MqttLastWillMessageConfigurationBuilder<TMessage>

    The MqttLastWillMessageConfigurationBuilder<TMessage> so that additional calls can be chained.

    WithContentType(string?)

    Sets the content type.

    Declaration
    public MqttLastWillMessageConfigurationBuilder<TMessage> WithContentType(string? contentType)
    Parameters
    Type Name Description
    string contentType

    The content type.

    Returns
    Type Description
    MqttLastWillMessageConfigurationBuilder<TMessage>

    The MqttLastWillMessageConfigurationBuilder<TMessage> so that additional calls can be chained.

    WithCorrelationData(byte[]?)

    Sets the correlation data.

    Declaration
    public MqttLastWillMessageConfigurationBuilder<TMessage> WithCorrelationData(byte[]? correlationData)
    Parameters
    Type Name Description
    byte[] correlationData

    The correlation data.

    Returns
    Type Description
    MqttLastWillMessageConfigurationBuilder<TMessage>

    The MqttLastWillMessageConfigurationBuilder<TMessage> so that additional calls can be chained.

    WithDelay(TimeSpan)

    Sets the last will message delay.

    Declaration
    public MqttLastWillMessageConfigurationBuilder<TMessage> WithDelay(TimeSpan delay)
    Parameters
    Type Name Description
    TimeSpan delay

    The TimeSpan representing the delay.

    Returns
    Type Description
    MqttLastWillMessageConfigurationBuilder<TMessage>

    The MqttLastWillMessageConfigurationBuilder<TMessage> so that additional calls can be chained.

    WithExactlyOnceQoS()

    Specifies that the LWT message has to be sent with the exactly once quality of service level.

    Declaration
    public MqttLastWillMessageConfigurationBuilder<TMessage> WithExactlyOnceQoS()
    Returns
    Type Description
    MqttLastWillMessageConfigurationBuilder<TMessage>

    The MqttLastWillMessageConfigurationBuilder<TMessage> so that additional calls can be chained.

    WithExpiration(TimeSpan)

    Sets the last will message expiration.

    Declaration
    public MqttLastWillMessageConfigurationBuilder<TMessage> WithExpiration(TimeSpan expiration)
    Parameters
    Type Name Description
    TimeSpan expiration

    The TimeSpan representing the expiration.

    Returns
    Type Description
    MqttLastWillMessageConfigurationBuilder<TMessage>

    The MqttLastWillMessageConfigurationBuilder<TMessage> so that additional calls can be chained.

    WithPayloadFormatIndicator(MqttPayloadFormatIndicator?)

    Sets the payload format indicator.

    Declaration
    public MqttLastWillMessageConfigurationBuilder<TMessage> WithPayloadFormatIndicator(MqttPayloadFormatIndicator? payloadFormatIndicator)
    Parameters
    Type Name Description
    MqttPayloadFormatIndicator? payloadFormatIndicator

    The payload format indicator.

    Returns
    Type Description
    MqttLastWillMessageConfigurationBuilder<TMessage>

    The MqttLastWillMessageConfigurationBuilder<TMessage> so that additional calls can be chained.

    WithPayloadFormatIndicator(string?)

    Sets the response topic.

    Declaration
    public MqttLastWillMessageConfigurationBuilder<TMessage> WithPayloadFormatIndicator(string? topic)
    Parameters
    Type Name Description
    string topic

    The response topic.

    Returns
    Type Description
    MqttLastWillMessageConfigurationBuilder<TMessage>

    The MqttLastWillMessageConfigurationBuilder<TMessage> so that additional calls can be chained.

    WithQualityOfServiceLevel(MqttQualityOfServiceLevel)

    Specifies the desired quality of service level.

    Declaration
    public MqttLastWillMessageConfigurationBuilder<TMessage> WithQualityOfServiceLevel(MqttQualityOfServiceLevel qosLevel)
    Parameters
    Type Name Description
    MqttQualityOfServiceLevel qosLevel

    The MQTTnet.Protocol.MqttQualityOfServiceLevel.

    Returns
    Type Description
    MqttLastWillMessageConfigurationBuilder<TMessage>

    The MqttLastWillMessageConfigurationBuilder<TMessage> so that additional calls can be chained.

    Implements

    IMessageSerializationBuilder<TMessage, TBuilder>
    GitHub E-Mail
    ↑ Back to top © 2026 Sergio Aquilini