Compartilhar via


ServiceBusSender interface

Um Remetente pode ser usado para enviar mensagens, agendar mensagens a serem enviadas posteriormente e cancelar essas mensagens agendadas. Use a createSender função no ServiceBusClient para instanciar um Remetente. A classe Sender é uma abstração sobre o link do remetente AMQP subjacente.

Propriedades

entityPath

Caminho da entidade para a qual o remetente foi criado.

identifier

Um nome usado para identificar o remetente. Isso pode ser usado para correlacionar logs e exceções. Se não for especificado ou vazio, um aleatório exclusivo será gerado.

isClosed

Retornará true se o remetente ou o cliente que o criou tiver sido fechado.

Métodos

cancelScheduledMessages(Long | Long[], OperationOptionsBase)

Cancela várias mensagens agendadas para aparecer em uma Fila/Assinatura do ServiceBus.

close()

Fecha o link do remetente AMQP subjacente. Depois de fechado, o remetente não pode ser usado para operações adicionais. Use a createSender função em QueueClient ou TopicClient para criar uma instância de um novo Remetente

createMessageBatch(CreateMessageBatchOptions)

Cria uma instância do ServiceBusMessageBatch à qual é possível adicionar mensagens até que o tamanho máximo com suporte seja atingido. O lote pode ser passado para o <xref:send> método para enviar as mensagens para Barramento de Serviço do Azure.

scheduleMessages(ServiceBusMessage | AmqpAnnotatedMessage | ServiceBusMessage[] | AmqpAnnotatedMessage[], Date, OperationOptionsBase)

Agenda as mensagens fornecidas para aparecerem na Fila/Assinatura do Barramento de Serviço posteriormente.

sendMessages(ServiceBusMessage | ServiceBusMessageBatch | AmqpAnnotatedMessage | ServiceBusMessage[] | AmqpAnnotatedMessage[], OperationOptionsBase)

Envia as mensagens fornecidas depois de criar um link do Remetente AMQP se ele ainda não existir.

  • Para enviar mensagens para uma session Fila/Tópico habilitada e/ou partition habilitada, defina as sessionId propriedades e/ou partitionKey respectivamente nas mensagens.
  • Todas as mensagens passadas para a mesma chamada sendMessages() devem ter o mesmo sessionId (se estiver usando sessões) e o mesmo partitionKey (se estiver usando partições).

Observação:

Se você quiser enviar mensagens de tamanho maior que 1 MB, envie mensagens individuais em vez de enviar uma mensagem em lote ou uma matriz de mensagens como abaixo.

await sender.sendMessages(message);

Isso ocorre porque as mensagens em lote ainda não são capazes de enviar as mensagens maiores. Caso contrário, você receberá o force detached erro. Leia service-bus-premium-messaging#large-messages-support. Mais informações em #23014.

Detalhes da propriedade

entityPath

Caminho da entidade para a qual o remetente foi criado.

entityPath: string

Valor da propriedade

string

identifier

Um nome usado para identificar o remetente. Isso pode ser usado para correlacionar logs e exceções. Se não for especificado ou vazio, um aleatório exclusivo será gerado.

identifier: string

Valor da propriedade

string

isClosed

Retornará true se o remetente ou o cliente que o criou tiver sido fechado.

isClosed: boolean

Valor da propriedade

boolean

Detalhes do método

cancelScheduledMessages(Long | Long[], OperationOptionsBase)

Cancela várias mensagens agendadas para aparecer em uma Fila/Assinatura do ServiceBus.

function cancelScheduledMessages(sequenceNumbers: Long | Long[], options?: OperationOptionsBase): Promise<void>

Parâmetros

sequenceNumbers

Long | Long[]

Número de sequência ou uma matriz de números de sequência das mensagens a serem canceladas.

options
OperationOptionsBase

Recipiente de opções para passar um sinal de anulação ou opções de rastreamento.

Retornos

Promise<void>

close()

Fecha o link do remetente AMQP subjacente. Depois de fechado, o remetente não pode ser usado para operações adicionais. Use a createSender função em QueueClient ou TopicClient para criar uma instância de um novo Remetente

function close(): Promise<void>

Retornos

Promise<void>

createMessageBatch(CreateMessageBatchOptions)

Cria uma instância do ServiceBusMessageBatch à qual é possível adicionar mensagens até que o tamanho máximo com suporte seja atingido. O lote pode ser passado para o <xref:send> método para enviar as mensagens para Barramento de Serviço do Azure.

function createMessageBatch(options?: CreateMessageBatchOptions): Promise<ServiceBusMessageBatch>

Parâmetros

options
CreateMessageBatchOptions

Configura o comportamento do lote.

  • maxSizeInBytes: o limite superior para o tamanho do lote. A tryAdd função retornará false depois que esse limite for atingido.

Retornos

scheduleMessages(ServiceBusMessage | AmqpAnnotatedMessage | ServiceBusMessage[] | AmqpAnnotatedMessage[], Date, OperationOptionsBase)

Agenda as mensagens fornecidas para aparecerem na Fila/Assinatura do Barramento de Serviço posteriormente.

function scheduleMessages(messages: ServiceBusMessage | AmqpAnnotatedMessage | ServiceBusMessage[] | AmqpAnnotatedMessage[], scheduledEnqueueTimeUtc: Date, options?: OperationOptionsBase): Promise<Long[]>

Parâmetros

messages

ServiceBusMessage | AmqpAnnotatedMessage | ServiceBusMessage[] | AmqpAnnotatedMessage[]

Mensagem ou uma matriz de mensagens que precisam ser agendadas.

scheduledEnqueueTimeUtc

Date

A hora UTC em que as mensagens devem ser enfileiradas.

options
OperationOptionsBase

Recipiente de opções para passar um sinal de anulação ou opções de rastreamento.

Retornos

Promise<Long[]>

Os números de sequência de mensagens que foram agendadas. Você precisará do número de sequência se pretende cancelar o agendamento das mensagens. Salve o Long tipo como está em seu aplicativo sem converter em número. Como o JavaScript dá suporte apenas a números de 53 bits, converter o Long em número causará perda de precisão.

sendMessages(ServiceBusMessage | ServiceBusMessageBatch | AmqpAnnotatedMessage | ServiceBusMessage[] | AmqpAnnotatedMessage[], OperationOptionsBase)

Envia as mensagens fornecidas depois de criar um link do Remetente AMQP se ele ainda não existir.

  • Para enviar mensagens para uma session Fila/Tópico habilitada e/ou partition habilitada, defina as sessionId propriedades e/ou partitionKey respectivamente nas mensagens.
  • Todas as mensagens passadas para a mesma chamada sendMessages() devem ter o mesmo sessionId (se estiver usando sessões) e o mesmo partitionKey (se estiver usando partições).

Observação:

Se você quiser enviar mensagens de tamanho maior que 1 MB, envie mensagens individuais em vez de enviar uma mensagem em lote ou uma matriz de mensagens como abaixo.

await sender.sendMessages(message);

Isso ocorre porque as mensagens em lote ainda não são capazes de enviar as mensagens maiores. Caso contrário, você receberá o force detached erro. Leia service-bus-premium-messaging#large-messages-support. Mais informações em #23014.

function sendMessages(messages: ServiceBusMessage | ServiceBusMessageBatch | AmqpAnnotatedMessage | ServiceBusMessage[] | AmqpAnnotatedMessage[], options?: OperationOptionsBase): Promise<void>

Parâmetros

messages

ServiceBusMessage | ServiceBusMessageBatch | AmqpAnnotatedMessage | ServiceBusMessage[] | AmqpAnnotatedMessage[]

Uma única mensagem ou uma matriz de mensagens ou um lote de mensagens criadas por meio do método createBatch() a ser enviado.

options
OperationOptionsBase

Recipiente de opções para passar um sinal de anulação ou opções de rastreamento.

Retornos

Promise<void>