Merge pull request #4925 from element-hq/feature/bma/elementCallCheck

Introduce SessionEnterpriseService.
This commit is contained in:
Benoit Marty 2025-06-24 12:52:07 +02:00 committed by GitHub
commit 6a088396ed
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
15 changed files with 95 additions and 20 deletions

View file

@ -164,6 +164,11 @@ interface MatrixClient {
* Check if the user can report a room.
*/
suspend fun canReportRoom(): Boolean
/**
* Return true if Livekit Rtc is supported, i.e. if Element Call is available.
*/
suspend fun isLivekitRtcSupported(): Boolean
}
/**

View file

@ -678,6 +678,10 @@ class RustMatrixClient(
}.getOrDefault(false)
}
override suspend fun isLivekitRtcSupported(): Boolean = withContext(sessionDispatcher) {
innerClient.isLivekitRtcSupported()
}
private suspend fun File.getCacheSize(
includeCryptoDb: Boolean = false,
): Long = withContext(sessionDispatcher) {

View file

@ -89,6 +89,7 @@ class FakeMatrixClient(
private val ignoreUserResult: (UserId) -> Result<Unit> = { lambdaError() },
private var unIgnoreUserResult: (UserId) -> Result<Unit> = { Result.success(Unit) },
private val canReportRoomLambda: () -> Boolean = { false },
private val isLivekitRtcSupportedLambda: () -> Boolean = { false },
override val ignoredUsersFlow: StateFlow<ImmutableList<UserId>> = MutableStateFlow(persistentListOf()),
) : MatrixClient {
var setDisplayNameCalled: Boolean = false
@ -334,4 +335,8 @@ class FakeMatrixClient(
override suspend fun canReportRoom(): Boolean {
return canReportRoomLambda()
}
override suspend fun isLivekitRtcSupported(): Boolean {
return isLivekitRtcSupportedLambda()
}
}