kopia lustrzana https://github.com/ryukoposting/Signal-Android
Improve handling of 1:1 calls during group calls.
rodzic
7868c3094b
commit
b1d74e21e2
|
@ -19,6 +19,7 @@ import org.thoughtcrime.securesms.service.webrtc.state.WebRtcServiceState;
|
||||||
import org.thoughtcrime.securesms.service.webrtc.state.WebRtcServiceStateBuilder;
|
import org.thoughtcrime.securesms.service.webrtc.state.WebRtcServiceStateBuilder;
|
||||||
import org.thoughtcrime.securesms.webrtc.locks.LockManager;
|
import org.thoughtcrime.securesms.webrtc.locks.LockManager;
|
||||||
import org.webrtc.VideoTrack;
|
import org.webrtc.VideoTrack;
|
||||||
|
import org.whispersystems.signalservice.api.messages.calls.OfferMessage;
|
||||||
import org.whispersystems.signalservice.api.messages.calls.OpaqueMessage;
|
import org.whispersystems.signalservice.api.messages.calls.OpaqueMessage;
|
||||||
import org.whispersystems.signalservice.api.messages.calls.SignalServiceCallMessage;
|
import org.whispersystems.signalservice.api.messages.calls.SignalServiceCallMessage;
|
||||||
|
|
||||||
|
@ -35,6 +36,20 @@ public class GroupActionProcessor extends DeviceAwareActionProcessor {
|
||||||
super(webRtcInteractor, tag);
|
super(webRtcInteractor, tag);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected @NonNull WebRtcServiceState handleReceivedOffer(@NonNull WebRtcServiceState currentState,
|
||||||
|
@NonNull WebRtcData.CallMetadata callMetadata,
|
||||||
|
@NonNull WebRtcData.OfferMetadata offerMetadata,
|
||||||
|
@NonNull WebRtcData.ReceivedOfferMetadata receivedOfferMetadata)
|
||||||
|
{
|
||||||
|
Log.i(tag, "handleReceivedOffer(): id: " + callMetadata.getCallId().format(callMetadata.getRemoteDevice()));
|
||||||
|
|
||||||
|
Log.i(tag, "In a group call, send busy back to 1:1 call offer.");
|
||||||
|
currentState.getActionProcessor().handleSendBusy(currentState, callMetadata, true);
|
||||||
|
webRtcInteractor.insertMissedCall(callMetadata.getRemotePeer(), true, receivedOfferMetadata.getServerReceivedTimestamp(), offerMetadata.getOfferType() == OfferMessage.Type.VIDEO_CALL);
|
||||||
|
|
||||||
|
return currentState;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected @NonNull WebRtcServiceState handleGroupRemoteDeviceStateChanged(@NonNull WebRtcServiceState currentState) {
|
protected @NonNull WebRtcServiceState handleGroupRemoteDeviceStateChanged(@NonNull WebRtcServiceState currentState) {
|
||||||
Log.i(tag, "handleGroupRemoteDeviceStateChanged():");
|
Log.i(tag, "handleGroupRemoteDeviceStateChanged():");
|
||||||
|
|
Ładowanie…
Reference in New Issue