Skip to content

status+me.virmesh.success.friendRequestAccepted

friend request が受理され、相互フレンドが成立したことを示します。

successdraft

Description

me.virmesh.social.acceptFriendRequest が正常終了し、 指定した pending friend request が消費されて、 双方署名済み mutual friend object が生成されたときに返ります。

When this happens

  • top-level と sender / recipient の署名検証が同じ friendPayload に対して通る
  • fromrequestTo が一致する
  • 対応する pending request が存在する
  • まだ mutual friend になっていない
  • sender / recipient の両署名を含む signed friend object が生成される

Payload

payload.friendfriendRequired

accept 結果として生成された、双方署名済み mutual friend object です。

References obj+me.virmesh.social.friend : 双方署名済みの mutual friend relation object です。

friendPayload.playerAstringRequired

friend request sender の player identifier です。

friendPayload.playerBstringRequired

friend request receiver の player identifier です。

playerASignaturestringRequired

canonical JSON of friendPayload に対する friendPayload.playerA の署名です。

playerBSignaturestringRequired

canonical JSON of friendPayload に対する friendPayload.playerB の署名です。

Examples

friend request accepted

{
  "status": "status+me.virmesh.success.friendRequestAccepted",
  "payload": {
    "friend": {
      "friendPayload": {
        "playerA": "medi:player:ed25519:sender-public-key",
        "playerB": "medi:player:ed25519:receiver-public-key"
      },
      "playerASignature": "base64-signature-by-sender",
      "playerBSignature": "base64-signature-by-receiver"
    }
  }
}

Client handling

  • incoming request list から対象 request を取り除く
  • 返却された signed friend object を local state に反映する

Related statuses

Referenced by

HTTPAPIAction
200me.virmesh.social.acceptFriendRequestme.virmesh.social.acceptFriendRequest