* towards proper class names Signed-off-by: Jess Frazelle <github@jessfraz.com> * mypy Signed-off-by: Jess Frazelle <github@jessfraz.com> * fixes Signed-off-by: Jess Frazelle <github@jessfraz.com> * I have generated the latest API! --------- Signed-off-by: Jess Frazelle <github@jessfraz.com> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
189 lines
4.0 KiB
Python
189 lines
4.0 KiB
Python
from typing import Dict, List, Literal, Union
|
|
|
|
from pydantic import BaseModel, ConfigDict, Field, RootModel
|
|
from typing_extensions import Annotated
|
|
|
|
from ..models.batch_response import BatchResponse
|
|
from ..models.ice_server import IceServer
|
|
from ..models.modeling_session_data import ModelingSessionData
|
|
from ..models.ok_modeling_cmd_response import OkModelingCmdResponse
|
|
from ..models.raw_file import RawFile
|
|
from ..models.rtc_ice_candidate_init import RtcIceCandidateInit
|
|
from ..models.rtc_session_description import RtcSessionDescription
|
|
|
|
|
|
class IceServerInfoData(BaseModel):
|
|
""""""
|
|
|
|
ice_servers: List[IceServer]
|
|
|
|
model_config = ConfigDict(protected_namespaces=())
|
|
|
|
|
|
class OptionIceServerInfo(BaseModel):
|
|
"""Information about the ICE servers."""
|
|
|
|
data: IceServerInfoData
|
|
|
|
type: Literal["ice_server_info"] = "ice_server_info"
|
|
|
|
model_config = ConfigDict(protected_namespaces=())
|
|
|
|
|
|
class TrickleIceData(BaseModel):
|
|
""""""
|
|
|
|
candidate: RtcIceCandidateInit
|
|
|
|
model_config = ConfigDict(protected_namespaces=())
|
|
|
|
|
|
class OptionTrickleIce(BaseModel):
|
|
"""The trickle ICE candidate response."""
|
|
|
|
data: TrickleIceData
|
|
|
|
type: Literal["trickle_ice"] = "trickle_ice"
|
|
|
|
model_config = ConfigDict(protected_namespaces=())
|
|
|
|
|
|
class SdpAnswerData(BaseModel):
|
|
""""""
|
|
|
|
answer: RtcSessionDescription
|
|
|
|
model_config = ConfigDict(protected_namespaces=())
|
|
|
|
|
|
class OptionSdpAnswer(BaseModel):
|
|
"""The SDP answer response."""
|
|
|
|
data: SdpAnswerData
|
|
|
|
type: Literal["sdp_answer"] = "sdp_answer"
|
|
|
|
model_config = ConfigDict(protected_namespaces=())
|
|
|
|
|
|
class ModelingData(BaseModel):
|
|
""""""
|
|
|
|
modeling_response: OkModelingCmdResponse
|
|
|
|
model_config = ConfigDict(protected_namespaces=())
|
|
|
|
|
|
class OptionModeling(BaseModel):
|
|
"""The modeling command response."""
|
|
|
|
data: ModelingData
|
|
|
|
type: Literal["modeling"] = "modeling"
|
|
|
|
model_config = ConfigDict(protected_namespaces=())
|
|
|
|
|
|
class ModelingBatchData(BaseModel):
|
|
""""""
|
|
|
|
responses: Dict[str, BatchResponse]
|
|
|
|
model_config = ConfigDict(protected_namespaces=())
|
|
|
|
|
|
class OptionModelingBatch(BaseModel):
|
|
"""Response to a ModelingBatch."""
|
|
|
|
data: ModelingBatchData
|
|
|
|
type: Literal["modeling_batch"] = "modeling_batch"
|
|
|
|
model_config = ConfigDict(protected_namespaces=())
|
|
|
|
|
|
class ExportData(BaseModel):
|
|
""""""
|
|
|
|
files: List[RawFile]
|
|
|
|
model_config = ConfigDict(protected_namespaces=())
|
|
|
|
|
|
class OptionExport(BaseModel):
|
|
"""The exported files."""
|
|
|
|
data: ExportData
|
|
|
|
type: Literal["export"] = "export"
|
|
|
|
model_config = ConfigDict(protected_namespaces=())
|
|
|
|
|
|
class MetricsRequestData(BaseModel):
|
|
""""""
|
|
|
|
model_config = ConfigDict(protected_namespaces=())
|
|
|
|
|
|
class OptionMetricsRequest(BaseModel):
|
|
"""Request a collection of metrics, to include WebRTC."""
|
|
|
|
data: MetricsRequestData
|
|
|
|
type: Literal["metrics_request"] = "metrics_request"
|
|
|
|
model_config = ConfigDict(protected_namespaces=())
|
|
|
|
|
|
class ModelingSessionDataData(BaseModel):
|
|
""""""
|
|
|
|
session: ModelingSessionData
|
|
|
|
model_config = ConfigDict(protected_namespaces=())
|
|
|
|
|
|
class OptionModelingSessionData(BaseModel):
|
|
"""Data about the Modeling Session (application-level)."""
|
|
|
|
data: ModelingSessionDataData
|
|
|
|
type: Literal["modeling_session_data"] = "modeling_session_data"
|
|
|
|
model_config = ConfigDict(protected_namespaces=())
|
|
|
|
|
|
class PongData(BaseModel):
|
|
""""""
|
|
|
|
model_config = ConfigDict(protected_namespaces=())
|
|
|
|
|
|
class OptionPong(BaseModel):
|
|
"""Pong response to a Ping message."""
|
|
|
|
data: PongData
|
|
|
|
type: Literal["pong"] = "pong"
|
|
|
|
model_config = ConfigDict(protected_namespaces=())
|
|
|
|
|
|
OkWebSocketResponseData = RootModel[
|
|
Annotated[
|
|
Union[
|
|
OptionIceServerInfo,
|
|
OptionTrickleIce,
|
|
OptionSdpAnswer,
|
|
OptionModeling,
|
|
OptionModelingBatch,
|
|
OptionExport,
|
|
OptionMetricsRequest,
|
|
OptionModelingSessionData,
|
|
OptionPong,
|
|
],
|
|
Field(discriminator="type"),
|
|
]
|
|
]
|