X-Git-Url: https://git.nmode.ca/signal-cli/blobdiff_plain/58db3cbd53f3faec94ddfcd5e029865a380e6242..8bcd8d87d219ae0496986cba4bd6b89f3b2ad6f6:/src/main/java/org/asamk/signal/json/JsonReaction.java diff --git a/src/main/java/org/asamk/signal/json/JsonReaction.java b/src/main/java/org/asamk/signal/json/JsonReaction.java index 5e978fe0..cc80ee84 100644 --- a/src/main/java/org/asamk/signal/json/JsonReaction.java +++ b/src/main/java/org/asamk/signal/json/JsonReaction.java @@ -1,18 +1,39 @@ package org.asamk.signal.json; +import com.fasterxml.jackson.annotation.JsonProperty; + import org.asamk.signal.manager.Manager; import org.whispersystems.signalservice.api.messages.SignalServiceDataMessage.Reaction; +import static org.asamk.signal.util.Util.getLegacyIdentifier; + public class JsonReaction { - String emoji; - String targetAuthor; - long targetSentTimestamp; - boolean isRemove; + @JsonProperty + final String emoji; + + @JsonProperty + @Deprecated + final String targetAuthor; + + @JsonProperty + final String targetAuthorNumber; + + @JsonProperty + final String targetAuthorUuid; + + @JsonProperty + final long targetSentTimestamp; + + @JsonProperty + final boolean isRemove; JsonReaction(Reaction reaction, Manager m) { this.emoji = reaction.getEmoji(); - this.targetAuthor = m.resolveSignalServiceAddress(reaction.getTargetAuthor()).getLegacyIdentifier(); + final var address = m.resolveSignalServiceAddress(reaction.getTargetAuthor()); + this.targetAuthor = getLegacyIdentifier(address); + this.targetAuthorNumber = address.getNumber().orNull(); + this.targetAuthorUuid = address.getUuid().toString(); this.targetSentTimestamp = reaction.getTargetSentTimestamp(); this.isRemove = reaction.isRemove(); }