ws-heartbeat
v1.3.0
Published
Server-side and client-side heartbeat library for ws and browser-side Websocket.
Downloads
11,275
Readme
ws-heartbeat
Server-side and client-side heartbeat library for ws and browser-side Websocket.
install
npm i ws-heartbeat
client side usage
import { setWsHeartbeat } from "ws-heartbeat/client";
// import * as WebSocket from "ws";
const ws = new WebSocket("ws://localhost:8000");
setWsHeartbeat(ws, '{"kind":"ping"}');
options:
setWsHeartbeat(ws, '{"kind":"ping"}', {
pingTimeout: 60000, // in 60 seconds, if no message accepted from server, close the connection.
pingInterval: 25000, // every 25 seconds, send a ping message to the server.
});
server-side usage
import { setWsHeartbeat } from "ws-heartbeat/server";
import * as WebSocket from "ws";
const wss = new WebSocket.Server();
setWsHeartbeat(wss, (ws, data, binary) => {
if (data === '{"kind":"ping"}') { // send pong if recieved a ping.
ws.send('{"kind":"pong"}');
}
});
options:
setWsHeartbeat(wss, (ws, data, flag) => {
if (data === '{"kind":"ping"}') {
ws.send('{"kind":"pong"}');
}
}, 60000); // in 60 seconds, if no message accepted from client, close the connection.