NIP-53 Text Refinements and formatting fixes (#2052)
This commit is contained in:
parent
8c45ff5d96
commit
3760a6e308
49
53.md
49
53.md
|
@ -6,13 +6,13 @@ Live Activities
|
|||
|
||||
`draft` `optional`
|
||||
|
||||
Service providers want to offer live activities to the Nostr network in such a way that participants can easily log and query by clients. This NIP describes a general framework to advertise the involvement of pubkeys in such live activities.
|
||||
This NIP introduces event kinds to advertise live spaces and the participation of pubkeys in them.
|
||||
|
||||
## Concepts
|
||||
## Live Streaming
|
||||
|
||||
### Live Event
|
||||
A special event with `kind:30311` "Live Streaming Event" is defined as an _addressable event_ whose tags advertise the content and participats of a live stream.
|
||||
|
||||
A special event with `kind:30311` "Live Event" is defined as an _addressable 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.
|
||||
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:
|
||||
|
||||
|
@ -69,7 +69,7 @@ Event `kind:1311` is live chat's channel message. Clients MUST include the `a` t
|
|||
{
|
||||
"kind": 1311,
|
||||
"tags": [
|
||||
["a", "30311:<Community event author pubkey>:<d-identifier of the community>", "<Optional relay url>", "root"],
|
||||
["a", "30311:<Community event author pubkey>:<d-identifier of the community>", "<Optional relay url>"],
|
||||
],
|
||||
"content": "Zaps to live streams is beautiful.",
|
||||
// other fields...
|
||||
|
@ -84,13 +84,9 @@ Event `kind:1311` is live chat's channel message. Clients MUST include the `a` t
|
|||
|
||||
Hosts may choose to pin one or more live chat messages by updating the `pinned` tags in the live event kind `30311`.
|
||||
|
||||
## Use Cases
|
||||
### Examples
|
||||
|
||||
Common use cases include meeting rooms/workshops, watch-together activities, or event spaces, such as [zap.stream](https://zap.stream).
|
||||
|
||||
## Example
|
||||
|
||||
### Live Streaming
|
||||
#### Live Streaming
|
||||
|
||||
```json
|
||||
{
|
||||
|
@ -114,7 +110,7 @@ Common use cases include meeting rooms/workshops, watch-together activities, or
|
|||
}
|
||||
```
|
||||
|
||||
### Live Streaming chat message
|
||||
#### Live Streaming chat message
|
||||
|
||||
```json
|
||||
{
|
||||
|
@ -130,18 +126,13 @@ Common use cases include meeting rooms/workshops, watch-together activities, or
|
|||
}
|
||||
```
|
||||
|
||||
## Interactive Rooms and Meetings
|
||||
-----
|
||||
## Meeting Spaces
|
||||
|
||||
`draft` `optional`
|
||||
Meeting spaces contain one or more video/audio rooms where users can join and participate in the streaming.
|
||||
|
||||
Service providers want to offer Interactive Rooms to the Nostr network in such a way that participants can easily log and query by clients. This NIP describes a general framework to advertise rooms and their associated events.
|
||||
### Meeting Space Event (kind:30312)
|
||||
|
||||
## Concepts
|
||||
|
||||
### Interactive Room (kind:30312)
|
||||
|
||||
A special event with `kind:30312` "Interactive Room" defines the configuration and properties of a virtual interactive space. Each room has a unique identifier and can host multiple events/meetings.
|
||||
A special event with `kind:30312` "Space Host" defines the configuration and properties of a virtual interactive space. Each space has a unique identifier and can host multiple events/meetings.
|
||||
|
||||
```jsonc
|
||||
{
|
||||
|
@ -162,19 +153,20 @@ A special event with `kind:30312` "Interactive Room" defines the configuration a
|
|||
}
|
||||
```
|
||||
|
||||
Room properties:
|
||||
Space properties:
|
||||
* MUST be either open, private or closed. Closed means the room is not in operation.
|
||||
* MAY specify access control policy for private rooms (e.g. invite-only, payment required)
|
||||
* MAY persist when not in use
|
||||
* MUST have at least one provider with "Host" role
|
||||
* MAY have multiple providers with different roles
|
||||
|
||||
Provider roles (p tags):
|
||||
* Host: Full room management capabilities
|
||||
* Moderator: Room moderation capabilities
|
||||
* Speaker: Allowed to present/speak
|
||||
* Optional proof field for role verification
|
||||
|
||||
### Room Meeting (kind:30313)
|
||||
### Meeting Room Events (kind:30313)
|
||||
|
||||
A special event with kind:30313 represents a scheduled or ongoing meeting within a room. It MUST reference its parent room using the d tag.
|
||||
|
||||
|
@ -183,7 +175,7 @@ A special event with kind:30313 represents a scheduled or ongoing meeting within
|
|||
"kind": 30313,
|
||||
"tags": [
|
||||
["d", "<event-unique-identifier>"], // Required: Event identifier
|
||||
["a", "30312:<pubkey>:<room-id>", "wss://nostr.example.com"], // Required: Reference to parent room, 'd' from 30312
|
||||
["a", "30312:<pubkey>:<room-id>", "wss://nostr.example.com"], // Required: Reference to parent space, 'd' from 30312
|
||||
["title", "<meeting-title>"], // Required: Meeting title
|
||||
["summary", "<description>"], // Optional: Meeting description
|
||||
["image", "<preview image url>"], // Optional: Meeting image
|
||||
|
@ -204,14 +196,15 @@ Event properties:
|
|||
* MUST have a start time
|
||||
* MAY track participant counts
|
||||
* MAY include participant roles specific to the event
|
||||
|
||||
Event management:
|
||||
* Clients SHOULD update event status regularly when live
|
||||
* Events without updates for 1 hour MAY be considered ended
|
||||
* starts and ends timestamps SHOULD be updated when status changes
|
||||
|
||||
Examples
|
||||
### Examples
|
||||
|
||||
Interactive Room (kind:30312)
|
||||
#### Meeting Space (kind:30312)
|
||||
|
||||
```jsonc
|
||||
{
|
||||
|
@ -233,7 +226,7 @@ Interactive Room (kind:30312)
|
|||
}
|
||||
```
|
||||
|
||||
Conference Event (kind:30313)
|
||||
#### Meeting room (kind:30313)
|
||||
|
||||
```jsonc
|
||||
{
|
||||
|
@ -254,7 +247,7 @@ Conference Event (kind:30313)
|
|||
"content": ""
|
||||
}
|
||||
```
|
||||
## Room Presence
|
||||
### Room Presence
|
||||
|
||||
New `kind: 10312` provides an event which signals presence of a listener.
|
||||
|
||||
|
|
Loading…
Reference in New Issue