QueryEventSystemResponse schema

The QueryEventSystemResponse.from_json() expects data with the following schema as described in Event System Monitoring:

{
  "$defs": {
    "ClientPerfSample": {
      "properties": {
        "attr_name": {
          "title": "Attr Name",
          "type": "string"
        },
        "micros_since_last_event": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Micros Since Last Event"
        },
        "sleep_micros": {
          "title": "Sleep Micros",
          "type": "integer"
        },
        "process_micros": {
          "title": "Process Micros",
          "type": "integer"
        },
        "first_callback_latency_micros": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "First Callback Latency Micros"
        },
        "callback_count": {
          "title": "Callback Count",
          "type": "integer"
        },
        "wake_count": {
          "title": "Wake Count",
          "type": "integer"
        },
        "discarded": {
          "title": "Discarded",
          "type": "boolean"
        }
      },
      "required": [
        "attr_name",
        "micros_since_last_event",
        "sleep_micros",
        "process_micros",
        "first_callback_latency_micros",
        "callback_count",
        "wake_count",
        "discarded"
      ],
      "title": "ClientPerfSample",
      "type": "object"
    },
    "ClientResponse": {
      "properties": {
        "event_callbacks": {
          "additionalProperties": {
            "$ref": "#/$defs/EventCallback"
          },
          "title": "Event Callbacks",
          "type": "object"
        },
        "not_connected": {
          "items": {
            "$ref": "#/$defs/DisconnectedEventStream"
          },
          "title": "Not Connected",
          "type": "array"
        },
        "event_channels": {
          "additionalProperties": {
            "$ref": "#/$defs/EventChannel"
          },
          "title": "Event Channels",
          "type": "object"
        },
        "perf": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/ClientPerfSample"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Perf"
        }
      },
      "required": [
        "event_callbacks",
        "not_connected",
        "event_channels",
        "perf"
      ],
      "title": "ClientResponse",
      "type": "object"
    },
    "DisconnectedEventStream": {
      "properties": {
        "device": {
          "title": "Device",
          "type": "string"
        },
        "attribute": {
          "title": "Attribute",
          "type": "string"
        },
        "event_type": {
          "title": "Event Type",
          "type": "string"
        },
        "last_heartbeat": {
          "title": "Last Heartbeat",
          "type": "string"
        },
        "tango_host": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Tango Host"
        }
      },
      "required": [
        "device",
        "attribute",
        "event_type",
        "last_heartbeat",
        "tango_host"
      ],
      "title": "DisconnectedEventStream",
      "type": "object"
    },
    "EventCallback": {
      "properties": {
        "channel_name": {
          "title": "Channel Name",
          "type": "string"
        },
        "callback_count": {
          "title": "Callback Count",
          "type": "integer"
        },
        "server_counter": {
          "title": "Server Counter",
          "type": "integer"
        },
        "event_count": {
          "title": "Event Count",
          "type": "integer"
        },
        "missed_event_count": {
          "title": "Missed Event Count",
          "type": "integer"
        },
        "discarded_event_count": {
          "title": "Discarded Event Count",
          "type": "integer"
        },
        "last_resubscribed": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Last Resubscribed"
        }
      },
      "required": [
        "channel_name",
        "callback_count",
        "server_counter",
        "event_count",
        "missed_event_count",
        "discarded_event_count",
        "last_resubscribed"
      ],
      "title": "EventCallback",
      "type": "object"
    },
    "EventChannel": {
      "properties": {
        "endpoint": {
          "title": "Endpoint",
          "type": "string"
        }
      },
      "required": [
        "endpoint"
      ],
      "title": "EventChannel",
      "type": "object"
    },
    "ServerPerfSample": {
      "properties": {
        "micros_since_last_event": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Micros Since Last Event"
        },
        "push_event_micros": {
          "title": "Push Event Micros",
          "type": "integer"
        }
      },
      "required": [
        "micros_since_last_event",
        "push_event_micros"
      ],
      "title": "ServerPerfSample",
      "type": "object"
    },
    "ServerResponse": {
      "properties": {
        "event_counters": {
          "additionalProperties": {
            "type": "integer"
          },
          "title": "Event Counters",
          "type": "object"
        },
        "perf": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/ServerPerfSample"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Perf"
        }
      },
      "required": [
        "event_counters",
        "perf"
      ],
      "title": "ServerResponse",
      "type": "object"
    }
  },
  "description": "The root object returned by the QueryEventSystem command.",
  "properties": {
    "version": {
      "title": "Version",
      "type": "integer"
    },
    "server": {
      "anyOf": [
        {
          "$ref": "#/$defs/ServerResponse"
        },
        {
          "type": "null"
        }
      ]
    },
    "client": {
      "anyOf": [
        {
          "$ref": "#/$defs/ClientResponse"
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "required": [
    "version",
    "server",
    "client"
  ],
  "title": "QueryEventSystemResponse",
  "type": "object"
}