X-Git-Url: https://git.nmode.ca/signal-cli/blobdiff_plain/a593051512b716ed3cc42a1a7b69d49a459352ed..24069c8277cca7f8e94aa3f083980e85dca25269:/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 10f73706..faea75dc 100644 --- a/src/main/java/org/asamk/signal/ReceiveMessageHandler.java +++ b/src/main/java/org/asamk/signal/ReceiveMessageHandler.java @@ -1,11 +1,12 @@ package org.asamk.signal; import org.asamk.signal.manager.Manager; +import org.asamk.signal.manager.api.GroupId; import org.asamk.signal.manager.api.MessageEnvelope; +import org.asamk.signal.manager.api.RecipientAddress; import org.asamk.signal.manager.api.RecipientIdentifier; +import org.asamk.signal.manager.api.TextStyle; import org.asamk.signal.manager.api.UntrustedIdentityException; -import org.asamk.signal.manager.groups.GroupId; -import org.asamk.signal.manager.storage.recipients.RecipientAddress; import org.asamk.signal.output.PlainTextWriter; import org.asamk.signal.util.DateUtils; import org.asamk.signal.util.Hex; @@ -33,9 +34,10 @@ public class ReceiveMessageHandler implements Manager.ReceiveMessageHandler { private void handleMessageInternal(MessageEnvelope envelope, Throwable exception) { var source = envelope.sourceAddress(); - writer.println("Envelope from: {} (device: {})", + writer.println("Envelope from: {} (device: {}) to {}", source.map(this::formatContact).orElse("unknown source"), - envelope.sourceDevice()); + envelope.sourceDevice(), + m.getSelfNumber()); writer.println("Timestamp: {}", DateUtils.formatTimestamp(envelope.timestamp())); writer.println("Server timestamps: received: {} delivered: {}", DateUtils.formatTimestamp(envelope.serverReceivedTimestamp()), @@ -68,6 +70,10 @@ public class ReceiveMessageHandler implements Manager.ReceiveMessageHandler { var message = envelope.data().get(); printDataMessage(writer, message); } + if (envelope.edit().isPresent()) { + var message = envelope.edit().get(); + printEditMessage(writer, message); + } if (envelope.story().isPresent()) { var message = envelope.story().get(); printStoryMessage(writer.indentedWriter(), message); @@ -176,6 +182,12 @@ public class ReceiveMessageHandler implements Manager.ReceiveMessageHandler { printMention(writer, mention); } } + if (message.textStyles().size() > 0) { + writer.println("Text styles:"); + for (var textStyle : message.textStyles()) { + printTextStyle(writer, textStyle); + } + } if (message.attachments().size() > 0) { writer.println("Attachments:"); for (var attachment : message.attachments()) { @@ -185,6 +197,13 @@ public class ReceiveMessageHandler implements Manager.ReceiveMessageHandler { } } + private void printEditMessage( + PlainTextWriter writer, MessageEnvelope.Edit message + ) { + writer.println("Edit: Target message timestamp: {}", DateUtils.formatTimestamp(message.targetSentTimestamp())); + printDataMessage(writer.indentedWriter(), message.dataMessage()); + } + private void printStoryMessage( PlainTextWriter writer, MessageEnvelope.Story message ) { @@ -554,6 +573,12 @@ public class ReceiveMessageHandler implements Manager.ReceiveMessageHandler { writer.println("- {}: {} (length: {})", formatContact(mention.recipient()), mention.start(), mention.length()); } + private void printTextStyle( + PlainTextWriter writer, TextStyle textStyle + ) { + writer.println("- {}: {} (length: {})", textStyle.style().name(), textStyle.start(), textStyle.length()); + } + private void printAttachment(PlainTextWriter writer, MessageEnvelope.Data.Attachment attachment) { writer.println("Content-Type: {}", attachment.contentType()); writer.println("Type: {}", attachment.id().isPresent() ? "Pointer" : "Stream");