Skip to content

Confusing UX around element call being partially de-labsed #30502

@muabada

Description

@muabada

In rooms where users lack permission to initiate Video Call or Voice Call (based on room settings if element calls is disabled), the top-right call icons correctly display a tooltip:

"You do not have permission to start video calls" (or voice calls).

However, these users are still shown the “Call back” button in chat history under missed call messages. Clicking this button allows them to bypass call restrictions and initiate calls, which contradicts the permission logic.

Impacts:

  • Bypasses intended role-based access control for initiating calls.
  • Causes inconsistent behavior between top navigation buttons and chat-based actions.
  • Can lead to unauthorized or unexpected calls from restricted users.

Steps to Reproduce:

  • Create a new room and invite one user to the room.
  • Navigate to room settings > Voice & Video > Toggle App Element Calls button to disable element calls for the other users.
  • Initiate a call as an admin.
  • End the call and notice the call-back button on the remote side visible for the other user.
  • Click on the call back button and notice that the call will get initiated, although the a lack of permission on the user side.

Actual Result:

Image Image Image Image Image

Outcome

Expected Result:

  • The “Call back” button should be hidden or disabled for users who do not have permission to start calls.

  • All call initiation methods should respect the same permission rules across the UI.

#### What happened instead?
User can initiate a video or voice call via “Call back” even when call permissions are denied.

Operating system

Windows

Browser information

Version 138.0.7204.170

URL for webapp

https://app.element.io/

Application version

Element version: 1.11.108 Crypto version: Rust SDK 0.12.0 (b30f1f3), Vodozemac 0.9.0

Homeserver

matrix.org

Will you send logs?

No

Metadata

Metadata

Assignees

Labels

A-VoIPO-FrequentAffects or can be seen by most users regularly or impacts most users' first experienceS-MinorImpairs non-critical functionality or suitable workarounds existT-Defect

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions