XmtpElixirSdk.Sync
(xmtp_elixir_sdk v0.1.2)
Copy Markdown
Archive, restore, and device-sync operations.
This module is for exporting conversation state, importing it somewhere else, and coordinating sync between installations.
Reach for it when you need to:
- build an archive blob
- inspect archive metadata
- import an archive
- discover available archives
- request or apply device sync
Summary
Functions
@spec archive_metadata(XmtpElixirSdk.Client.t(), binary(), binary()) :: {:ok, XmtpElixirSdk.Types.ArchiveMetadata.t()} | {:error, XmtpElixirSdk.Error.t()}
@spec create_archive( XmtpElixirSdk.Client.t(), binary(), XmtpElixirSdk.Types.ArchiveOptions.t() ) :: {:ok, binary()} | {:error, XmtpElixirSdk.Error.t()}
@spec import_archive(XmtpElixirSdk.Client.t(), binary(), binary()) :: {:ok, :ok} | {:error, XmtpElixirSdk.Error.t()}
@spec list_available_archives(XmtpElixirSdk.Client.t(), non_neg_integer()) :: {:ok, [XmtpElixirSdk.Types.AvailableArchiveInfo.t()]} | {:error, XmtpElixirSdk.Error.t()}
@spec process_sync_archive(XmtpElixirSdk.Client.t(), String.t() | nil) :: {:ok, :ok} | {:error, XmtpElixirSdk.Error.t()}
@spec send_sync_archive( XmtpElixirSdk.Client.t(), String.t(), XmtpElixirSdk.Types.ArchiveOptions.t(), String.t() ) :: {:ok, :ok} | {:error, XmtpElixirSdk.Error.t()}
@spec send_sync_request( XmtpElixirSdk.Client.t(), XmtpElixirSdk.Types.ArchiveOptions.t(), String.t() ) :: {:ok, :ok} | {:error, XmtpElixirSdk.Error.t()}
@spec sync_all_device_sync_groups(XmtpElixirSdk.Client.t()) :: {:ok, XmtpElixirSdk.Types.GroupSyncSummary.t()} | {:error, XmtpElixirSdk.Error.t()}