From: AsamK Date: Mon, 6 Jul 2015 08:41:19 +0000 (+0200) Subject: Adapt code for new libtextsecure-java version X-Git-Tag: v0.0.2~15 X-Git-Url: https://git.nmode.ca/signal-cli/commitdiff_plain/73e8c4cabfe55dd4dbea501334c6925d2844a3fb Adapt code for new libtextsecure-java version --- diff --git a/src/main/java/cli/Main.java b/src/main/java/cli/Main.java index 34f07a55..28c64e8c 100644 --- a/src/main/java/cli/Main.java +++ b/src/main/java/cli/Main.java @@ -22,7 +22,9 @@ import org.apache.commons.io.IOUtils; import org.whispersystems.libaxolotl.InvalidVersionException; import org.whispersystems.textsecure.api.TextSecureMessageSender; import org.whispersystems.textsecure.api.crypto.UntrustedIdentityException; -import org.whispersystems.textsecure.api.messages.TextSecureMessage; +import org.whispersystems.textsecure.api.messages.TextSecureContent; +import org.whispersystems.textsecure.api.messages.TextSecureDataMessage; +import org.whispersystems.textsecure.api.messages.multidevice.TextSecureSyncMessage; import org.whispersystems.textsecure.api.push.TextSecureAddress; import java.io.IOException; @@ -117,7 +119,7 @@ public class Main { System.exit(1); } } - TextSecureMessage message = TextSecureMessage.newBuilder().withBody(messageText).build(); + TextSecureDataMessage message = TextSecureDataMessage.newBuilder().withBody(messageText).build(); for (String recipient : ns.getList("recipient")) { try { messageSender.sendMessage(new TextSecureAddress(recipient), message); @@ -132,11 +134,23 @@ public class Main { System.exit(1); } try { - message = m.receiveMessage(); - if (message == null) { - System.exit(0); - } else { - System.out.println("Received message: " + message.getBody().get()); + TextSecureContent content = m.receiveMessage(); + if (content.getDataMessage().isPresent()) { + message = content.getDataMessage().get(); + if (message == null) { + System.exit(0); + } else { + System.out.println("Received message: " + message.getBody().get()); + } + } + if (content.getSyncMessage().isPresent()) { + TextSecureSyncMessage syncMessage = content.getSyncMessage().get(); + + if (syncMessage == null) { + System.exit(0); + } else { + System.out.println("Received sync message"); + } } } catch (IOException | InvalidVersionException e) { System.out.println("Receive message: " + e.getMessage()); diff --git a/src/main/java/cli/Manager.java b/src/main/java/cli/Manager.java index 97070c97..1e7f0226 100644 --- a/src/main/java/cli/Manager.java +++ b/src/main/java/cli/Manager.java @@ -30,12 +30,12 @@ import org.whispersystems.textsecure.api.TextSecureMessagePipe; import org.whispersystems.textsecure.api.TextSecureMessageReceiver; import org.whispersystems.textsecure.api.TextSecureMessageSender; import org.whispersystems.textsecure.api.crypto.TextSecureCipher; +import org.whispersystems.textsecure.api.messages.TextSecureContent; import org.whispersystems.textsecure.api.messages.TextSecureEnvelope; -import org.whispersystems.textsecure.api.messages.TextSecureMessage; +import org.whispersystems.textsecure.api.push.TextSecureAddress; import org.whispersystems.textsecure.api.push.TrustStore; import java.io.*; -import java.nio.file.Path; import java.util.List; import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeoutException; @@ -151,7 +151,7 @@ public class Manager { axolotlStore, Optional.absent()); } - public TextSecureMessage receiveMessage() throws IOException, InvalidVersionException { + public TextSecureContent receiveMessage() throws IOException, InvalidVersionException { TextSecureMessageReceiver messageReceiver = new TextSecureMessageReceiver(URL, TRUST_STORE, username, password, signalingKey); TextSecureMessagePipe messagePipe = null; @@ -164,8 +164,8 @@ public class Manager { } catch (TimeoutException e) { return null; } - TextSecureCipher cipher = new TextSecureCipher(axolotlStore); - TextSecureMessage message = null; + TextSecureCipher cipher = new TextSecureCipher(new TextSecureAddress(username), axolotlStore); + TextSecureContent message = null; try { message = cipher.decrypt(envelope); } catch (Exception e) { diff --git a/src/main/java/cli/WhisperTrustStore.java b/src/main/java/cli/WhisperTrustStore.java index 77770946..621b43e9 100644 --- a/src/main/java/cli/WhisperTrustStore.java +++ b/src/main/java/cli/WhisperTrustStore.java @@ -2,8 +2,6 @@ package cli; import org.whispersystems.textsecure.api.push.TrustStore; -import java.io.FileInputStream; -import java.io.FileNotFoundException; import java.io.InputStream; public class WhisperTrustStore implements TrustStore {