aws-websocket-client

0.4.1 • Public • Published

aws-websocket-client

Features

- Add Socket.io like wrapper to AWS WebSocket client
- Very lightweight plugin with no dependencies :-)
- Easy to use

Download

npm install aws-websocket-client

Requirements

- NodeJS serverless needs to have aws-websocket-server installed.
- npm i aws-websocket-server

Github:- https://github.com/racop/aws-websocket-server

How to Use

import io from 'aws-websocket-client'
const URL = 'wss://{apiId}.execute-api.{region}.amazonaws.com/{stage}' // AWS websocket endpoint
const socket = new io(URL,{
    debug: true,
    messageChannel: 'sendMessage', // Websocket server message handler
    restartMax: 3, // Optional, max retries to reconnect to ws server, default 0, means continous retry at given reconnectTime
    reconnectTime: 3 * 1000, // Optional, Tries to reconnect every 3 seconds on server disconnect
});

Connect to Websocket

socket.connect();

Subscribe channel

// Channel name can be single string or array of channels eg: ["room 1", "room 2"]
let channelName = 'room 1';
socket.subscribe(channelName);

Unsubscribe channel

// Channel name can be single string or array of channels eg: ["room 1", "room 2"]
let channelName = 'room 1';
socket.unsubscribe(channelName);

Send Message to an event

// message should be object
// Emit on hello event
socket.emit("hello", message);

Listen to an event

// Listen to hello event 
socket.on('hello',(data)=>{
    // Data is object
    // Do someting with data here
    console.log(data);
})

Disconnect socket

socket.disconnect();

Readme

Keywords

Package Sidebar

Install

npm i aws-websocket-client

Weekly Downloads

2

Version

0.4.1

License

ISC

Unpacked Size

7.67 kB

Total Files

4

Last publish

Collaborators

  • racop