Messages & media
Text messages run over the Double Ratchet: a fresh key per message, forward secrecy, and self-healing when a session falls out of step.
Delete for everyone removes the message on both sides and leaves a “message deleted” placeholder. Editing is possible for up to five minutes after sending and leaves the note “edited”. Both apply exclusively to your own messages and are strictly checked on receipt – a modified app cannot use them to tamper with someone else’s messages.
Photos, videos, files
Section titled “Photos, videos, files”| One-to-one chat | Group / older apps | |
|---|---|---|
| Maximum size per attachment | 100 MB | 50 MB |
The path an attachment takes:
- Photos are prepared – scaled down to at most 2048 px and re-encoded as JPEG. Depending on the original that saves 50–90 %. Compact originals are left untouched.
- Everything gets packed before it is encrypted. Afterwards it would not work – ciphertext is random.
- Encrypted and segmented. Large attachments use a segmented wire format that keeps memory use small: a 100 MB run-through between two real devices cost the weaker receiver about 10 MB of extra memory – not 100.
- Transferred in chunks – roughly 18 KB each, at most 8192 per transfer. Only once all pieces have arrived can anything be decrypted. A missing or altered piece makes the integrity check fail.
Received media land exclusively in private app storage and sit there encrypted with AES-256-GCM. “Save to gallery” takes them out deliberately.
Voice and video messages
Section titled “Voice and video messages”Voice messages are recorded speech-optimised – mono, 32 kbit/s – which makes them about three times smaller than a standard recording. Playback happens right in the bubble. Video messages are recorded through the camera.
If you leave the chat while a recording is running, it is discarded and the microphone released – not quietly kept running in the background.
In-app camera
Section titled “In-app camera”Instead of invoking the system camera, TalX brings its own: zoom, exposure compensation, lens choice. It is the only screen that rotates with the device – the rest of the app stays deliberately in portrait.
Video recordings from the app stop at 50 MB, not at 100. That is intentional: the limit has to apply while recording, otherwise someone films for minutes and only then finds out the file is too large.
“View once”
Section titled ““View once””The attachment menu has a switch that applies to the next media you send. The recipient then sees no preview image, but a placeholder with the word “once”. Tapping opens it exactly once, full screen – and it can still be saved to the gallery at that moment – after which the file is deleted for good and the placeholder reads “viewed”.
This is symmetric: your own sent copy disappears after being viewed once, too. Delivery is unaffected, because it uses the already-encrypted ciphertext in the outbox rather than the local display file.
The transport path on every message
Section titled “The transport path on every message”Every delivered message carries a small symbol showing the route it took: Bluetooth, Wi-Fi, internet, relay or Sidelink. On messages you sent it appears with the delivery confirmation, because before that the route is simply not settled.
Delivery and the queue
Section titled “Delivery and the queue”Every piece of content gets an identifier and lands first in the encrypted outbox. Delivery attempts run immediately, on every connection, as soon as the contact sends something themselves – and otherwise regularly every 20 seconds, with a minimum gap per entry.
Only the recipient’s confirmation deletes the entry and sets the tick. Handing the bytes to the radio does not count. Retries create no duplicates, because the message identifier is the primary key on the receiving side. The outbox survives app restarts.
Notifications
Section titled “Notifications”Every incoming message produces a notification with the sender’s name, a short preview and the round avatar; group messages appear under the group name with the respective sender. There is exactly one notification per conversation, in which further messages stack up.
- On the lock screen the content is hidden.
- No notification is raised for the conversation currently open and visible.
- Your own messages and system notices never notify.
- The sound is a purpose-built two-tone motif; sound and vibration can be changed in the system settings for that channel.
