DecryptedMessage
public struct DecryptedMessage
extension DecryptedMessage: Sendable
A decrypted message and various associated metadata
-
Decrypted plaintext
Declaration
Swift
public var message: Data?
-
False if processing this message caused the client to be removed from the group, i.e. due to a Remove commit
Declaration
Swift
public var isActive: Bool
-
Commit delay in seconds.
When set, clients must delay this long before processing a commit. This reduces load on the backend, which otherwise would receive epoch change notifications from all clients simultaneously.
Declaration
Swift
public var commitDelay: UInt64?
-
[ClientId] of the sender of the message being decrypted. Only present for application messages.
Declaration
Swift
public var senderClientId: ClientId?
-
true when the decrypted message resulted in an epoch change i.e. it was a commit
Deprecated: this member will be removed in the future. Prefer using the
EpochObserver
interface.Declaration
Swift
public var hasEpochChanged: Bool
-
Identity claims present in the sender credential
Declaration
Swift
public var identity: WireIdentity
-
Only set when the decrypted message is a commit.
Contains buffered messages for next epoch which were received before the commit creating the epoch because the DS did not fan them out in order.
Declaration
Swift
public var bufferedMessages: [BufferedDecryptedMessage]?
-
New CRL distribution points that appeared by the introduction of a new credential
Declaration
Swift
public var crlNewDistributionPoints: [String]?
-
init(message:
isActive: commitDelay: senderClientId: hasEpochChanged: identity: bufferedMessages: crlNewDistributionPoints: ) Undocumented
Declaration
Swift
public init( /** * Decrypted plaintext */message: Data?, /** * False if processing this message caused the client to be removed from the group, i.e. due to a Remove commit */isActive: Bool, /** * Commit delay in seconds. * * When set, clients must delay this long before processing a commit. * This reduces load on the backend, which otherwise would receive epoch change notifications from all clients simultaneously. */commitDelay: UInt64?, /** * [ClientId] of the sender of the message being decrypted. Only present for application messages. */senderClientId: ClientId?, /** * true when the decrypted message resulted in an epoch change i.e. it was a commit * * Deprecated: this member will be removed in the future. Prefer using the `EpochObserver` interface. */hasEpochChanged: Bool, /** * Identity claims present in the sender credential */identity: WireIdentity, /** * Only set when the decrypted message is a commit. * * Contains buffered messages for next epoch which were received before the commit creating the epoch * because the DS did not fan them out in order. */bufferedMessages: [BufferedDecryptedMessage]?, /** * New CRL distribution points that appeared by the introduction of a new credential */crlNewDistributionPoints: [String]?)