element-hq / element-hq/element-x-android
MatrixRTC calling cannot be initiated from Element X Android (OxygenOS 15, OnePlus Nord CE4 Lite 5G) despite correct server focus; joining existing calls works
- Dominant language
- Kotlin
- Stars
- 2.4k
- Forks
- 624
- Avg merge
- 1d 14h
- Merged PRs (30d)
- 149
Description
### Steps to reproduce
## Steps to reproduce:
Start in Element X App
1. Logged into a self-hosted Synapse server at matrix.kite-engineer.de.
2. Create a new room (private). The room opens normally.
3. Tap the video camera icon in the top right. Element Call opens a video preview.
4. Tap "Join call". The app immediately displays the error:
"Call not supported — Missing Matrix RTC focus for matrix.kite-engineer.de"
## Additional observations I can reproduce consistently:
In some rooms (those created on another device), the error appears immediately when I tap the video camera icon, without showing the preview screen at all.
When I initiate a call from Element X on my phone, my LiveKit JWT authoriser receives no request at all (verified by watching its logs).
When I initiate the same call from Element Web on my desktop, I can join the call on my phone without any issues. In that case the LiveKit JWT service logs appear normally.
The .well-known/matrix/client file is correct and accessible directly from my phone’s browser.
The following log excerpts are from the Element X “Export logs” feature ("Report a problem" menu).
Errors when initiating a call:
```
2025-11-26T19:52:48.796375Z ERROR elementx: [ElementCall] :2 {"l..."MISSING_MATRIX_RTC_FOCUS","domain":"matrix.kite-engineer.de"} |
2025-11-26T19:53:27.211179Z ERROR elementx: [ElementCall] :2 {"l..."MISSING_MATRIX_RTC_FOCUS","domain":"matrix.kite-engineer.de"} |
```
WebView/Element Call embedded app errors:
```
2025-11-26T19:52:46.036873Z ERROR elementx: [ElementCall] ... has blocked origin. Have the server send the header with a valid value.
2025-11-26T19:53:27.178675Z ERROR elementx: [ElementCall] ... blocked origin. Have the server send the header with a valid value.
```
Logs that appear when joining a call initiated on Element Web:
```
[ElementCall] MatrixRTCSessionEvent.MembershipsChanged ...
[ElementCall] Disconnected from livekit room, state:disconnected |
```
Full logfile:
Attached in the report via app
### Outcome
#### What did you expect?
I expected Element X Android to:
- Read the .well-known/matrix/client configuration from my homeserver.
- Detect the org.matrix.msc4143.rtc_foci configuration.
- Initiate a MatrixRTC call the same way Element Web does. thus allowing me to make (video) calls started via Element X.
- Contact my auth service (livekit-jwt) to create or join a LiveKit room.
#### What happened instead?
- No (video) call can be tarted. Element X Android reports:
`Call not supported — MISSING_MATRIX_RTC_FOCUS (domain: matrix.kite-engineer.de)`
- No log entries showing up in the livekit-jwt container unlike when done via Element web/ ergo: no request to it is made from Element X
### Your phone model
OnePlus Nord CE4 Lite 5G
### Operating system version
OxygenOS 15.0
### Application version and app store
Element X Version 25.11.2 (202511022)
### Homeserver
matrix.kite-engineer.de
### Will you send logs?
Yes
### Are you willing to provide a PR?
No
Contributor guide
Assessment
This issue has not been assessed yet.