js-waku-examples/examples/relay-direct-rtc
Sasha 1bd7597db4
feat: add direct relay-rtc example (#260)
* add relay-rtc example

* add relay chat example

* update readme and texts

* add default node from go-waku prod fleet

* add ci steps

* update readme

* rename to relay-direct-chat

* rename to relay-direct-rtc
2023-10-03 01:03:48 +02:00
..
README.md feat: add direct relay-rtc example (#260) 2023-10-03 01:03:48 +02:00
favicon.ico feat: add direct relay-rtc example (#260) 2023-10-03 01:03:48 +02:00
favicon.png feat: add direct relay-rtc example (#260) 2023-10-03 01:03:48 +02:00
index.html feat: add direct relay-rtc example (#260) 2023-10-03 01:03:48 +02:00
index.js feat: add direct relay-rtc example (#260) 2023-10-03 01:03:48 +02:00
manifest.json feat: add direct relay-rtc example (#260) 2023-10-03 01:03:48 +02:00
package-lock.json feat: add direct relay-rtc example (#260) 2023-10-03 01:03:48 +02:00
package.json feat: add direct relay-rtc example (#260) 2023-10-03 01:03:48 +02:00
style.css feat: add direct relay-rtc example (#260) 2023-10-03 01:03:48 +02:00
webpack.config.js feat: add direct relay-rtc example (#260) 2023-10-03 01:03:48 +02:00

README.md

Direct WebRTC connection for Waku Relay

Demonstrates:

  • Waku Relay node with direct WebRTC connection
  • Pure Javascript/HTML.

This example uses WebRTC transport and Waku Relay to exchange messages.

To test the example run npm install and then npm start.

The master branch's HEAD is deployed at https://examples.waku.org/relay-direct-chat/.

Steps to run an example:

  1. Get a Waku node that implements /libp2p/circuit/relay/0.2.0/hop and /libp2p/circuit/relay/0.2.0/stop 1.1. Find go-waku node or 1.2. Build and then run go-waku node with following command: ./build/waku --ws true --relay true --circuit-relay true
  2. Copy node's multiaddr (e.g /ip4/192.168.0.101/tcp/60001/ws/p2p/16Uiu2HAm9w2xeDWFJm5eeGLZfJdaPtkNatQD1xrzK5EFWSeXdFvu)
  3. In relay-chat example's folder run npm install and then npm start
  4. Use go-waku's multiaddr for Remote node multiaddr and press dial. Repeat in two more tabs.
  5. In tab2 copy Local Peer Id and use as WebRTC Peer in tab1 and press dial.
  6. In tab1 or tab2 press Ensure WebRTC Relay connection
  7. In tab1 press Drop non WebRTC connections
  8. In tab1 enter Nickname and Message and send.
  9. See the message in tab3 which was connected only to go-waku node.