Freigeben über


ServiceBusReceivedMessage Klasse

Eine Service Bus-Nachricht, die von der Dienstseite empfangen wird.

Vererbung
azure.servicebus._common.message.ServiceBusMessage
ServiceBusReceivedMessage

Konstruktor

ServiceBusReceivedMessage(message: 'Message' | 'pyamqp_Message', receive_mode: ServiceBusReceiveMode | str = ServiceBusReceiveMode.PEEK_LOCK, frame: 'TransferFrame' | None = None, **kwargs: Any)

Parameter

Name Beschreibung
message
Erforderlich
receive_mode
Standardwert: ServiceBusReceiveMode.PEEK_LOCK
frame
Standardwert: None

Beispiele

Überprüfen der Eigenschaften einer empfangenen Nachricht.


       from typing import List
       from azure.servicebus import ServiceBusReceivedMessage
       messages_complex: List[ServiceBusReceivedMessage] = servicebus_receiver.receive_messages(max_wait_time=5)
       for message in messages_complex:
           print("Receiving: {}".format(message))
           print("Time to live: {}".format(message.time_to_live))
           print("Sequence number: {}".format(message.sequence_number))
           print("Enqueued Sequence number: {}".format(message.enqueued_sequence_number))
           print("Partition Key: {}".format(message.partition_key))
           print("Application Properties: {}".format(message.application_properties))
           print("Delivery count: {}".format(message.delivery_count))
           print("Message ID: {}".format(message.message_id))
           print("Locked until: {}".format(message.locked_until_utc))
           print("Lock Token: {}".format(message.lock_token))
           print("Enqueued time: {}".format(message.enqueued_time_utc))

Variablen

Name Beschreibung
auto_renew_error
<xref:azure.servicebus.AutoLockRenewTimeout> oder <xref:azure.servicebus.AutoLockRenewFailed>

Fehler, wenn AutoLockRenewer verwendet wird und die Nachrichtensperre nicht verlängert werden kann.

Attribute

application_properties

Die benutzerdefinierten Eigenschaften für die Nachricht.

Gibt zurück

Typ Beschreibung
bytes, <xref:PrimitiveTypes>],

body

Der Text der Nachricht. Das Format kann je nach Texttyp variieren: Für DATAkann der Text Byte oder Iterable[Bytes] lauten. Für SEQUENCEkönnte der Text List oder Iterable[List] sein. Für VALUEkann der Text ein beliebiger Typ sein.

Gibt zurück

Typ Beschreibung
Any

body_type

Der Texttyp der zugrunde liegenden AMQP-Nachricht.

Gibt zurück

Typ Beschreibung

content_type

Der Inhaltstypdeskriptor.

Beschreibt optional die Nutzlast der Nachricht mit einem Deskriptor, der dem Format von RFC2045, Abschnitt 5 folgt, z. B. "application/json".

Gibt zurück

Typ Beschreibung
str,

correlation_id

Der Korrelationsbezeichner.

Ermöglicht einer Anwendung, einen Kontext für die Nachricht zum Zweck der Korrelation anzugeben, z.B. die MessageId einer Nachricht, auf die geantwortet wird.

Weitere Informationen finden Sie unter Nachrichtenrouting und Korrelation in https://docs.microsoft.com/azure/service-bus-messaging/service-bus-messages-payloads?#message-routing-and-correlation.

Gibt zurück

Typ Beschreibung
str,

dead_letter_error_description

Fehlerbeschreibung für unzustellbare Nachrichten, wenn die Nachricht von einer Unzustellbaren Unterwarteschlange einer Entität empfangen wird.

Gibt zurück

Typ Beschreibung
str

dead_letter_reason

Grund für unzustellbare Nachrichten, wenn die Nachricht von einer Unzustellbaren Unterwarteschlange einer Entität empfangen wird.

Gibt zurück

Typ Beschreibung
str

dead_letter_source

Der Name der Warteschlange oder des Abonnements, für die diese Nachricht in die Warteschlange eingereiht wurde, bevor sie unzustellbare Nachrichten gesendet wurde. Diese Eigenschaft wird nur in Nachrichten festgelegt, die unzustellbar und anschließend automatisch von der Warteschlange für unzustellbare Nachrichten an eine andere Entität weitergeleitet wurden. Gibt die Entität an, in der die Nachricht unzustellbar war.

Gibt zurück

Typ Beschreibung
str

delivery_count

Anzahl der Zustellversuche dieser Nachricht. Die Anzahl wird erhöht, wenn eine Nachrichtensperre abläuft oder die Nachricht vom Empfänger explizit abgebrochen wird.

Gibt zurück

Typ Beschreibung
int

enqueued_sequence_number

Bei Nachrichten, die automatisch weitergeleitet wurden, entspricht diese Eigenschaft der Sequenznummer, die der Nachricht zum Zeitpunkt ihrer ursprünglichen Übermittlung zugewiesen wurde.

Gibt zurück

Typ Beschreibung
int

enqueued_time_utc

Die UTC-Datetime, zu der die Nachricht akzeptiert und in der Entität gespeichert wurde.

Gibt zurück

Typ Beschreibung

expires_at_utc

Die UTC-Datetime, zu der die Nachricht zum Entfernen markiert ist und aufgrund des Ablaufs nicht mehr für den Abruf von der Entität verfügbar ist. Ablauf wird durch die Message.time_to_live-Eigenschaft gesteuert. Diese Eigenschaft wird aus Message.enqueued_time_utc + Message.time_to_live berechnet.

Gibt zurück

Typ Beschreibung

lock_token

Das Sperrtoken für die aktuelle Nachricht, die als Verweis auf die Sperre dient, die vom Broker im PEEK_LOCK Modus gehalten wird.

Gibt zurück

Typ Beschreibung
UUID,
str

locked_until_utc

Die UTC-Datetime, bis zu der die Nachricht in der Warteschlange/im Abonnement gesperrt wird. Wenn die Sperre abläuft, wird die Anzahl der Zustellungen der Nachricht erhöht, und die Nachricht ist wieder für den Abruf verfügbar.

Gibt zurück

Typ Beschreibung

message

Rufen Sie die zugrunde liegende LegacyMessage ab. Dies ist veraltet und wird in einer späteren Version entfernt.

Gibt zurück

Typ Beschreibung
<xref:LegacyMessage>

message_id

Die ID zum Identifizieren der Nachricht.

Der Nachrichtenbezeichner ist ein von der Anwendung definierter Wert, der die Nachricht und ihre Nutzlast eindeutig identifiziert. Der Bezeichner ist eine Zeichenfolge in freier Form und kann eine GUID oder einen aus dem Anwendungskontext abgeleiteten Bezeichner widerspiegeln. Wenn diese Option aktiviert ist, identifiziert und entfernt das Feature "Duplikaterkennung https://docs.microsoft.com/azure/service-bus-messaging/duplicate-detection" die zweite und weitere Übermittlung von Nachrichten mit derselben Nachrichten-ID.

Gibt zurück

Typ Beschreibung
str,

partition_key

Der Partitionsschlüssel zum Senden einer Nachricht an eine partitionierte Entität.

Das Festlegen dieses Werts ermöglicht das Zuweisen verwandter Nachrichten derselben internen Partition, sodass die Reihenfolge der Übermittlungssequenz ordnungsgemäß aufgezeichnet wird. Die Partition wird von einer Hashfunktion über diesen Wert ausgewählt und kann nicht direkt ausgewählt werden.

Weitere Informationen finden Sie unter Partitionierte Warteschlangen und Themen in https://docs.microsoft.com/azure/service-bus-messaging/service-bus-partitioning.

Gibt zurück

Typ Beschreibung
str,

raw_amqp_message

Nur erweiterte Verwendung. Die interne AMQP-Nachrichtennutzlast, die gesendet oder empfangen wird. :rtype: ~azure.servicebus.amqp.AmqpAnnotatedMessage

reply_to

Die Adresse einer Entität, an die Antworten gesendet werden sollen.

Dieser optionale und von der Anwendung definierte Wert ist eine Standardmethode, einen Antwortpfad zum Empfänger der Nachricht auszudrücken. Wenn ein Absender eine Antwort erwartet, legt er den Wert auf den absoluten oder relativen Pfad der Warteschlange oder des Themas fest, an den bzw. das die Antwort gesendet werden soll.

Weitere Informationen finden Sie unter Nachrichtenrouting und Korrelation in https://docs.microsoft.com/azure/service-bus-messaging/service-bus-messages-payloads?#message-routing-and-correlation.

Gibt zurück

Typ Beschreibung
str,

reply_to_session_id

Der Sitzungsbezeichner, der die reply_to-Adresse erweitert.

Dieser Wert erweitert die reply_to Informationen und gibt an, welche Sitzungs-ID für die Antwort festgelegt werden soll, wenn sie an die Antwortentität gesendet wird.

Weitere Informationen finden Sie unter Nachrichtenrouting und Korrelation in https://docs.microsoft.com/azure/service-bus-messaging/service-bus-messages-payloads?#message-routing-and-correlation.

Gibt zurück

Typ Beschreibung
str,

scheduled_enqueue_time_utc

Die geplante utc-Warteschlange für die Nachricht.

Diese Eigenschaft kann zum Planen des Sendens einer Nachricht über die ServiceBusSender.send-Methode verwendet werden. Wenn das Abbrechen geplanter Nachrichten erforderlich ist, sollten Sie die ServiceBusSender.schedule-Methode verwenden, die Sequenznummern zurückgibt, die für den zukünftigen Abbruch verwendet werden können. scheduled_enqueue_time_utc ist Keine, wenn nicht festgelegt.

Gibt zurück

Typ Beschreibung

sequence_number

Die eindeutige Nummer, die einer Nachricht von Service Bus zugewiesen ist. Die Sequenznummer ist eine eindeutige ganze 64-Bit-Zahl, die einer Nachricht zugeordnet wird, sobald sie vom Broker akzeptiert und gespeichert wird, und fungiert als ihr tatsächlicher Bezeichner. Bei partitionierte Entitäten stellen die obersten 16 Bits den Partitionsbezeichner dar. Sequenzzahlen werden monoton erhöht. Sie werden auf 0 zurückgesetzt, sobald der 48-64-Bit-Bereich ausgeschöpft ist.

Gibt zurück

Typ Beschreibung
int

session_id

Der Sitzungsbezeichner der Nachricht für eine sitzungsbehaftete Entität.

Für sitzungsbehaftete Entitäten gibt dieser anwendungsdefinierte Wert die Sitzungszugehörigkeit der Nachricht an. Nachrichten mit demselben Sitzungsbezeichner unterliegen einer zusammenfassenden Sperre und ermöglichen eine Verarbeitung in exakter Reihenfolge und Demultiplexing. Bei Entitäten ohne Sitzungserreichung wird dieser Wert ignoriert.

Weitere Informationen finden Sie unter Nachrichtensitzungen in https://docs.microsoft.com/azure/service-bus-messaging/message-sessions.

Gibt zurück

Typ Beschreibung
str,

state

Der Standardwert ist "Aktiv". Stellt den Nachrichtenstatus der Nachricht dar. Kann aktiv, verzögert sein. oder Geplant.

Gibt zurück

Typ Beschreibung

subject

Der anwendungsspezifische Betreff, manchmal auch als Bezeichnung bezeichnet.

Diese Eigenschaft ermöglicht der Anwendung, dem Empfänger auf standardisierte Weise den Zweck der Nachricht anzuzeigen, ähnlich einer Betreffzeile für E-Mails.

Gibt zurück

Typ Beschreibung
str

time_to_live

Die Lebensdauer einer Nachricht.

Dieser Wert ist die relative Dauer, nach der die Nachricht ab dem Zeitpunkt abläuft, in dem die Nachricht vom Broker akzeptiert und gespeichert wurde, wie in enqueued_time_utc erfasst. Falls nicht explizit festgelegt, ist der angenommene Wert der DefaultTimeToLive-Wert für die jeweilige Warteschlange oder das jeweilige Thema. Ein Time-to-Live-Wert auf Nachrichtenebene darf nicht länger als die Einstellung für die Gültigkeitsdauer der Entität sein, und er wird automatisch angepasst, wenn dies der Fall ist.

Siehe Ablauf in https://docs.microsoft.com/azure/service-bus-messaging/message-expiration

Gibt zurück

Typ Beschreibung

to

Die zu adressierende .

Diese Eigenschaft ist für die künftige Verwendung in Routingszenarien reserviert und wird derzeit vom Broker selbst ignoriert. Anwendungen können diesen Wert in regelbasierten Verkettungsszenarien für die automatische Weiterleitung verwenden, um das beabsichtigte logische Ziel der Nachricht anzugeben.

Weitere Informationen finden Sie unter https://docs.microsoft.com/azure/service-bus-messaging/service-bus-auto-forwarding.

Gibt zurück

Typ Beschreibung
str,