Skip to content

Latest commit

 

History

History
72 lines (55 loc) · 2.61 KB

30.md

File metadata and controls

72 lines (55 loc) · 2.61 KB

NIP-30

カスタム絵文字

draft optional

以下の形式の"emojiタグを1つ以上含めることで、kind 0kind 1kind 7及びkind 30315のイベントに対し、カスタム絵文字を付与してもよい:

["emoji", <shortcode>, <image-url>]

ここで、<shortcode>及び<image-url>は以下の通りである:

  • <shortcode>は絵文字の名前であり、英数字及びアンダースコアのみによって構成されなければならない (MUST) 。
  • <image-url>は対応する絵文字の画像ファイルのURLである。

それぞれの"emoji"タグについて、クライアントは:shortcode:といった形式で表される絵文字ショートコードを解釈し、カスタム絵文字を表示する(なおこの操作を「絵文字化」という)べきである。

クライアントはユーザに対し、:shortcode:識別子を使用することでイベントにカスタム絵文字を含める機能、対応する"emoji"タグを付与する機能を提供してもよい。

Kind 0 イベント

kind 0のイベントにおいては、name及びaboutフィールドにカスタム絵文字を使用してよく、クライアントはこれを「絵文字化」すべきである。

{
  "kind": 0,
  "content": "{\"name\":\"Alex Gleason :soapbox:\"}",
  "tags": [
    ["emoji", "soapbox", "https://gleasonator.com/emoji/Gleasonator/soapbox.png"]
  ],
  "pubkey": "79c2cae114ea28a981e7559b4fe7854a473521a8d22a66bbab9fa248eb820ff6",
  "created_at": 1682790000
}

Kind 1 イベント

kind 1のイベントにおいては、contentフィールドにカスタム絵文字を使用してよく、クライアントはこれを「絵文字化」すべきである。

{
  "kind": 1,
  "content": "Hello :gleasonator: 😂 :ablobcatrainbow: :disputed: yolo",
    "tags": [
    ["emoji", "ablobcatrainbow", "https://gleasonator.com/emoji/blobcat/ablobcatrainbow.png"],
    ["emoji", "disputed", "https://gleasonator.com/emoji/Fun/disputed.png"],
    ["emoji", "gleasonator", "https://gleasonator.com/emoji/Gleasonator/gleasonator.png"]
  ],
  "pubkey": "79c2cae114ea28a981e7559b4fe7854a473521a8d22a66bbab9fa248eb820ff6",
  "created_at": 1682630000
}

Kind 7 events

In kind 7 events, the content should be emojified.

{
  "kind": 7,
  "content": ":dezh:",
  "tags": [
    ["emoji", "dezh", "https://raw.githubusercontent.com/dezh-tech/brand-assets/main/dezh/logo/black-normal.svg"]
  ],
  "pubkey": "79c2cae114ea28a981e7559b4fe7854a473521a8d22a66bbab9fa248eb820ff6",
  "created_at": 1682630000
}