Proto commits in signalapp/ringrtc

These 43 commits are when the Protocol Buffers files have changed:

Commit:74b0de7
Author:Miriam Zimmerman
Committer:GitHub

Add support for Remote Mute

The documentation is generated from this commit.

Commit:8400790
Author:adel-signal
Committer:GitHub

Add receiving PeekInfo over RTP in SfuToDevice

Commit:9da2bd2
Author:adel-signal
Committer:GitHub

Add num_packets and merge buffer support to MrpStreams

Commit:33b4f89
Author:adel-signal
Committer:GitHub

Add group calling support to call sim

Commit:97579ae
Author:Rashad Sookram
Committer:GitHub

Send audio enabled status to remote device in 1:1 calls

Commit:ee5b89d
Author:adel-signal
Committer:GitHub

Refactored protobuf to own crate

Commit:5ed7f94
Author:adel-signal
Committer:GitHub

Add reliable sfu to device over rtp for admin actions

Commit:76af7d1
Author:Iñaqui
Committer:GitHub

Raise Hand

Commit:c617467
Author:Iñaqui
Committer:GitHub

Reactions

Commit:c49a109
Author:Jim Gustafson
Committer:GitHub

Add a call simulator for testing Co-authored-by: Rashad Sookram <rashad@signal.org> Co-authored-by: Jordan Rose <jrose@signal.org>

Commit:1331dd9
Author:Jordan Rose
Committer:Jordan Rose

Add "remove" and "block" admin actions (and the protobuf for "approve" and "deny", but that will depend on later work)

Commit:be4a43a
Author:Jordan Rose
Committer:Jordan Rose

Handle being removed from a call This might be being denied approval to join, or being removed after you've already been an active participant; the two are distinguished by tracking whether you've ever *been* an active participant, which is observable from the peek info.

Commit:3ba90ed
Author:Jim Gustafson
Committer:GitHub

Remove h264 video codec support Co-authored-by: Rashad Sookram <rashad@signal.org>

Commit:87022a4
Author:Rashad Sookram
Committer:GitHub

Expose `isHigherResolutionPending` to apps

Commit:93a2ac8
Author:Rashad Sookram
Committer:Jim Gustafson

Allow clients to specify the active speaker's height

Commit:d3e1a02
Author:Peter Thatcher
Committer:Jim Gustafson

Log stats from SFU and the list of currently forwarded DemuxIDs

Commit:be72bd5
Author:Peter Thatcher
Committer:Jim Gustafson

Use less bandwidth when using TURN

Commit:460545a
Author:Peter Thatcher
Committer:Jim Gustafson

Add state for ConnectingAfterAccepted - Simplify state matching logic - Remove default matches - Add and use ConnectionObserverEvent::StateChanged - Only enable media when we notify the app

Commit:55a0a43
Author:Jim Gustafson
Committer:Jim Gustafson

Add vp9 codec negotiation support and enable for hardware/Electron

Commit:1d29f60
Author:Jim Gustafson
Committer:Jim Gustafson

Use v2 frontend api and remove notion of endpoint_id Co-authored-by: Peter Thatcher <peter@signal.org>

Commit:280d734
Author:Jordan Rose
Committer:Jordan Rose

Group calls: send Leave via DeviceToSfu RTP as well

Commit:fb7ea8d
Author:Peter Thatcher
Committer:Jim Gustafson

Remove use of DataChannel (use direct RTP data instead) Also remove the following unneeded things: - enable_rtp_data_channel config - enable_dtls config (for 1:1 calls) - DTLS certificates (for 1:1 calls)

Commit:e5ca6f6
Author:Peter Thatcher
Committer:Jim Gustafson

Request bitrate constraints for group calls according to BandwidthMode

Commit:5bdb65f
Author:Peter Thatcher
Committer:Jim Gustafson

Enable ICE continual gathering and signal removal of ICE candidates

Commit:69ffae7
Author:Jordan Rose
Committer:Jordan Rose

Use i64 instead of u64 for group ring IDs This is easier to store in an SQLite table, which uses i64 for all integer columns. It's also more consistent across platforms, since Java also has no u64 equivalent.

Commit:c2db8eb
Author:Jordan Rose

Add Group Ringing feature

Commit:dafc6ff
Author:Jim Gustafson
Committer:GitHub

Remove support for v2/v3 signaling

Commit:ff50e83
Author:Jordan Rose
Committer:Jim Gustafson

Add Screenshare feature Co-authored-by: Peter Thatcher <peter@signal.org>

Commit:7ae42e6
Author:Jim Gustafson
Committer:GitHub

Very low bandwidth support for audio Co-authored-by: Peter Thatcher <peter@signal.org>

Commit:1e8e690
Author:Jim Gustafson
Committer:Jim Gustafson

Update copyrights and license

Commit:c0c7d8b
Author:Peter Thatcher
Committer:Jim Gustafson

Update Group Calling feature

Commit:1bbf605
Author:Peter Thatcher
Committer:Jim Gustafson

Update Group Calling feature Co-authored-by: Vladimir Skuratovich <vlad@signal.org> Co-authored-by: Jim Gustafson <jim@signal.org> Co-authored-by: Nora Trapp <nora@signal.org> Co-authored-by: Evan Hahn <evanhahn@signal.org>

Commit:314566b
Author:Jim Gustafson
Committer:GitHub

Add Group Calling feature Co-authored-by: Ehren Kret <ehren@signal.org> Co-authored-by: Peter Thatcher <peter@signal.org> Co-authored-by: Vladimir Skuratovich <vlad@signal.org> Co-authored-by: Nora Trapp <nora@signal.org> Co-authored-by: Evan Hahn <evanhahn@signal.org>

Commit:12e6ecc
Author:Peter Thatcher
Committer:Jim Gustafson

Refactor calling code

Commit:3d443ac
Author:Peter Thatcher
Committer:Jim Gustafson

V4 signaling: Replace SDP with protobufs Also - Enable ICE renomination - Disable VP9 - Use better audio and video track IDs

Commit:bcbcc9b
Author:Peter Thatcher
Committer:Jim Gustafson

Add "V3" protocol which has no DTLS Do the SRTP key negotiation using a diffie-helman exchange over the signaling path.

Commit:3da9391
Author:Jim Gustafson
Committer:Jim Gustafson

Implement low bandwidth mode support

Commit:8dfca8a
Author:Peter Thatcher
Committer:Jim Gustafson

Refactor for clarity

Commit:5e3fd16
Author:Peter Thatcher
Committer:Jim Gustafson

Implement ability to use RTP or SCTP New clients will negotiate to use RTP data channels using the opaque signaling. Data on the RTP channel will be periodically re-sent for reliability. Old clients will still use SCTP using signaling with SDP. But SCTP use is deprecated. Co-authored-by: Vladimir Skuratovich <vlad@signal.org>

Commit:26208c9
Author:Jim Gustafson
Committer:GitHub

Support hangup/needPermission for call requests

Commit:9339f22
Author:Jim Gustafson

Implement native interface This commit adds a native interface to RingRTC. This provides native access to more WebRTC capabilities, such as the PeerConnectionFactory, PeerConnection, and some native media capabilities. The native interface is used for electron-based client support, so that WebRTC can be accessed directly with RingRTC rather than through the Chrome backend. A script bin/build-electron is provided to build the electron library, and a node project with a TypeScript API is provided in src/node. A command line interface is also available. This uses some new hooks for simulating networks through WebRTC. This client is meant for testing, it is not a Signal client.

Commit:2736acb
Author:Peter Thatcher
Committer:Jim Gustafson

Add multi-ring feature Multi-ring allows one or more user devices to ring when called. When one callee responds to a call (either accepting, declining, or indicating a busy state) the caller will send an appropriate hangup to all other devices belonging to the user. The Calling protocol has changed, resulting in changes to the protocol buffer for the CallMessage. Pre-multi-ring devices will still be able to establish call sessions, but will not be able to call linked devices.

Commit:8204e76
Author:Curt Brune
Committer:Curt Brune

Initial commit of project files