Move Voice Broadcast constants into dedicated object
This commit is contained in:
parent
3ad245db8b
commit
aecb66015d
@ -16,7 +16,7 @@
|
|||||||
|
|
||||||
package im.vector.app.core.extensions
|
package im.vector.app.core.extensions
|
||||||
|
|
||||||
import im.vector.app.features.voicebroadcast.STATE_ROOM_VOICE_BROADCAST_INFO
|
import im.vector.app.features.voicebroadcast.VoiceBroadcastConstants
|
||||||
import im.vector.app.features.voicebroadcast.model.MessageVoiceBroadcastInfoContent
|
import im.vector.app.features.voicebroadcast.model.MessageVoiceBroadcastInfoContent
|
||||||
import org.matrix.android.sdk.api.session.events.model.EventType
|
import org.matrix.android.sdk.api.session.events.model.EventType
|
||||||
import org.matrix.android.sdk.api.session.events.model.toModel
|
import org.matrix.android.sdk.api.session.events.model.toModel
|
||||||
@ -39,7 +39,9 @@ fun TimelineEvent.canReact(): Boolean {
|
|||||||
fun TimelineEvent.getVectorLastMessageContent(): MessageContent? {
|
fun TimelineEvent.getVectorLastMessageContent(): MessageContent? {
|
||||||
// Iterate on event types which are not part of the matrix sdk, otherwise fallback to the sdk method
|
// Iterate on event types which are not part of the matrix sdk, otherwise fallback to the sdk method
|
||||||
return when (root.getClearType()) {
|
return when (root.getClearType()) {
|
||||||
STATE_ROOM_VOICE_BROADCAST_INFO -> (annotations?.editSummary?.latestContent ?: root.getClearContent()).toModel<MessageVoiceBroadcastInfoContent>()
|
VoiceBroadcastConstants.STATE_ROOM_VOICE_BROADCAST_INFO -> {
|
||||||
|
(annotations?.editSummary?.latestContent ?: root.getClearContent()).toModel<MessageVoiceBroadcastInfoContent>()
|
||||||
|
}
|
||||||
else -> getLastMessageContent()
|
else -> getLastMessageContent()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -17,7 +17,7 @@
|
|||||||
package im.vector.app.features.home.room.detail.timeline.action
|
package im.vector.app.features.home.room.detail.timeline.action
|
||||||
|
|
||||||
import im.vector.app.core.di.ActiveSessionHolder
|
import im.vector.app.core.di.ActiveSessionHolder
|
||||||
import im.vector.app.features.voicebroadcast.STATE_ROOM_VOICE_BROADCAST_INFO
|
import im.vector.app.features.voicebroadcast.VoiceBroadcastConstants
|
||||||
import org.matrix.android.sdk.api.session.events.model.EventType
|
import org.matrix.android.sdk.api.session.events.model.EventType
|
||||||
import org.matrix.android.sdk.api.session.room.timeline.TimelineEvent
|
import org.matrix.android.sdk.api.session.room.timeline.TimelineEvent
|
||||||
import javax.inject.Inject
|
import javax.inject.Inject
|
||||||
@ -31,7 +31,7 @@ class CheckIfCanRedactEventUseCase @Inject constructor(
|
|||||||
val canRedactEventTypes: List<String> = listOf(
|
val canRedactEventTypes: List<String> = listOf(
|
||||||
EventType.MESSAGE,
|
EventType.MESSAGE,
|
||||||
EventType.STICKER,
|
EventType.STICKER,
|
||||||
STATE_ROOM_VOICE_BROADCAST_INFO,
|
VoiceBroadcastConstants.STATE_ROOM_VOICE_BROADCAST_INFO,
|
||||||
) +
|
) +
|
||||||
EventType.POLL_START +
|
EventType.POLL_START +
|
||||||
EventType.STATE_ROOM_BEACON_INFO
|
EventType.STATE_ROOM_BEACON_INFO
|
||||||
|
@ -21,7 +21,7 @@ import im.vector.app.core.epoxy.TimelineEmptyItem_
|
|||||||
import im.vector.app.core.epoxy.VectorEpoxyModel
|
import im.vector.app.core.epoxy.VectorEpoxyModel
|
||||||
import im.vector.app.features.analytics.DecryptionFailureTracker
|
import im.vector.app.features.analytics.DecryptionFailureTracker
|
||||||
import im.vector.app.features.home.room.detail.timeline.helper.TimelineEventVisibilityHelper
|
import im.vector.app.features.home.room.detail.timeline.helper.TimelineEventVisibilityHelper
|
||||||
import im.vector.app.features.voicebroadcast.STATE_ROOM_VOICE_BROADCAST_INFO
|
import im.vector.app.features.voicebroadcast.VoiceBroadcastConstants
|
||||||
import org.matrix.android.sdk.api.session.events.model.EventType
|
import org.matrix.android.sdk.api.session.events.model.EventType
|
||||||
import org.matrix.android.sdk.api.session.room.timeline.TimelineEvent
|
import org.matrix.android.sdk.api.session.room.timeline.TimelineEvent
|
||||||
import timber.log.Timber
|
import timber.log.Timber
|
||||||
@ -89,7 +89,7 @@ class TimelineItemFactory @Inject constructor(
|
|||||||
// State room create
|
// State room create
|
||||||
EventType.STATE_ROOM_CREATE -> roomCreateItemFactory.create(params)
|
EventType.STATE_ROOM_CREATE -> roomCreateItemFactory.create(params)
|
||||||
in EventType.STATE_ROOM_BEACON_INFO -> messageItemFactory.create(params)
|
in EventType.STATE_ROOM_BEACON_INFO -> messageItemFactory.create(params)
|
||||||
STATE_ROOM_VOICE_BROADCAST_INFO -> messageItemFactory.create(params)
|
VoiceBroadcastConstants.STATE_ROOM_VOICE_BROADCAST_INFO -> messageItemFactory.create(params)
|
||||||
// Unhandled state event types
|
// Unhandled state event types
|
||||||
else -> {
|
else -> {
|
||||||
// Should only happen when shouldShowHiddenEvents() settings is ON
|
// Should only happen when shouldShowHiddenEvents() settings is ON
|
||||||
|
@ -16,7 +16,7 @@
|
|||||||
|
|
||||||
package im.vector.app.features.home.room.detail.timeline.helper
|
package im.vector.app.features.home.room.detail.timeline.helper
|
||||||
|
|
||||||
import im.vector.app.features.voicebroadcast.STATE_ROOM_VOICE_BROADCAST_INFO
|
import im.vector.app.features.voicebroadcast.VoiceBroadcastConstants
|
||||||
import org.matrix.android.sdk.api.session.events.model.EventType
|
import org.matrix.android.sdk.api.session.events.model.EventType
|
||||||
import org.matrix.android.sdk.api.session.room.timeline.TimelineEvent
|
import org.matrix.android.sdk.api.session.room.timeline.TimelineEvent
|
||||||
|
|
||||||
@ -52,7 +52,7 @@ object TimelineDisplayableEvents {
|
|||||||
EventType.STATE_ROOM_JOIN_RULES,
|
EventType.STATE_ROOM_JOIN_RULES,
|
||||||
EventType.KEY_VERIFICATION_DONE,
|
EventType.KEY_VERIFICATION_DONE,
|
||||||
EventType.KEY_VERIFICATION_CANCEL,
|
EventType.KEY_VERIFICATION_CANCEL,
|
||||||
STATE_ROOM_VOICE_BROADCAST_INFO,
|
VoiceBroadcastConstants.STATE_ROOM_VOICE_BROADCAST_INFO,
|
||||||
) +
|
) +
|
||||||
EventType.POLL_START +
|
EventType.POLL_START +
|
||||||
EventType.STATE_ROOM_BEACON_INFO +
|
EventType.STATE_ROOM_BEACON_INFO +
|
||||||
|
@ -17,7 +17,7 @@
|
|||||||
package im.vector.app.features.home.room.detail.timeline.helper
|
package im.vector.app.features.home.room.detail.timeline.helper
|
||||||
|
|
||||||
import im.vector.app.core.utils.TextUtils
|
import im.vector.app.core.utils.TextUtils
|
||||||
import im.vector.app.features.voicebroadcast.STATE_ROOM_VOICE_BROADCAST_INFO
|
import im.vector.app.features.voicebroadcast.VoiceBroadcastConstants
|
||||||
import im.vector.app.features.voicebroadcast.model.VoiceBroadcastState
|
import im.vector.app.features.voicebroadcast.model.VoiceBroadcastState
|
||||||
import im.vector.app.features.voicebroadcast.model.asVoiceBroadcastEvent
|
import im.vector.app.features.voicebroadcast.model.asVoiceBroadcastEvent
|
||||||
import org.matrix.android.sdk.api.extensions.orFalse
|
import org.matrix.android.sdk.api.extensions.orFalse
|
||||||
@ -59,7 +59,7 @@ class TimelineEventsGroups {
|
|||||||
val content = root.getClearContent()
|
val content = root.getClearContent()
|
||||||
return when {
|
return when {
|
||||||
EventType.isCallEvent(type) -> (content?.get("call_id") as? String)
|
EventType.isCallEvent(type) -> (content?.get("call_id") as? String)
|
||||||
type == STATE_ROOM_VOICE_BROADCAST_INFO -> root.asVoiceBroadcastEvent()?.reference?.eventId
|
type == VoiceBroadcastConstants.STATE_ROOM_VOICE_BROADCAST_INFO -> root.asVoiceBroadcastEvent()?.reference?.eventId
|
||||||
type == EventType.STATE_ROOM_WIDGET || type == EventType.STATE_ROOM_WIDGET_LEGACY -> root.stateKey
|
type == EventType.STATE_ROOM_WIDGET || type == EventType.STATE_ROOM_WIDGET_LEGACY -> root.stateKey
|
||||||
else -> {
|
else -> {
|
||||||
null
|
null
|
||||||
|
@ -16,5 +16,8 @@
|
|||||||
|
|
||||||
package im.vector.app.features.voicebroadcast
|
package im.vector.app.features.voicebroadcast
|
||||||
|
|
||||||
/** Voice Broadcast State Event. */
|
object VoiceBroadcastConstants {
|
||||||
const val STATE_ROOM_VOICE_BROADCAST_INFO = "io.element.voice_broadcast_info"
|
|
||||||
|
/** Voice Broadcast State Event. */
|
||||||
|
const val STATE_ROOM_VOICE_BROADCAST_INFO = "io.element.voice_broadcast_info"
|
||||||
|
}
|
||||||
|
@ -18,7 +18,7 @@ package im.vector.app.features.voicebroadcast.model
|
|||||||
|
|
||||||
import com.squareup.moshi.Json
|
import com.squareup.moshi.Json
|
||||||
import com.squareup.moshi.JsonClass
|
import com.squareup.moshi.JsonClass
|
||||||
import im.vector.app.features.voicebroadcast.STATE_ROOM_VOICE_BROADCAST_INFO
|
import im.vector.app.features.voicebroadcast.VoiceBroadcastConstants
|
||||||
import org.matrix.android.sdk.api.session.events.model.Content
|
import org.matrix.android.sdk.api.session.events.model.Content
|
||||||
import org.matrix.android.sdk.api.session.room.model.message.MessageContent
|
import org.matrix.android.sdk.api.session.room.model.message.MessageContent
|
||||||
import org.matrix.android.sdk.api.session.room.model.message.MessageType.MSGTYPE_VOICE_BROADCAST_INFO
|
import org.matrix.android.sdk.api.session.room.model.message.MessageType.MSGTYPE_VOICE_BROADCAST_INFO
|
||||||
@ -26,7 +26,7 @@ import org.matrix.android.sdk.api.session.room.model.relation.RelationDefaultCon
|
|||||||
import timber.log.Timber
|
import timber.log.Timber
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Content of the state event of type [STATE_ROOM_VOICE_BROADCAST_INFO].
|
* Content of the state event of type [VoiceBroadcastConstants.STATE_ROOM_VOICE_BROADCAST_INFO].
|
||||||
*
|
*
|
||||||
* It contains general info related to a voice broadcast.
|
* It contains general info related to a voice broadcast.
|
||||||
*/
|
*/
|
||||||
|
@ -16,14 +16,14 @@
|
|||||||
|
|
||||||
package im.vector.app.features.voicebroadcast.model
|
package im.vector.app.features.voicebroadcast.model
|
||||||
|
|
||||||
import im.vector.app.features.voicebroadcast.STATE_ROOM_VOICE_BROADCAST_INFO
|
import im.vector.app.features.voicebroadcast.VoiceBroadcastConstants
|
||||||
import org.matrix.android.sdk.api.session.events.model.Event
|
import org.matrix.android.sdk.api.session.events.model.Event
|
||||||
import org.matrix.android.sdk.api.session.events.model.RelationType
|
import org.matrix.android.sdk.api.session.events.model.RelationType
|
||||||
import org.matrix.android.sdk.api.session.events.model.toModel
|
import org.matrix.android.sdk.api.session.events.model.toModel
|
||||||
import org.matrix.android.sdk.api.session.room.model.relation.RelationDefaultContent
|
import org.matrix.android.sdk.api.session.room.model.relation.RelationDefaultContent
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* [Event] wrapper for [STATE_ROOM_VOICE_BROADCAST_INFO] event type.
|
* [Event] wrapper for [VoiceBroadcastConstants.STATE_ROOM_VOICE_BROADCAST_INFO] event type.
|
||||||
* Provides additional fields and functions related to voice broadcast.
|
* Provides additional fields and functions related to voice broadcast.
|
||||||
*/
|
*/
|
||||||
@JvmInline
|
@JvmInline
|
||||||
@ -50,6 +50,6 @@ value class VoiceBroadcastEvent(val root: Event) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Map a [STATE_ROOM_VOICE_BROADCAST_INFO] state event to a [VoiceBroadcastEvent].
|
* Map a [VoiceBroadcastConstants.STATE_ROOM_VOICE_BROADCAST_INFO] state event to a [VoiceBroadcastEvent].
|
||||||
*/
|
*/
|
||||||
fun Event.asVoiceBroadcastEvent() = if (type == STATE_ROOM_VOICE_BROADCAST_INFO) VoiceBroadcastEvent(this) else null
|
fun Event.asVoiceBroadcastEvent() = if (type == VoiceBroadcastConstants.STATE_ROOM_VOICE_BROADCAST_INFO) VoiceBroadcastEvent(this) else null
|
||||||
|
@ -16,7 +16,7 @@
|
|||||||
|
|
||||||
package im.vector.app.features.voicebroadcast.usecase
|
package im.vector.app.features.voicebroadcast.usecase
|
||||||
|
|
||||||
import im.vector.app.features.voicebroadcast.STATE_ROOM_VOICE_BROADCAST_INFO
|
import im.vector.app.features.voicebroadcast.VoiceBroadcastConstants
|
||||||
import im.vector.app.features.voicebroadcast.VoiceBroadcastRecorder
|
import im.vector.app.features.voicebroadcast.VoiceBroadcastRecorder
|
||||||
import im.vector.app.features.voicebroadcast.model.MessageVoiceBroadcastInfoContent
|
import im.vector.app.features.voicebroadcast.model.MessageVoiceBroadcastInfoContent
|
||||||
import im.vector.app.features.voicebroadcast.model.VoiceBroadcastState
|
import im.vector.app.features.voicebroadcast.model.VoiceBroadcastState
|
||||||
@ -41,7 +41,7 @@ class PauseVoiceBroadcastUseCase @Inject constructor(
|
|||||||
Timber.d("## PauseVoiceBroadcastUseCase: Pause voice broadcast requested")
|
Timber.d("## PauseVoiceBroadcastUseCase: Pause voice broadcast requested")
|
||||||
|
|
||||||
val lastVoiceBroadcastEvent = room.stateService().getStateEvent(
|
val lastVoiceBroadcastEvent = room.stateService().getStateEvent(
|
||||||
STATE_ROOM_VOICE_BROADCAST_INFO,
|
VoiceBroadcastConstants.STATE_ROOM_VOICE_BROADCAST_INFO,
|
||||||
QueryStringValue.Equals(session.myUserId)
|
QueryStringValue.Equals(session.myUserId)
|
||||||
)?.asVoiceBroadcastEvent()
|
)?.asVoiceBroadcastEvent()
|
||||||
when (val voiceBroadcastState = lastVoiceBroadcastEvent?.content?.voiceBroadcastState) {
|
when (val voiceBroadcastState = lastVoiceBroadcastEvent?.content?.voiceBroadcastState) {
|
||||||
@ -54,7 +54,7 @@ class PauseVoiceBroadcastUseCase @Inject constructor(
|
|||||||
private suspend fun pauseVoiceBroadcast(room: Room, reference: RelationDefaultContent?) {
|
private suspend fun pauseVoiceBroadcast(room: Room, reference: RelationDefaultContent?) {
|
||||||
Timber.d("## PauseVoiceBroadcastUseCase: Send new voice broadcast info state event")
|
Timber.d("## PauseVoiceBroadcastUseCase: Send new voice broadcast info state event")
|
||||||
room.stateService().sendStateEvent(
|
room.stateService().sendStateEvent(
|
||||||
eventType = STATE_ROOM_VOICE_BROADCAST_INFO,
|
eventType = VoiceBroadcastConstants.STATE_ROOM_VOICE_BROADCAST_INFO,
|
||||||
stateKey = session.myUserId,
|
stateKey = session.myUserId,
|
||||||
body = MessageVoiceBroadcastInfoContent(
|
body = MessageVoiceBroadcastInfoContent(
|
||||||
relatesTo = reference,
|
relatesTo = reference,
|
||||||
|
@ -16,7 +16,7 @@
|
|||||||
|
|
||||||
package im.vector.app.features.voicebroadcast.usecase
|
package im.vector.app.features.voicebroadcast.usecase
|
||||||
|
|
||||||
import im.vector.app.features.voicebroadcast.STATE_ROOM_VOICE_BROADCAST_INFO
|
import im.vector.app.features.voicebroadcast.VoiceBroadcastConstants
|
||||||
import im.vector.app.features.voicebroadcast.VoiceBroadcastRecorder
|
import im.vector.app.features.voicebroadcast.VoiceBroadcastRecorder
|
||||||
import im.vector.app.features.voicebroadcast.model.MessageVoiceBroadcastInfoContent
|
import im.vector.app.features.voicebroadcast.model.MessageVoiceBroadcastInfoContent
|
||||||
import im.vector.app.features.voicebroadcast.model.VoiceBroadcastState
|
import im.vector.app.features.voicebroadcast.model.VoiceBroadcastState
|
||||||
@ -41,7 +41,7 @@ class ResumeVoiceBroadcastUseCase @Inject constructor(
|
|||||||
Timber.d("## ResumeVoiceBroadcastUseCase: Resume voice broadcast requested")
|
Timber.d("## ResumeVoiceBroadcastUseCase: Resume voice broadcast requested")
|
||||||
|
|
||||||
val lastVoiceBroadcastEvent = room.stateService().getStateEvent(
|
val lastVoiceBroadcastEvent = room.stateService().getStateEvent(
|
||||||
STATE_ROOM_VOICE_BROADCAST_INFO,
|
VoiceBroadcastConstants.STATE_ROOM_VOICE_BROADCAST_INFO,
|
||||||
QueryStringValue.Equals(session.myUserId)
|
QueryStringValue.Equals(session.myUserId)
|
||||||
)?.asVoiceBroadcastEvent()
|
)?.asVoiceBroadcastEvent()
|
||||||
when (val voiceBroadcastState = lastVoiceBroadcastEvent?.content?.voiceBroadcastState) {
|
when (val voiceBroadcastState = lastVoiceBroadcastEvent?.content?.voiceBroadcastState) {
|
||||||
@ -59,7 +59,7 @@ class ResumeVoiceBroadcastUseCase @Inject constructor(
|
|||||||
private suspend fun resumeVoiceBroadcast(room: Room, reference: RelationDefaultContent?) {
|
private suspend fun resumeVoiceBroadcast(room: Room, reference: RelationDefaultContent?) {
|
||||||
Timber.d("## ResumeVoiceBroadcastUseCase: Send new voice broadcast info state event")
|
Timber.d("## ResumeVoiceBroadcastUseCase: Send new voice broadcast info state event")
|
||||||
room.stateService().sendStateEvent(
|
room.stateService().sendStateEvent(
|
||||||
eventType = STATE_ROOM_VOICE_BROADCAST_INFO,
|
eventType = VoiceBroadcastConstants.STATE_ROOM_VOICE_BROADCAST_INFO,
|
||||||
stateKey = session.myUserId,
|
stateKey = session.myUserId,
|
||||||
body = MessageVoiceBroadcastInfoContent(
|
body = MessageVoiceBroadcastInfoContent(
|
||||||
relatesTo = reference,
|
relatesTo = reference,
|
||||||
|
@ -21,7 +21,7 @@ import android.os.Build
|
|||||||
import androidx.core.content.FileProvider
|
import androidx.core.content.FileProvider
|
||||||
import im.vector.app.core.resources.BuildMeta
|
import im.vector.app.core.resources.BuildMeta
|
||||||
import im.vector.app.features.attachments.toContentAttachmentData
|
import im.vector.app.features.attachments.toContentAttachmentData
|
||||||
import im.vector.app.features.voicebroadcast.STATE_ROOM_VOICE_BROADCAST_INFO
|
import im.vector.app.features.voicebroadcast.VoiceBroadcastConstants
|
||||||
import im.vector.app.features.voicebroadcast.VoiceBroadcastRecorder
|
import im.vector.app.features.voicebroadcast.VoiceBroadcastRecorder
|
||||||
import im.vector.app.features.voicebroadcast.model.MessageVoiceBroadcastInfoContent
|
import im.vector.app.features.voicebroadcast.model.MessageVoiceBroadcastInfoContent
|
||||||
import im.vector.app.features.voicebroadcast.model.VoiceBroadcastState
|
import im.vector.app.features.voicebroadcast.model.VoiceBroadcastState
|
||||||
@ -51,7 +51,7 @@ class StartVoiceBroadcastUseCase @Inject constructor(
|
|||||||
Timber.d("## StartVoiceBroadcastUseCase: Start voice broadcast requested")
|
Timber.d("## StartVoiceBroadcastUseCase: Start voice broadcast requested")
|
||||||
|
|
||||||
val onGoingVoiceBroadcastEvents = room.stateService().getStateEvents(
|
val onGoingVoiceBroadcastEvents = room.stateService().getStateEvents(
|
||||||
setOf(STATE_ROOM_VOICE_BROADCAST_INFO),
|
setOf(VoiceBroadcastConstants.STATE_ROOM_VOICE_BROADCAST_INFO),
|
||||||
QueryStringValue.IsNotEmpty
|
QueryStringValue.IsNotEmpty
|
||||||
)
|
)
|
||||||
.mapNotNull { it.asVoiceBroadcastEvent() }
|
.mapNotNull { it.asVoiceBroadcastEvent() }
|
||||||
@ -67,7 +67,7 @@ class StartVoiceBroadcastUseCase @Inject constructor(
|
|||||||
private suspend fun startVoiceBroadcast(room: Room) {
|
private suspend fun startVoiceBroadcast(room: Room) {
|
||||||
Timber.d("## StartVoiceBroadcastUseCase: Send new voice broadcast info state event")
|
Timber.d("## StartVoiceBroadcastUseCase: Send new voice broadcast info state event")
|
||||||
val eventId = room.stateService().sendStateEvent(
|
val eventId = room.stateService().sendStateEvent(
|
||||||
eventType = STATE_ROOM_VOICE_BROADCAST_INFO,
|
eventType = VoiceBroadcastConstants.STATE_ROOM_VOICE_BROADCAST_INFO,
|
||||||
stateKey = session.myUserId,
|
stateKey = session.myUserId,
|
||||||
body = MessageVoiceBroadcastInfoContent(
|
body = MessageVoiceBroadcastInfoContent(
|
||||||
voiceBroadcastStateStr = VoiceBroadcastState.STARTED.value,
|
voiceBroadcastStateStr = VoiceBroadcastState.STARTED.value,
|
||||||
|
@ -17,7 +17,7 @@
|
|||||||
package im.vector.app.features.voicebroadcast.usecase
|
package im.vector.app.features.voicebroadcast.usecase
|
||||||
|
|
||||||
import android.os.Build
|
import android.os.Build
|
||||||
import im.vector.app.features.voicebroadcast.STATE_ROOM_VOICE_BROADCAST_INFO
|
import im.vector.app.features.voicebroadcast.VoiceBroadcastConstants
|
||||||
import im.vector.app.features.voicebroadcast.VoiceBroadcastRecorder
|
import im.vector.app.features.voicebroadcast.VoiceBroadcastRecorder
|
||||||
import im.vector.app.features.voicebroadcast.model.MessageVoiceBroadcastInfoContent
|
import im.vector.app.features.voicebroadcast.model.MessageVoiceBroadcastInfoContent
|
||||||
import im.vector.app.features.voicebroadcast.model.VoiceBroadcastState
|
import im.vector.app.features.voicebroadcast.model.VoiceBroadcastState
|
||||||
@ -42,7 +42,7 @@ class StopVoiceBroadcastUseCase @Inject constructor(
|
|||||||
Timber.d("## StopVoiceBroadcastUseCase: Stop voice broadcast requested")
|
Timber.d("## StopVoiceBroadcastUseCase: Stop voice broadcast requested")
|
||||||
|
|
||||||
val lastVoiceBroadcastEvent = room.stateService().getStateEvent(
|
val lastVoiceBroadcastEvent = room.stateService().getStateEvent(
|
||||||
STATE_ROOM_VOICE_BROADCAST_INFO,
|
VoiceBroadcastConstants.STATE_ROOM_VOICE_BROADCAST_INFO,
|
||||||
QueryStringValue.Equals(session.myUserId)
|
QueryStringValue.Equals(session.myUserId)
|
||||||
)?.asVoiceBroadcastEvent()
|
)?.asVoiceBroadcastEvent()
|
||||||
when (val voiceBroadcastState = lastVoiceBroadcastEvent?.content?.voiceBroadcastState) {
|
when (val voiceBroadcastState = lastVoiceBroadcastEvent?.content?.voiceBroadcastState) {
|
||||||
@ -56,7 +56,7 @@ class StopVoiceBroadcastUseCase @Inject constructor(
|
|||||||
private suspend fun stopVoiceBroadcast(room: Room, reference: RelationDefaultContent?) {
|
private suspend fun stopVoiceBroadcast(room: Room, reference: RelationDefaultContent?) {
|
||||||
Timber.d("## StopVoiceBroadcastUseCase: Send new voice broadcast info state event")
|
Timber.d("## StopVoiceBroadcastUseCase: Send new voice broadcast info state event")
|
||||||
room.stateService().sendStateEvent(
|
room.stateService().sendStateEvent(
|
||||||
eventType = STATE_ROOM_VOICE_BROADCAST_INFO,
|
eventType = VoiceBroadcastConstants.STATE_ROOM_VOICE_BROADCAST_INFO,
|
||||||
stateKey = session.myUserId,
|
stateKey = session.myUserId,
|
||||||
body = MessageVoiceBroadcastInfoContent(
|
body = MessageVoiceBroadcastInfoContent(
|
||||||
relatesTo = reference,
|
relatesTo = reference,
|
||||||
|
@ -16,7 +16,7 @@
|
|||||||
|
|
||||||
package im.vector.app.features.home.room.detail.timeline.action
|
package im.vector.app.features.home.room.detail.timeline.action
|
||||||
|
|
||||||
import im.vector.app.features.voicebroadcast.STATE_ROOM_VOICE_BROADCAST_INFO
|
import im.vector.app.features.voicebroadcast.VoiceBroadcastConstants
|
||||||
import im.vector.app.test.fakes.FakeActiveSessionHolder
|
import im.vector.app.test.fakes.FakeActiveSessionHolder
|
||||||
import io.mockk.mockk
|
import io.mockk.mockk
|
||||||
import org.amshove.kluent.shouldBe
|
import org.amshove.kluent.shouldBe
|
||||||
@ -35,7 +35,7 @@ class CheckIfCanRedactEventUseCaseTest {
|
|||||||
|
|
||||||
@Test
|
@Test
|
||||||
fun `given an event which can be redacted and owned by user when use case executes then the result is true`() {
|
fun `given an event which can be redacted and owned by user when use case executes then the result is true`() {
|
||||||
val canRedactEventTypes = listOf(EventType.MESSAGE, EventType.STICKER, STATE_ROOM_VOICE_BROADCAST_INFO) +
|
val canRedactEventTypes = listOf(EventType.MESSAGE, EventType.STICKER, VoiceBroadcastConstants.STATE_ROOM_VOICE_BROADCAST_INFO) +
|
||||||
EventType.POLL_START + EventType.STATE_ROOM_BEACON_INFO
|
EventType.POLL_START + EventType.STATE_ROOM_BEACON_INFO
|
||||||
|
|
||||||
canRedactEventTypes.forEach { eventType ->
|
canRedactEventTypes.forEach { eventType ->
|
||||||
|
@ -16,7 +16,7 @@
|
|||||||
|
|
||||||
package im.vector.app.features.voicebroadcast.model
|
package im.vector.app.features.voicebroadcast.model
|
||||||
|
|
||||||
import im.vector.app.features.voicebroadcast.STATE_ROOM_VOICE_BROADCAST_INFO
|
import im.vector.app.features.voicebroadcast.VoiceBroadcastConstants
|
||||||
import org.amshove.kluent.shouldBeEqualTo
|
import org.amshove.kluent.shouldBeEqualTo
|
||||||
import org.amshove.kluent.shouldBeNull
|
import org.amshove.kluent.shouldBeNull
|
||||||
import org.amshove.kluent.shouldNotBeNull
|
import org.amshove.kluent.shouldNotBeNull
|
||||||
@ -48,7 +48,7 @@ class VoiceBroadcastEventTest {
|
|||||||
)
|
)
|
||||||
val event = Event(
|
val event = Event(
|
||||||
eventId = AN_EVENT_ID,
|
eventId = AN_EVENT_ID,
|
||||||
type = STATE_ROOM_VOICE_BROADCAST_INFO,
|
type = VoiceBroadcastConstants.STATE_ROOM_VOICE_BROADCAST_INFO,
|
||||||
content = content.toContent(),
|
content = content.toContent(),
|
||||||
)
|
)
|
||||||
val expectedReference = RelationDefaultContent(RelationType.REFERENCE, event.eventId)
|
val expectedReference = RelationDefaultContent(RelationType.REFERENCE, event.eventId)
|
||||||
@ -71,7 +71,7 @@ class VoiceBroadcastEventTest {
|
|||||||
relatesTo = RelationDefaultContent(RelationType.REFERENCE, A_REFERENCED_EVENT_ID),
|
relatesTo = RelationDefaultContent(RelationType.REFERENCE, A_REFERENCED_EVENT_ID),
|
||||||
)
|
)
|
||||||
val event = Event(
|
val event = Event(
|
||||||
type = STATE_ROOM_VOICE_BROADCAST_INFO,
|
type = VoiceBroadcastConstants.STATE_ROOM_VOICE_BROADCAST_INFO,
|
||||||
content = content.toContent(),
|
content = content.toContent(),
|
||||||
)
|
)
|
||||||
val expectedReference = content.relatesTo
|
val expectedReference = content.relatesTo
|
||||||
|
@ -16,7 +16,7 @@
|
|||||||
|
|
||||||
package im.vector.app.features.voicebroadcast.usecase
|
package im.vector.app.features.voicebroadcast.usecase
|
||||||
|
|
||||||
import im.vector.app.features.voicebroadcast.STATE_ROOM_VOICE_BROADCAST_INFO
|
import im.vector.app.features.voicebroadcast.VoiceBroadcastConstants
|
||||||
import im.vector.app.features.voicebroadcast.model.MessageVoiceBroadcastInfoContent
|
import im.vector.app.features.voicebroadcast.model.MessageVoiceBroadcastInfoContent
|
||||||
import im.vector.app.features.voicebroadcast.model.VoiceBroadcastState
|
import im.vector.app.features.voicebroadcast.model.VoiceBroadcastState
|
||||||
import im.vector.app.test.fakes.FakeRoom
|
import im.vector.app.test.fakes.FakeRoom
|
||||||
@ -80,7 +80,7 @@ class PauseVoiceBroadcastUseCaseTest {
|
|||||||
// Then
|
// Then
|
||||||
coVerify {
|
coVerify {
|
||||||
fakeRoom.stateService().sendStateEvent(
|
fakeRoom.stateService().sendStateEvent(
|
||||||
eventType = STATE_ROOM_VOICE_BROADCAST_INFO,
|
eventType = VoiceBroadcastConstants.STATE_ROOM_VOICE_BROADCAST_INFO,
|
||||||
stateKey = fakeSession.myUserId,
|
stateKey = fakeSession.myUserId,
|
||||||
body = any(),
|
body = any(),
|
||||||
)
|
)
|
||||||
@ -114,7 +114,7 @@ class PauseVoiceBroadcastUseCaseTest {
|
|||||||
val event = state?.let {
|
val event = state?.let {
|
||||||
Event(
|
Event(
|
||||||
eventId = if (state == VoiceBroadcastState.STARTED) A_STARTED_VOICE_BROADCAST_EVENT_ID else AN_EVENT_ID,
|
eventId = if (state == VoiceBroadcastState.STARTED) A_STARTED_VOICE_BROADCAST_EVENT_ID else AN_EVENT_ID,
|
||||||
type = STATE_ROOM_VOICE_BROADCAST_INFO,
|
type = VoiceBroadcastConstants.STATE_ROOM_VOICE_BROADCAST_INFO,
|
||||||
stateKey = fakeSession.myUserId,
|
stateKey = fakeSession.myUserId,
|
||||||
content = MessageVoiceBroadcastInfoContent(
|
content = MessageVoiceBroadcastInfoContent(
|
||||||
voiceBroadcastStateStr = state.value,
|
voiceBroadcastStateStr = state.value,
|
||||||
|
@ -16,7 +16,7 @@
|
|||||||
|
|
||||||
package im.vector.app.features.voicebroadcast.usecase
|
package im.vector.app.features.voicebroadcast.usecase
|
||||||
|
|
||||||
import im.vector.app.features.voicebroadcast.STATE_ROOM_VOICE_BROADCAST_INFO
|
import im.vector.app.features.voicebroadcast.VoiceBroadcastConstants
|
||||||
import im.vector.app.features.voicebroadcast.model.MessageVoiceBroadcastInfoContent
|
import im.vector.app.features.voicebroadcast.model.MessageVoiceBroadcastInfoContent
|
||||||
import im.vector.app.features.voicebroadcast.model.VoiceBroadcastState
|
import im.vector.app.features.voicebroadcast.model.VoiceBroadcastState
|
||||||
import im.vector.app.test.fakes.FakeRoom
|
import im.vector.app.test.fakes.FakeRoom
|
||||||
@ -80,7 +80,7 @@ class ResumeVoiceBroadcastUseCaseTest {
|
|||||||
// Then
|
// Then
|
||||||
coVerify {
|
coVerify {
|
||||||
fakeRoom.stateService().sendStateEvent(
|
fakeRoom.stateService().sendStateEvent(
|
||||||
eventType = STATE_ROOM_VOICE_BROADCAST_INFO,
|
eventType = VoiceBroadcastConstants.STATE_ROOM_VOICE_BROADCAST_INFO,
|
||||||
stateKey = fakeSession.myUserId,
|
stateKey = fakeSession.myUserId,
|
||||||
body = any(),
|
body = any(),
|
||||||
)
|
)
|
||||||
@ -114,7 +114,7 @@ class ResumeVoiceBroadcastUseCaseTest {
|
|||||||
val event = state?.let {
|
val event = state?.let {
|
||||||
Event(
|
Event(
|
||||||
eventId = if (state == VoiceBroadcastState.STARTED) A_STARTED_VOICE_BROADCAST_EVENT_ID else AN_EVENT_ID,
|
eventId = if (state == VoiceBroadcastState.STARTED) A_STARTED_VOICE_BROADCAST_EVENT_ID else AN_EVENT_ID,
|
||||||
type = STATE_ROOM_VOICE_BROADCAST_INFO,
|
type = VoiceBroadcastConstants.STATE_ROOM_VOICE_BROADCAST_INFO,
|
||||||
stateKey = fakeSession.myUserId,
|
stateKey = fakeSession.myUserId,
|
||||||
content = MessageVoiceBroadcastInfoContent(
|
content = MessageVoiceBroadcastInfoContent(
|
||||||
voiceBroadcastStateStr = state.value,
|
voiceBroadcastStateStr = state.value,
|
||||||
|
@ -16,7 +16,7 @@
|
|||||||
|
|
||||||
package im.vector.app.features.voicebroadcast.usecase
|
package im.vector.app.features.voicebroadcast.usecase
|
||||||
|
|
||||||
import im.vector.app.features.voicebroadcast.STATE_ROOM_VOICE_BROADCAST_INFO
|
import im.vector.app.features.voicebroadcast.VoiceBroadcastConstants
|
||||||
import im.vector.app.features.voicebroadcast.model.MessageVoiceBroadcastInfoContent
|
import im.vector.app.features.voicebroadcast.model.MessageVoiceBroadcastInfoContent
|
||||||
import im.vector.app.features.voicebroadcast.model.VoiceBroadcastState
|
import im.vector.app.features.voicebroadcast.model.VoiceBroadcastState
|
||||||
import im.vector.app.test.fakes.FakeRoom
|
import im.vector.app.test.fakes.FakeRoom
|
||||||
@ -81,7 +81,7 @@ class StartVoiceBroadcastUseCaseTest {
|
|||||||
// Then
|
// Then
|
||||||
coVerify {
|
coVerify {
|
||||||
fakeRoom.stateService().sendStateEvent(
|
fakeRoom.stateService().sendStateEvent(
|
||||||
eventType = STATE_ROOM_VOICE_BROADCAST_INFO,
|
eventType = VoiceBroadcastConstants.STATE_ROOM_VOICE_BROADCAST_INFO,
|
||||||
stateKey = fakeSession.myUserId,
|
stateKey = fakeSession.myUserId,
|
||||||
body = any(),
|
body = any(),
|
||||||
)
|
)
|
||||||
@ -106,7 +106,7 @@ class StartVoiceBroadcastUseCaseTest {
|
|||||||
private fun givenAVoiceBroadcasts(voiceBroadcasts: List<VoiceBroadcast>) {
|
private fun givenAVoiceBroadcasts(voiceBroadcasts: List<VoiceBroadcast>) {
|
||||||
val events = voiceBroadcasts.map {
|
val events = voiceBroadcasts.map {
|
||||||
Event(
|
Event(
|
||||||
type = STATE_ROOM_VOICE_BROADCAST_INFO,
|
type = VoiceBroadcastConstants.STATE_ROOM_VOICE_BROADCAST_INFO,
|
||||||
stateKey = it.userId,
|
stateKey = it.userId,
|
||||||
content = MessageVoiceBroadcastInfoContent(
|
content = MessageVoiceBroadcastInfoContent(
|
||||||
voiceBroadcastStateStr = it.state.value
|
voiceBroadcastStateStr = it.state.value
|
||||||
|
@ -16,7 +16,7 @@
|
|||||||
|
|
||||||
package im.vector.app.features.voicebroadcast.usecase
|
package im.vector.app.features.voicebroadcast.usecase
|
||||||
|
|
||||||
import im.vector.app.features.voicebroadcast.STATE_ROOM_VOICE_BROADCAST_INFO
|
import im.vector.app.features.voicebroadcast.VoiceBroadcastConstants
|
||||||
import im.vector.app.features.voicebroadcast.model.MessageVoiceBroadcastInfoContent
|
import im.vector.app.features.voicebroadcast.model.MessageVoiceBroadcastInfoContent
|
||||||
import im.vector.app.features.voicebroadcast.model.VoiceBroadcastState
|
import im.vector.app.features.voicebroadcast.model.VoiceBroadcastState
|
||||||
import im.vector.app.test.fakes.FakeRoom
|
import im.vector.app.test.fakes.FakeRoom
|
||||||
@ -80,7 +80,7 @@ class StopVoiceBroadcastUseCaseTest {
|
|||||||
// Then
|
// Then
|
||||||
coVerify {
|
coVerify {
|
||||||
fakeRoom.stateService().sendStateEvent(
|
fakeRoom.stateService().sendStateEvent(
|
||||||
eventType = STATE_ROOM_VOICE_BROADCAST_INFO,
|
eventType = VoiceBroadcastConstants.STATE_ROOM_VOICE_BROADCAST_INFO,
|
||||||
stateKey = fakeSession.myUserId,
|
stateKey = fakeSession.myUserId,
|
||||||
body = any(),
|
body = any(),
|
||||||
)
|
)
|
||||||
@ -114,7 +114,7 @@ class StopVoiceBroadcastUseCaseTest {
|
|||||||
val event = state?.let {
|
val event = state?.let {
|
||||||
Event(
|
Event(
|
||||||
eventId = if (state == VoiceBroadcastState.STARTED) A_STARTED_VOICE_BROADCAST_EVENT_ID else AN_EVENT_ID,
|
eventId = if (state == VoiceBroadcastState.STARTED) A_STARTED_VOICE_BROADCAST_EVENT_ID else AN_EVENT_ID,
|
||||||
type = STATE_ROOM_VOICE_BROADCAST_INFO,
|
type = VoiceBroadcastConstants.STATE_ROOM_VOICE_BROADCAST_INFO,
|
||||||
stateKey = fakeSession.myUserId,
|
stateKey = fakeSession.myUserId,
|
||||||
content = MessageVoiceBroadcastInfoContent(
|
content = MessageVoiceBroadcastInfoContent(
|
||||||
voiceBroadcastStateStr = state.value,
|
voiceBroadcastStateStr = state.value,
|
||||||
|
Loading…
Reference in New Issue
Block a user