NIP-40
Expiration Timestamp
期限切れタイムスタンプ
expirationタグの値(Unixタイムスタンプ)でイベントの有効期限を表すことにしよう、という提案。
期限が切れたイベントはリレーから削除されるべき(SHOULD)
code:仕様
tag: expiration
values:
code:イベント例.json
{
"pubkey": "<pub-key>",
"created_at": 1000000000,
"kind": 1,
"tags": [
],
"content": "This message will expire at the specified timestamp and be deleted by relays.\n",
"id": "<event-id>"
}
クライアントの挙動
クライアントは、NIP-11のsupported_nipsを使ってリレーがこのNIPをサポートしているか調べるべき(SHOULD)であり、このNIPをサポートしないリレーに対して有効期限つきイベントを送信すべきでない(SHOULD NOT)。 クライアントは期限切れイベントを無視すべき(SHOULD)。
リレーの挙動
リレーは、期限が切れたイベントを即座に削除しなくてもよく(MAY NOT)、無期限に保存しておいてもよい(MAY)。
リレーは、期限が切れたイベントをクライアントに送信すべきではない(SHOULD)。(保存していたとしても)
リレーは、発行時点で既に期限が切れているイベントを無視すべき(SHOULD)。
期限切れタイムスタンプは、一時イベント(cf. NIP-16)の扱いには影響を与えない。 使用例
一時的な告知
期間限定サービス
注意: 以下の理由により、期限付きメッセージをセキュリティの目的で使うことはできない
イベントはリレーを通してどこからでもアクセスできる
リレーが期限切れのイベントをストレージから削除するとは限らない