reformat a bunch of json things and small nitpicks.

This commit is contained in:
fiatjaf
2023-11-18 09:13:12 -03:00
parent b0df71824f
commit 5dcfe85306
21 changed files with 385 additions and 365 deletions

30
53.md
View File

@@ -6,17 +6,17 @@ Live Activities
`draft` `optional`
## Abstract
Service providers want to offer live activities to the Nostr network in such a way that participants can easily logged and queried by clients. This NIP describes a general framework to advertise the involvement of pubkeys in such live activities.
# Live Event
## Concepts
### Live Event
A special event with `kind:30311` "Live Event" is defined as a _parameterized replaceable event_ of public `p` tags. Each `p` tag SHOULD have a **displayable** marker name for the current role (e.g. `Host`, `Speaker`, `Participant`) of the user in the event and the relay information MAY be empty. This event will be constantly updated as participants join and leave the activity.
For example:
```js
```json
{
"kind": 30311,
"tags": [
@@ -38,7 +38,7 @@ For example:
["relays", "wss://one.com", "wss://two.com", ...]
],
"content": "",
...other fields
...
}
```
@@ -52,7 +52,7 @@ Live Activity management clients are expected to constantly update `kind:30311`
The activity MUST be linked to using the [NIP-19](19.md) `naddr` code along with the `a` tag.
## Proof of Agreement to Participate
### Proof of Agreement to Participate
Event owners can add proof as the 5th term in each `p` tag to clarify the participant's agreement in joining the event. The proof is a signed SHA256 of the complete `a` Tag of the event (`kind:pubkey:dTag`) by each `p`'s private key, encoded in hex.
@@ -60,30 +60,28 @@ Clients MAY only display participants if the proof is available or MAY display p
This feature is important to avoid malicious event owners adding large account holders to the event, without their knowledge, to lure their followers into the malicious owner's trap.
# Live Chat Message
### Live Chat Message
Event `kind:1311` is live chat's channel message. Clients MUST include the `a` tag of the activity with a `root` marker. Other Kind-1 tags such as `reply` and `mention` can also be used.
```js
```json
{
"id": "<32-bytes lowercase hex-encoded SHA-256 of the the serialized event data>",
"pubkey": "<32-bytes lowercase hex-encoded public key of the event creator>",
"created_at": "<Unix timestamp in seconds>",
"kind": 1311,
"tags": [
["a", "30311:<Community event author pubkey>:<d-identifier of the community>", "<Optional relay url>", "root"],
],
"content": "Zaps to live streams is beautiful."
"content": "Zaps to live streams is beautiful.",
...
}
```
# Use Cases
## Use Cases
Common use cases include meeting rooms/workshops, watch-together activities, or event spaces, such as [live.snort.social](https://live.snort.social) and [nostrnests.com](https://nostrnests.com).
# Example
## Example
Live Streaming
### Live Streaming
```json
{
@@ -107,7 +105,7 @@ Live Streaming
}
```
Live Streaming chat message
### Live Streaming chat message
```json
{