MessageDAOImpl
Constructors
Functions
Returns the ids of messages expecting a read confirmation within the given dates, grouped by their sender.
Inserts the message, or ignores if there's already a message with the same MessageEntity.id and MessageEntity.conversationId. There is only one exception where a second message with the same id will not be ignored, and it is when the first message is an asset preview message. In this case, the second message containing the valid encryption keys will be updating and completing the encryption keys and the visibility of the first one.
Inserts the messages, or ignores messages if there already exists a message with the same MessageEntity.id and MessageEntity.conversationId. There is only one exception where a second message with the same id will not be ignored, and it is when the first message is an asset preview message. In this case, the second message containing the valid encryption keys will be updating and completing the encryption keys and the visibility of the first one.
Atomically insert a new message or complete an asset preview; canonical duplicates have no repeated effects.
Canonical deletion/read state for existing delivered alerts; never infers expiry from missing rows.
Apple notification identities follow canonical message IDs through edits; Android does not register alerts here.
Search messages in a conversation by text content.
Search messages across all conversations by text content.
Updates an existing asset from the same sender, returning whether a valid follow-up was applied.
Conditional cleanup: a receipt committed since the caller's read must not be downgraded.