NIP-53: Live Activities
NIP-53は、Nostr上でライブ配信metadataを公開するための標準イベント形式を定義します。配信はkind 30311のaddressable eventとして告知されるため、clientはそれを発見し、現在の状態を表示し、chatをその配信文脈へ結び付けられます。
仕組み
各配信は、安定した識別子としてdタグを持つkind 30311イベントを使います。イベントには通常、titleとsummaryのテキスト、再生URLを示すstreamingタグ、statusタグ(planned、live、ended)が含まれます。これはaddressable eventなので、同じd値に対する更新は過去metadataを置き換え、無制限にイベントが積み上がることはありません。
イベントにはtopic tags(t)、参加者参照(p)、任意の参加者数フィールドも含められます。ライブchatは、その配信をaタグで参照するkind 1311イベントで運ばれ、chat messageが1つのlive activity recordへ結び付いたままになります。
Implementations
- Shoshoは、Nostrネイティブなライブ配信のまわりでlive stream metadataとchatを公開しています。
- Zap.streamは、配信の発見とインタラクションにNostr eventsを使っています。
- WaveFuncは、internet radioの文脈でkind
1311のlive chat eventsを使っています。 - Amethystは、PR #2469でNIP-75のzap goalsをLive Activities画面へ統合しました。各ライブ配信にfundraising goal header、progress bar、ワンタップのzapボタン、配信のkind
30311イベントに結び付いたkind9735zap receiptsから計算されるtop-zappers leaderboardが表示されます。続くPR #2491はNIP-53 proof of agreementとevent buildersを追加し、PR #2486はfilteringとdiscoveryを備えた専用のLive Streams feed画面を出荷しました。 - NoorNote v0.8.4は、ライブ配信カードからのワンタップzapを追加し、送られたsatsがNIP-53経由で配信のchat overlayへ表示されます。
Primary sources:
- NIP-53 Specification
- Amethyst PR #2469 - Live stream goal header and top-zappers leaderboard
- Amethyst PR #2491 - NIP-53 proof of agreement and event builders
Mentioned in:
- Newsletter #18: WaveFunc launch
- Newsletter #19: Amethyst live stream zap goals
- Newsletter #19: NoorNote v0.8.4
See also: