mirror of
https://github.com/nostr-protocol/nips.git
synced 2025-12-19 04:58:51 +00:00
Public Messages (#1988)
This commit is contained in:
56
A4.md
Normal file
56
A4.md
Normal file
@@ -0,0 +1,56 @@
|
|||||||
|
NIP-A4
|
||||||
|
======
|
||||||
|
|
||||||
|
Public Messages
|
||||||
|
---------------
|
||||||
|
|
||||||
|
`draft` `optional`
|
||||||
|
|
||||||
|
This NIP defines kind `24` as a simple plaintext message to one or more Nostr users.
|
||||||
|
|
||||||
|
The `.content` contains the message. `p` tags identify one or more receivers.
|
||||||
|
|
||||||
|
```jsonc
|
||||||
|
{
|
||||||
|
"pubkey": "<sender-pubkey>",
|
||||||
|
"kind": 24,
|
||||||
|
"tags": [
|
||||||
|
["p", "<receiver>", "<relay-url>"],
|
||||||
|
],
|
||||||
|
"content": "<message-in-plain-text>",
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
Messages MUST be sent to the [NIP-65](65.md) inbox relays of each receiver and the outbox relay of the sender.
|
||||||
|
|
||||||
|
Kind `24` is designed to be shown and replied to from notification screens. The goal is to allow clients to
|
||||||
|
support this feature without having to worry about chat history. There are no message chains. The concept of a
|
||||||
|
"thread", a "thread root", or a "chatroom" does not exist in this system, as messages can start and continue
|
||||||
|
without any syntactic connection to each other. `e` tags must not be used.
|
||||||
|
|
||||||
|
This kind is not designed to be displayed on feeds, but anyone can see and reply to messages that may not be for them.
|
||||||
|
|
||||||
|
## Advanced Support
|
||||||
|
|
||||||
|
[NIP-40](40.md) `expiration` tags are recommended. Since there is no concept of a chatroom, it is unlikely that these messages will
|
||||||
|
make sense as time goes on.
|
||||||
|
|
||||||
|
[NIP-18](18.md) quote repost `q` tags MAY be used when citing events in the `.content` with [NIP-21](21.md).
|
||||||
|
|
||||||
|
```json
|
||||||
|
["q", "<event-id> or <event-address>", "<relay-url>", "<pubkey-if-a-regular-event>"]
|
||||||
|
```
|
||||||
|
|
||||||
|
[NIP-25](25.md) reactions MUST add a `k` tag to `24`.
|
||||||
|
|
||||||
|
[NIP-57](57.md) zaps MUST include the `k` tag to `24`
|
||||||
|
|
||||||
|
[NIP-21](21.md) links that use [NIP-19](19.md)'s `nevent1` MUST include a `kind` of `24`. Links that are not `kind:24` are not expected to be rendered natively by the client.
|
||||||
|
|
||||||
|
[NIP-92](92.md) `imeta` tags SHOULD be added for image and video links.
|
||||||
|
|
||||||
|
## Warnings
|
||||||
|
|
||||||
|
There MUST be no expectation of privacy in this kind. It is just a public reply, but without a root note.
|
||||||
|
|
||||||
|
Avoid confusing this kind with Kind `14` rumors in [NIP-17](17.md) DMs. This kind is signed and designed for public consumption.
|
||||||
Reference in New Issue
Block a user