Skip to content

Add a dedicated audio-only call button for 1:1 DM rooms on iOS #5293

Description

@vlglex-crypto

Is your suggestion related to a problem?
Yes. Element X iOS only shows a video call button (camera icon) in room headers. There is no way to initiate an audio-only call directly.

On Element X Android, users can start a video call and toggle the camera off to switch to audio-only mode ("Handset Mode") — this works fine. However, on iOS there is no equivalent workflow or dedicated audio call button.

This is a significant regression from Element Classic iOS, which had separate audio (phone icon) and video (camera icon) call buttons.

Describe the solution you'd like:
Add a phone/handset icon button next to the existing video call button in 1:1 DM rooms. Tapping it should start a MatrixRTC/Element Call session with the camera disabled by default and only microphone active.

This doesn't require legacy VoIP support — it's simply starting an Element Call with camera: off, microphone: on as the initial state. Android already supports this workflow (Handset Mode), iOS should match it.

Describe alternatives you've considered:

  • Starting video call then disabling camera: no clear way to do this on iOS
  • Using Element Classic instead: losing Sliding Sync, MAS, and modern features
  • Using a different messenger: defeats the purpose of Matrix

Additional context:
Audio-only calls are the most common call type for family/friend groups. Not everyone wants video every time — sometimes you're cooking, driving (hands-free), or just don't want to show your face. Every competing messenger (WhatsApp, Telegram, Signal, Discord) has a dedicated audio call button. Its absence in Element X iOS is the #1 complaint from non-technical users in our self-hosted family deployment.

Our setup: Synapse v1.149.1 + MAS + LiveKit SFU + coturn. Video calls work perfectly on both Android and iOS. Audio calls work on Android (via camera toggle / Handset Mode) but have no equivalent on iOS.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions