4.0.4 • Published 5 years ago

@pubkeeper/browser-client v4.0.4

Weekly downloads
1
License
UNLICENSED
Repository
github
Last release
5 years ago

Pubkeeper Browser Client

@pubkeeper/browser-client enables web browsers to join, consume, and produce content on a Pubkeeper network. This package is an aggregate package that combines sane defaults for using Pubkeeper in a browser.

Installation

Using npm:

$ npm install --save @pubkeeper/browser-client

Then, load using ES5 require() syntax…

var PubkeeperClient = require('@pubkeeper/browser-client').PubkeeperClient;

…or with ES2015+ import syntax:

import { PubkeeperClient, WebSocketBrew } from '@pubkeeper/browser-client';

Browser

<script src="https://unpkg.com/@pubkeeper/browser-client/dist/pubkeeper-browser-client.min.js"></script>

Usage

import { PubkeeperClient, WebSocketBrew } from '@pubkeeper/browser-client';

const client = new PubkeeperClient({
  server: `[your pk server]`,
  jwt: `[your pk token]`,
  brews: [
    new WebSocketBrew({
      brewerConfig: {
        hostname: '127.0.0.1',
        port: 9000,
        secure: true,
      },
    }),
  ],
});

client.connect().then(() => {
  console.log('ready!');
});

Adding a Brewer

client.addBrewer('topic.text', (brewer) => {
  const id = setInterval(() => { brewer.brewText('Hello World!'); });
  return () => { clearInterval(id); };
});

Adding a Patrons

client.addPatron('topic.text', (patron) => {
  // is activated
  const handler = (uint8, meta) => {
    console.log("sender: %s", meta.from);
    console.log("topic: %s", meta.topic);
    console.log("raw data: %o", uint8);
    console.log("text data: %s", new TextDecoder().decode(uint8));
  }

  patron.on("message", handler);

  return () => {
    // deactivation/tear-down
    patron.off("message", handler);
  };
});

Related Packages

4.1.2

5 years ago

4.1.1

5 years ago

4.1.0

5 years ago

4.0.4

5 years ago

4.0.3

5 years ago

4.0.2

5 years ago

4.0.1

5 years ago

4.0.0

5 years ago

4.0.0-rc.9

5 years ago

4.0.0-rc.8

5 years ago

4.0.0-rc.7

5 years ago

4.0.0-rc.6

5 years ago

4.0.0-rc.5

5 years ago

4.0.0-rc.4

6 years ago

4.0.0-rc.3

6 years ago

4.0.0-rc.2

6 years ago

4.0.0-rc.1

6 years ago

4.0.0-rc.0

6 years ago

4.0.0-alpha.6

6 years ago

4.0.0-alpha.5

6 years ago

4.0.0-alpha.4

6 years ago

4.0.0-alpha.3

6 years ago

4.0.0-alpha.2

6 years ago

4.0.0-alpha.1

6 years ago

6.0.0-alpha.1

6 years ago

3.2.1

6 years ago

3.2.0

6 years ago

3.1.0

6 years ago

3.0.1

7 years ago

3.0.0

7 years ago

3.0.0-rc.3

7 years ago

3.0.0-rc.2

7 years ago

3.0.0-rc.1

7 years ago

3.0.0-rc.0

7 years ago

3.0.0-beta.4

7 years ago

3.0.0-beta.3

7 years ago

3.0.0-beta.2

7 years ago

3.0.0-beta.1

7 years ago

3.0.0-alpha.7

7 years ago

3.0.0-alpha.6

7 years ago

3.0.0-alpha.4

7 years ago

3.0.0-alpha.3

7 years ago

3.0.0-alpha.2

7 years ago

3.0.0-alpha.1

7 years ago