This commit is contained in:
epoberezkin
2024-10-14 08:38:53 +00:00
parent 307772015f
commit 3ee8a7bed2
5 changed files with 1000 additions and 71 deletions
+1 -1
View File
@@ -882,7 +882,7 @@ eventWord = 1* ALPHA
<p>While introduced members establish connection inside group, inviting member forwards messages between them by sending <code>x.grp.msg.forward</code> messages. When introduced members finalize connection, they notify inviting member to stop forwarding via <code>x.grp.mem.con</code> message.</p>
<p><img src="diagrams/group.svg" alt="Adding member to the group"></p>
<h3 id="member-roles" tabindex="-1">Member roles</h3>
<p>Currently members can have one of three roles - <code>owner</code>, <code>admin</code>, <code>member</code> and <code>observer</code>. The user that created the group is self-assigned owner role, the new members are assigned role by the member who adds them - only <code>owner</code> and <code>admin</code> members can add new members; only <code>owner</code> members can add members with <code>owner</code> role. <code>Observer</code> members only receive messages and aren't allowed to send messages.</p>
<p>Currently members can have one of four roles - <code>owner</code>, <code>admin</code>, <code>member</code> and <code>observer</code>. The user that created the group is self-assigned owner role, the new members are assigned role by the member who adds them - only <code>owner</code> and <code>admin</code> members can add new members; only <code>owner</code> members can add members with <code>owner</code> role. <code>Observer</code> members only receive messages and aren't allowed to send messages.</p>
<h3 id="messages-to-manage-groups-and-add-members" tabindex="-1">Messages to manage groups and add members</h3>
<p><code>x.grp.inv</code> message is sent to invite contact to the group via contact's direct connection and includes group member connection address. This message MUST only be sent by members with <code>admin</code> or <code>owner</code> role. Optional <code>groupLinkId</code> is included when this message is sent to contacts connected via the user's group link. This identifier is a random byte sequence, with no global or even local uniqueness - it is only used for the user's invitations to a given group to provide confirmation to the contact that the group invitation is for the same group the contact was connecting to via the group link, so that the invitation can be automatically accepted by the contact - the contact compares it with the group link id contained in the group link uri's data field.</p>
<p><code>x.grp.acpt</code> message is sent as part of group member connection handshake, only to the inviting user.</p>