]> nmode's Git Repositories - signal-cli/commitdiff
implement Dbus setExpirationTimer (#735)
authorJohn Freed <okgithub@johnfreed.com>
Sun, 26 Sep 2021 07:04:40 +0000 (09:04 +0200)
committerGitHub <noreply@github.com>
Sun, 26 Sep 2021 07:04:40 +0000 (09:04 +0200)
implement method

update documentation

man/signal-cli-dbus.5.adoc
src/main/java/org/asamk/Signal.java
src/main/java/org/asamk/signal/dbus/DbusSignalImpl.java

index 8cc234bcab7612243679138e1beaec2356c830f1..12b87d2b546847adb55154322a856c10f00d64ab 100755 (executable)
@@ -61,6 +61,13 @@ updateProfile(newName<s>, about <s>, aboutEmoji <s>, avatar<s>, remove<b>) -> <>
 
 Exceptions: Failure
 
+
+setExpirationTimer(number<s>, expiration<i>) -> <>::
+* number     : Phone number of recipient
+* expiration : int32 for the number of seconds before messages to this recipient disappear. Set to 0 to disable expiration.
+
+Exceptions: Failure
+
 setContactBlocked(number<s>, block<b>) -> <>::
 * number  : Phone number affected by method
 * block   : 0=remove block , 1=blocked
index d981e024c5accf35cf566b7284a9acf03a049b7d..c5839d1498fd5aecdb58aba2967698bf2483a171 100644 (file)
@@ -71,6 +71,8 @@ public interface Signal extends DBusInterface {
 
     void setContactName(String number, String name) throws Error.InvalidNumber;
 
+    void setExpirationTimer(final String number, final int expiration) throws Error.Failure;
+
     void setContactBlocked(String number, boolean blocked) throws Error.InvalidNumber;
 
     void setGroupBlocked(byte[] groupId, boolean blocked) throws Error.GroupNotFound, Error.InvalidGroupId;
index 4a478f13398f4ee4218677242ea08154e7ddc5db..dfd55f62a5985e7e8c61021bebc99126384fe1fa 100644 (file)
@@ -305,6 +305,15 @@ public class DbusSignalImpl implements Signal {
         }
     }
 
+    @Override
+    public void setExpirationTimer(final String number, final int expiration) {
+        try {
+            m.setExpirationTimer(getSingleRecipientIdentifier(number, m.getUsername()), expiration);
+        } catch (IOException e) {
+            throw new Error.Failure(e.getMessage());
+        }
+    }
+
     @Override
     public void setContactBlocked(final String number, final boolean blocked) {
         try {