harperdb-websocket-client
v1.0.5
Published
A websocket client for HarperDB
Downloads
6
Readme
HarperDB Websocket Client
A HarperDB WebSocket Client SDK powered by SocketCluster
Getting started
npm i -s harperdb-websocket-client
or
yarn add harperdb-websocket-client
Documentation
const HarperDBWebSocketClient = require('harperdb-websocket-client')
defaultSocketClusterOptions
{
rejectUnauthorized: false,
autoConnect: true,
secure: true,
connectTimeout: 100000,
ackTimeout: 10000,
autoReconnectOptions: {
initialDelay: 1000,
maxDelay: 2000
}
}
Example
const client = new HarperDBWebSocketClient({
debug: true,
implicitInit: true,
handlers: {
onError: err => {
console.error(err)
}
}
})
init()
Initializes the socket cluster instance with the options passed in via the constructor method.
Do not call if options.implicitInit
was enabled.
const client = new HarperDBWebSocketClient() // options.implicitInit is not enabled
client.init()
subscribe(channel, handler)
Subscribes to a socket controller channel with the given handler.
- channel - string - channel to be subscribed to. Should be in the format
"schema:table"
- handler - function - function to be executed when channel recieves an update
Example
client.subscribe('dev:dog', data => {
// do something with data
})
insert(channel, records)
Creates and publishes an insert transaction on the given channel with the given records.
client.insert(`dev:dog`, [
{
id: '1',
name: 'Harper',
breed: 'Mutt'
},
{
id: '2',
name: 'Penny',
breed: 'Mutt'
}
])
update(channel, records)
Creates and publishes an udpate transaction on the given channel with the given records.
client.update(`dev:dog`, [
{
id: '1',
breed: 'Lab'
}
])
delete(channel, records)
Creates and publishes a delete transaction on the given channel with the given records.
client.delete(`dev:dog`, [
{ id: '2' }
])
click here to read the jsDoc markdown
License
MIT, see license file