RabbitSubscriberSpecification
faststream.rabbit.subscriber.specification.RabbitSubscriberSpecification #
RabbitSubscriberSpecification(
_outer_config: T_BrokerConfig,
specification_config: T_SpecificationConfig,
calls: CallsCollection[Any],
)
Bases: SubscriberSpecification[RabbitBrokerConfig, RabbitSubscriberSpecificationConfig]
Source code in faststream/_internal/endpoint/subscriber/specification.py
channel_labels property #
A queue and the exchange it is bound to, which is not the address.
The address is the routing key; a queue is a place to read from. Both are needed to tell two subscribers apart, so the label carries both.
address property #
The routing key the queue is bound by, prefixed.
None where the exchange ignores routing keys: a fanout reaches every queue bound to it, so the queue this subscriber reads from names nothing a message is routed by. The document drops the queue binding for the same reason, and drops the address rather than giving an empty one — AsyncAPI reads an absent address as unknown, which "" does not say.
get_schema #
get_schema() -> dict[str, SubscriberSpec]