Compartir a través de


ServiceBusSender interface

Un remitente se puede usar para enviar mensajes, programar que se envíen mensajes más adelante y cancelar dichos mensajes programados. Use la función createSender en ServiceBusClient para crear instancias de un remitente. La clase Sender es una abstracción sobre el vínculo de remitente de AMQP subyacente.

Propiedades

entityPath

Ruta de acceso de la entidad para la que se ha creado el remitente.

identifier

Nombre que se usa para identificar al remitente. Esto se puede usar para correlacionar registros y excepciones. Si no se especifica o está vacío, se generará uno único aleatorio.

isClosed

Devuelve true si el remitente o el cliente que lo creó se ha cerrado.

Métodos

cancelScheduledMessages(Long | Long[], OperationOptionsBase)

Cancela varios mensajes programados para que aparezcan en una cola o suscripción de ServiceBus.

close()

Cierra el vínculo del remitente de AMQP subyacente. Una vez cerrado, el remitente no se puede usar para otras operaciones. Usar la función createSender en QueueClient o TopicClient para crear una instancia de un nuevo remitente

createMessageBatch(CreateMessageBatchOptions)

Crea una instancia de ServiceBusMessageBatch a la que se pueden agregar mensajes hasta que se alcanza el tamaño máximo admitido. El lote se puede pasar al método <xref:send> para enviar los mensajes a Azure Service Bus.

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

Programa mensajes dados para que aparezcan en la cola o suscripción de Service Bus en un momento posterior.

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

Envía los mensajes especificados después de crear un vínculo remitente de AMQP si aún no existe.

  • Para enviar mensajes a un session o partition habilitado Queue/Topic, establezca las propiedades sessionId o partitionKey respectivamente en los mensajes.
  • Todos los mensajes pasados a la misma llamada sendMessages() deben tener el mismo sessionId (si se usan sesiones) y el mismo partitionKey (si se usan particiones).

Nota:

Si desea enviar mensajes de tamaño superior a 1 MB, envíe mensajes individuales en lugar de enviar un mensaje por lotes o una matriz de mensajes como a continuación.

await sender.sendMessages(message);

Esto se debe a que los mensajes por lotes aún no son capaces de enviar mensajes más grandes. Se producirá el error force detached en este caso. Lea service-bus-premium-messaging#large-messages-support. Más información en #23014.

Detalles de las propiedades

entityPath

Ruta de acceso de la entidad para la que se ha creado el remitente.

entityPath: string

Valor de propiedad

string

identifier

Nombre que se usa para identificar al remitente. Esto se puede usar para correlacionar registros y excepciones. Si no se especifica o está vacío, se generará uno único aleatorio.

identifier: string

Valor de propiedad

string

isClosed

Devuelve true si el remitente o el cliente que lo creó se ha cerrado.

isClosed: boolean

Valor de propiedad

boolean

Detalles del método

cancelScheduledMessages(Long | Long[], OperationOptionsBase)

Cancela varios mensajes programados para que aparezcan en una cola o suscripción de ServiceBus.

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

Parámetros

sequenceNumbers

Long | Long[]

Número de secuencia o matriz de números de secuencia de los mensajes que se van a cancelar.

options
OperationOptionsBase

Contenedor de opciones para pasar una señal de anulación o opciones de seguimiento.

Devoluciones

Promise<void>

close()

Cierra el vínculo del remitente de AMQP subyacente. Una vez cerrado, el remitente no se puede usar para otras operaciones. Usar la función createSender en QueueClient o TopicClient para crear una instancia de un nuevo remitente

function close(): Promise<void>

Devoluciones

Promise<void>

createMessageBatch(CreateMessageBatchOptions)

Crea una instancia de ServiceBusMessageBatch a la que se pueden agregar mensajes hasta que se alcanza el tamaño máximo admitido. El lote se puede pasar al método <xref:send> para enviar los mensajes a Azure Service Bus.

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

Parámetros

options
CreateMessageBatchOptions

Configura el comportamiento del lote.

  • maxSizeInBytes: límite superior del tamaño del lote. La función tryAdd devolverá false después de alcanzar este límite.

Devoluciones

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

Programa mensajes dados para que aparezcan en la cola o suscripción de Service Bus en un momento posterior.

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

Parámetros

messages

ServiceBusMessage | AmqpAnnotatedMessage | ServiceBusMessage[] | AmqpAnnotatedMessage[]

Mensaje o matriz de mensajes que deben programarse.

scheduledEnqueueTimeUtc

Date

Hora UTC a la que se deben poner en cola los mensajes.

options
OperationOptionsBase

Contenedor de opciones para pasar una señal de anulación o opciones de seguimiento.

Devoluciones

Promise<Long[]>

Número de secuencias de mensajes programados. Necesitará el número de secuencia si piensa cancelar la programación de los mensajes. Guarde el tipo de Long as-is en la aplicación sin convertir en número. Dado que JavaScript solo admite números de 53 bits, la conversión del Long al número provocará la pérdida de precisión.

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

Envía los mensajes especificados después de crear un vínculo remitente de AMQP si aún no existe.

  • Para enviar mensajes a un session o partition habilitado Queue/Topic, establezca las propiedades sessionId o partitionKey respectivamente en los mensajes.
  • Todos los mensajes pasados a la misma llamada sendMessages() deben tener el mismo sessionId (si se usan sesiones) y el mismo partitionKey (si se usan particiones).

Nota:

Si desea enviar mensajes de tamaño superior a 1 MB, envíe mensajes individuales en lugar de enviar un mensaje por lotes o una matriz de mensajes como a continuación.

await sender.sendMessages(message);

Esto se debe a que los mensajes por lotes aún no son capaces de enviar mensajes más grandes. Se producirá el error force detached en este caso. Lea service-bus-premium-messaging#large-messages-support. Más información en #23014.

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

Parámetros

messages

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

Un único mensaje o una matriz de mensajes o un lote de mensajes creados a través del método createBatch() que se va a enviar.

options
OperationOptionsBase

Contenedor de opciones para pasar una señal de anulación o opciones de seguimiento.

Devoluciones

Promise<void>