PacketRepository
Repository interface for managing mesh packets and message history.
This component provides methods for persisting received packets, querying message history, tracking unread counts, and managing contact-specific settings. It supports both reactive (Flow) and one-shot (suspend) queries.
Functions
Clears the unread status for all messages across all conversations.
Clears all packet and message history from the database.
Clears the unread status for messages in a conversation up to the given timestamp.
Deletes all messages and settings for the given contacts.
Deletes messages by their database UUIDs.
Deletes a waypoint by its ID.
Finds all packets matching a specific packet ID.
Finds all reactions associated with a specific packet ID.
Reactive flow of all conversation contacts, keyed by their contact identifier.
Reactive flow of all contact settings (e.g., mute status).
Returns the settings for a specific contact.
Reactive paged flow of conversation contacts.
Returns the total count of filtered messages for a contact.
Reactive flow of the number of filtered messages for a contact.
Reactive flow of the UUID of the first unread message in a conversation.
Returns the total number of messages in a conversation.
Returns a reactive flow of messages for a conversation.
Returns a paged flow of messages for a conversation.
Returns a paged flow of messages for a conversation, with filtering options.
Returns a packet by its internal database ID.
Returns a packet by its mesh-layer packet ID.
Returns all packets currently queued for transmission.
Returns a reaction associated with a specific packet ID.
Returns the count of unread messages in a conversation.
Reactive flow of the unread message count in a conversation.
Reactive flow of the total unread message count across all conversations.
Reactive flow of all persisted waypoints (GPS locations).
Reactive flow indicating whether a conversation has any unread messages.
Persists a message reaction (emoji).
Migrates channel-specific message history when encryption keys change.
Disables or enables message filtering for a specific contact.
Mutes the given contacts until the specified timestamp.
Marks all messages from a specific sender as filtered or unfiltered.
Updates the identifier of the last read message in a conversation.
Updates the identifier of a persisted packet.
Updates the transmission status of a packet.
Updates an existing reaction.
Updates the SFPP status of packets matching the given commit hash.