Partilhar via


ServiceBusMessage Classe

Uma Mensagem do Service Bus.

Herança
builtins.object
ServiceBusMessage

Construtor

ServiceBusMessage(body: str | bytes | None, *, application_properties: Dict[str | bytes, int | float | bytes | bool | str | UUID] | None = None, session_id: str | None = None, message_id: str | None = None, scheduled_enqueue_time_utc: datetime | None = None, time_to_live: timedelta | None = None, content_type: str | None = None, correlation_id: str | None = None, subject: str | None = None, partition_key: str | None = None, to: str | None = None, reply_to: str | None = None, reply_to_session_id: str | None = None, **kwargs: Any)

Parâmetros

body
Optional[Union[str, bytes]]
Necessário

Os dados a enviar numa única mensagem.

application_properties
Dict[str, Union[int ou float ou bool ou bytes ou str ou UUID ou datetime ou None]]

As propriedades definidas pelo utilizador na mensagem.

session_id
Optional[str]

O identificador de sessão da mensagem para uma entidade com sessão.

message_id
Optional[str]

O ID para identificar a mensagem.

scheduled_enqueue_time_utc
Optional[datetime]

A hora de fila agendada utc para a mensagem.

time_to_live
Optional[timedelta]

A duração de vida de uma mensagem.

content_type
Optional[str]

O descritor do tipo de conteúdo.

correlation_id
Optional[str]

O identificador de correlação.

subject
Optional[str]

O assunto específico da aplicação, por vezes referido como etiqueta.

partition_key
Optional[str]

A chave de partição para enviar uma mensagem para uma entidade particionada.

to
Optional[str]

O endereço a utilizar para cenários de encadeamento auto_forward.

reply_to
Optional[str]

O endereço de uma entidade para a qual enviar respostas.

reply_to_session_id
Optional[str]

O identificador de sessão aumenta o endereço reply_to .

Exemplos

Enviar uma mensagem com propriedades adicionais


   message_send = ServiceBusMessage(
       "Hello World!!",
       session_id="MySessionID",
       application_properties={'data': 'custom_data'},
       time_to_live=datetime.timedelta(seconds=30),
       label='MyLabel'
   )

Atributos

application_properties

As propriedades definidas pelo utilizador na mensagem.

Tipo de retorno

bytes, <xref:PrimitiveTypes>],

body

O corpo da Mensagem. O formato pode variar consoante o tipo de corpo: para DATA, o corpo pode ser bytes ou Iterable[bytes]. Para SEQUENCE, o corpo pode ser List ou Iterable[List]. Para VALUE, o corpo pode ser qualquer tipo.

Tipo de retorno

Any

body_type

O tipo de corpo da mensagem AMQP subjacente.

Tipo de retorno

content_type

O descritor do tipo de conteúdo.

Opcionalmente, descreve o payload da mensagem, com um descritor a seguir ao formato de RFC2045, Secção 5, por exemplo "application/json".

Tipo de retorno

str,

correlation_id

O identificador de correlação.

Permite que uma aplicação especifique um contexto para a mensagem para efeitos de correlação, por exemplo, refletindo o MessageId de uma mensagem a que está a ser respondida.

Veja Encaminhamento de Mensagens e Correlação em https://docs.microsoft.com/azure/service-bus-messaging/service-bus-messages-payloads?#message-routing-and-correlation.

Tipo de retorno

str,

message

Obtenha o uamqp subjacente. Mensagem ou LegacyMessage. Esta situação foi preterida e será removida numa versão posterior.

Tipo de retorno

<xref:uamqp.Message>,
<xref:LegacyMessage>

message_id

O ID para identificar a mensagem.

O identificador de mensagens é um valor definido pela aplicação que identifica exclusivamente a mensagem e o respetivo payload. O identificador é uma cadeia de forma livre e pode refletir um GUID ou um identificador derivado do contexto da aplicação. Se estiver ativada, a funcionalidade de deteção duplicada (ver https://docs.microsoft.com/azure/service-bus-messaging/duplicate-detection) identifica e remove a segunda e mais submissões de mensagens com o mesmo ID de mensagem.

Tipo de retorno

str,

partition_key

A chave de partição para enviar uma mensagem para uma entidade particionada.

Definir este valor permite atribuir mensagens relacionadas à mesma partição interna, para que a sequência de submissão seja gravada corretamente. A partição é escolhida por uma função hash sobre este valor e não pode ser escolhida diretamente.

Veja Filas e tópicos particionados em https://docs.microsoft.com/azure/service-bus-messaging/service-bus-partitioning.

Tipo de retorno

str,

raw_amqp_message

Apenas utilização avançada. O payload de mensagens AMQP interno que é enviado ou recebido. :rtype: ~azure.servicebus.amqp.AmqpAnnotatedMessage

reply_to

O endereço de uma entidade para a qual enviar respostas.

Este valor opcional e definido pela aplicação é uma forma padrão de expressar um caminho de resposta para o recetor da mensagem. Quando um remetente espera uma resposta, define o valor para o caminho absoluto ou relativo da fila ou tópico para o qual espera que a resposta seja enviada.

Veja Encaminhamento de Mensagens e Correlação em https://docs.microsoft.com/azure/service-bus-messaging/service-bus-messages-payloads?#message-routing-and-correlation.

Tipo de retorno

str,

reply_to_session_id

O identificador de sessão aumenta o endereço reply_to .

Este valor aumenta as informações do reply_to e especifica qual o ID da sessão que deve ser definido para a resposta quando enviado para a entidade de resposta.

Veja Encaminhamento de Mensagens e Correlação em https://docs.microsoft.com/azure/service-bus-messaging/service-bus-messages-payloads?#message-routing-and-correlation.

Tipo de retorno

str,

scheduled_enqueue_time_utc

A hora de fila agendada utc para a mensagem.

Esta propriedade pode ser utilizada para agendar ao enviar uma mensagem através do método ServiceBusSender.send . Se for necessário cancelar mensagens agendadas, deve utilizar o método ServiceBusSender.schedule , que devolve números de sequência que podem ser utilizados para cancelamento futuro. scheduled_enqueue_time_utc é Nenhuma se não estiver definida.

Tipo de retorno

session_id

O identificador de sessão da mensagem para uma entidade com sessão.

Para entidades com sessão, este valor definido pela aplicação especifica a afiliação de sessão da mensagem. As mensagens com o mesmo identificador de sessão estão sujeitas ao bloqueio de resumo e ativam o processamento e a desmultiplexing exatos. Para entidades sem sessão, este valor é ignorado.

Veja Sessões de Mensagens em https://docs.microsoft.com/azure/service-bus-messaging/message-sessions.

Tipo de retorno

str,

subject

O assunto específico da aplicação, por vezes referido como uma etiqueta.

Esta propriedade permite que a aplicação indique o objetivo da mensagem ao recetor de forma padronizada, semelhante a uma linha de assunto de e-mail.

Tipo de retorno

str

time_to_live

A duração de vida de uma mensagem.

Este valor é a duração relativa após a qual a mensagem expira, começando a partir do instante em que a mensagem foi aceite e armazenada pelo mediador, conforme capturado em enqueued_time_utc. Quando não estiver definido explicitamente, o valor assumido é DefaultTimeToLive para a respetiva fila ou tópico. Um valor time-to-live ao nível da mensagem não pode ser maior do que a definição de tempo de vida da entidade e é ajustado silenciosamente se o fizer.

Ver Expiração em https://docs.microsoft.com/azure/service-bus-messaging/message-expiration

Tipo de retorno

to

O endereço para .

Esta propriedade está reservada para utilização futura em cenários de encaminhamento e atualmente ignorada pelo próprio mediador. As aplicações podem utilizar este valor em cenários de encadeamento automático orientados por regras para indicar o destino lógico pretendido da mensagem.

Veja https://docs.microsoft.com/azure/service-bus-messaging/service-bus-auto-forwarding para obter mais detalhes.

Tipo de retorno

str,