WhatsApp thread
Can you share the invoice and delivery location?
Sure, sending the document and location now.
Type, attach, mention, or react
Product guide
Messaging is the customer-facing action layer of ReplyBox: agents compose, attach, react, edit, revoke, and send through a queued WhatsApp pipeline that preserves optimistic UI and delivery truth.
Supported surface
Message types
Plain text, quoted replies, edits, revokes, and read receipts keep the basic thread fast and familiar.
Images, video, stickers, and captions render inside the thread while preserving the message row.
Audio files and WhatsApp-style voice notes stay distinct so previews and playback feel correct.
Files are sent as WhatsApp documents and displayed with clear attachment metadata.
Coordinates are sent through the location endpoint and hydrate the canonical message from the server.
Group conversations support sender labels, participant metadata, and explicit @mentions.
The web client creates an optimistic bubble with a stable client_message_id.
The API inserts the outbound message and returns the canonical row for reconciliation.
The producer enqueues work on the connector's whatsapp queue.
WhatsApp acknowledgements move the same bubble through the delivery lifecycle.
Delivery truth
messages.statusDo not treat sent_count as delivery. It only means the message was handed to the connector, not that WhatsApp accepted, delivered, or read it.
messages.client_message_id must stay on the message row so acknowledgements can replace the optimistic bubble instead of creating duplicates.
Status transitions should update the existing bubble. The same visible message moves from queued to final state.
The server enforces send permissions and connected-channel checks before work reaches the connector.