X-Git-Url: https://git.nmode.ca/signal-cli/blobdiff_plain/73e137137d272811b01ed053f57e0161e476d90a..5bbfd3259891e18a11cb878e14a9c17990b13d79:/src/main/java/org/asamk/signal/json/JsonMessageEnvelope.java diff --git a/src/main/java/org/asamk/signal/json/JsonMessageEnvelope.java b/src/main/java/org/asamk/signal/json/JsonMessageEnvelope.java index 40f5ed21..c7a3f891 100644 --- a/src/main/java/org/asamk/signal/json/JsonMessageEnvelope.java +++ b/src/main/java/org/asamk/signal/json/JsonMessageEnvelope.java @@ -10,14 +10,22 @@ 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; public class JsonMessageEnvelope { @JsonProperty + @Deprecated final String source; + @JsonProperty + final String sourceNumber; + + @JsonProperty + final String sourceUuid; + @JsonProperty final String sourceName; @@ -55,14 +63,21 @@ public class JsonMessageEnvelope { if (!envelope.isUnidentifiedSender() && envelope.hasSource()) { var source = envelope.getSourceAddress(); this.source = getLegacyIdentifier(source); + this.sourceNumber = source.getNumber().orNull(); + this.sourceUuid = source.getUuid().transform(UUID::toString).orNull(); this.sourceDevice = envelope.getSourceDevice(); this.relay = source.getRelay().orNull(); } else if (envelope.isUnidentifiedSender() && content != null) { - this.source = getLegacyIdentifier(content.getSender()); + final var source = content.getSender(); + this.source = getLegacyIdentifier(source); + this.sourceNumber = source.getNumber().orNull(); + this.sourceUuid = source.getUuid().transform(UUID::toString).orNull(); this.sourceDevice = content.getSenderDevice(); this.relay = null; } else { this.source = null; + this.sourceNumber = null; + this.sourceUuid = null; this.sourceDevice = null; this.relay = null; } @@ -98,6 +113,8 @@ public class JsonMessageEnvelope { public JsonMessageEnvelope(Signal.MessageReceived messageReceived) { source = messageReceived.getSender(); + sourceNumber = null; + sourceUuid = null; sourceName = null; sourceDevice = null; relay = null; @@ -111,6 +128,8 @@ public class JsonMessageEnvelope { public JsonMessageEnvelope(Signal.ReceiptReceived receiptReceived) { source = receiptReceived.getSender(); + sourceNumber = null; + sourceUuid = null; sourceName = null; sourceDevice = null; relay = null; @@ -124,6 +143,8 @@ public class JsonMessageEnvelope { public JsonMessageEnvelope(Signal.SyncMessageReceived messageReceived) { source = messageReceived.getSource(); + sourceNumber = null; + sourceUuid = null; sourceName = null; sourceDevice = null; relay = null;