import org.asamk.Signal;
import org.asamk.signal.manager.Manager;
+import org.asamk.signal.manager.UntrustedIdentityException;
import org.asamk.signal.manager.api.RecipientIdentifier;
-import org.signal.libsignal.metadata.ProtocolUntrustedIdentityException;
import org.whispersystems.signalservice.api.messages.SignalServiceContent;
import org.whispersystems.signalservice.api.messages.SignalServiceEnvelope;
import org.whispersystems.signalservice.api.util.InvalidNumberException;
import java.util.List;
-import java.util.UUID;
import static org.asamk.signal.util.Util.getLegacyIdentifier;
@JsonProperty
final Integer sourceDevice;
- @JsonProperty
- @JsonInclude(JsonInclude.Include.NON_NULL)
- final String relay;
-
@JsonProperty
final long timestamp;
public JsonMessageEnvelope(
SignalServiceEnvelope envelope, SignalServiceContent content, Throwable exception, Manager m
) {
- if (!envelope.isUnidentifiedSender() && envelope.hasSource()) {
- var source = envelope.getSourceAddress();
+ if (!envelope.isUnidentifiedSender() && envelope.hasSourceUuid()) {
+ var source = m.resolveSignalServiceAddress(envelope.getSourceAddress());
this.source = getLegacyIdentifier(source);
this.sourceNumber = source.getNumber().orNull();
- this.sourceUuid = source.getUuid().transform(UUID::toString).orNull();
+ this.sourceUuid = source.getUuid().toString();
this.sourceDevice = envelope.getSourceDevice();
- this.relay = source.getRelay().orNull();
} else if (envelope.isUnidentifiedSender() && content != null) {
- final var source = content.getSender();
+ final var source = m.resolveSignalServiceAddress(content.getSender());
this.source = getLegacyIdentifier(source);
this.sourceNumber = source.getNumber().orNull();
- this.sourceUuid = source.getUuid().transform(UUID::toString).orNull();
+ this.sourceUuid = source.getUuid().toString();
this.sourceDevice = content.getSenderDevice();
- this.relay = null;
- } else if (exception instanceof ProtocolUntrustedIdentityException) {
- var e = (ProtocolUntrustedIdentityException) exception;
+ } else if (exception instanceof UntrustedIdentityException) {
+ var e = (UntrustedIdentityException) exception;
final var source = m.resolveSignalServiceAddress(e.getSender());
this.source = getLegacyIdentifier(source);
this.sourceNumber = source.getNumber().orNull();
- this.sourceUuid = source.getUuid().transform(UUID::toString).orNull();
+ this.sourceUuid = source.getUuid().toString();
this.sourceDevice = e.getSenderDevice();
- this.relay = null;
} else {
this.source = null;
this.sourceNumber = null;
this.sourceUuid = null;
this.sourceDevice = null;
- this.relay = null;
}
String name;
try {
sourceUuid = null;
sourceName = null;
sourceDevice = null;
- relay = null;
timestamp = messageReceived.getTimestamp();
receiptMessage = null;
dataMessage = new JsonDataMessage(messageReceived);
sourceUuid = null;
sourceName = null;
sourceDevice = null;
- relay = null;
timestamp = receiptReceived.getTimestamp();
receiptMessage = JsonReceiptMessage.deliveryReceipt(timestamp, List.of(timestamp));
dataMessage = null;
sourceUuid = null;
sourceName = null;
sourceDevice = null;
- relay = null;
timestamp = messageReceived.getTimestamp();
receiptMessage = null;
dataMessage = null;