You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: diagrams/diagrams.md
+39-29
Original file line number
Diff line number
Diff line change
@@ -4,6 +4,8 @@ The sequence diagrams stored here are for documenting LibXMTP's group chat imple
4
4
5
5
The diagrams represent the creation of a group chat between Alice, Bob, and Charlie, our implmentation of [Figure 2](https://messaginglayersecurity.rocks/mls-architecture/draft-ietf-mls-architecture.html#fig-group-formation-example) from [The Messaging Layer Security (MLS) Architecture](https://messaginglayersecurity.rocks/mls-architecture/draft-ietf-mls-architecture.html) spec.
6
6
7
+
Note: calls into LibXMTP with the `conversations.` prefix use the [Conversations](https://github.com/xmtp/libxmtp/blob/204b35a337daf2a9f2ed0cb20199e254d0a7493a/bindings_ffi/src/mls.rs#L188) protocol, and calls with a `group.` prefix use the [Group](https://github.com/xmtp/libxmtp/blob/204b35a337daf2a9f2ed0cb20199e254d0a7493a/bindings_ffi/src/mls.rs#L315) protocol.
8
+
7
9
**form-group.mermaid* - Covers Steps 1-4 of forming a group. In LibXMTP, steps 1 and 2 happen at the same time, and steps 3 and 4 can also be consolidated by calling `newGroup()` with multiple participants.
8
10
**send-recieve.mermaid* - Covers sending and receiving messages to the newly formed group.
9
11
**add-remove.mermaid* - Covers adding and removing group members.
@@ -21,37 +23,47 @@ sequenceDiagram
21
23
22
24
Note over Alice,Charlie: These calls are coming from higher-level<br/> SDKs on behalf of users
23
25
Note over Alice,Node: Step 1 (Account Creation) & 2 (Initial Keying Material) of MLS group creation combined
0 commit comments