fix(call): pin the embedded Element Call to 0.26.1 so incoming calls ring

Element Call 0.28.0 bundles a matrix-js-sdk that no longer publishes
livekit_alias in the call membership's foci_preferred (element-call #4307,
matrix-js-sdk #5573). Ruma requires the field, so the Rust SDK in
Element X iOS and in this app discards the membership: the iPhone shows a
plain notification instead of ringing, and Android no longer notices a
cancelled call. 0.26.1 is the last release whose js-sdk still sends the
alias and is the version Element X iOS embeds.
This commit is contained in:
Sedat Qaja
2026-10-21 16:03:13 +02:00
parent f18c3acdfc
commit d5ab58b611
2 changed files with 22 additions and 1 deletions
+8 -1
View File
@@ -239,7 +239,14 @@ sigpwned_emoji4j = "com.sigpwned:emoji4j-core:16.0.0"
metro_runtime = { module = "dev.zacsweers.metro:runtime", version.ref = "metro" }
# Element Call
element_call_embedded = "io.element.android:element-call-embedded:0.28.0"
# HealthChat fork: pinned to 0.26.1, the last Element Call that still publishes `livekit_alias` in its
# call membership (element-call #4307, matrix-js-sdk #5573, first shipped in 0.28.0). ruma requires the
# field, so a Rust-SDK client (Element X iOS and this app) drops the membership, `has_active_room_call`
# stays false and no incoming call rings. iOS embeds the same 0.26.1; the hosted Element Call on the
# server must stay on 0.26.1 too, or calls from web and desktop stop ringing. 0.27.0 exists on Maven
# only, without a GitHub release. Lift the pin only when both apps ship a Rust SDK whose ruma accepts
# memberships without the alias.
element_call_embedded = "io.element.android:element-call-embedded:0.26.1"
# The native MatrixRTC call component. Versions come from the BOM, so every artifact moves together.
element_call_bom = { module = "io.element.android:element-call-bom", version.ref = "element_call" }
element_call_api = { module = "io.element.android:element-call-api" }