Update to RingRTC v2.40.0

This commit is contained in:
Jim Gustafson
2024-04-17 07:32:29 -07:00
committed by Greyson Parrelli
parent cd03da54d5
commit cbb04e8f0c
3 changed files with 21 additions and 11 deletions

View File

@@ -91,6 +91,7 @@ import java.io.IOException;
import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
@@ -757,10 +758,10 @@ public final class SignalCallManager implements CallManager.Observer, GroupCall.
}
@Override
public void onSendCallMessage(@NonNull UUID aciUuid, @NonNull byte[] bytes, @NonNull CallManager.CallMessageUrgency urgency) {
public void onSendCallMessage(@NonNull UUID aciUuid, @NonNull byte[] message, @NonNull CallManager.CallMessageUrgency urgency) {
Log.i(TAG, "onSendCallMessage():");
OpaqueMessage opaqueMessage = new OpaqueMessage(bytes, getUrgencyFromCallUrgency(urgency));
OpaqueMessage opaqueMessage = new OpaqueMessage(message, getUrgencyFromCallUrgency(urgency));
SignalServiceCallMessage callMessage = SignalServiceCallMessage.forOpaque(opaqueMessage, null);
networkExecutor.execute(() -> {
@@ -774,27 +775,36 @@ public final class SignalCallManager implements CallManager.Observer, GroupCall.
recipient.isSelf() ? Optional.empty() : UnidentifiedAccessUtil.getAccessFor(context, recipient),
callMessage);
} catch (UntrustedIdentityException e) {
Log.i(TAG, "sendOpaqueCallMessage onFailure: ", e);
Log.i(TAG, "onSendCallMessage onFailure: ", e);
RetrieveProfileJob.enqueue(recipient.getId());
process((s, p) -> p.handleGroupMessageSentError(s, Collections.singletonList(recipient.getId()), UNTRUSTED_IDENTITY));
} catch (IOException e) {
Log.i(TAG, "sendOpaqueCallMessage onFailure: ", e);
Log.i(TAG, "onSendCallMessage onFailure: ", e);
process((s, p) -> p.handleGroupMessageSentError(s, Collections.singletonList(recipient.getId()), NETWORK_FAILURE));
}
});
}
@Override
public void onSendCallMessageToGroup(@NonNull byte[] groupIdBytes, @NonNull byte[] message, @NonNull CallManager.CallMessageUrgency urgency) {
public void onSendCallMessageToGroup(@NonNull byte[] groupIdBytes, @NonNull byte[] message, @NonNull CallManager.CallMessageUrgency urgency, @NonNull List<UUID> overrideRecipients) {
Log.i(TAG, "onSendCallMessageToGroup():");
networkExecutor.execute(() -> {
try {
GroupId groupId = GroupId.v2(new GroupIdentifier(groupIdBytes));
List<Recipient> recipients = SignalDatabase.groups().getGroupMembers(groupId, GroupTable.MemberSet.FULL_MEMBERS_EXCLUDING_SELF);
Set<UUID> toInclude = new HashSet<>(overrideRecipients.size());
toInclude.addAll(overrideRecipients);
recipients = RecipientUtil.getEligibleForSending((recipients.stream()
.map(Recipient::resolve)
.filter(r -> {
if (toInclude.isEmpty()) {
return true;
}
return r.getHasServiceId() && toInclude.contains(r.requireServiceId().getRawUuid());
})
.collect(Collectors.toList())));
OpaqueMessage opaqueMessage = new OpaqueMessage(message, getUrgencyFromCallUrgency(urgency));

View File

@@ -120,7 +120,7 @@ dependencyResolutionManagement {
library("libsignal-client", "org.signal", "libsignal-client").versionRef("libsignal-client")
library("libsignal-android", "org.signal", "libsignal-android").versionRef("libsignal-client")
library("signal-aesgcmprovider", "org.signal:aesgcmprovider:0.0.3")
library("signal-ringrtc", "org.signal:ringrtc-android:2.39.3")
library("signal-ringrtc", "org.signal:ringrtc-android:2.40.0")
library("signal-android-database-sqlcipher", "org.signal:sqlcipher-android:4.5.4-S2")
// Third Party

View File

@@ -5719,12 +5719,12 @@ https://docs.gradle.org/current/userguide/dependency_verification.html
<sha256 value="21ad4954266610b8171e8b146d5be428543427b1466f81749c0c9f52a40e393d" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.signal" name="ringrtc-android" version="2.39.3">
<artifact name="ringrtc-android-2.39.3.aar">
<sha256 value="2d3d1e73e357e8c1a2cf76fc2af61cf0ee786c02b4ccd95b6aa3c134d01adbf1" origin="Generated by Gradle"/>
<component group="org.signal" name="ringrtc-android" version="2.40.0">
<artifact name="ringrtc-android-2.40.0.aar">
<sha256 value="f6a3816dccf6700c57a6f7f758cb2d053af60dcafb072f2a94b1045b651bf78e" origin="Generated by Gradle"/>
</artifact>
<artifact name="ringrtc-android-2.39.3.module">
<sha256 value="115221c47c1d6f285f8714d3bf6272c6e08fa9ac1a258f418f36c0b859f30e96" origin="Generated by Gradle"/>
<artifact name="ringrtc-android-2.40.0.module">
<sha256 value="476eb9390d0b4e418e92581351bc73e299db3d51253be8f9fcf894c458101bb2" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.signal" name="sqlcipher-android" version="4.5.4-S2">