]> nmode's Git Repositories - signal-cli/blobdiff - src/main/java/org/asamk/signal/commands/SendCommand.java
Return message timestamp after sucessfully sending a message
[signal-cli] / src / main / java / org / asamk / signal / commands / SendCommand.java
index a795cdd850ea661eacbe508d1dafb4d0e6fc8368..f431d7086b262ee5b33226325e6d7a337760e54c 100644 (file)
@@ -13,6 +13,7 @@ import org.asamk.signal.util.IOUtils;
 import org.asamk.signal.util.Util;
 import org.freedesktop.dbus.exceptions.DBusExecutionException;
 import org.whispersystems.signalservice.api.push.exceptions.EncapsulatedExceptions;
+import org.whispersystems.signalservice.api.util.InvalidNumberException;
 
 import java.io.IOException;
 import java.nio.charset.Charset;
@@ -25,6 +26,7 @@ import static org.asamk.signal.util.ErrorUtils.handleEncapsulatedExceptions;
 import static org.asamk.signal.util.ErrorUtils.handleGroupIdFormatException;
 import static org.asamk.signal.util.ErrorUtils.handleGroupNotFoundException;
 import static org.asamk.signal.util.ErrorUtils.handleIOException;
+import static org.asamk.signal.util.ErrorUtils.handleInvalidNumberException;
 import static org.asamk.signal.util.ErrorUtils.handleNotAGroupMemberException;
 
 public class SendCommand implements DbusCommand {
@@ -75,6 +77,9 @@ public class SendCommand implements DbusCommand {
             } catch (DBusExecutionException e) {
                 handleDBusExecutionException(e);
                 return 1;
+            } catch (InvalidNumberException e) {
+                handleInvalidNumberException(e);
+                return 1;
             }
         }
 
@@ -94,12 +99,14 @@ public class SendCommand implements DbusCommand {
             if (attachments == null) {
                 attachments = new ArrayList<>();
             }
+            long timestamp;
             if (ns.getString("group") != null) {
                 byte[] groupId = Util.decodeGroupId(ns.getString("group"));
-                signal.sendGroupMessage(messageText, attachments, groupId);
+                timestamp = signal.sendGroupMessage(messageText, attachments, groupId);
             } else {
-                signal.sendMessage(messageText, attachments, ns.getList("recipient"));
+                timestamp = signal.sendMessage(messageText, attachments, ns.getList("recipient"));
             }
+            System.out.println(timestamp);
             return 0;
         } catch (IOException e) {
             handleIOException(e);
@@ -126,6 +133,9 @@ public class SendCommand implements DbusCommand {
         } catch (GroupIdFormatException e) {
             handleGroupIdFormatException(e);
             return 1;
+        } catch (InvalidNumberException e) {
+            handleInvalidNumberException(e);
+            return 1;
         }
     }
 }