xp-pubsub
v0.2.3
Published
Interface between pubsub provider and node js apps.
Downloads
23
Readme
GCP Pub/Sub Handler
This module provides functions to handle Google Cloud Platform (GCP) Pub/Sub operations. It includes methods to publish messages to a topic and read messages from a subscription.
Installation
This module is designed to be used within a Node.js environment. To install it, you can use npm:
npm install xp-pubsub
Usage
import makePubsubHandler from 'xp-pubsub';
// Initialize Pub/Sub client
const pubsubClient = // Your Pub/Sub client initialization code
// Create a Pub/Sub handler
const pubsubHandler = makePubsubHandler(pubsubClient);
// Get the function handler
const handler = pubsubHandler();
// Publish a message
const data = { /* Your message data */ };
const outputTopicName = 'your-output-topic';
const customAttributes = { /* Optional custom attributes */ };
handler.publishMessage(data, outputTopicName, customAttributes);
// Read a message
const messageObject = { /* Your message object */ };
const messageData = handler.readMessage(messageObject);
console.log('Received message:', messageData);
Functions
publishMessage(data, outputTopicName, customAttributes?) Publishes a message to a specified Pub/Sub topic.
data: The data to be published.
- outputTopicName: The name of the output Pub/Sub topic.
- customAttributes (optional): Custom attributes to be included with the message.
- readMessage(messageObject) Reads a message from a Pub/Sub message object.
messageObject: The message object retrieved from Pub/Sub. Returns the parsed message data.
Example
import makePubsubHandler from 'xp-pubsub';
const pubsubClient = // Your Pub/Sub client initialization code
const pubsubHandler = makePubsubHandler(pubsubClient);
const handler = pubsubHandler();
const data = { /* Your message data */ };
const outputTopicName = 'your-output-topic';
const customAttributes = { /* Optional custom attributes */ };
handler.publishMessage(data, outputTopicName, customAttributes);
const messageObject = { /* Your message object */ };
const messageData = handler.readMessage(messageObject);
console.log('Received message:', messageData);