{"id":"8dc3cec2098bad809b7edc2146ede8e05da1d6a8149625fdf2187a32e2b5f3c3","pubkey":"5f432a9f39b58ff132fc0a4c8af10d42efd917d8076f68bb7f2f91ed7d4f6a41","created_at":1749714990,"kind":30817,"tags":[["d","buzz"],["title","buzz"],["client","nostrhub.io"]],"content":"# NIP-61AE: Client Buzz / Attention Ping\n\n* **NIP**: 61AE\n* **Title**: Client Buzz / Attention Ping\n* **Author**: Milad Raeisi\n* **Type**: Standard\n* **Category**: Client Behavior\n* **Status**: Draft\n* **Created**: 2025-06-02\n\n---\n\n## Abstract\n\nThis NIP introduces a new **ephemeral** event type (`kind: 25006`) enabling users to send real-time attention signals (\"buzz\") to prompt a visible or audible client alert, similar to Yahoo Messenger’s \"Buzz.\" Because attention signals are meaningful only in real-time, events of this kind should not be stored by relays.\n\n---\n\n## Motivation\n\nIn real-time interactions, users may need a non-verbal, immediate way to draw another user’s attention. Standard messages can easily be overlooked, especially when clients run in the background. This NIP defines a lightweight format for attention-grabbing signals, enhancing synchronous communication.\n\n---\n\n## Event Kind\n\n* `25006`: `attention_ping` (ephemeral event)\n\n---\n\n## Event Structure\n\n```json\n{\n  \"kind\": 25006,\n  \"pubkey\": \"<sender's pubkey>\",\n  \"created_at\": <timestamp>,\n  \"tags\": [\n    [\"p\", \"<recipient's pubkey>\"]\n  ],\n  \"content\": \"buzz\"\n}\n```\n\n### Tags\n\n* `p`: Required. Recipient’s public key.\n\n### Content\n\n* Suggested default: `\"buzz\"`\n* Future extensibility: `\"vibrate\"`, `\"flash\"`, `\"sound\"`\n\n---\n\n## Client Behavior\n\nClients supporting this NIP **should**:\n\n* Detect incoming `kind:25006` events targeted at the current user.\n* Trigger a noticeable alert, such as:\n\n  * Screen shake or window vibration\n  * UI flash or blinking notification\n  * Notification sound\n* Provide user-configurable options to enable or disable these alerts.\n* Implement rate-limiting per sender (e.g., 1 ping per 10 seconds).\n\nClients **must not** show these events as standard chat messages.\n\n---\n\n## Relay Behavior\n\nRelays supporting this NIP **must**:\n\n* Treat `kind:25006` as ephemeral events.\n* Forward these events only to currently connected clients.\n* Never store or persist these events.\n\n---\n\n## Security Considerations\n\n* Clients should filter or throttle `25006` events to prevent abuse or spam.\n* Users must be able to opt out or ignore incoming buzzes.\n* Attention signals from blocked/muted users should be ignored.\n* Clients may restrict attention signals to only followed contacts.\n\n---\n\n## Compatibility\n\nClients and relays not implementing this NIP will safely ignore events of kind `25006`, ensuring backward compatibility.\n\n---\n\n## Example Use Case\n\nAlice and Bob are chatting. Bob stops responding temporarily. Alice sends a `25006` event to Bob’s client, triggering a subtle vibration and a \"Buzz!\" notification to capture his attention.\n\n---\n\n## Future Work\n\n* Extendable buzz types (`\"flash\"`, `\"emoji-explosion\"`, `\"sound\"`).\n* Support group buzz notifications.\n* Customizable emoji-based signals (`🚨`, `⚡️`, `🔔`).\n\n---\n\n## References\n\n* [NIP-01: Basic Protocol Flow Description](https://github.com/nostr-protocol/nips/blob/master/01.md)\n\n---\n\n## Copyright\n\nThis document is dedicated to the [public domain](https://creativecommons.org/publicdomain/zero/1.0/).","sig":"64da429d38fe180ee2344bec25ca5f0dce96fe2d9350eb01adbbe6897338e546f1db92f27affda1ec6226c9122436f653afcd1dc14577fc7062017f1751bb719"}