mirror of https://github.com/waku-org/js-waku.git
37 lines
38 KiB
HTML
37 lines
38 KiB
HTML
<!DOCTYPE html><html class="default"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>WakuRelay | js-waku</title><meta name="description" content="Documentation for js-waku"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script async src="../assets/search.js" id="search-script"></script></head><body><script>document.body.classList.add(localStorage.getItem("tsd-theme") || "os")</script><header><div class="tsd-page-toolbar"><div class="container"><div class="table-wrap"><div class="table-cell" id="tsd-search" data-base=".."><div class="field"><label for="tsd-search-field" class="tsd-widget search no-caption">Search</label><input type="text" id="tsd-search-field"/></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="../index.html" class="title">js-waku</a></div><div class="table-cell" id="tsd-widgets"><div id="tsd-filter"><a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a><div class="tsd-filter-group"><div class="tsd-select" id="tsd-filter-visibility"><span class="tsd-select-label">All</span><ul class="tsd-select-list"><li data-value="public">Public</li><li data-value="protected">Public/Protected</li><li data-value="private" class="selected">All</li></ul></div> <input type="checkbox" id="tsd-filter-inherited" checked/><label class="tsd-widget" for="tsd-filter-inherited">Inherited</label><input type="checkbox" id="tsd-filter-externals" checked/><label class="tsd-widget" for="tsd-filter-externals">Externals</label></div></div><a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a></div></div></div></div><div class="tsd-page-title"><div class="container"><ul class="tsd-breadcrumb"><li><a href="../modules.html">js-waku</a></li><li><a href="../modules/waku_relay.html">waku_relay</a></li><li><a href="waku_relay.WakuRelay.html">WakuRelay</a></li></ul><h1>Class WakuRelay</h1></div></div></header><div class="container container-main"><div class="row"><div class="col-8 col-content"><section class="tsd-panel tsd-comment"><div class="tsd-comment tsd-typography"><div class="lead">
|
|
<p>Implements the <a href="https://rfc.vac.dev/spec/11/" class="external">Waku v2 Relay protocol</a>.
|
|
Must be passed as a <code>pubsub</code> module to a {Libp2p} instance.</p>
|
|
</div><dl class="tsd-comment-tags"><dt>implements</dt><dd><p>{require('libp2p-interfaces/src/pubsub')}</p>
|
|
</dd></dl></div></section><section class="tsd-panel tsd-hierarchy"><h3>Hierarchy</h3><ul class="tsd-hierarchy"><li><span class="tsd-signature-type">Gossipsub</span><ul class="tsd-hierarchy"><li><span class="target">WakuRelay</span></li></ul></li></ul></section><section class="tsd-panel-group tsd-index-group"><h2>Index</h2><section class="tsd-panel tsd-index-panel"><div class="tsd-index-content"><section class="tsd-index-section "><h3>Constructors</h3><ul class="tsd-index-list"><li class="tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite"><a href="waku_relay.WakuRelay.html#constructor" class="tsd-kind-icon">constructor</a></li></ul></section><section class="tsd-index-section "><h3>Properties</h3><ul class="tsd-index-list"><li class="tsd-kind-property tsd-parent-kind-class"><a href="waku_relay.WakuRelay.html#decryptionKeys" class="tsd-kind-icon">decryption<wbr/>Keys</a></li><li class="tsd-kind-property tsd-parent-kind-class tsd-is-overwrite"><a href="waku_relay.WakuRelay.html#heartbeat" class="tsd-kind-icon">heartbeat</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="waku_relay.WakuRelay.html#observers" class="tsd-kind-icon">observers</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="waku_relay.WakuRelay.html#pubSubTopic" class="tsd-kind-icon">pub<wbr/>Sub<wbr/>Topic</a></li></ul></section><section class="tsd-index-section "><h3>Methods</h3><ul class="tsd-index-list"><li class="tsd-kind-method tsd-parent-kind-class"><a href="waku_relay.WakuRelay.html#addDecryptionKey" class="tsd-kind-icon">add<wbr/>Decryption<wbr/>Key</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="waku_relay.WakuRelay.html#addObserver" class="tsd-kind-icon">add<wbr/>Observer</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="waku_relay.WakuRelay.html#deleteDecryptionKey" class="tsd-kind-icon">delete<wbr/>Decryption<wbr/>Key</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="waku_relay.WakuRelay.html#deleteObserver" class="tsd-kind-icon">delete<wbr/>Observer</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="waku_relay.WakuRelay.html#getPeers" class="tsd-kind-icon">get<wbr/>Peers</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="waku_relay.WakuRelay.html#send" class="tsd-kind-icon">send</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><a href="waku_relay.WakuRelay.html#start" class="tsd-kind-icon">start</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><a href="waku_relay.WakuRelay.html#subscribe" class="tsd-kind-icon">subscribe</a></li></ul></section></div></section></section><section class="tsd-panel-group tsd-member-group "><h2>Constructors</h2><section class="tsd-panel tsd-member tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite"><a id="constructor" class="tsd-anchor"></a><h3 class="tsd-anchor-link">constructor<a href="#constructor" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite"><li class="tsd-signature tsd-kind-icon">new <wbr/>Waku<wbr/>Relay<span class="tsd-signature-symbol">(</span>libp2p<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Libp2p</span>, options<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">Partial</span><span class="tsd-signature-symbol"><</span><a href="../modules/waku.html" class="tsd-signature-type" data-tsd-kind="Namespace">waku</a><span class="tsd-signature-symbol">.</span><a href="../interfaces/waku.CreateOptions.html" class="tsd-signature-type" data-tsd-kind="Interface">CreateOptions</a><span class="tsd-signature-symbol"> & </span><a href="../interfaces/waku_relay.GossipOptions.html" class="tsd-signature-type" data-tsd-kind="Interface">GossipOptions</a><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="waku_relay.WakuRelay.html" class="tsd-signature-type" data-tsd-kind="Class">WakuRelay</a></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><p>Overrides Gossipsub.constructor</p><ul><li>Defined in <a href="https://github.com/status-im/js-waku/blob/10d2533c/src/lib/waku_relay/index.ts#L75">src/lib/waku_relay/index.ts:75</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>libp2p: <span class="tsd-signature-type">Libp2p</span></h5></li><li><h5><span class="tsd-flag ts-flagOptional">Optional</span> options: <span class="tsd-signature-type">Partial</span><span class="tsd-signature-symbol"><</span><a href="../modules/waku.html" class="tsd-signature-type" data-tsd-kind="Namespace">waku</a><span class="tsd-signature-symbol">.</span><a href="../interfaces/waku.CreateOptions.html" class="tsd-signature-type" data-tsd-kind="Interface">CreateOptions</a><span class="tsd-signature-symbol"> & </span><a href="../interfaces/waku_relay.GossipOptions.html" class="tsd-signature-type" data-tsd-kind="Interface">GossipOptions</a><span class="tsd-signature-symbol">></span></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="waku_relay.WakuRelay.html" class="tsd-signature-type" data-tsd-kind="Class">WakuRelay</a></h4></li></ul></section></section><section class="tsd-panel-group tsd-member-group "><h2>Properties</h2><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="decryptionKeys" class="tsd-anchor"></a><h3 class="tsd-anchor-link">decryption<wbr/>Keys<a href="#decryptionKeys" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">decryption<wbr/>Keys<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Map</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">Uint8Array</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-symbol">{ </span>contentTopics<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">; </span>method<span class="tsd-signature-symbol">?: </span><a href="../enums/waku_message.DecryptionMethod.html" class="tsd-signature-type" data-tsd-kind="Enumeration">DecryptionMethod</a><span class="tsd-signature-symbol"> }</span><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/status-im/js-waku/blob/10d2533c/src/lib/waku_relay/index.ts#L62">src/lib/waku_relay/index.ts:62</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class tsd-is-overwrite"><a id="heartbeat" class="tsd-anchor"></a><h3 class="tsd-anchor-link">heartbeat<a href="#heartbeat" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">heartbeat<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">RelayHeartbeat</span></div><aside class="tsd-sources"><p>Overrides Gossipsub.heartbeat</p><ul><li>Defined in <a href="https://github.com/status-im/js-waku/blob/10d2533c/src/lib/waku_relay/index.ts#L59">src/lib/waku_relay/index.ts:59</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="observers" class="tsd-anchor"></a><h3 class="tsd-anchor-link">observers<a href="#observers" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">observers<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">{}</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/status-im/js-waku/blob/10d2533c/src/lib/waku_relay/index.ts#L71">src/lib/waku_relay/index.ts:71</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
|
|
<p>observers called when receiving new message.
|
|
Observers under key <code>""</code> are always called.</p>
|
|
</div></div><div class="tsd-type-declaration"><h4>Type declaration</h4><ul class="tsd-parameters"><li class="tsd-parameter-index-signature"><h5><span class="tsd-signature-symbol">[</span>contentTopic: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">]: </span><span class="tsd-signature-type">Set</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-symbol">(</span>message<span class="tsd-signature-symbol">: </span><a href="waku_message.WakuMessage.html" class="tsd-signature-type" data-tsd-kind="Class">WakuMessage</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> => </span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">></span></h5></li></ul></div></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="pubSubTopic" class="tsd-anchor"></a><h3 class="tsd-anchor-link">pub<wbr/>Sub<wbr/>Topic<a href="#pubSubTopic" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">pub<wbr/>Sub<wbr/>Topic<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/status-im/js-waku/blob/10d2533c/src/lib/waku_relay/index.ts#L60">src/lib/waku_relay/index.ts:60</a></li></ul></aside></section></section><section class="tsd-panel-group tsd-member-group "><h2>Methods</h2><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="addDecryptionKey" class="tsd-anchor"></a><h3 class="tsd-anchor-link">add<wbr/>Decryption<wbr/>Key<a href="#addDecryptionKey" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">add<wbr/>Decryption<wbr/>Key<span class="tsd-signature-symbol">(</span>key<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Uint8Array</span>, options<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-symbol">{ </span>contentTopics<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">; </span>method<span class="tsd-signature-symbol">?: </span><a href="../enums/waku_message.DecryptionMethod.html" class="tsd-signature-type" data-tsd-kind="Enumeration">DecryptionMethod</a><span class="tsd-signature-symbol"> }</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/status-im/js-waku/blob/10d2533c/src/lib/waku_relay/index.ts#L132">src/lib/waku_relay/index.ts:132</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
|
|
<p>Register a decryption key to attempt decryption of received messages.
|
|
This can either be a private key for asymmetric encryption or a symmetric
|
|
key. <code>WakuRelay</code> will attempt to decrypt messages using both methods.</p>
|
|
</div><div><p>Strings must be in hex format.</p>
|
|
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>key: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Uint8Array</span></h5></li><li><h5><span class="tsd-flag ts-flagOptional">Optional</span> options: <span class="tsd-signature-symbol">{ </span>contentTopics<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">; </span>method<span class="tsd-signature-symbol">?: </span><a href="../enums/waku_message.DecryptionMethod.html" class="tsd-signature-type" data-tsd-kind="Enumeration">DecryptionMethod</a><span class="tsd-signature-symbol"> }</span></h5><ul class="tsd-parameters"><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> content<wbr/>Topics<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></h5></li><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> method<span class="tsd-signature-symbol">?: </span><a href="../enums/waku_message.DecryptionMethod.html" class="tsd-signature-type" data-tsd-kind="Enumeration">DecryptionMethod</a></h5></li></ul></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="addObserver" class="tsd-anchor"></a><h3 class="tsd-anchor-link">add<wbr/>Observer<a href="#addObserver" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">add<wbr/>Observer<span class="tsd-signature-symbol">(</span>callback<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">(</span>message<span class="tsd-signature-symbol">: </span><a href="waku_message.WakuMessage.html" class="tsd-signature-type" data-tsd-kind="Class">WakuMessage</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> => </span><span class="tsd-signature-type">void</span>, contentTopics<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/status-im/js-waku/blob/10d2533c/src/lib/waku_relay/index.ts#L157">src/lib/waku_relay/index.ts:157</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
|
|
<p>Register an observer of new messages received via waku relay</p>
|
|
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>callback: <span class="tsd-signature-symbol">(</span>message<span class="tsd-signature-symbol">: </span><a href="waku_message.WakuMessage.html" class="tsd-signature-type" data-tsd-kind="Class">WakuMessage</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> => </span><span class="tsd-signature-type">void</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
|
|
<p>called when a new message is received via waku relay</p>
|
|
</div></div><ul class="tsd-parameters"><li class="tsd-parameter-signature"><ul class="tsd-signatures tsd-kind-type-literal"><li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">(</span>message<span class="tsd-signature-symbol">: </span><a href="waku_message.WakuMessage.html" class="tsd-signature-type" data-tsd-kind="Class">WakuMessage</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>message: <a href="waku_message.WakuMessage.html" class="tsd-signature-type" data-tsd-kind="Class">WakuMessage</a></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></li></ul></li><li><h5>contentTopics: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> = []</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
|
|
<p>Content Topics for which the callback with be called,
|
|
all of them if undefined, [] or ["",..] is passed.</p>
|
|
</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><div></div></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="deleteDecryptionKey" class="tsd-anchor"></a><h3 class="tsd-anchor-link">delete<wbr/>Decryption<wbr/>Key<a href="#deleteDecryptionKey" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">delete<wbr/>Decryption<wbr/>Key<span class="tsd-signature-symbol">(</span>key<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Uint8Array</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/status-im/js-waku/blob/10d2533c/src/lib/waku_relay/index.ts#L145">src/lib/waku_relay/index.ts:145</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
|
|
<p>Delete a decryption key that was used to attempt decryption of received
|
|
messages.</p>
|
|
</div><div><p>Strings must be in hex format.</p>
|
|
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>key: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Uint8Array</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="deleteObserver" class="tsd-anchor"></a><h3 class="tsd-anchor-link">delete<wbr/>Observer<a href="#deleteObserver" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">delete<wbr/>Observer<span class="tsd-signature-symbol">(</span>callback<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">(</span>message<span class="tsd-signature-symbol">: </span><a href="waku_message.WakuMessage.html" class="tsd-signature-type" data-tsd-kind="Class">WakuMessage</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> => </span><span class="tsd-signature-type">void</span>, contentTopics<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/status-im/js-waku/blob/10d2533c/src/lib/waku_relay/index.ts#L181">src/lib/waku_relay/index.ts:181</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
|
|
<p>Remove an observer of new messages received via waku relay.
|
|
Useful to ensure the same observer is not registered several time
|
|
(e.g when loading React components)</p>
|
|
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>callback: <span class="tsd-signature-symbol">(</span>message<span class="tsd-signature-symbol">: </span><a href="waku_message.WakuMessage.html" class="tsd-signature-type" data-tsd-kind="Class">WakuMessage</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> => </span><span class="tsd-signature-type">void</span></h5><ul class="tsd-parameters"><li class="tsd-parameter-signature"><ul class="tsd-signatures tsd-kind-type-literal"><li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">(</span>message<span class="tsd-signature-symbol">: </span><a href="waku_message.WakuMessage.html" class="tsd-signature-type" data-tsd-kind="Class">WakuMessage</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>message: <a href="waku_message.WakuMessage.html" class="tsd-signature-type" data-tsd-kind="Class">WakuMessage</a></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></li></ul></li><li><h5>contentTopics: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> = []</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="getPeers" class="tsd-anchor"></a><h3 class="tsd-anchor-link">get<wbr/>Peers<a href="#getPeers" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">get<wbr/>Peers<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Set</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/status-im/js-waku/blob/10d2533c/src/lib/waku_relay/index.ts#L201">src/lib/waku_relay/index.ts:201</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
|
|
<p>Return the relay peers we are connected to, and we would publish a message to</p>
|
|
</div></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Set</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">></span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="send" class="tsd-anchor"></a><h3 class="tsd-anchor-link">send<a href="#send" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">send<span class="tsd-signature-symbol">(</span>message<span class="tsd-signature-symbol">: </span><a href="waku_message.WakuMessage.html" class="tsd-signature-type" data-tsd-kind="Class">WakuMessage</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/status-im/js-waku/blob/10d2533c/src/lib/waku_relay/index.ts#L120">src/lib/waku_relay/index.ts:120</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
|
|
<p>Send Waku message.</p>
|
|
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>message: <a href="waku_message.WakuMessage.html" class="tsd-signature-type" data-tsd-kind="Class">WakuMessage</a></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">></span></h4><div></div></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><a id="start" class="tsd-anchor"></a><h3 class="tsd-anchor-link">start<a href="#start" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><li class="tsd-signature tsd-kind-icon">start<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><p>Overrides Gossipsub.start</p><ul><li>Defined in <a href="https://github.com/status-im/js-waku/blob/10d2533c/src/lib/waku_relay/index.ts#L109">src/lib/waku_relay/index.ts:109</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
|
|
<p>Mounts the gossipsub protocol onto the libp2p node
|
|
and subscribes to the default topic.</p>
|
|
</div><dl class="tsd-comment-tags"><dt>override</dt><dd></dd></dl></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">></span></h4><div></div></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><a id="subscribe" class="tsd-anchor"></a><h3 class="tsd-anchor-link">subscribe<a href="#subscribe" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><li class="tsd-signature tsd-kind-icon">subscribe<span class="tsd-signature-symbol">(</span>pubSubTopic<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><p>Overrides Gossipsub.subscribe</p><ul><li>Defined in <a href="https://github.com/status-im/js-waku/blob/10d2533c/src/lib/waku_relay/index.ts#L215">src/lib/waku_relay/index.ts:215</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
|
|
<p>Subscribe to a pubsub topic and start emitting Waku messages to observers.</p>
|
|
</div><dl class="tsd-comment-tags"><dt>override</dt><dd></dd></dl></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>pubSubTopic: <span class="tsd-signature-type">string</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section></section></div><div class="col-4 col-menu menu-sticky-wrap menu-highlight"><nav class="tsd-navigation primary"><ul><li class=""><a href="../modules.html">Exports</a></li><li class=" tsd-kind-namespace"><a href="../modules/discovery.html">discovery</a></li><li class=" tsd-kind-namespace"><a href="../modules/enr.html">enr</a></li><li class=" tsd-kind-namespace"><a href="../modules/utils.html">utils</a></li><li class=" tsd-kind-namespace"><a href="../modules/waku.html">waku</a></li><li class=" tsd-kind-namespace"><a href="../modules/waku_light_push.html">waku_<wbr/>light_<wbr/>push</a></li><li class=" tsd-kind-namespace"><a href="../modules/waku_message.html">waku_<wbr/>message</a></li><li class="current tsd-kind-namespace"><a href="../modules/waku_relay.html">waku_<wbr/>relay</a></li><li class=" tsd-kind-namespace"><a href="../modules/waku_store.html">waku_<wbr/>store</a></li></ul></nav><nav class="tsd-navigation secondary menu-sticky"><ul><li class="current tsd-kind-class tsd-parent-kind-namespace"><a href="waku_relay.WakuRelay.html" class="tsd-kind-icon">Waku<wbr/>Relay</a><ul><li class="tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite"><a href="waku_relay.WakuRelay.html#constructor" class="tsd-kind-icon">constructor</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="waku_relay.WakuRelay.html#decryptionKeys" class="tsd-kind-icon">decryption<wbr/>Keys</a></li><li class="tsd-kind-property tsd-parent-kind-class tsd-is-overwrite"><a href="waku_relay.WakuRelay.html#heartbeat" class="tsd-kind-icon">heartbeat</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="waku_relay.WakuRelay.html#observers" class="tsd-kind-icon">observers</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="waku_relay.WakuRelay.html#pubSubTopic" class="tsd-kind-icon">pub<wbr/>Sub<wbr/>Topic</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="waku_relay.WakuRelay.html#addDecryptionKey" class="tsd-kind-icon">add<wbr/>Decryption<wbr/>Key</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="waku_relay.WakuRelay.html#addObserver" class="tsd-kind-icon">add<wbr/>Observer</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="waku_relay.WakuRelay.html#deleteDecryptionKey" class="tsd-kind-icon">delete<wbr/>Decryption<wbr/>Key</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="waku_relay.WakuRelay.html#deleteObserver" class="tsd-kind-icon">delete<wbr/>Observer</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="waku_relay.WakuRelay.html#getPeers" class="tsd-kind-icon">get<wbr/>Peers</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="waku_relay.WakuRelay.html#send" class="tsd-kind-icon">send</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><a href="waku_relay.WakuRelay.html#start" class="tsd-kind-icon">start</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><a href="waku_relay.WakuRelay.html#subscribe" class="tsd-kind-icon">subscribe</a></li></ul></li></ul></nav></div></div></div><footer class="with-border-bottom"><div class="container"><h2>Legend</h2><div class="tsd-legend-group"><ul class="tsd-legend"><li class="tsd-kind-constructor tsd-parent-kind-class"><span class="tsd-kind-icon">Constructor</span></li><li class="tsd-kind-property tsd-parent-kind-class"><span class="tsd-kind-icon">Property</span></li><li class="tsd-kind-method tsd-parent-kind-class"><span class="tsd-kind-icon">Method</span></li></ul></div><h2>Settings</h2><p>Theme <select id="theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></p></div></footer><div class="container tsd-generator"><p>Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></div><div class="overlay"></div><script src="../assets/main.js"></script></body></html> |