X-Git-Url: https://git.nmode.ca/signal-cli/blobdiff_plain/30690785fd51f9ba841f6f57d5f403bd970f26e3..7f64a9812ca5bb10e8f57cacf3d22b904bd200b4:/src/main/java/org/asamk/signal/ReceiveMessageHandler.java diff --git a/src/main/java/org/asamk/signal/ReceiveMessageHandler.java b/src/main/java/org/asamk/signal/ReceiveMessageHandler.java index 7228e005..0d8f312f 100644 --- a/src/main/java/org/asamk/signal/ReceiveMessageHandler.java +++ b/src/main/java/org/asamk/signal/ReceiveMessageHandler.java @@ -1,6 +1,7 @@ package org.asamk.signal; import org.asamk.signal.manager.Manager; +import org.asamk.signal.manager.api.RecipientIdentifier; import org.asamk.signal.manager.groups.GroupId; import org.asamk.signal.manager.groups.GroupUtils; import org.asamk.signal.util.DateUtils; @@ -18,7 +19,6 @@ import org.whispersystems.signalservice.api.messages.calls.SignalServiceCallMess import org.whispersystems.signalservice.api.messages.multidevice.SignalServiceSyncMessage; import org.whispersystems.signalservice.api.messages.shared.SharedContact; import org.whispersystems.signalservice.api.push.SignalServiceAddress; -import org.whispersystems.signalservice.api.util.InvalidNumberException; import java.util.ArrayList; import java.util.Base64; @@ -29,15 +29,15 @@ import static org.asamk.signal.util.Util.getLegacyIdentifier; public class ReceiveMessageHandler implements Manager.ReceiveMessageHandler { final Manager m; + final PlainTextWriter writer; - public ReceiveMessageHandler(Manager m) { + public ReceiveMessageHandler(Manager m, final PlainTextWriter writer) { this.m = m; + this.writer = writer; } @Override public void handleMessage(SignalServiceEnvelope envelope, SignalServiceContent content, Throwable exception) { - PlainTextWriter writer = new PlainTextWriterImpl(System.out); - if (envelope.hasSource()) { var source = envelope.getSourceAddress(); writer.println("Envelope from: {} (device: {})", formatContact(source), envelope.getSourceDevice()); @@ -450,7 +450,7 @@ public class ReceiveMessageHandler implements Manager.ReceiveMessageHandler { final PlainTextWriter writer, final SignalServiceDataMessage.Reaction reaction ) { writer.println("Emoji: {}", reaction.getEmoji()); - writer.println("Target author: {}", formatContact(m.resolveSignalServiceAddress(reaction.getTargetAuthor()))); + writer.println("Target author: {}", formatContact(reaction.getTargetAuthor())); writer.println("Target timestamp: {}", DateUtils.formatTimestamp(reaction.getTargetSentTimestamp())); writer.println("Is remove: {}", reaction.isRemove()); } @@ -459,7 +459,7 @@ public class ReceiveMessageHandler implements Manager.ReceiveMessageHandler { final PlainTextWriter writer, final SignalServiceDataMessage.Quote quote ) { writer.println("Id: {}", quote.getId()); - writer.println("Author: {}", getLegacyIdentifier(m.resolveSignalServiceAddress(quote.getAuthor()))); + writer.println("Author: {}", formatContact(quote.getAuthor())); writer.println("Text: {}", quote.getText()); if (quote.getMentions() != null && quote.getMentions().size() > 0) { writer.println("Mentions:"); @@ -678,12 +678,9 @@ public class ReceiveMessageHandler implements Manager.ReceiveMessageHandler { } private String formatContact(SignalServiceAddress address) { + address = m.resolveSignalServiceAddress(address); final var number = getLegacyIdentifier(address); - String name = null; - try { - name = m.getContactOrProfileName(number); - } catch (InvalidNumberException ignored) { - } + final var name = m.getContactOrProfileName(RecipientIdentifier.Single.fromAddress(address)); if (name == null || name.isEmpty()) { return number; } else {