]> nmode's Git Repositories - signal-cli/blobdiff - src/main/java/org/asamk/Signal.java
Implement viewedReceipt
[signal-cli] / src / main / java / org / asamk / Signal.java
index 349671b37bffb05e9fa058862046adb8b2afd6af..18bdbdb563a604fd0fb41a5d5fe1e79a348b5ce1 100644 (file)
@@ -37,6 +37,10 @@ public interface Signal extends DBusInterface {
             String recipient, List<Long> messageIds
     ) throws Error.Failure, Error.UntrustedIdentity;
 
+    void sendViewedReceipt(
+            String recipient, List<Long> messageIds
+    ) throws Error.Failure, Error.UntrustedIdentity;
+
     long sendRemoteDeleteMessage(
             long targetSentTimestamp, String recipient
     ) throws Error.Failure, Error.InvalidNumber;
@@ -388,63 +392,67 @@ public interface Signal extends DBusInterface {
         class AttachmentInvalid extends DBusExecutionException {
 
             public AttachmentInvalid(final String message) {
-                super(message);
+                super("Invalid attachment: " + message);
             }
         }
 
         class InvalidUri extends DBusExecutionException {
 
             public InvalidUri(final String message) {
-                super(message);
+                super("Invalid uri: " + message);
             }
         }
 
         class Failure extends DBusExecutionException {
 
+            public Failure(final Exception e) {
+                super("Failure: " + e.getMessage() + " (" + e.getClass().getSimpleName() + ")");
+            }
+
             public Failure(final String message) {
-                super(message);
+                super("Failure: " + message);
             }
         }
 
         class DeviceNotFound extends DBusExecutionException {
 
             public DeviceNotFound(final String message) {
-                super(message);
+                super("Device not found: " + message);
             }
         }
 
         class GroupNotFound extends DBusExecutionException {
 
             public GroupNotFound(final String message) {
-                super(message);
+                super("Group not found: " + message);
             }
         }
 
         class InvalidGroupId extends DBusExecutionException {
 
             public InvalidGroupId(final String message) {
-                super(message);
+                super("Invalid group id: " + message);
             }
         }
 
         class LastGroupAdmin extends DBusExecutionException {
 
             public LastGroupAdmin(final String message) {
-                super(message);
+                super("Last group admin: " + message);
             }
         }
 
         class InvalidNumber extends DBusExecutionException {
 
             public InvalidNumber(final String message) {
-                super(message);
+                super("Invalid number: " + message);
             }
         }
 
         class UntrustedIdentity extends DBusExecutionException {
 
             public UntrustedIdentity(final String message) {
-                super(message);
+                super("Untrusted identity: " + message);
             }
         }
     }