Class Message (3.0.3)

Message objects provide a simple interface for users to get message data and acknowledge the message.

Package

@google-cloud/pubsub

Example


subscription.on('message', message => {
  // {
  //   ackId: 'RUFeQBJMJAxESVMrQwsqWBFOBCEhPjA',
  //   attributes: {key: 'value'},
  //   data: Buffer.from('Hello, world!'),
  //   id: '1551297743043',
  //   orderingKey: 'ordering-key',
  //   publishTime: new PreciseDate('2019-02-27T20:02:19.029534186Z'),
  //   received: 1551297743043,
  //   length: 13
  // }
});

Constructors

(constructor)(sub, { ackId, message, deliveryAttempt })

constructor(sub: Subscriber, { ackId, message, deliveryAttempt }: google.pubsub.v1.IReceivedMessage);

Constructs a new instance of the Message class

Parameters
NameDescription
sub Subscriber

The parent subscriber.

{ ackId, message, deliveryAttempt } IReceivedMessage

Properties

ackId

ackId: string;

attributes

attributes: {
        [key: string]: string;
    };

data

data: Buffer;

deliveryAttempt

deliveryAttempt: number;

id

id: string;

length

get length(): number;

The length of the message data.

{number}

orderingKey

orderingKey?: string;

publishTime

publishTime: PreciseDate;

received

received: number;

Methods

ack()

ack(): void;

Acknowledges the message.

Returns
TypeDescription
void
Example

subscription.on('message', message => {
  message.ack();
});

modAck(deadline)

modAck(deadline: number): void;

Modifies the ack deadline.

Parameter
NameDescription
deadline number

The number of seconds to extend the deadline.

Returns
TypeDescription
void

nack()

nack(): void;

Removes the message from our inventory and schedules it to be redelivered.

Returns
TypeDescription
void
Example

subscription.on('message', message => {
  message.nack();
});