Persistent chat
Starling’s pchat service handles persistent channel messages, history fetches, key exchange, and pins. The server stores encrypted payloads; the client performs the end-to-end encryption.
Channel policy
Section titled “Channel policy”A channel’s persistence policy determines whether history is retained. Review its history and encryption controls from the channel settings, and test the policy with two registered identities before using it for a community.
History access follows channel permissions. Registration, encryption mode, retention, and limits affect whether a member can retrieve and decrypt earlier messages. A connected client may already have a local copy even after server retention removes a message.
Storage and recovery
Section titled “Storage and recovery”The pchat database is owned by that service. Keep its database and the Starling data directory in your backup. The at-rest key is generated in the data directory; preserve it with the encrypted database. Use Starling configuration reference and the storage guide for deployment settings.
Verify the result
Section titled “Verify the result”Send a message, disconnect, reconnect with the same identity, and confirm that history loads. Repeat with another identity that has channel access. Check the pchat logs if messages load but cannot be decrypted.
Moving an existing deployment has separate history limitations. Read Migrating to Starling before importing its database.
