select answer should be used for outgoing calls.

This commit is contained in:
David Langley 2021-12-02 18:35:51 +00:00
parent 7c4460b812
commit f3b3c880d0
1 changed files with 13 additions and 10 deletions

View File

@ -203,16 +203,19 @@ internal class MxCallImpl(
override fun selectAnswer() { override fun selectAnswer() {
Timber.tag(loggerTag.value).v("select answer $callId") Timber.tag(loggerTag.value).v("select answer $callId")
if (isOutgoing) return if (isOutgoing) {
state = CallState.Answering // This is an outgoing call, select the remote client that answered.
CallSelectAnswerContent( // state is still DIALING.
callId = callId, CallSelectAnswerContent(
partyId = ourPartyId, callId = callId,
selectedPartyId = opponentPartyId?.getOrNull(), partyId = ourPartyId,
version = MxCall.VOIP_PROTO_VERSION.toString() selectedPartyId = opponentPartyId?.getOrNull(),
) version = MxCall.VOIP_PROTO_VERSION.toString()
.let { createEventAndLocalEcho(type = EventType.CALL_SELECT_ANSWER, roomId = roomId, content = it.toContent()) } )
.also { eventSenderProcessor.postEvent(it) } .let { createEventAndLocalEcho(type = EventType.CALL_SELECT_ANSWER, roomId = roomId, content = it.toContent()) }
.also { eventSenderProcessor.postEvent(it) }
}
} }
override suspend fun transfer(targetUserId: String, override suspend fun transfer(targetUserId: String,