0.6.0 • Published 2 years ago

@machinat/websocket v0.6.0

Weekly downloads
2
License
MIT
Repository
github
Last release
2 years ago

WebSocket Module

This package is an underlying module of webview platform for serving WebSocket. You might want to use @machinat/webview unless you want to serve your own web service.

Install

npm install @machinat/core @machinat/http @machinat/websocket
# or with yarn
yarn add @machinat/core @machinat/http @machinat/websocket

Docs

Check the package reference.

Setup

Back-end

import Machinat from '@machinat/core';
import Http from '@machinat/http';
import WebSocket from '@machinat/websocket';

const DEV = process.env.NODE_ENV !== 'production';

const app = Machinat.createApp({
  modules: [
    Http.initModule({ /* ... */ }),
  ],
  platforms: [
    WebSocket.initModule({ entryPath: '/websocket' }),
  ],
  service: [
    { // same origin policy
      provide: WebSocket.UpgradeVerifier,
      withValue: ({ headers }) => headers.origin === 'https://your.domain.com',
    },
  ]
}).onEvent(async ({ bot, event }) => {
  // send a event when a connection is open
  if (event.type === 'connect') {
    await bot.send({
      category: 'greeting',
      type: 'hello',
      payload: 'world',
    });
  }
});

Front-end

import Client from '@machinat/websocket/client';

const client = new Client({ url: '/websocket' });

client.onEvent(async ({ event }) => {
  if (event.type === 'hello') {
    await client.send({
      category: 'greeting',
      type: 'hello',
      payload: 'websocket',
    });
  }
});
0.6.0-beta.4

2 years ago

0.6.0-beta.5

2 years ago

0.6.0

2 years ago

0.6.0-canary.0

2 years ago

0.6.0-beta.0

2 years ago

0.6.0-canary.6

2 years ago

0.6.0-canary.4

2 years ago

0.5.0-beta.36

2 years ago

0.5.0-beta.14

2 years ago

0.5.0-beta.22

2 years ago

0.5.0-beta.23

2 years ago

0.5.0-beta.20

2 years ago

0.5.0-beta.27

2 years ago

0.5.0-beta.25

2 years ago

0.5.0-beta.28

2 years ago

0.5.0

2 years ago

0.5.0-beta.1

3 years ago

0.5.0-beta.0

3 years ago

0.4.1-alpha.44

3 years ago

0.4.1-alpha.34

3 years ago

0.4.1-alpha.33

3 years ago

0.4.1-alpha.32

3 years ago

0.4.1-alpha.31

3 years ago

0.4.1-alpha.29

3 years ago

0.4.1-alpha.28

3 years ago

0.4.1-alpha.27

3 years ago

0.4.1-alpha.18

3 years ago

0.4.1-alpha.14

3 years ago

0.4.1-alpha.12

3 years ago

0.4.1-alpha.11

3 years ago

0.4.1-alpha.7

3 years ago

0.4.1-alpha.6

3 years ago

0.4.1-alpha.5

3 years ago

0.4.1-alpha.3

3 years ago

0.4.1-alpha.1

3 years ago

0.4.0-beta.6

3 years ago

0.4.0-beta.4

3 years ago

0.4.0-beta.3

3 years ago

0.4.0-beta.1

3 years ago

0.4.0-beta.0

3 years ago

0.3.0-beta.3

4 years ago

0.3.0-beta.2

4 years ago

0.3.0-beta.1

4 years ago

0.3.0-beta.0

4 years ago

0.2.0-beta.0

4 years ago