Skip to content

Processing messages

ts
function GetMessages(): QueueMsg[];

type QueueMsg = {
  ReceivedAt: Date;   // JavaScript Date object
  Queue:      string;
  Message:    string;
}

IMPORTANT

The field names are capitalised: ReceivedAt, Queue and Message. Reading msg.message or msg.queue gives you undefined, with no error.

Inside the loop where you call GetMessages() repeatedly, always check for a halt signal to allow the script to terminate cleanly.

Example

ts
ConsoleFeedback = true;
var cli = new AmqpClient091();
cli.URL = 'amqp://localhost:5672';
cli.User = 'guest';
cli.Pass = 'guest';
if (cli.Connect()) {
  cli.MonitorQueue('myqueue');
  while (true) {
    Sleep(1000);
    if (HaltSignalReceived()) {
      break;
    }
    var msgs = cli.GetMessages();
    for (var i = 0; i < msgs.length; i++) {
      Log(msgs[i].Queue + ": " + msgs[i].Message);
    }
  }
  cli.Close();
}
cli = null;