Registry / messaging / message-subscription-websocket

message-subscription-websocket

JSON →
library1.0.2jsnpmunverified

A WebSocket client library for subscribing to Tuya IoT platform messages. Version 1.0.2 provides real-time message streaming with built-in reconnection and acknowledgement support. Released as a Node.js SDK, it requires Node.js >=12.0. Differentiates from generic WebSocket clients by offering Tuya-specific URL presets, environment configuration (PROD/DEV), and auto-retry logic. Limited documentation and community adoption may impact troubleshooting.

npm install message-subscription-websocket
INSTALL
IMPORT
SIG · MESSAGE-SUBSCRIPTI
M
message-subscription-websocket
messagingjavascriptv1.0.2
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.

TuyaWebsocket
import TuyaWebsocket from 'message-subscription-websocket'
const TuyaWebsocket = require('message-subscription-websocket')
Package is ESM-only; default export only.
TuyaWebsocket.URL
TuyaWebsocket.URL.CN
TuyaWebsocket.URL.CHINA
URL enum keys are CN, US, EU, IN, WE, EA; no CHINA.
TuyaWebsocket.env
TuyaWebsocket.env.PROD
TuyaWebsocket.env.PRODUCTION
env enum has PROD and DEV only.

Initialize Tuya WebSocket client with credentials, connect, handle messages with acknowledgement, and start the connection.

import TuyaWebsocket from 'message-subscription-websocket'; const client = new TuyaWebsocket({ accessId: process.env.TUYA_ACCESS_ID ?? '', accessKey: process.env.TUYA_ACCESS_KEY ?? '', url: TuyaWebsocket.URL.CN, env: TuyaWebsocket.env.PROD, maxRetryTimes: 100 }); client.open(() => console.log('connected')); client.message((ws, message) => { console.log('Received:', message); client.ackMessage(message.messageId); }); client.reconnect(() => console.log('reconnecting')); client.error((ws, error) => console.error('Error:', error)); client.start();
Debug
Known issues
gotchaThe 'ackMessage' method must be called for each received message to avoid message accumulation.
fix
Always call client.ackMessage(message.messageId) inside the message callback.
affects: >=1.0.0
breakingEnvironment variables accessId and accessKey are required; missing credentials cause silent failures.
fix
Ensure both accessId and accessKey are provided in the constructor options.
affects: >=1.0.0
Errors
Common errors & fixes
TypeError: TuyaWebsocket is not a constructor
Using require() on an ESM-only package.
fix
Use import TuyaWebsocket from 'message-subscription-websocket' or use dynamic import().
Error: Invalid URL
Providing an invalid URL enum value like 'CHINA' instead of 'CN'.
fix
Use TuyaWebsocket.URL.CN (or US, EU, IN, WE, EA).
Upgrade
Version history
1.0.2latest on npm
Audit
Dependencies
wsrequiredWebSocket implementation dependency
Agent activity
30 hits · last 30 days
node
22
OpenAI (training)
2
Amazon
1
Resources
message-subscription-websocket — npm install message-subscription-websocket · libregistry