]> nmode's Git Repositories - signal-cli/blobdiff - lib/src/main/java/org/asamk/signal/manager/Manager.java
Implement MessageSendLog for resending after encryption error
[signal-cli] / lib / src / main / java / org / asamk / signal / manager / Manager.java
index bc26d87cc2a407df22b197fbbb87540ef4bddf1d..ed70bceebe760cfc31c468663ff1321632aa2e0f 100644 (file)
@@ -6,12 +6,15 @@ import org.asamk.signal.manager.api.Group;
 import org.asamk.signal.manager.api.Identity;
 import org.asamk.signal.manager.api.InactiveGroupLinkException;
 import org.asamk.signal.manager.api.InvalidDeviceLinkException;
+import org.asamk.signal.manager.api.InvalidStickerException;
 import org.asamk.signal.manager.api.Message;
 import org.asamk.signal.manager.api.MessageEnvelope;
 import org.asamk.signal.manager.api.Pair;
 import org.asamk.signal.manager.api.RecipientIdentifier;
 import org.asamk.signal.manager.api.SendGroupMessageResults;
 import org.asamk.signal.manager.api.SendMessageResults;
+import org.asamk.signal.manager.api.StickerPack;
+import org.asamk.signal.manager.api.StickerPackUrl;
 import org.asamk.signal.manager.api.TypingAction;
 import org.asamk.signal.manager.api.UnregisteredRecipientException;
 import org.asamk.signal.manager.api.UpdateGroup;
@@ -64,6 +67,7 @@ public interface Manager extends Closeable {
             throw new NotRegisteredException();
         }
 
+        account.initDatabase();
         final var serviceEnvironmentConfig = ServiceConfig.getServiceEnvironmentConfig(serviceEnvironment, userAgent);
 
         return new ManagerImpl(account, pathConfig, serviceEnvironmentConfig, userAgent);
@@ -131,7 +135,7 @@ public interface Manager extends Closeable {
 
     List<Device> getLinkedDevices() throws IOException;
 
-    void removeLinkedDevices(long deviceId) throws IOException;
+    void removeLinkedDevices(int deviceId) throws IOException;
 
     void addDeviceLink(URI linkUri) throws IOException, InvalidDeviceLinkException;
 
@@ -173,7 +177,7 @@ public interface Manager extends Closeable {
 
     SendMessageResults sendMessage(
             Message message, Set<RecipientIdentifier> recipients
-    ) throws IOException, AttachmentInvalidException, NotAGroupMemberException, GroupNotFoundException, GroupSendingNotAllowedException, UnregisteredRecipientException;
+    ) throws IOException, AttachmentInvalidException, NotAGroupMemberException, GroupNotFoundException, GroupSendingNotAllowedException, UnregisteredRecipientException, InvalidStickerException;
 
     SendMessageResults sendRemoteDeleteMessage(
             long targetSentTimestamp, Set<RecipientIdentifier> recipients
@@ -218,7 +222,9 @@ public interface Manager extends Closeable {
      * @param path Path can be a path to a manifest.json file or to a zip file that contains a manifest.json file
      * @return if successful, returns the URL to install the sticker pack in the signal app
      */
-    URI uploadStickerPack(File path) throws IOException, StickerPackInvalidException;
+    StickerPackUrl uploadStickerPack(File path) throws IOException, StickerPackInvalidException;
+
+    List<StickerPack> getStickerPacks();
 
     void requestAllSyncData() throws IOException;