Skip to content

ChannelBinding

faststream.specification.asyncapi.v2_6_0.schema.bindings.mqtt.ChannelBinding #

Bases: BaseModel

MQTT channel binding (AsyncAPI 2.6.0).

topic instance-attribute #

topic: str

qos class-attribute instance-attribute #

qos: int = 0

retain class-attribute instance-attribute #

retain: bool = False

bindingVersion class-attribute instance-attribute #

bindingVersion: str = '0.2.0'

from_sub classmethod #

from_sub(binding: ChannelBinding | None) -> Self | None
Source code in faststream/specification/asyncapi/v2_6_0/schema/bindings/mqtt/channel.py
@classmethod
def from_sub(cls, binding: mqtt.ChannelBinding | None) -> Self | None:
    if binding is None:
        return None

    return cls(
        topic=binding.topic,
        qos=binding.qos,
        retain=binding.retain,
        bindingVersion=binding.bindingVersion,
    )

from_pub classmethod #

from_pub(binding: ChannelBinding | None) -> Self | None
Source code in faststream/specification/asyncapi/v2_6_0/schema/bindings/mqtt/channel.py
@classmethod
def from_pub(cls, binding: mqtt.ChannelBinding | None) -> Self | None:
    if binding is None:
        return None

    return cls(
        topic=binding.topic,
        qos=binding.qos,
        retain=binding.retain,
        bindingVersion=binding.bindingVersion,
    )