X-Git-Url: https://git.nmode.ca/signal-cli/blobdiff_plain/ac815f759820a9e91cd1857159972ea8a106dbff..b20978e08e0210d179ec14e4ceeb8f01dad27642:/src/main/java/org/asamk/signal/commands/ReceiveCommand.java diff --git a/src/main/java/org/asamk/signal/commands/ReceiveCommand.java b/src/main/java/org/asamk/signal/commands/ReceiveCommand.java index 16421b62..4a6f746a 100644 --- a/src/main/java/org/asamk/signal/commands/ReceiveCommand.java +++ b/src/main/java/org/asamk/signal/commands/ReceiveCommand.java @@ -8,6 +8,7 @@ import net.sourceforge.argparse4j.inf.Subparser; import org.asamk.signal.OutputType; import org.asamk.signal.ReceiveMessageHandler; +import org.asamk.signal.Shutdown; import org.asamk.signal.commands.exceptions.CommandException; import org.asamk.signal.commands.exceptions.IOErrorException; import org.asamk.signal.commands.exceptions.UserErrorException; @@ -67,6 +68,7 @@ public class ReceiveCommand implements LocalCommand, JsonRpcSingleCommand new JsonReceiveMessageHandler(m, writer); + case PlainTextWriter writer -> new ReceiveMessageHandler(m, writer); + }; final var duration = timeout < 0 ? null : Duration.ofMillis((long) (timeout * 1000)); final var maxMessages = maxMessagesRaw < 0 ? null : maxMessagesRaw; + Shutdown.registerShutdownListener(m::stopReceiveMessages); m.receiveMessages(Optional.ofNullable(duration), Optional.ofNullable(maxMessages), handler); } catch (IOException e) { throw new IOErrorException("Error while receiving messages: " + e.getMessage(), e);