soundworks | plugin checkin
soundworks plugin to assign a unique index to the clients among the available ones.
When a client disconnects, it's index is recycled into the pool of available indexes and can be re-assigned to a newly connected client. The number of available indexes can be limited and can also be associated to additional data.
Table of Contents
Installation
npm install @soundworks/plugin-checkin --saveUsage
Server
import { Server } from '@soundworks/core/server.js';
import ServerPluginCheckin from '@soundworks/plugin-checkin/server.js';
const server = new Server();
server.pluginManager.register('checkin', ServerPluginCheckin);Client
import { Client } from '@soundworks/core/client.js';
import ClientPluginCheckin from '@soundworks/plugin-checkin/client.js';
const client = new Client();
client.pluginManager.register('checkin', ClientPluginCheckin);
await client.start();
const checkin = await client.pluginManager.get('checkin');
const index = checkin.getIndex();API
Table of Contents
ClientPluginCheckin
Extends ClientPlugin
Client-side representation of the check-in plugin.
The constructor should never be called manually. The plugin will be automatically instantiated when registered in the pluginManager.
getIndex
Return the unique index given to the client
Returns number
getData
Return the associated data given to the client (if any)
Returns any
ServerPluginCheckin
Extends ServerPlugin
Server-side representation of the check-in plugin.
The constructor should never be called manually. The plugin will be automatically instantiated when registered in the pluginManager.
Available options:
capacity{number} [Infinity] - Number of available indexesdata{array} - optional data associated to a given index.
Examples
import ServerPluginCheckin from '@soundworks/plugin-checkin/server.js';
server.pluginManager.register('checkin', ServerPluginCheckin, {
capacity: 3,
data: [{ color: 'green' }, { color: 'yellow' }, { color: 'pink' }],
});Credits
https://soundworks.dev/credits.html
soundworks