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

feat: calls #855

Draft
wants to merge 30 commits into
base: main
Choose a base branch
from
Draft

feat: calls #855

wants to merge 30 commits into from

Conversation

td-famedly
Copy link
Collaborator

:D

Comment on lines 54 to 55
// static const livekitServiceUrl = 'https://famedly-livekit-server.teedee.dev';
static const livekitServiceUrl = 'https://livekit-jwt.call.element.dev';

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Out of couriosity: are these going to be hosted services for the app? Or are users expected to run livekit alongside their own homeservers?

And maybe one side-question, if allowed: is there an interoperability with, say, call.element.io so that a group call can be shared with outside users (non-fluffy/non-matrix)?

All-in-all though, this looks pretty exciting. Thank you for working on this!

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not an author, but from my humble knowledge and understanding - it shall work both ways, as livekit seems to be a protocol.

The only question / problem is that Element doesn't currently support custom livekit server (element-hq/element-meta#2371).

I hope the server string will be configurable with FluffyChat, livekit is not that much complicated to be self-hosted.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

if allowed: is there an interoperability with, say, call.element.io so that a group call can be shared with outside users (non-fluffy/non-matrix)?

there's some differences in the key sharing right now (to-device vs room events specifically), but once that gets solved (the fosdem demo f.ex had a patch to use room events for key sharing and be compatible with element), fluffychat should just be able to use call.element.io or any other livekit SFU for calls. (The current logic is look at older members in the call and try to use their SFU, because cross SFU communication is not a thing yet)

I hope the server string will be configurable with FluffyChat, livekit is not that much complicated to be self-hosted.

That sounds doable. @krille-chan I assume we can add a developer setting (maybe hidden) to change the default livekit url? Again this URL only matters if you are the one starting the call. Both element call and fluffychat should just use the SFU from any existing participants state event if there is already a call going on.

tldr: which SFU to choose should not be a problem, key sharing implementation differences are a bigger blocker atm

Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sure we can. While I still wonder what makes more sense: Set the livekit server in the well-known for a server wide config or set it in the app as an app config?

@alexander-potemkin
Copy link

@krille-chan , would you be open to some help in that? Or calls are outside of FluffyChat roadmap?

@krille-chan
Copy link
Owner

@krille-chan , would you be open to some help in that? Or calls are outside of FluffyChat roadmap?

Currently that's a project of @td-famedly 😊 you can contact him for collaboration maybe?

@alexander-potemkin
Copy link

Apologies for the delay in getting back to you!

@krille-chan , thank you!
@td-famedly , what is the best way to contact you? Or shall we keep discussion here? What kind of help could be of use? I'm not quite fast on that, unfortunately, but I shall be able to be of some help.

@vanyasem vanyasem mentioned this pull request Nov 11, 2024
@predictron-cloud
Copy link

Hi guys, This implementation looks amazing. It is likely to provide great user experience as it uses livekit and flutter_callkit_incoming. When it could be merged and released? Do you need any help with it?

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.

5 participants