Skip to content

outbound

framewise_meet_client.models.outbound

Outbound message models for the Framewise Meet client.

This module contains all message types that are sent to the server.

BaseResponse

Bases: BaseModel

Base class for all responses sent to the server.

Source code in framewise_meet_client/models/outbound.py
10
11
12
13
14
15
class BaseResponse(BaseModel):
    """Base class for all responses sent to the server."""

    message_id: str = Field(..., description="ID of the message")
    meeting_id: str = Field(..., description="ID of the meeting")
    timestamp: str = Field(..., description="Timestamp of the response")

MCQOption

Bases: BaseModel

Option for a multiple-choice question.

Source code in framewise_meet_client/models/outbound.py
18
19
20
21
22
class MCQOption(BaseModel):
    """Option for a multiple-choice question."""

    id: str = Field(..., description="Option identifier")
    text: str = Field(..., description="Option text")

MultipleChoiceQuestion

Bases: BaseModel

Multiple-choice question model.

Source code in framewise_meet_client/models/outbound.py
25
26
27
28
29
30
class MultipleChoiceQuestion(BaseModel):
    """Multiple-choice question model."""

    question_id: str = Field(..., description="Question identifier")
    question_text: str = Field(..., description="Question text")
    options: List[MCQOption] = Field(..., description="Available options")

ButtonElement

Bases: BaseModel

Button UI element model.

Source code in framewise_meet_client/models/outbound.py
33
34
35
36
37
38
39
40
class ButtonElement(BaseModel):
    """Button UI element model."""

    id: str = Field(..., description="Button identifier")
    text: str = Field(..., description="Button text")
    style: Optional[Dict[str, Any]] = Field(
        None, description="Optional styling information"
    )

InputElement

Bases: BaseModel

Input field UI element model.

Source code in framewise_meet_client/models/outbound.py
43
44
45
46
47
48
49
50
class InputElement(BaseModel):
    """Input field UI element model."""

    id: str = Field(..., description="Input identifier")
    label: str = Field(..., description="Input label")
    placeholder: Optional[str] = Field(None, description="Placeholder text")
    type: str = Field("text", description="Input type (text, number, etc.)")
    default_value: Optional[str] = Field(None, description="Default value")

CustomUIElement

Bases: BaseModel

Base class for custom UI elements.

Source code in framewise_meet_client/models/outbound.py
53
54
55
56
class CustomUIElement(BaseModel):
    """Base class for custom UI elements."""

    type: str = Field(..., description="Element type")

CustomUIButtonElement

Bases: CustomUIElement

Button UI element.

Source code in framewise_meet_client/models/outbound.py
59
60
61
62
63
class CustomUIButtonElement(CustomUIElement):
    """Button UI element."""

    type: Literal["button"] = "button"
    data: ButtonElement = Field(..., description="Button data")

CustomUIInputElement

Bases: CustomUIElement

Input field UI element.

Source code in framewise_meet_client/models/outbound.py
66
67
68
69
70
class CustomUIInputElement(CustomUIElement):
    """Input field UI element."""

    type: Literal["input"] = "input"
    data: InputElement = Field(..., description="Input data")

GeneratedTextContent

Bases: BaseModel

Content for generated text response.

Source code in framewise_meet_client/models/outbound.py
73
74
75
76
77
78
79
class GeneratedTextContent(BaseModel):
    """Content for generated text response."""

    text: str = Field(..., description="Generated text")
    is_generation_end: bool = Field(
        False, description="Whether this is the end of generation"
    )

MCQContent

Bases: BaseModel

Content for MCQ response.

Source code in framewise_meet_client/models/outbound.py
82
83
84
85
86
87
class MCQContent(BaseModel):
    """Content for MCQ response."""

    question: MultipleChoiceQuestion = Field(
        ..., description="Multiple choice question"
    )

CustomUIContent

Bases: BaseModel

Content for custom UI response.

Source code in framewise_meet_client/models/outbound.py
90
91
92
93
94
95
class CustomUIContent(BaseModel):
    """Content for custom UI response."""

    elements: List[Union[CustomUIButtonElement, CustomUIInputElement]] = Field(
        ..., description="UI elements"
    )

GeneratedTextMessage

Bases: BaseResponse

Response with generated text.

Source code in framewise_meet_client/models/outbound.py
 98
 99
100
101
102
103
104
class GeneratedTextMessage(BaseResponse):
    """Response with generated text."""

    type: Literal["generated_text"] = "generated_text"
    content: GeneratedTextContent = Field(
        ..., description="Content of the generated text"
    )

MCQMessage

Bases: BaseResponse

Response with a multiple-choice question.

Source code in framewise_meet_client/models/outbound.py
107
108
109
110
111
class MCQMessage(BaseResponse):
    """Response with a multiple-choice question."""

    type: Literal["mcq"] = "mcq"
    content: MCQContent = Field(..., description="Content of the MCQ")

CustomUIMessage

Bases: BaseResponse

Response with custom UI elements.

Source code in framewise_meet_client/models/outbound.py
114
115
116
117
118
class CustomUIMessage(BaseResponse):
    """Response with custom UI elements."""

    type: Literal["custom_ui"] = "custom_ui"
    content: CustomUIContent = Field(..., description="Content of the custom UI")

ErrorResponse

Bases: BaseResponse

Error response.

Source code in framewise_meet_client/models/outbound.py
121
122
123
124
125
126
class ErrorResponse(BaseResponse):
    """Error response."""

    type: Literal["error"] = "error"
    error: str = Field(..., description="Error message")
    error_code: Optional[str] = Field(None, description="Error code")

MCQQuestionData

Bases: BaseModel

Data for a multiple-choice question UI element.

Source code in framewise_meet_client/models/outbound.py
132
133
134
135
136
137
138
class MCQQuestionData(BaseModel):
    """Data for a multiple-choice question UI element."""

    id: str = Field(..., description="Question identifier")
    question: str = Field(..., description="Question text")
    options: List[str] = Field(..., description="List of option texts")
    image_path: Optional[str] = Field(None, description="Optional path to an image")

MCQQuestionElement

Bases: BaseModel

MCQ question UI element.

Source code in framewise_meet_client/models/outbound.py
141
142
143
144
145
class MCQQuestionElement(BaseModel):
    """MCQ question UI element."""

    type: Literal["mcq_question"] = "mcq_question"
    data: MCQQuestionData = Field(..., description="MCQ question data")

NotificationData

Bases: BaseModel

Data for a notification UI element.

Source code in framewise_meet_client/models/outbound.py
148
149
150
151
152
153
154
155
class NotificationData(BaseModel):
    """Data for a notification UI element."""

    message: str = Field(..., description="Notification message")
    level: str = Field(
        "info", description="Notification level (info, warning, error, success)"
    )
    duration: int = Field(8000, description="Duration in milliseconds")

NotificationElement

Bases: BaseModel

Notification UI element.

Source code in framewise_meet_client/models/outbound.py
158
159
160
161
162
class NotificationElement(BaseModel):
    """Notification UI element."""

    type: Literal["notification_element"] = "notification_element"
    data: NotificationData = Field(..., description="Notification data")

CustomUIElementMessage

Bases: BaseResponse

Message for sending a custom UI element.

Source code in framewise_meet_client/models/outbound.py
165
166
167
168
169
170
171
class CustomUIElementMessage(BaseResponse):
    """Message for sending a custom UI element."""

    type: Literal["custom_ui_element"] = "custom_ui_element"
    content: Union[MCQQuestionElement, NotificationElement, CustomUIElement] = Field(
        ..., description="Custom UI element"
    )