Join a group from a Welcome message
To join a group from a Welcome
message, a new MlsGroup
can be instantiated directly from the Welcome
message and an MlsGroupJoinConfig
(see Group configuration for more details). If the group configuration does not use the ratchet tree extension, the ratchet tree needs to be provided.
let mut bob_group = MlsGroup::new_from_welcome(
provider,
&mls_group_config,
welcome.into_welcome().expect("Unexpected message type."),
None, // We use the ratchet tree extension, so we don't provide a ratchet tree here
)
.expect("Error joining group from Welcome");
Pay attention not to forward a Welcome message to a client before its associated commit has been accepted by the Delivery Service. Otherwise, you would end up with an invalid MLS group instance.