syphon-org / syphon

⚗️ a privacy centric matrix client
https://syphon.org
GNU Affero General Public License v3.0
1.04k stars 71 forks source link

WebRTC / Voice Call / Video Call #165

Open hrj opened 4 years ago

hrj commented 4 years ago

I am probably jumping the gun here, but I would like to know if this project, especially the Android client, plans to support WebRTC / Voice Call / Video Calls?

In the Riot-for-Android project, this feature was supported via Jitsi Integration, and for various reasons, this involved bringing in leveraging the React-Native dependencies, as well as a huge number of permissions, such as "draw over other apps".

Whenever possible, please shed some light on the planned path for this feature.

ereio commented 4 years ago

Not jumping the gun at all. Someone asked this in syphon:matrix.org a couple weeks ago.

I gave a more comprehensive response there, but the gist of it is that I'll probably implement one-on-one voice calls using only WebRTC around November or December 2020. WebRTC seems fairly straightforward and a flutter plugin already exists: flutter_webrtc

If users really wanted a group video conferencing integration, like Jitsi, I would consider it down the line, but it won't be forced on users within the default build.

I do really want to stay away from dependency creep, which you're hinting at and I notice happens a lot with apps trying to appease users feature requests quickly. I'm considering building out some sort of "plugin" system for Syphon that would allow others to install integrations like this, but would default without any so it would not impose unused or wanted dependencies on install.

Feel free to post here or in the matrix room for more questions, concerns, or recommendations! I'll use this ticket to track the feature 👍

LibreHacker commented 3 years ago

Jitsi Meet original app can join in Riot (Element) calls, maybe collabe Android app like a share link in Jitsi Meet from Syphon on click "Join to conference"

ereio commented 3 years ago

That's a good idea

EdGeraghty commented 2 years ago

+1 one on the link to the native Jitsi app.

If you're planning to support widgets (which AIUI are just iframes in the client) then perhaps Jitsi could get support that way too.

Saying that, it's the intention of the Matrix team to move group calls to p2p WebRTC in the medium term, so perhaps focusing on that should take a priority.

VarLad commented 2 years ago

Jitsi for conference calls is nice, but One to One VoIP calls via WebRTC would take priority

EdGeraghty commented 2 years ago

I think we're agreeing - sorry if my previous message was ambiguous.

A quick fix for the Jitsi thing would be to issue the link as a jitsi:// URI in the chat, but yes... WebRTC capability in syphon makes sense to spend the time developing, especially as it'll be the basis for group calling in the medium-term future of the protocol (Jitsi was a stop-gap)

ereio commented 2 years ago

@0x1a8510f2 is now working on this when available 🚀

K4LCIFER commented 1 year ago

Would impementing voice calling also include group voice calling similar to the format that Discord has -- where you are able to pop in and out of the voice chat at any time?

ereio commented 1 year ago

Ideally yes, it would work similarly

bdiouih commented 10 months ago

Hello, can we know the status of video call integration? Will we expect it soon? Thanks in advance

0x1a8510f2 commented 10 months ago

Hi! At the moment, there is significant work from the Matrix side on improving calls. The work is happening primarily in Element call (https://github.com/vector-im/element-call).

As such, it doesn't make much sense to implement calling only to have to reimplement it as the new calling standards are finalized.

So for the time being, the implementation for calls in on pause until calls are more stable in Matrix in general.