Skip to content

Commit 909b197

Browse files
committed
feat: chime sdk api rewrite
1 parent dcf7b45 commit 909b197

16 files changed

Lines changed: 1225 additions & 1263 deletions

File tree

chime-sdk/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ plugins {
1212
}
1313

1414
group = "com.wannaverse"
15-
version = "0.2.1"
15+
version = "0.3.0"
1616

1717
kotlin {
1818
androidTarget {

chime-sdk/src/androidMain/kotlin/com/wannaverse/chimesdk/MeetingActiveSpeakerObserver.kt renamed to chime-sdk/src/androidMain/kotlin/com/wannaverse/chimesdk/ActiveSpeakerObserver.kt

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,20 +3,18 @@ package com.wannaverse.chimesdk
33
import com.amazonaws.services.chime.sdk.meetings.audiovideo.AttendeeInfo
44
import com.amazonaws.services.chime.sdk.meetings.audiovideo.audio.activespeakerdetector.ActiveSpeakerObserver
55

6-
object MeetingActiveSpeakerObserver : ActiveSpeakerObserver {
7-
private const val SPEAKING_THRESHOLD = 0.05
8-
var onActiveSpeakersChanged: ((Set<String>) -> Unit)? = null
6+
class ActiveSpeakerObserver(val onActiveSpeakersChanged: (Set<String>) -> Unit) : ActiveSpeakerObserver {
7+
companion object Companion {
8+
private const val SPEAKING_THRESHOLD = 0.05
9+
}
910

1011
override val scoreCallbackIntervalMs: Int = 500
1112

1213
override fun onActiveSpeakerDetected(attendeeInfo: Array<AttendeeInfo>) {}
1314

14-
override fun onActiveSpeakerScoreChanged(scores: Map<AttendeeInfo, Double>) {
15-
if (scores.isEmpty()) return
16-
val activeSpeakers = scores
17-
.filter { (_, score) -> score > SPEAKING_THRESHOLD }
15+
override fun onActiveSpeakerScoreChanged(scores: Map<AttendeeInfo, Double>) =
16+
scores.filter { (_, score) -> score > SPEAKING_THRESHOLD }
1817
.map { (attendee, _) -> attendee.externalUserId }
1918
.toSet()
20-
onActiveSpeakersChanged?.invoke(activeSpeakers)
21-
}
19+
.let(onActiveSpeakersChanged)
2220
}

chime-sdk/src/androidMain/kotlin/com/wannaverse/chimesdk/AudioVideoObserverImpl.kt

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,7 @@ class AudioVideoObserverImpl(
1010
private val onRemoteVideoAvailable: (isAvailable: Boolean, sourceCount: Int) -> Unit,
1111
private val onCameraSendAvailable: (available: Boolean) -> Unit,
1212
private val onSessionError: (message: String, isRecoverable: Boolean) -> Unit,
13-
private val onVideoNeedsRestart: () -> Unit,
14-
private val isJoiningOnMute: Boolean
13+
private val onVideoNeedsRestart: () -> Unit
1514
) : AudioVideoObserver {
1615

1716
private var isVideoSessionActive = false
@@ -30,10 +29,6 @@ class AudioVideoObserverImpl(
3029
override fun onAudioSessionStarted(reconnecting: Boolean) {
3130
onConnectionStatusChanged(ConnectionStatus.CONNECTED)
3231

33-
if (!reconnecting && isJoiningOnMute) {
34-
meetingSession?.audioVideo?.realtimeLocalMute()
35-
}
36-
3732
if (reconnecting && shouldRestartVideoAfterReconnect && !isVideoSessionActive) {
3833
onVideoNeedsRestart()
3934
shouldRestartVideoAfterReconnect = false

chime-sdk/src/androidMain/kotlin/com/wannaverse/chimesdk/ChimeLogger.kt

Lines changed: 0 additions & 35 deletions
This file was deleted.

0 commit comments

Comments
 (0)