Skip to content

Conversation

@BillCarsonFr
Copy link
Member

Implements MSC4075

A new event m.rtc.notification is proposed which can be sent by a client that wants to notify others about the existence of a session for a MatrixRTC application.

Based on #5305
Depends on rust sdk matrix-org/matrix-rust-sdk#5668
and ruma ruma/ruma#2199

Content

Motivation and context

Screenshots / GIFs

Tests

  • Step 1
  • Step 2
  • Step ...

Tested devices

  • Physical
  • Emulator
  • OS version(s):

Checklist

@BillCarsonFr BillCarsonFr self-assigned this Sep 16, 2025
@BillCarsonFr BillCarsonFr added the PR-Change For updates to an existing feature label Sep 16, 2025
Base automatically changed from feature/valere/rtc/call_deline to develop September 16, 2025 08:25
@BillCarsonFr BillCarsonFr force-pushed the feature/valere/rtc/new_notification branch from 2a1a5c5 to d350a55 Compare September 17, 2025 13:29
@BillCarsonFr BillCarsonFr marked this pull request as ready for review September 17, 2025 13:31
@BillCarsonFr BillCarsonFr requested a review from a team as a code owner September 17, 2025 13:31
@BillCarsonFr BillCarsonFr requested review from jmartinesp and removed request for a team September 17, 2025 13:31
@github-actions
Copy link
Contributor

github-actions bot commented Sep 17, 2025

📱 Scan the QR code below to install the build (arm64 only) for this PR.
QR code
If you can't scan the QR code you can install the build via this link: https://i.diawi.com/A8Eaci

Copy link
Member

@jmartinesp jmartinesp left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the changes. I have a few comments, and I think you also need to fix the tests (you can run them with ./gradlew testDebugUnitTest).

mutex.withLock {
val ringDuration =
min(
notificationData.expirationTimestamp - System.currentTimeMillis(),
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think you need to use SystemClock here.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

thx.

val senderId: UserId,
) : MessageLike

data class CallNotify(
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Shouldn't we rename this too?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done in this commit 1a7ce36

@jmartinesp
Copy link
Member

Something definitely broke this time 😅 . It seems like it's conflicting imports?

Copy link
Member

@jmartinesp jmartinesp left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, let's hope it passes the CI this time 🤞 .

@sonarqubecloud
Copy link

@ElementBot
Copy link
Collaborator

Warnings
⚠️

gradle/libs.versions.toml#L7 - A newer version of com.android.tools.build:gradle than 8.11.1 is available: 8.13.0. (There is also a newer version of 8.11.𝑥 available, if upgrading to 8.13.0 is difficult: 8.11.2)

⚠️

gradle/libs.versions.toml#L9 - A newer version of org.jetbrains.kotlin.plugin.serialization than 2.2.10 is available: 2.2.20

⚠️

gradle/libs.versions.toml#L19 - A newer version of androidx.lifecycle:lifecycle-runtime-ktx than 2.9.2 is available: 2.9.4

⚠️

gradle/libs.versions.toml#L25 - A newer version of androidx.compose:compose-bom than 2025.07.00 is available: 2025.09.00

⚠️

gradle/libs.versions.toml#L47 - A newer version of me.saket.telephoto:zoomable-image-coil than 0.16.0 is available: 0.17.0

⚠️

gradle/libs.versions.toml#L51 - A newer version of com.autonomousapps:dependency-analysis-gradle-plugin than 2.19.0 is available: 3.0.4

⚠️

gradle/libs.versions.toml#L54 - A newer version of dev.zacsweers.metro:runtime than 0.6.4 is available: 0.6.6

⚠️

gradle/libs.versions.toml#L61 - A newer version of org.jetbrains.kotlinx:kover-gradle-plugin than 0.9.1 is available: 0.9.2

⚠️

gradle/libs.versions.toml#L157 - A newer version of org.robolectric:robolectric than 4.15.1 is available: 4.16

⚠️

gradle/libs.versions.toml#L201 - A newer version of com.posthog:posthog-android than 3.21.2 is available: 3.21.3

⚠️

libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/factories/NotificationCreator.kt#L469 - Use the KTX function createBitmap instead?

Generated by 🚫 dangerJS against b13c93f

@codecov
Copy link

codecov bot commented Sep 18, 2025

Codecov Report

❌ Patch coverage is 64.81481% with 19 lines in your changes missing coverage. Please review.
✅ Project coverage is 79.74%. Comparing base (0d7d33c) to head (b13c93f).
⚠️ Report is 9 commits behind head on develop.

Files with missing lines Patch % Lines
...cation/TimelineEventToNotificationContentMapper.kt 0.00% 6 Missing and 1 partial ⚠️
...mpl/notifications/CallNotificationEventResolver.kt 66.66% 0 Missing and 2 partials ⚠️
...eatures/messages/impl/actionlist/ActionListView.kt 0.00% 1 Missing ⚠️
...ssages/impl/timeline/components/TimelineItemRow.kt 0.00% 0 Missing and 1 partial ⚠️
...e/components/event/TimelineItemEventContentView.kt 0.00% 0 Missing and 1 partial ⚠️
...line/factories/event/TimelineItemContentFactory.kt 0.00% 1 Missing ⚠️
...ures/messages/impl/timeline/groups/Groupability.kt 0.00% 0 Missing and 1 partial ⚠️
...l/timeline/model/event/TimelineItemEventContent.kt 0.00% 0 Missing and 1 partial ⚠️
.../messages/impl/timeline/protection/TimelineItem.kt 0.00% 0 Missing and 1 partial ⚠️
...s/messagesummary/DefaultMessageSummaryFormatter.kt 0.00% 1 Missing ⚠️
... and 2 more
Additional details and impacted files
@@           Coverage Diff            @@
##           develop    #5357   +/-   ##
========================================
  Coverage    79.73%   79.74%           
========================================
  Files         2274     2274           
  Lines        62867    62888   +21     
  Branches      7874     7875    +1     
========================================
+ Hits         50130    50149   +19     
- Misses        9840     9842    +2     
  Partials      2897     2897           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@BillCarsonFr BillCarsonFr merged commit d30f385 into develop Sep 18, 2025
29 of 31 checks passed
@BillCarsonFr BillCarsonFr deleted the feature/valere/rtc/new_notification branch September 18, 2025 13:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

PR-Change For updates to an existing feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants