diff --git a/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/SignalCallManager.java b/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/SignalCallManager.java index 1d35497222..8b71255ff6 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/SignalCallManager.java +++ b/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/SignalCallManager.java @@ -1049,7 +1049,27 @@ public final class SignalCallManager implements CallManager.Observer, GroupCall. Log.i(TAG, "sendGroupCallUpdateMessage id: " + recipient.getId() + " era: " + groupCallEraId + " isIncoming: " + isIncoming + " isJoinEvent: " + isJoinEvent); if (recipient.isCallLink()) { - Log.i(TAG, "sendGroupCallUpdateMessage -- ignoring for call link"); + if (isJoinEvent) { + SignalExecutors.BOUNDED.execute(() -> { + CallId callIdLocal = callId; + + if (callIdLocal == null && groupCallEraId != null) { + callIdLocal = CallId.fromEra(groupCallEraId); + } + + if (callIdLocal != null) { + ApplicationDependencies.getJobManager().add( + CallSyncEventJob.createForJoin( + recipient.getId(), + callIdLocal.longValue(), + isIncoming + ) + ); + } + }); + } else { + Log.i(TAG, "sendGroupCallUpdateMessage -- ignoring non-join event for call link"); + } return; }