Skip to main content

NostrMessenger

Defined in: atomiq-messenger-nostr/src/NostrMessenger.ts:15

An interface of a messenger, this is a generic data propagation layer, where parties can broadcast messages and others can listen to these broadcasted messages

Implements​

Constructors​

Constructor​

new NostrMessenger(
network,
relays,
options?): NostrMessenger;

Defined in: atomiq-messenger-nostr/src/NostrMessenger.ts:26

Parameters​

ParameterType
networkBitcoinNetwork
relaysstring[]
options?{ reconnectTimeout?: number; wsImplementation?: (url, protocols?) => WebSocket; }
options.reconnectTimeout?number
options.wsImplementation?(url, protocols?) => WebSocket

Returns​

NostrMessenger

Properties​

callbacks​

callbacks: (msg) => void[] = [];

Defined in: atomiq-messenger-nostr/src/NostrMessenger.ts:23

Parameters​

ParameterType
msgMessage

Returns​

void


messageDeduplicator​

messageDeduplicator: MessageDeduplicator;

Defined in: atomiq-messenger-nostr/src/NostrMessenger.ts:24


network​

network: BitcoinNetwork;

Defined in: atomiq-messenger-nostr/src/NostrMessenger.ts:17


pool​

pool: AbstractSimplePool;

Defined in: atomiq-messenger-nostr/src/NostrMessenger.ts:20


reconnectTimeout​

reconnectTimeout: number;

Defined in: atomiq-messenger-nostr/src/NostrMessenger.ts:21


relays​

relays: string[];

Defined in: atomiq-messenger-nostr/src/NostrMessenger.ts:19


secretKey​

secretKey: Uint8Array;

Defined in: atomiq-messenger-nostr/src/NostrMessenger.ts:18

Methods​

broadcast()​

broadcast(msg): Promise<void>;

Defined in: atomiq-messenger-nostr/src/NostrMessenger.ts:47

Broadcast a message to the data propagation layer

Parameters​

ParameterTypeDescription
msgMessage

Returns​

Promise<void>

Implementation of​

Messenger.broadcast


init()​

init(): Promise<void>;

Defined in: atomiq-messenger-nostr/src/NostrMessenger.ts:59

Initializes the messenger instance

Returns​

Promise<void>

Implementation of​

Messenger.init


stop()​

stop(): Promise<void>;

Defined in: atomiq-messenger-nostr/src/NostrMessenger.ts:64

Stops the instance, releasing any resources used by it

Returns​

Promise<void>

Implementation of​

Messenger.stop


subscribe()​

subscribe(callback): Promise<void>;

Defined in: atomiq-messenger-nostr/src/NostrMessenger.ts:111

Adds a listener to listen to broadcasted messages

Parameters​

ParameterTypeDescription
callback(msg) => void

Returns​

Promise<void>

Implementation of​

Messenger.subscribe


unsubscribe()​

unsubscribe(callback): Promise<boolean>;

Defined in: atomiq-messenger-nostr/src/NostrMessenger.ts:117

Removes a listener

Parameters​

ParameterTypeDescription
callback(msg) => void

Returns​

Promise<boolean>

Implementation of​

Messenger.unsubscribe


warmup()​

warmup(): any;

Defined in: atomiq-messenger-nostr/src/NostrMessenger.ts:43

The messenger implementation can expose a warmup function that warms up the connection before an actual broadcast takes place (this is useful for browsers environments where you might want to warmup the connection before the tab is backgrounded)

Returns​

any

Implementation of​

Messenger.warmup