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

[RFC] Capability handling in federated conversations #10680

Closed
nickvergessen opened this issue Oct 11, 2023 · 0 comments · Fixed by #11897
Closed

[RFC] Capability handling in federated conversations #10680

nickvergessen opened this issue Oct 11, 2023 · 0 comments · Fixed by #11897
Assignees
Labels

Comments

@nickvergessen
Copy link
Member

nickvergessen commented Oct 11, 2023

When a remote conversation is used by a local user, some capabilities need to be checked/respected from the remote server, while others need to be considered from the local server.
Here is a list with the current capabilities and my understanding where they should be read from. Having said that, some capabilities can be considered to "not diverge" at the moment, e.g. features that are available. But when a new API version would ever hit that requires us to remove a capability, the Server would say again whether remote or local controls it.

Outdated list, refer to the docs/capabilties.md instead and check the actual capabilities.features-local and capabilities.config-local instead

features Flags

Feature Server Comment
audio ▶️ Remote
video ▶️ Remote
chat-v2 ▶️ Remote
conversation-v4 ▶️ Remote
guest-signaling ▶️ Remote
empty-group-room ▶️ Remote
guest-display-names ▶️ Remote
multi-room-users ▶️ Remote
favorites 🏠 Local
last-room-activity ▶️ Remote
no-ping ▶️ Remote
system-messages ▶️ Remote
delete-messages ▶️ Remote
mention-flag ▶️ Remote
in-call-flags ▶️ Remote
conversation-call-flags ▶️ Remote
notification-levels ▶️ Remote
invite-groups-and-mails ▶️ Remote
locked-one-to-one-rooms ▶️ Remote
read-only-rooms ▶️ Remote
listable-rooms 🏠 Local
chat-read-marker ▶️ Remote
chat-unread ▶️ Remote
webinary-lobby ▶️ Remote
start-call-flag ▶️ Remote
chat-replies ▶️ Remote
circles-support ▶️ Remote
force-mute ▶️ Remote
sip-support ▶️ Remote
sip-support-nopin ▶️ Remote
chat-read-status ▶️ Remote
phonebook-search 🏠 Local
raise-hand ▶️ Remote
room-description ▶️ Remote
rich-object-sharing ▶️ Remote
temp-user-avatar-api 🏠 Local
geo-location-sharing ▶️ Remote
voice-message-sharing ▶️ Remote
signaling-v3 ▶️ Remote
publishing-permissions ▶️ Remote
clear-history ▶️ Remote
direct-mention-flag ▶️ Remote
notification-calls ▶️ Remote
conversation-permissions ▶️ Remote
rich-object-list-media ▶️ Remote
rich-object-delete ▶️ Remote
unified-search 🏠 Local
chat-permission ▶️ Remote
silent-send ▶️ Remote
silent-call ▶️ Remote
send-call-notification ▶️ Remote
talk-polls ▶️ Remote
breakout-rooms-v1 ▶️ Remote
recording-v1 ▶️ Remote
avatar ▶️ Remote Should use remote because we load the image from remote as well?
chat-get-context ▶️ Remote
single-conversation-status ▶️ Remote
chat-keep-notifications ▶️ Remote
typing-privacy 🏠 Local for setting / ▶️ Remote for whether we should send the signaling messages
remind-me-later 🏠 Local ❓ I guess we would want to trigger the reminders on our own server?
bots-v1 ▶️ Remote
markdown-messages ▶️ Remote
session-state ▶️ Remote
note-to-self 🏠 Local
recording-consent ▶️ Remote
message-expiration ▶️ Remote
reactions ▶️ Remote
chat-reference-id ▶️ Remote

config Flags

Feature Server Comment
attachments > allowed 🏠 Local
attachments > folder 🏠 Local
call > enabled ▶️ Remote
call > breakout-rooms ▶️ Remote
call > recording ▶️ Remote
call > recording-consent ▶️ Remote
call > supported-reactions ▶️ Remote
call > predefined-backgrounds 🏠 Local
call > can-upload-background 🏠 Local
chat > max-length ▶️ Remote
chat > read-privacy 🏠 Local
chat > has-translation-providers 🏠 Local / ▶️ Remote Could check both and use the better matching one?
chat > typing-privacy 🏠 Local
conversations > can-create 🏠 Local
previews > max-gif-size 🏠 Local
signaling > session-ping-limit ⛔ Not for user land Used by the HPB only
signaling > hello-v2-token-key ▶️ Remote

cc @Ivansss @SystemKeeper @mahibi @Antreesy In case you want to skim over it and leave a comment.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant