diff options
Diffstat (limited to '25.md')
| -rw-r--r-- | 25.md | 20 |
1 files changed, 9 insertions, 11 deletions
| @@ -25,14 +25,16 @@ consider it a "+". | |||
| 25 | Tags | 25 | Tags |
| 26 | ---- | 26 | ---- |
| 27 | 27 | ||
| 28 | The reaction event SHOULD include `e` and `p` tags from the note the user is | 28 | The reaction event SHOULD include `a`, `e` and `p` tags pointing to the note the user is |
| 29 | reacting to. This allows users to be notified of reactions to posts they were | 29 | reacting to. The `p` tag allows authors to be notified. The `e` tags enables clients |
| 30 | mentioned in. Including the `e` tags enables clients to pull all the reactions | 30 | to pull all the reactions to individual events and `a` tags enables clients to seek reactions |
| 31 | associated with individual posts or all the posts in a thread. | 31 | for all versions of a replaceable event. |
| 32 | 32 | ||
| 33 | The last `e` tag MUST be the `id` of the note that is being reacted to. | 33 | The `e` tag MUST be the `id` of the note that is being reacted to. |
| 34 | 34 | ||
| 35 | The last `p` tag MUST be the `pubkey` of the event being reacted to. | 35 | The `a` tag MUST contain the coordinates (`kind:pubkey:d-tag`) of the replaceable being reacted to. |
| 36 | |||
| 37 | The `p` tag MUST be the `pubkey` of the event being reacted to. | ||
| 36 | 38 | ||
| 37 | The reaction event MAY include a `k` tag with the stringified kind number | 39 | The reaction event MAY include a `k` tag with the stringified kind number |
| 38 | of the reacted event as its value. | 40 | of the reacted event as its value. |
| @@ -41,9 +43,6 @@ Example code | |||
| 41 | 43 | ||
| 42 | ```swift | 44 | ```swift |
| 43 | func make_like_event(pubkey: String, privkey: String, liked: NostrEvent) -> NostrEvent { | 45 | func make_like_event(pubkey: String, privkey: String, liked: NostrEvent) -> NostrEvent { |
| 44 | var tags: [[String]] = liked.tags.filter { | ||
| 45 | tag in tag.count >= 2 && (tag[0] == "e" || tag[0] == "p") | ||
| 46 | } | ||
| 47 | tags.append(["e", liked.id]) | 46 | tags.append(["e", liked.id]) |
| 48 | tags.append(["p", liked.pubkey]) | 47 | tags.append(["p", liked.pubkey]) |
| 49 | tags.append(["k", liked.kind]) | 48 | tags.append(["k", liked.kind]) |
| @@ -68,8 +67,7 @@ content as an emoji if shortcode is specified. | |||
| 68 | "tags": [ | 67 | "tags": [ |
| 69 | ["emoji", "soapbox", "https://gleasonator.com/emoji/Gleasonator/soapbox.png"] | 68 | ["emoji", "soapbox", "https://gleasonator.com/emoji/Gleasonator/soapbox.png"] |
| 70 | ], | 69 | ], |
| 71 | "pubkey": "79c2cae114ea28a981e7559b4fe7854a473521a8d22a66bbab9fa248eb820ff6", | 70 | ...other fields |
| 72 | "created_at": 1682790000 | ||
| 73 | } | 71 | } |
| 74 | ``` | 72 | ``` |
| 75 | 73 | ||