wormhole-william icon indicating copy to clipboard operation
wormhole-william copied to clipboard

Add websocket transport to transit relay

Open bryanchriswhite opened this issue 2 years ago • 4 comments

Our team has been using wormhole-william as our project's client library in the browser via a WASM wrapper. This PR adds support for websocket transport to the transit relay. The transit relay needs to use a transport that is compatible with browser environments. Websockets seem to be the obvious solution here; foregoing any webrtc-based approaches (which we're not interested in pursuing right now).

bryanchriswhite avatar Dec 13 '21 09:12 bryanchriswhite

For compatibility, I'd like to keep implementations in sync with the specification. At the moment, the latest draft spec for this is https://github.com/magic-wormhole/magic-wormhole-protocols/pull/16. I implemented the client part in the Rust client and am rather satisfied, but feel free to propose changes or alternatives that better match what you have in mind. I think everything except the new hints encoding should be rather uncontroversial.

piegamesde avatar Dec 13 '21 11:12 piegamesde

I'll try to review this as soon as I can. Wasm support in Fyne is nearing completion, so I'll want to try and get wormhole-gui running there as soon as possible.

Jacalz avatar Jan 19 '22 12:01 Jacalz

I think it would be good if the changes weren't force-pushed every time. It makes it very hard to see changes between commits (if not impossible).

Jacalz avatar Jun 11 '22 06:06 Jacalz

I had to rebase onto latest master in order to get some of the bug fixes for testing. For force pushes that are just amends and no rebases, you can click on the "force-pushed" in the GitHub UI to get the difference between both commits.

piegamesde avatar Jun 11 '22 09:06 piegamesde