mirror of
https://github.com/nostr-protocol/nips.git
synced 2024-12-22 00:25:50 -05:00
Break out chat and threads from nip 29 (#1591)
This commit is contained in:
parent
84aeb10d39
commit
1e47fd7557
34
29.md
34
29.md
|
@ -64,39 +64,7 @@ These are the events expected to be found in NIP-29 groups.
|
||||||
|
|
||||||
### Normal user-created events
|
### Normal user-created events
|
||||||
|
|
||||||
These events generally can be sent by all members of a group and they require the `h` tag to be present so they're attached to a specific group.
|
Groups may accept any event kind, including chats, threads, long-form articles, calendar, livestreams, market announcements and so on. These should be as defined in their respective NIPs, with the addition of the `h` tag.
|
||||||
|
|
||||||
- _chat message_ (`kind:9`)
|
|
||||||
|
|
||||||
This is the basic unit of a _chat message_ sent to a group.
|
|
||||||
|
|
||||||
```jsonc
|
|
||||||
"kind": 9,
|
|
||||||
"content": "hello my friends lovers of pizza",
|
|
||||||
"tags": [
|
|
||||||
["h", "<group-id>"],
|
|
||||||
["previous", "<event-id-first-chars>", "<event-id-first-chars>", /*...*/]
|
|
||||||
]
|
|
||||||
// other fields...
|
|
||||||
```
|
|
||||||
|
|
||||||
- _thread root post_ (`kind:11`)
|
|
||||||
|
|
||||||
This is the basic unit of a forum-like root thread post sent to a group.
|
|
||||||
|
|
||||||
```jsonc
|
|
||||||
"kind": 11,
|
|
||||||
"content": "hello my friends lovers of pizza",
|
|
||||||
"tags": [
|
|
||||||
["h", "<group-id>"],
|
|
||||||
["previous", "<event-id-first-chars>", "<event-id-first-chars>", /*...*/]
|
|
||||||
]
|
|
||||||
// other fields...
|
|
||||||
```
|
|
||||||
|
|
||||||
- _other events_:
|
|
||||||
|
|
||||||
Groups may also accept other events, like [NIP-22](22.md) comments as threaded replies to both chats messages and threads, long-form articles, calendar, livestreams, market announcements and so on. These should be as defined in their respective NIPs, with the addition of the `h` tag.
|
|
||||||
|
|
||||||
### User-related group management events
|
### User-related group management events
|
||||||
|
|
||||||
|
|
34
7D.md
Normal file
34
7D.md
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
NIP-7D
|
||||||
|
======
|
||||||
|
|
||||||
|
Threads
|
||||||
|
-------
|
||||||
|
|
||||||
|
`draft` `optional`
|
||||||
|
|
||||||
|
A thread is a `kind 11` event. Threads SHOULD include a `subject` with a summary
|
||||||
|
of the thread's topic.
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"kind": 11,
|
||||||
|
"content": "Good morning",
|
||||||
|
"tags": [
|
||||||
|
["subject", "GM"]
|
||||||
|
]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
Replies to `kind 11` MUST use [NIP-22](./22.md) `kind 1111` comments. Replies should
|
||||||
|
always be to the root `kind 11` to avoid arbitrarily nested reply hierarchies.
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"kind": 1111,
|
||||||
|
"content": "Cool beans",
|
||||||
|
"tags": [
|
||||||
|
["K", "11"],
|
||||||
|
["E", <event-id>, <relay-url>, <pubkey>]
|
||||||
|
]
|
||||||
|
}
|
||||||
|
```
|
29
C7.md
Normal file
29
C7.md
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
NIP-C7
|
||||||
|
======
|
||||||
|
|
||||||
|
Chats
|
||||||
|
-----
|
||||||
|
|
||||||
|
`draft` `optional`
|
||||||
|
|
||||||
|
A chat message is a `kind 9` event.
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"kind": 9,
|
||||||
|
"content": "GM",
|
||||||
|
"tags": []
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
A reply to a `kind 9` is an additional `kind 9` which quotes the parent using a `q` tag.
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"kind": 9,
|
||||||
|
"content": "nostr:nevent1...\nyes",
|
||||||
|
"tags": [
|
||||||
|
["q", <event-id>, <relay-url>, <pubkey>]
|
||||||
|
]
|
||||||
|
}
|
||||||
|
```
|
Loading…
Reference in New Issue
Block a user