mirror of
https://github.com/nostr-protocol/nips.git
synced 2025-12-19 21:18:50 +00:00
Clarify closed/private, add hidden to nip 29 (#2106)
Co-authored-by: Jon Staab <shtaab@gmail.com>
This commit is contained in:
14
29.md
14
29.md
@@ -83,7 +83,7 @@ Any user can send a kind `9021` event to the relay in order to request admission
|
||||
}
|
||||
```
|
||||
|
||||
The optional `code` tag may be used by the relay to preauthorize acceptances in `closed` groups, together with the `kind:9009` `create-invite` moderation event.
|
||||
The optional `code` tag may be used by the relay to preauthorize acceptance, together with the `kind:9009` `create-invite` moderation event.
|
||||
|
||||
- *leave request* (`kind:9022`)
|
||||
|
||||
@@ -153,14 +153,18 @@ When this event is not found, clients may still connect to the group, but treat
|
||||
["name", "Pizza Lovers"],
|
||||
["picture", "https://pizza.com/pizza.png"],
|
||||
["about", "a group for people who love pizza"],
|
||||
["public"], // or ["private"]
|
||||
["open"] // or ["closed"]
|
||||
["private"],
|
||||
["closed"]
|
||||
]
|
||||
// other fields...
|
||||
}
|
||||
```
|
||||
|
||||
`name`, `picture` and `about` are basic metadata for the group for display purposes. `public` signals the group can be _read_ by anyone, while `private` signals that only AUTHed users can read. `open` signals that anyone can request to join and the request will be automatically granted, while `closed` signals that members must be pre-approved or that requests to join will be manually handled.
|
||||
- `name`, `picture` and `about` are basic metadata for the group for display purposes.
|
||||
- `private` indicates that only members can _read_ group messages. Omitting this tag indicates that anyone can read group messages.
|
||||
- `restricted` indicates that only members can _write_ messages to the group. Omitting this tag indicates that anyone can send messages to the group.
|
||||
- `hidden` indicates that relays should hide group metadata from non-members. Omitting this tag indicates that anyone can request group metadata events.
|
||||
- `closed` indicates that join requests are ignored. Omitting this tag indicates that users can expect join requests to be honored.
|
||||
|
||||
- *group admins* (`kind:39001`) (optional)
|
||||
|
||||
@@ -231,7 +235,7 @@ The latest of either `kind:9000` or `kind:9001` events present in a group should
|
||||
|
||||
### Adding yourself to a group
|
||||
|
||||
When a group is `open`, anyone can send a `kind:9021` event to it in order to be added, then expect a `kind:9000` event to be emitted confirming that the user was added. The same happens with `closed` groups, except in that case a user may only send a `kind:9021` if it has an invite code.
|
||||
Anyone can send a `kind:9021` join request to a group. The relay may then generate a `kind:9000` event immediately, or defer that decision to an administator. If a group is `closed`, join requests are not honored unless they include an invite code.
|
||||
|
||||
### Storing your list of groups
|
||||
|
||||
|
||||
Reference in New Issue
Block a user