Package version:

Interface ServiceBusMessage

Describes the message to be sent to Service Bus.

interface ServiceBusMessage {
    applicationProperties?: {
        [key: string]: number | boolean | string | Date | null;
    };
    body: any;
    contentType?: string;
    correlationId?: any;
    messageId?: any;
    partitionKey?: string;
    replyTo?: string;
    replyToSessionId?: string;
    scheduledEnqueueTimeUtc?: Date;
    sessionId?: string;
    subject?: string;
    timeToLive?: number;
    to?: string;
}

Hierarchy (view full)

Properties

applicationProperties?: {
    [key: string]: number | boolean | string | Date | null;
}

The application specific properties which can be used for custom message metadata.

Type declaration

  • [key: string]: number | boolean | string | Date | null
body: any

The message body that needs to be sent or is received. If the application receiving the message is not using this SDK, convert your body payload to a byte array or Buffer for better cross-language compatibility.

contentType?: string

The content type of the message. Optionally describes the payload of the message, with a descriptor following the format of RFC2045, Section 5, for example "application/json".

correlationId?: any

The correlation identifier that allows an application to specify a context for the message for the purposes of correlation, for example reflecting the MessageId of a message that is being replied to. See Message Routing and Correlation.

messageId?: any

The message identifier is an application-defined value that uniquely identifies the message and its payload.

Note: Numbers that are not whole integers are not allowed.

partitionKey?: string

The partition key for sending a message to a partitioned entity. Maximum length is 128 characters. For partitioned entities, setting this value enables assigning related messages to the same internal partition, so that submission sequence order is correctly recorded. The partition is chosen by a hash function over this value and cannot be chosen directly.

  • For session-aware entities, the sessionId property overrides this value.
  • For non partitioned entities, partition key will be ignored
replyTo?: string

The address of an entity to send replies to. This optional and application-defined value is a standard way to express a reply path to the receiver of the message. When a sender expects a reply, it sets the value to the absolute or relative path of the queue or topic it expects the reply to be sent to. See Message Routing and Correlation.

replyToSessionId?: string

The session identifier augmenting the replyTo address. Maximum length is 128 characters. This value augments the ReplyTo information and specifies which SessionId should be set for the reply when sent to the reply entity. See Message Routing and Correlation.

scheduledEnqueueTimeUtc?: Date

The date and time in UTC at which the message will be enqueued. This property returns the time in UTC; when setting the property, the supplied DateTime value must also be in UTC. This value is for delayed message sending. It is utilized to delay messages sending to a specific time in the future. Message enqueuing time does not mean that the message will be sent at the same time. It will get enqueued, but the actual sending time depends on the queue's workload and its state.

sessionId?: string

The session identifier for a session-aware entity. Maximum length is 128 characters. For session-aware entities, this application-defined value specifies the session affiliation of the message. Messages with the same session identifier are subject to summary locking and enable exact in-order processing and demultiplexing. For session-unaware entities, this value is ignored. Message Sessions.

subject?: string

The application specific label. This property enables the application to indicate the purpose of the message to the receiver in a standardized. fashion, similar to an email subject line. The mapped AMQP property is "subject".

timeToLive?: number

The message’s time to live value. This value is the relative duration after which the message expires, starting from the instant the message has been accepted and stored by the broker, as captured in enqueuedTimeUtc. When not set explicitly, the assumed value is the DefaultTimeToLive for the respective queue or topic. A message-level timeToLive value cannot be longer than the entity's DefaultTimeToLive setting and it is silently adjusted if it does. See Expiration.

to?: string

The "to" address. This property is reserved for future use in routing scenarios and presently ignored by the broker itself. Applications can use this value in rule-driven auto-forward chaining scenarios to indicate the intended logical destination of the message.

Generated using TypeDoc