← Terug

JavaScript SDK

Realtime WebSocket client voor de Skubber Push Server.

Installatie

<script src="https://cdn.jsdelivr.net/npm/@microsoft/signalr@latest/dist/browser/signalr.min.js"></script>
<script src="https://sps.skubber.com/skubber.js"></script>
⬇ Download skubber.js

Quick Start

const client = new Skubber({
    serverUrl: 'https://sps.skubber.com',
    apiKey:    'mps_JOUW_API_KEY',
    apiSecret: 'JOUW_API_SECRET'
});

client.on('push', msg => {
    console.log(`${msg.title}: ${msg.message}`);
});

await client.connect('user123');

const ch = client.subscribe('mijnapp/general');
ch.bind('message', msg => console.log('Channel bericht:', msg));
await ch.send({ type: Skubber.PushType.Chat, title: 'user123', message: 'Hoi!' });

Constructor

new Skubber(options)
OptieTypeBeschrijving
serverUrlstringURL van de push server
apiKeystringJe mps_ API key
apiSecretstringBijbehorende secret
loggingbooleanDebug logging in console

connect / disconnect

await client.connect(userId: string): Promise<void>
client.disconnect(): void

Channels

const ch = client.subscribe('mijnapp/general');

ch.bind('message', msg => { /* bericht */ });
ch.bind('user:list', users => console.log(users));
ch.bind('user:joined', (userId, meta) => console.log(userId));
ch.bind('user:left', userId => console.log(userId));

Bericht sturen

await ch.send(message): Promise<void>
await ch.send({
    type:    Skubber.PushType.Chat,
    title:   'Gebruikersnaam',
    message: 'Tekst van het bericht',
    payload: { key: 'waarde' }
});

PushType constanten

ConstanteWaarde
Skubber.PushType.Default0
Skubber.PushType.Info1
Skubber.PushType.Warning2
Skubber.PushType.Chat3
Skubber.PushType.System4
Skubber.PushType.Error5
Skubber.PushType.Success6
Skubber.PushType.Private7