pub trait Conversation<'a>: ConversationWithMls<'a> {
// Provided methods
fn epoch<'async_trait>(
&'a self,
) -> Pin<Box<dyn Future<Output = u64> + Send + 'async_trait>>
where Self: Sync + 'async_trait,
'a: 'async_trait { ... }
fn ciphersuite<'async_trait>(
&'a self,
) -> Pin<Box<dyn Future<Output = MlsCiphersuite> + Send + 'async_trait>>
where Self: Sync + 'async_trait,
'a: 'async_trait { ... }
fn export_secret_key<'async_trait>(
&'a self,
key_length: usize,
) -> Pin<Box<dyn Future<Output = Result<Vec<u8>>> + Send + 'async_trait>>
where Self: Sync + 'async_trait,
'a: 'async_trait { ... }
fn get_client_ids<'async_trait>(
&'a self,
) -> Pin<Box<dyn Future<Output = Vec<ClientId>> + Send + 'async_trait>>
where Self: Sync + 'async_trait,
'a: 'async_trait { ... }
fn get_external_sender<'async_trait>(
&'a self,
) -> Pin<Box<dyn Future<Output = Result<Vec<u8>>> + Send + 'async_trait>>
where Self: Sync + 'async_trait,
'a: 'async_trait { ... }
fn e2ei_conversation_state<'async_trait>(
&'a self,
) -> Pin<Box<dyn Future<Output = Result<E2eiConversationState>> + Send + 'async_trait>>
where Self: Sync + 'async_trait,
'a: 'async_trait { ... }
fn get_device_identities<'life0, 'async_trait>(
&'a self,
device_ids: &'life0 [ClientId],
) -> Pin<Box<dyn Future<Output = Result<Vec<WireIdentity>>> + Send + 'async_trait>>
where Self: Sync + 'async_trait,
'a: 'async_trait,
'life0: 'async_trait { ... }
fn get_user_identities<'life0, 'async_trait>(
&'a self,
user_ids: &'life0 [String],
) -> Pin<Box<dyn Future<Output = Result<HashMap<String, Vec<WireIdentity>>>> + Send + 'async_trait>>
where Self: Sync + 'async_trait,
'a: 'async_trait,
'life0: 'async_trait { ... }
}
Expand description
The Conversation
trait provides a set of operations that can be done on
an immutable conversation.
Provided Methods§
Sourcefn epoch<'async_trait>(
&'a self,
) -> Pin<Box<dyn Future<Output = u64> + Send + 'async_trait>>where
Self: Sync + 'async_trait,
'a: 'async_trait,
fn epoch<'async_trait>(
&'a self,
) -> Pin<Box<dyn Future<Output = u64> + Send + 'async_trait>>where
Self: Sync + 'async_trait,
'a: 'async_trait,
Returns the epoch of a given conversation
Sourcefn ciphersuite<'async_trait>(
&'a self,
) -> Pin<Box<dyn Future<Output = MlsCiphersuite> + Send + 'async_trait>>where
Self: Sync + 'async_trait,
'a: 'async_trait,
fn ciphersuite<'async_trait>(
&'a self,
) -> Pin<Box<dyn Future<Output = MlsCiphersuite> + Send + 'async_trait>>where
Self: Sync + 'async_trait,
'a: 'async_trait,
Returns the ciphersuite of a given conversation
Sourcefn export_secret_key<'async_trait>(
&'a self,
key_length: usize,
) -> Pin<Box<dyn Future<Output = Result<Vec<u8>>> + Send + 'async_trait>>where
Self: Sync + 'async_trait,
'a: 'async_trait,
fn export_secret_key<'async_trait>(
&'a self,
key_length: usize,
) -> Pin<Box<dyn Future<Output = Result<Vec<u8>>> + Send + 'async_trait>>where
Self: Sync + 'async_trait,
'a: 'async_trait,
Sourcefn get_client_ids<'async_trait>(
&'a self,
) -> Pin<Box<dyn Future<Output = Vec<ClientId>> + Send + 'async_trait>>where
Self: Sync + 'async_trait,
'a: 'async_trait,
fn get_client_ids<'async_trait>(
&'a self,
) -> Pin<Box<dyn Future<Output = Vec<ClientId>> + Send + 'async_trait>>where
Self: Sync + 'async_trait,
'a: 'async_trait,
Sourcefn get_external_sender<'async_trait>(
&'a self,
) -> Pin<Box<dyn Future<Output = Result<Vec<u8>>> + Send + 'async_trait>>where
Self: Sync + 'async_trait,
'a: 'async_trait,
fn get_external_sender<'async_trait>(
&'a self,
) -> Pin<Box<dyn Future<Output = Result<Vec<u8>>> + Send + 'async_trait>>where
Self: Sync + 'async_trait,
'a: 'async_trait,
Returns the raw public key of the single external sender present in this group. This should be used to initialize a subconversation
Sourcefn e2ei_conversation_state<'async_trait>(
&'a self,
) -> Pin<Box<dyn Future<Output = Result<E2eiConversationState>> + Send + 'async_trait>>where
Self: Sync + 'async_trait,
'a: 'async_trait,
fn e2ei_conversation_state<'async_trait>(
&'a self,
) -> Pin<Box<dyn Future<Output = Result<E2eiConversationState>> + Send + 'async_trait>>where
Self: Sync + 'async_trait,
'a: 'async_trait,
Indicates when to mark a conversation as not verified i.e. when not all its members have a X509 Credential generated by Wire’s end-to-end identity enrollment
Sourcefn get_device_identities<'life0, 'async_trait>(
&'a self,
device_ids: &'life0 [ClientId],
) -> Pin<Box<dyn Future<Output = Result<Vec<WireIdentity>>> + Send + 'async_trait>>where
Self: Sync + 'async_trait,
'a: 'async_trait,
'life0: 'async_trait,
fn get_device_identities<'life0, 'async_trait>(
&'a self,
device_ids: &'life0 [ClientId],
) -> Pin<Box<dyn Future<Output = Result<Vec<WireIdentity>>> + Send + 'async_trait>>where
Self: Sync + 'async_trait,
'a: 'async_trait,
'life0: 'async_trait,
From a given conversation, get the identity of the members supplied. Identity is only present for members with a Certificate Credential (after turning on end-to-end identity). If no member has a x509 certificate, it will return an empty Vec
Sourcefn get_user_identities<'life0, 'async_trait>(
&'a self,
user_ids: &'life0 [String],
) -> Pin<Box<dyn Future<Output = Result<HashMap<String, Vec<WireIdentity>>>> + Send + 'async_trait>>where
Self: Sync + 'async_trait,
'a: 'async_trait,
'life0: 'async_trait,
fn get_user_identities<'life0, 'async_trait>(
&'a self,
user_ids: &'life0 [String],
) -> Pin<Box<dyn Future<Output = Result<HashMap<String, Vec<WireIdentity>>>> + Send + 'async_trait>>where
Self: Sync + 'async_trait,
'a: 'async_trait,
'life0: 'async_trait,
From a given conversation, get the identity of the users (device holders) supplied. Identity is only present for devices with a Certificate Credential (after turning on end-to-end identity). If no member has a x509 certificate, it will return an empty Vec.
Returns a Map with all the identities for a given users. Consumers are then recommended to reduce those identities to determine the actual status of a user.