upleb.uk

Public git repos — served from a NIP-34 GRASP relay at git.upleb.uk

summaryrefslogtreecommitdiff
path: root/52.md
diff options
context:
space:
mode:
Diffstat (limited to '52.md')
-rw-r--r--52.md16
1 files changed, 8 insertions, 8 deletions
diff --git a/52.md b/52.md
index c601412..6950744 100644
--- a/52.md
+++ b/52.md
@@ -6,7 +6,7 @@ Calendar Events
6 6
7`draft` `optional` `author:tyiu` 7`draft` `optional` `author:tyiu`
8 8
9This specification defines calendar events representing an occurrence at a specific moment or between moments. These calendar events are replaceable and referenceable per [NIP-33](33.md) and deletable per [NIP-09](09.md). 9This specification defines calendar events representing an occurrence at a specific moment or between moments. These calendar events are _parameterized replaceable_ and deletable per [NIP-09](09.md).
10 10
11Unlike the term `calendar event` specific to this NIP, the term `event` is used broadly in all the NIPs to describe any Nostr event. The distinction is being made here to discern between the two terms. 11Unlike the term `calendar event` specific to this NIP, the term `event` is used broadly in all the NIPs to describe any Nostr event. The distinction is being made here to discern between the two terms.
12 12
@@ -30,7 +30,7 @@ The list of tags are as follows:
30* `start` (required) inclusive start date in ISO 8601 format (YYYY-MM-DD). Must be less than `end`, if it exists. 30* `start` (required) inclusive start date in ISO 8601 format (YYYY-MM-DD). Must be less than `end`, if it exists.
31* `end` (optional) exclusive end date in ISO 8601 format (YYYY-MM-DD). If omitted, the calendar event ends on the same date as `start`. 31* `end` (optional) exclusive end date in ISO 8601 format (YYYY-MM-DD). If omitted, the calendar event ends on the same date as `start`.
32* `location` (optional) location of the calendar event. e.g. address, GPS coordinates, meeting room name, link to video call 32* `location` (optional) location of the calendar event. e.g. address, GPS coordinates, meeting room name, link to video call
33* `g` (optional) [geohash](https://en.wikipedia.org/wiki/Geohash) to associate calendar event with a searchable physical location as suggested as an example by [NIP-12](12.md) 33* `g` (optional) [geohash](https://en.wikipedia.org/wiki/Geohash) to associate calendar event with a searchable physical location
34* `p` (optional, repeated) 32-bytes hex pubkey of a participant, optional recommended relay URL, and participant's role in the meeting 34* `p` (optional, repeated) 32-bytes hex pubkey of a participant, optional recommended relay URL, and participant's role in the meeting
35* `t` (optional, repeated) hashtag to categorize calendar event 35* `t` (optional, repeated) hashtag to categorize calendar event
36* `r` (optional, repeated) references / links to web pages, documents, video calls, recorded videos, etc. 36* `r` (optional, repeated) references / links to web pages, documents, video calls, recorded videos, etc.
@@ -40,7 +40,7 @@ The list of tags are as follows:
40 "id": <32-bytes lowercase hex-encoded SHA-256 of the the serialized event data>, 40 "id": <32-bytes lowercase hex-encoded SHA-256 of the the serialized event data>,
41 "pubkey": <32-bytes lowercase hex-encoded public key of the event creator>, 41 "pubkey": <32-bytes lowercase hex-encoded public key of the event creator>,
42 "created_at": <Unix timestamp in seconds>, 42 "created_at": <Unix timestamp in seconds>,
43 "kind": "31922", 43 "kind": 31922,
44 "content": "<description of calendar event>", 44 "content": "<description of calendar event>",
45 "tags": [ 45 "tags": [
46 ["d", "<UUID>"], 46 ["d", "<UUID>"],
@@ -88,7 +88,7 @@ The list of tags are as follows:
88* `start_tzid` (optional) time zone of the start timestamp, as defined by the IANA Time Zone Database. e.g., `America/Costa_Rica` 88* `start_tzid` (optional) time zone of the start timestamp, as defined by the IANA Time Zone Database. e.g., `America/Costa_Rica`
89* `end_tzid` (optional) time zone of the end timestamp, as defined by the IANA Time Zone Database. e.g., `America/Costa_Rica`. If omitted and `start_tzid` is provided, the time zone of the end timestamp is the same as the start timestamp. 89* `end_tzid` (optional) time zone of the end timestamp, as defined by the IANA Time Zone Database. e.g., `America/Costa_Rica`. If omitted and `start_tzid` is provided, the time zone of the end timestamp is the same as the start timestamp.
90* `location` (optional) location of the calendar event. e.g. address, GPS coordinates, meeting room name, link to video call 90* `location` (optional) location of the calendar event. e.g. address, GPS coordinates, meeting room name, link to video call
91* `g` (optional) [geohash](https://en.wikipedia.org/wiki/Geohash) to associate calendar event with a searchable physical location as suggested as an example by [NIP-12](12.md) 91* `g` (optional) [geohash](https://en.wikipedia.org/wiki/Geohash) to associate calendar event with a searchable physical location
92* `p` (optional, repeated) 32-bytes hex pubkey of a participant, optional recommended relay URL, and participant's role in the meeting 92* `p` (optional, repeated) 32-bytes hex pubkey of a participant, optional recommended relay URL, and participant's role in the meeting
93* `t` (optional, repeated) hashtag to categorize calendar event 93* `t` (optional, repeated) hashtag to categorize calendar event
94* `r` (optional, repeated) references / links to web pages, documents, video calls, recorded videos, etc. 94* `r` (optional, repeated) references / links to web pages, documents, video calls, recorded videos, etc.
@@ -98,7 +98,7 @@ The list of tags are as follows:
98 "id": <32-bytes lowercase hex-encoded SHA-256 of the the serialized event data>, 98 "id": <32-bytes lowercase hex-encoded SHA-256 of the the serialized event data>,
99 "pubkey": <32-bytes lowercase hex-encoded public key of the event creator>, 99 "pubkey": <32-bytes lowercase hex-encoded public key of the event creator>,
100 "created_at": <Unix timestamp in seconds>, 100 "created_at": <Unix timestamp in seconds>,
101 "kind": "31923", 101 "kind": 31923,
102 "content": "<description of calendar event>", 102 "content": "<description of calendar event>",
103 "tags": [ 103 "tags": [
104 ["d", "<UUID>"], 104 ["d", "<UUID>"],
@@ -139,7 +139,7 @@ A calendar is a collection of calendar events, represented as a custom replaceab
139 139
140The format uses a custom replaceable list of kind `31924` with a list of tags as described below: 140The format uses a custom replaceable list of kind `31924` with a list of tags as described below:
141* `d` (required) calendar name 141* `d` (required) calendar name
142* `a` (repeated) reference tag to kind `31922` or `31923` calendar event being responded to per [NIP-33](33.md) 142* `a` (repeated) reference tag to kind `31922` or `31923` calendar event being responded to
143 143
144```json 144```json
145{ 145{
@@ -171,7 +171,7 @@ The format uses a parameterized replaceable event kind `31925`.
171The `.content` of these events is optional and should be a free-form note that adds more context to this calendar event response. 171The `.content` of these events is optional and should be a free-form note that adds more context to this calendar event response.
172 172
173The list of tags are as follows: 173The list of tags are as follows:
174* `a` (required) reference tag to kind `31922` or `31923` calendar event being responded to per [NIP-33](33.md) 174* `a` (required) reference tag to kind `31922` or `31923` calendar event being responded to.
175* `d` (required) universally unique identifier. Generated by the client creating the calendar event RSVP. 175* `d` (required) universally unique identifier. Generated by the client creating the calendar event RSVP.
176* `L` (required) label namespace of `status` per [NIP-32](32.md) 176* `L` (required) label namespace of `status` per [NIP-32](32.md)
177* `l` (required) label of `accepted`, `declined`, or `tentative` under the label namespace of `status` per [NIP-32](32.md). Determines attendance status to the referenced calendar event. 177* `l` (required) label of `accepted`, `declined`, or `tentative` under the label namespace of `status` per [NIP-32](32.md). Determines attendance status to the referenced calendar event.
@@ -183,7 +183,7 @@ The list of tags are as follows:
183 "id": <32-bytes lowercase hex-encoded SHA-256 of the the serialized event data>, 183 "id": <32-bytes lowercase hex-encoded SHA-256 of the the serialized event data>,
184 "pubkey": <32-bytes lowercase hex-encoded public key of the event creator>, 184 "pubkey": <32-bytes lowercase hex-encoded public key of the event creator>,
185 "created_at": <Unix timestamp in seconds>, 185 "created_at": <Unix timestamp in seconds>,
186 "kind": "31925", 186 "kind": 31925,
187 "content": "<note>", 187 "content": "<note>",
188 "tags": [ 188 "tags": [
189 ["a", "<31922 or 31923>:<calendar event author pubkey>:<d-identifier of calendar event>", "<optional relay url>"], 189 ["a", "<31922 or 31923>:<calendar event author pubkey>:<d-identifier of calendar event>", "<optional relay url>"],