Mentionを送る
特定のユーザーにメッセージ(投稿)を送る。ダイレクトメールです。
(Mention「を送る」?「する」?)
投稿:NoteをCreateのActivityで配送するということで、ほかの投稿とまったく同じす。
POSTリクエストを投げる時はminetype
Content-type:application/activity+json
が必須です。
- メッセージを送りたいユーザーのinboxを宛先に指定する
- Noteにtag配列を追加
- tag配列にtype:Mentionのブロックを格納
「宛先「to」に送りたいユーザー指定する」「Mention用に配列を追加する」ことでMentionとかDMとしての体裁になります。
具体的には以下のようになります。
- 「@donbe2023@mstdon.jp」さんのinbox「https://mstdn.jp/users/donbe2023」(宛先)を「to」に設定
- 「cc」はいろいろ
- 「cc」を空欄にすると「@donbe2023」だけに届けるダイレクトメール
- 「cc」にPublicを入れると「@donbe2023」のホームにも投稿として流れる
- 「cc」にfollowersを入れると自分のフォロワーのホームにも投稿として流れる
お相手との会話をオープンにするなら「cc」に「Public」や「followers」を入れます。
「投稿の公開範囲」も参照ください。 - NoteのJSONに「tag配列」を追加して、そこにtype:Mentionのブロックを記載します。
たぶん、このtag配列やファイル添付に使うattachment配列なんかはActivityPubの仕様にはないので、拡張仕様(?)ということになるんでしょうか。
Mentionとして使うJSONは以下
{
"@context": ["https://www.w3.org/ns/activitystreams", {"Hashtag": "as:Hashtag"}],
"type": "Create",
"id": "https://tokoroten.doncha.net/t2aki/activity/03991-20250226",
"url": "https://tokoroten.doncha.net/t2aki/activity/03991-20250226",
"published": "2025-02-26T00:11:49Z",
"actor": "https://tokoroten.doncha.net/t2aki",
"to": ["https://mstdn.jp/users/donbe2023"],
"cc": ["https://www.w3.org/ns/activitystreams#Public"],
"object": {
"type": "Note",
"id": "https://tokoroten.doncha.net/t2aki/items/03991-20250226",
"url": "https://tokoroten.doncha.net/t2aki/items/03991-20250226",
"published": "2025-02-26T00:11:49Z",
"to": ["https://mstdn.jp/users/donbe2023"],
"cc": ["https://www.w3.org/ns/activitystreams#Public"],
"attributedTo": "https://tokoroten.doncha.net/t2aki",
"content": "\u003ca href=\"https://mstdn.jp/users/donbe2023\"\u003e@donbe2023@mstdn.jp\u003c/a\u003e Mentionは宛先にお相手を指定して、さらにtag配列にMentionのブロックを記載して設定",
"tag": [{"href":"https://mstdn.jp/users/donbe2023",
"name":"@donbe2023@mstdn.jp",
"type":"Mention"}]
}
}
- CreateとNoteの「to」や「cc」で宛先指定
- NoteのJSONに「tag」配列を追加
- 「href」にお相手の宛先
- 「name」にお相手のユーザー名
- 「type」に「Mention」
このActivityを配送すると、お相手に通知が行きます。
「ハッシュタグ」もこのtag配列を利用します
[2025-02-26 09:47:52] v1.0.0

