0.4.0 • Published 2 years ago

@akiroz/thalamus v0.4.0

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

Thalamus

npm.io test

An opinionated application messaging framework based on MQTT.

Differences from plain MQTT

+ RPC support
+ Server redundancy / load-balancing
- Guaranteed delivery (MQTT QoS 1 / 2)

Messages requiring acknowledgement must use RPC and applications are expected to implement their own retry mechanisms.

API

class Thalamus

  • constructor(serverOptList: MQTT.IClientOptions[])

  • thalamus.servers List of MQTT client objects

  • async publish(topic: string, payload: Uint8Array)

  • async subscribe(topic: string, handler: SubHandler)
  • async unsubscribe(topic: string, handler?: SubHandler)
  • async call(topic: string, params: Param = {}, opt = defaultOptions): Promise<Result>
  • async register(topic: string, handler: (param, topic) => Result)

  • thalamus.on("connect", (i) => {}) server i connected (i = 0-based index)

  • thalamus.on("close", (i) => {}) server i disconnected (i = 0-based index)
  • thalamus.on("error", (err, i) => {}) server i error (i = 0-based index)
0.4.0

2 years ago

0.3.0

3 years ago

0.3.1

3 years ago

0.2.4

3 years ago

0.2.1

3 years ago

0.2.0

3 years ago

0.2.3

3 years ago

0.2.2

3 years ago

0.1.2

4 years ago

0.1.0

4 years ago

0.1.1

4 years ago

0.0.15

4 years ago

0.0.14

4 years ago

0.0.13

5 years ago

0.0.10

5 years ago

0.0.11

5 years ago

0.0.12

5 years ago

0.0.9

5 years ago

0.0.8

5 years ago

0.0.7

5 years ago

0.0.6

5 years ago

0.0.5

5 years ago

0.0.3

5 years ago

0.0.2

5 years ago

0.0.4

5 years ago

0.0.1

5 years ago