Skip to content

me.virmesh.server.aboutServer

PlayerServer の discovery metadata を action surface から取得します。

GET / で公開している server discovery 情報を、 canonical action surface から取得する public action です。 root endpoint よりも action-oriented な参照先として使えます。 versionsupportedNamespacesfeatureFlags を含む 拡張 metadata を shared status envelope で返します。

draft

Endpoint

Method
GET
Path
/public/me.virmesh.server.aboutServer
Auth
none
Host
VirMesh.PlayerServer

Request schema

No request fields are defined.

Responses

200
status+me.virmesh.success.serverMetadataResolved

server metadata を正常に取得できたことを示します。

Response body

statusstringRequired

正常取得時は status+me.virmesh.success.serverMetadataResolved を返します。

payload.namestringRequired

discovery 対象 server の canonical name です。

payload.frameworkstringRequired

server 実装に使われている framework 名です。

payload.statusstringRequired

server の現在状態を表す実装依存の文字列です。

payload.versionstringRequired

server build または release version です。

payload.endpoints.publicstringRequired

public action 呼び出しの canonical surface です。

payload.endpoints.privatestringRequired

private action 呼び出しの canonical surface です。

payload.endpoints.wsSyncstringRequired

ws-sync action 呼び出しの canonical surface です。

payload.supportedNamespacesstring[]Required

その server が公開している canonical action namespace 一覧です。legacy 名は含めません。

payload.featureFlags.supportsPublicActionsbooleanRequired

public action surface を公開しているかを示します。

payload.featureFlags.supportsPrivateActionsbooleanRequired

private action surface を公開しているかを示します。

payload.featureFlags.supportsWsSyncbooleanRequired

ws-sync surface を公開しているかを示します。

payload.featureFlags.supportsHandleEndpointsbooleanRequired

PlayerServer 上で handle endpoint を追加公開しているかを示します。

Response example

{
  "status": "status+me.virmesh.success.serverMetadataResolved",
  "payload": {
    "name": "VirMesh.PlayerServer",
    "framework": "Hono",
    "status": "ready",
    "version": "0.1.0-draft",
    "endpoints": {
      "public": "POST /public/:action",
      "private": "POST /private/:action",
      "wsSync": "GET ws://host/ws-sync/:action"
    },
    "supportedNamespaces": [
      "me.virmesh.account",
      "me.virmesh.handle",
      "me.virmesh.player",
      "me.virmesh.register",
      "me.virmesh.server"
    ],
    "featureFlags": {
      "supportsPublicActions": true,
      "supportsPrivateActions": true,
      "supportsWsSync": true,
      "supportsHandleEndpoints": false
    }
  }
}

me.virmesh.server.aboutServer が正常終了し、 action surface 経由で server discovery metadata を取得できたことを示します。

501
status+me.virmesh.action.not_supported

要求した action が現在の server では利用できないことを示します。

指定されたactionがサーバー上で無効化されており、使用できないことを示します。

Status payload

payload.messagestringRequired

実装依存の詳細メッセージです。

action is disabled

{
  "status": "status+me.virmesh.action.not_supported",
  "payload": {
    "message": "registerAccountKeyによる登録がサポートされていません。"
  }
}