watcher-ts/packages/cli/README.md
prathamesh0 a1af962d99 Use webrtc-direct protocol with peer signalling integrated into relay node (#307)
* Use webrtc-direct transport with pubsub based discovery

* Use changes to integrate signalling using relay node

* Add an indicator for peer connection type (direct/relayed)

* Catch errors while creting a libp2p node

* Catch errors while dialling peers

* Catch errors when dialling from relay node

* Pass CLI arg for port to listen on for relay node

* Subscribe chat CLI to pubsub topic

* Update yarn lockfile

* Update webrtc-direct dependency in package json

* Update webrtc-direct version

* Update yarn lockfile
2023-02-02 19:50:27 +05:30

1.1 KiB

cli

chat

A basic CLI to pass messages between peers using stdin/stdout

  • Install dependencies:

    yarn install
    
  • Build the peer package:

    cd packages/peer
    yarn build
    
  • (Optional) Create and export a peer id for the relay node:

    # In packages/peer
    yarn create-peer --file [PEER_ID_FILE_PATH]
    
    • file (f): file path to export the peer id to (json) (default: logs to console)
  • (Optional) Run a local relay node:

    # In packages/peer
    yarn relay-node --port [LISTEN_PORT] --peer-id-file [PEER_ID_FILE_PATH] --relay-peers [RELAY_PEERS_FILE_PATH]
    
    • port: Port to start listening on (default: 9090)
    • peer-id-file: file path for peer id to be used (json)
    • relay-peers: file path for relay peer multiaddr(s) to dial on startup (json)
  • Start the node:

    # In packages/cli
    yarn chat --relay-node <RELAY_NODE_URL>
    
    • relay-node: multiaddr of a primary hop enabled relay node
  • The process starts reading from stdin and outputs messages from others peers to stdout.