soundworks | plugin checkin
soundworks
plugin to assign a unique index to the clients among the available ones. When a client disconnects, it's ticket is recycled into the pool of available ticket and can be re-assigned to a newly connected client. The number of available indexes can be limited and can be associated to additional data.
Table of Contents
Installation
npm install @soundworks/plugin-checkin --save
Usage
Server
// index.js
import { Server } from '@soundworks/core/server.js';
import pluginCheckin from '@soundworks/plugin-checkin/server.js';
const server = new Server();
server.pluginManager.register('checkin', pluginCheckin);
Client
// index.js
import { Client } from '@soundworks/core/client.js';
import pluginCheckin from '@soundworks/plugin-checkin/client.js';
const client = new Client();
client.pluginManager.register('checkin', pluginCheckin);
await client.start();
const checkin = await client.pluginManager.get('checkin');
const index = checkin.getIndex();
API
Classes
- PluginCheckinClient
-
Client-side representation of the soundworks' checkin plugin.
- PluginCheckinServer
-
Server-side representation of the soundworks' checkin plugin.
PluginCheckinClient
Client-side representation of the soundworks' checkin plugin.
Kind: global class
-
PluginCheckinClient
-
.getIndex() ⇒
number
-
.getData() ⇒
mixed
-
.getIndex() ⇒
number
pluginCheckinClient.getIndex() ⇒ Return the unique index given to the client
Kind: instance method of PluginCheckinClient
mixed
pluginCheckinClient.getData() ⇒ Return the associated data given to the client (if any)
Kind: instance method of PluginCheckinClient
PluginCheckinServer
Server-side representation of the soundworks' checkin plugin.
new PluginCheckinServer()
The constructor should never be called manually. The plugin will be
instantiated by soundworks when registered in the pluginManager
Available options:
-
capacity
{number} [Infinity] - Number of available indexes -
data
{array} - optionnal data associated to a given index.
Example
server.pluginManager.register('checkin', pluginCheckin, {
capacity: 3,
data: [{ color: 'green' }, { color: 'yellow' }, { color: 'pink' }],
});
Credits
https://soundworks.dev/credits.html