Registry / messaging / wm-redis-message

wm-redis-message

JSON →
library1.1.4jsnpmunverified

wm-redis-message v1.1.4 is a lightweight, Redis-backed message queue implementation for Node.js, providing features like topic-based message fetching, automatic retry with configurable max retries (default 5), lock-based concurrency control, and custom fetch/after-fetch/failure handlers. It uses a poll-and-ack pattern with configurable batch sizes (default 200) and acknowledgment timeout (default 60s). Released on npm, it targets simple queue needs without external dependencies. Differentiators: minimal API, pre-built retry and lock mechanisms, and flexible callback structure for message lifecycle. Current stable version 1.1.4 has infrequent releases; no breaking changes reported.

npm install wm-redis-message
INSTALL
IMPORT
SIG · WM-REDIS-MESSAGE
W
wm-redis-message
messagingjavascriptv1.1.4
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

RedisMessage
const { RedisMessage } = require('wm-redis-message');
const RedisMessage = require('wm-redis-message');
Requires destructuring from CommonJS; named export, not default.
RedisMessage
import { RedisMessage } from 'wm-redis-message';
import RedisMessage from 'wm-redis-message';
ESM import also requires named import; no default export.

Initializes RedisMessage with options and fetches up to 10 messages from the queue.

const { RedisMessage } = require('wm-redis-message'); const options = { topic: 'my-topic', messageType: 'my-type', redis: { host: 'localhost', port: 6379 }, fetchMessage: null, // uses default afterFetchMessage: null, dealfailedMessage: null, maxAckTimeout: 60000, eachMessageCount: 200, minRedisMessageCount: 200, maxRetryTimes: 5, lockExpireTime: 60 }; (async () => { const cache = new RedisMessage(options); const messages = await cache.getMessages(10); console.log('Fetched messages:', messages); })();
Debug
Known issues
gotchaUsing incorrect import (default import or wrong path) leads to 'RedisMessage is not a constructor' TypeError.
fix
Use destructured import: const { RedisMessage } = require('wm-redis-message');
affects: >=1.0.0
gotchaRedis connection object must be provided; if missing, constructor throws.
fix
Include a `redis` property in options object with host and port (or any ioredis-compatible config).
affects: >=1.0.0
gotchaThe `getMessages` method returns an array, but if no messages available, returns empty array (not null).
fix
Always treat return value as array; check length before accessing elements.
affects: >=1.0.0
deprecatedNo TypeScript types provided; using with TypeScript requires manual type definitions.
fix
Create custom .d.ts or use @types/wm-redis-message if available.
affects: >=1.0.0
Errors
Common errors & fixes
TypeError: RedisMessage is not a constructor
Using default import or wrong destructuring.
fix
const { RedisMessage } = require('wm-redis-message');
Error: fetchMessage must be a function
Override fetchMessage with non-function value.
fix
Provide a function that returns a Promise resolving to an array, or omit to use default.
TypeError: Cannot read property 'host' of undefined
Redis config missing or invalid.
fix
Pass a valid redis object (e.g., { host: 'localhost', port: 6379 }).
Upgrade
Version history
1.1.4latest on npm
Audit
Dependencies

No dependency data recorded yet.

Agent activity
19 hits · last 30 days
node
18
OpenAI (training)
1
Resources
wm-redis-message — npm install wm-redis-message · libregistry