Bridge iroh control announcements into web stream discovery

This commit is contained in:
every.channel 2026-02-22 23:08:37 -08:00
parent 74842eb25e
commit 2778715304
No known key found for this signature in database
8 changed files with 528 additions and 26 deletions

View file

@ -68,22 +68,32 @@ Control protocol (iroh gossip, relay + direct transport discovery):
```sh
# Listener (on node A)
cargo run -p ec-node -- control-listen --gossip-peer <node-b-endpoint-addr>
cargo run -p ec-node -- control-listen --gossip-peer <node-b-endpoint-addr-json>
# Announcer (on node B)
cargo run -p ec-node -- control-announce \
--stream-id la-nbc \
--relay-url https://cdn.moq.dev/anon \
--relay-broadcast la-nbc \
--gossip-peer <node-a-endpoint-addr>
--gossip-peer <node-a-endpoint-addr-json>
# Resolver (consumer picks best announced path)
cargo run -p ec-node -- control-resolve \
--stream-id la-nbc \
--prefer direct-first \
--gossip-peer <node-a-endpoint-addr>
--gossip-peer <node-a-endpoint-addr-json>
# Bridge iroh control announcements to every.channel public web list
EVERY_CHANNEL_WEB_UPSERT_TOKEN=<token> \
cargo run -p ec-node -- control-bridge-web \
--directory-url https://every.channel \
--gossip-peer <node-a-endpoint-addr-json>
```
`control-announce`, `control-listen`, `control-resolve`, and `control-bridge-web` print both
`control endpoint id` and `control endpoint addr` on startup. Use the `endpoint addr` JSON for
`--gossip-peer` when bootstrapping.
Coverage:
```sh