Skip to content

Commit 11462cf

Browse files
conference: use SFU device ID on SelectAnswer
1 parent f358ee1 commit 11462cf

File tree

2 files changed

+7
-2
lines changed

2 files changed

+7
-2
lines changed

pkg/conference/matrix.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -106,12 +106,12 @@ func (c *Conference) onSelectAnswer(participantID ParticipantID, ev *event.CallS
106106
if participant := c.getParticipant(participantID, nil); participant != nil {
107107
participant.logger.Info("Received remote answer selection")
108108

109-
if ev.SelectedPartyID != participantID.DeviceID.String() {
109+
if ev.SelectedPartyID != string(c.signaling.DeviceID()) {
110110
c.logger.WithFields(logrus.Fields{
111111
"device_id": ev.SelectedPartyID,
112112
"user_id": participantID,
113113
}).Errorf("Call was answered on a different device, kicking this peer")
114-
participant.peer.Terminate()
114+
c.removeParticipant(participantID)
115115
}
116116
}
117117
}

pkg/signaling/matrix.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@ type MatrixSignaling interface {
5555
SendICECandidates(recipient MatrixRecipient, candidates []event.CallCandidate)
5656
SendCandidatesGatheringFinished(recipient MatrixRecipient)
5757
SendHangup(recipient MatrixRecipient, reason event.CallHangupReason)
58+
DeviceID() id.DeviceID
5859
}
5960

6061
func (m *MatrixForConference) SendSDPAnswer(
@@ -109,6 +110,10 @@ func (m *MatrixForConference) SendHangup(recipient MatrixRecipient, reason event
109110
m.sendToDevice(recipient, event.CallHangup, eventContent)
110111
}
111112

113+
func (m *MatrixForConference) DeviceID() id.DeviceID {
114+
return m.client.DeviceID
115+
}
116+
112117
func (m *MatrixForConference) createBaseEventContent(
113118
callID string,
114119
destSessionID id.SessionID,

0 commit comments

Comments
 (0)