Skip to content

obj+me.virmesh.player.profile

player の公開プロフィール object です。

draft

Description

公開解決可能な player profile です。 handle record と profile module 群をまとめた composite payload で、 top-level の response 署名は持たず、各部分を対象 player 本人の鍵で独立に署名します。 payload.handle.record は current handle record を反映し、 payload.modules.profile+me.virmesh.player.displayName.payload は PlayerServer が保持する displayName module payload を反映します。 v1 では handle と必須 module profile+me.virmesh.player.displayName の両方が揃っている場合だけ公開プロフィールとして解決されます。

Aliases

  • playerProfile
  • me.virmesh.player.profile

Fields

handle.recordhandleRecordRequired

current handle record payload です。

References obj+me.virmesh.handle.record : player に紐づく current handle record です。

idstringRequired

handle owner の player identifier です。

primaryHandlestringRequired

player の canonical primary handle です。

secondaryHandlesstring[]Required

同一 player に解決される secondary handle 一覧です。

playerServerstringRequired

player を管理する PlayerServer の absolute URL です。

updated_atintegerRequired

この handle record payload を生成した時刻です。epoch second を返します。

handle.signaturestringRequired

canonical JSON of handle.record に対する、対象 player 本人の署名です。

modules.profile+me.virmesh.player.displayName.payloadplayerDisplayNameRequired

公開プロフィールの必須 displayName module payload です。

References profile+me.virmesh.player.displayName : player の必須 profile displayName module payload です。

modulestringRequired

常に profile+me.virmesh.player.displayName を返します。

idstringRequired

module owner の player identifier です。

displayNamestringRequired

PlayerServer が保持する公開 display name です。

updated_atintegerRequired

この module payload を生成した時刻です。epoch second を返します。

modules.profile+me.virmesh.player.displayName.signaturestringRequired

canonical JSON of modules.profile+me.virmesh.player.displayName.payload に対する、対象 player 本人の署名です。

modules.profile+me.virmesh.player.card.payloadplayerProfileCardOptional

bioimage を持つ optional profile card module payload です。

References profile+me.virmesh.player.card : player の optional profile card module payload です。

modulestringRequired

常に profile+me.virmesh.player.card を返します。

idstringRequired

module owner の player identifier です。

biostringOptional

plain text の自己紹介文です。

imageplayerProfileImageOptional

PlayerServer 内の immutable image asset を指す参照 object です。

References obj+me.virmesh.player.profileImage : PlayerServer 内に保存された公開プロフィール画像を指す参照 object です。

assetIdstringRequired

PlayerServer 内の immutable profile image asset identifier です。

contentTypestringRequired

画像の HTTP content type です。v1 は image/png または image/jpeg を使います。

hashstringRequired

画像 body hash です。v1 は sha256:<base64url> を使います。

widthintegerRequired

画像の pixel width です。

heightintegerRequired

画像の pixel height です。

sizeintegerRequired

画像 body の byte size です。

updated_atintegerRequired

この module payload を生成した時刻です。epoch second を返します。

modules.profile+me.virmesh.player.card.signaturestringOptional

canonical JSON of modules.profile+me.virmesh.player.card.payload に対する、対象 player 本人の署名です。

Examples

resolved public profile

{
  "handle": {
    "record": {
      "id": "medi:player:ed25519:base64-public-key",
      "primaryHandle": "alice@virmesh.me",
      "secondaryHandles": [
        "alice@example.com"
      ],
      "playerServer": "https://ps.example.com/",
      "updated_at": 1770000100
    },
    "signature": "base64-signature-by-player-for-handle-record"
  },
  "modules": {
    "profile+me.virmesh.player.displayName": {
      "payload": {
        "module": "profile+me.virmesh.player.displayName",
        "id": "medi:player:ed25519:base64-public-key",
        "displayName": "Alice",
        "updated_at": 1770000200
      },
      "signature": "base64-signature-by-player-for-display-name-module"
    },
    "profile+me.virmesh.player.card": {
      "payload": {
        "module": "profile+me.virmesh.player.card",
        "id": "medi:player:ed25519:base64-public-key",
        "bio": "VR world builder",
        "image": {
          "assetId": "profimg_123",
          "contentType": "image/png",
          "hash": "sha256:base64url-hash",
          "width": 512,
          "height": 512,
          "size": 42000
        },
        "updated_at": 1770000300
      },
      "signature": "base64-signature-by-player-for-profile-card-module"
    }
  }
}

Referenced by

KindReferenceField
Action response (200)me.virmesh.player.resolveProfilepayload
Status payloadstatus+me.virmesh.success.playerProfileResolvedpayload