]> nmode's Git Repositories - signal-cli/blobdiff - src/main/java/org/asamk/signal/JsonDbusReceiveMessageHandler.java
Update dependencies
[signal-cli] / src / main / java / org / asamk / signal / JsonDbusReceiveMessageHandler.java
index 06cd31accbe2d7b314a2312b41de120e67c56d91..14aa1fbd7126a7242608f32f5b3ab02d1bdb39c6 100644 (file)
@@ -31,7 +31,7 @@ public class JsonDbusReceiveMessageHandler extends JsonReceiveMessageHandler {
                 conn.sendSignal(new Signal.ReceiptReceived(
                         objectPath,
                         envelope.getTimestamp(),
-                        envelope.getSourceE164().get()
+                        !envelope.isUnidentifiedSender() && envelope.hasSource() ? envelope.getSourceE164().get() : content.getSender().getNumber().get()
                 ));
             } catch (DBusException e) {
                 e.printStackTrace();
@@ -40,8 +40,8 @@ public class JsonDbusReceiveMessageHandler extends JsonReceiveMessageHandler {
             SignalServiceDataMessage message = content.getDataMessage().get();
 
             if (!message.isEndSession() &&
-                    !(message.getGroupInfo().isPresent() &&
-                            message.getGroupInfo().get().getType() != SignalServiceGroup.Type.DELIVER)) {
+                    !(message.getGroupContext().isPresent() &&
+                            message.getGroupContext().get().getGroupV1Type() != SignalServiceGroup.Type.DELIVER)) {
                 List<String> attachments = new ArrayList<>();
                 if (message.getAttachments().isPresent()) {
                     for (SignalServiceAttachment attachment : message.getAttachments().get()) {
@@ -55,8 +55,9 @@ public class JsonDbusReceiveMessageHandler extends JsonReceiveMessageHandler {
                     conn.sendSignal(new Signal.MessageReceived(
                             objectPath,
                             message.getTimestamp(),
-                            envelope.isUnidentifiedSender() ? content.getSender().getNumber().get() : envelope.getSourceE164().get(),
-                            message.getGroupInfo().isPresent() ? message.getGroupInfo().get().getGroupId() : new byte[0],
+                            envelope.isUnidentifiedSender() || !envelope.hasSource() ? content.getSender().getNumber().get() : envelope.getSourceE164().get(),
+                            message.getGroupContext().isPresent() && message.getGroupContext().get().getGroupV1().isPresent()
+                                    ? message.getGroupContext().get().getGroupV1().get().getGroupId() : new byte[0],
                             message.getBody().isPresent() ? message.getBody().get() : "",
                             attachments));
                 } catch (DBusException e) {