rw

reconnectable-websocket

Reconnectable websocket

Showing:

Popularity

Downloads/wk

657

GitHub Stars

8

Maintenance

Last Commit

4yrs ago

Contributors

1

Package

Dependencies

1

Size (min+gzip)

3.1KB

License

MIT

Type Definitions

Tree-Shakeable

No?

Categories

Readme

reconnectable-websocket

Reconnectable websocket

js-standard-style NPM Version NPM Downloads

Installation

npm install reconnectable-websocket

Usage

import ReconnectableWebSocket from 'reconnectable-websocket'

let socket = new ReconnectableWebSocket(url, protocols, options)

url

protocols

options

  • Options (see below)

Options

Options can either be passed as the 3rd parameter upon instantiation or set directly on the object after instantiation:

let socket = new ReconnectableWebSocket(url, undefined, {reconnectInterval: 3000});

debug

  • Whether this instance should log debug messages or not. Debug messages are printed to console.debug().
  • Accepts true or false
  • Default value: false

automaticOpen

  • Whether or not the websocket should attempt to connect immediately upon instantiation. The socket can be manually opened or closed at any time using ws.open() and ws.close().
  • Accepts true or false
  • Default value: true

reconnectOnError

  • Whether or not the websocket tries to reconnect on error
  • Accepts true or false
  • Default value: false

reconnectInterval

  • The number of milliseconds to delay before attempting to reconnect.
  • Accepts integer
  • Default: 1000

maxReconnectInterval

  • The maximum number of milliseconds to delay a reconnection attempt.
  • Accepts integer
  • Default: 30000

####reconnectDecay

  • The rate of increase of the reconnect delay. Allows reconnect attempts to back off when problems persist.
  • Accepts integer or float
  • Default: 1.5

timeoutInterval

  • The maximum time in milliseconds to wait for a connection to succeed before closing and retrying.
  • Accepts integer
  • Default: 2000

maxReconnectAttempts

  • The maximum number of reconnection attempts that will be made before giving up. If null, reconnection attempts will be continue to be made forever.
  • Accepts integer or null.
  • Default: null

randomRatio

  • Actual timeout is calculation like randomBetween(timeout / randomRatio, timeout). If null, just uses non-random timeout.
  • Accepts integer.
  • Default: 3

binaryType

  • The binary type is required by some applications.
  • Accepts strings 'blob' or 'arraybuffer'.
  • Default: 'blob'

reconnectOnCleanClose

  • Should the connection attempt to reconnect on a clean close. This is used in the case of a server initiated close event.
  • Accepts true or false
  • Default: false

Methods

ws.open()

  • Open the Reconnecting Websocket

ws.close(code, reason)

ws.send(data)

  • Transmits data to the server over the WebSocket connection.
  • Accepts @param data a text string, ArrayBuffer or Blob

License

MIT

Rate & Review

Great Documentation0
Easy to Use0
Performant0
Highly Customizable0
Bleeding Edge0
Responsive Maintainers0
Poor Documentation0
Hard to Use0
Slow0
Buggy0
Abandoned0
Unwelcoming Community0
100