Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Multiple peers per client and better peer disconnection handling #2

Merged
merged 20 commits into from
Apr 5, 2024

Conversation

poshcoe
Copy link
Collaborator

@poshcoe poshcoe commented Apr 5, 2024

API changes and improvements to just-webrtc-signalling (breaking):

  • Server now uses flume and async-broadcast channels for performance and to remote the tokio dependency.
  • Client gRPC connections are now lazy initiated on both wasm and native
  • Introduced RtcSignallingClientBuilder for configuration and building clients
  • New RtcSignallingPeer enables multiple peers per client
  • RtcSignallingPeer uses revamped concurrent state machine (RtcSignallingPeer::step), improved from the old RtcSignallingClient::run.
  • Peers can now be "torn down" when finished, providing a clean peer disconnection option.
  • Dirty peer disconnections are now detected on both client and server and handled appropriately.
  • Several improvements/clean-ups on the client-side API

… client

* multiple peers per clients
* default callbacks, with `set_on` methods
* `step` method for running async state machine
* remove `SignalSet` in favour of direct generic tuples.
* fix `set_on..` methods to pass callback via strict generics
@poshcoe poshcoe merged commit df11972 into main Apr 5, 2024
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant