-
Notifications
You must be signed in to change notification settings - Fork 127
fix(websockets): restore optional message param on control send_ methods #680
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from 1 commit
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
|
|
@@ -159,12 +159,12 @@ async def send_function_call_response(self, message: AgentV1SendFunctionCallResp | |||||
| """ | ||||||
| await self._send_model(message) | ||||||
|
|
||||||
| async def send_keep_alive(self, message: AgentV1KeepAlive) -> None: | ||||||
| async def send_keep_alive(self, message: typing.Optional[AgentV1KeepAlive] = None) -> None: | ||||||
| """ | ||||||
| Send a message to the websocket connection. | ||||||
| The message will be sent as a AgentV1KeepAlive. | ||||||
| """ | ||||||
| await self._send_model(message) | ||||||
| await self._send_model(message or AgentV1KeepAlive()) | ||||||
|
|
||||||
| async def send_update_prompt(self, message: AgentV1UpdatePrompt) -> None: | ||||||
| """ | ||||||
|
|
@@ -292,12 +292,12 @@ def send_function_call_response(self, message: AgentV1SendFunctionCallResponse) | |||||
| """ | ||||||
| self._send_model(message) | ||||||
|
|
||||||
| def send_keep_alive(self, message: AgentV1KeepAlive) -> None: | ||||||
| def send_keep_alive(self, message: typing.Optional[AgentV1KeepAlive] = None) -> None: | ||||||
| """ | ||||||
| Send a message to the websocket connection. | ||||||
| The message will be sent as a AgentV1KeepAlive. | ||||||
| """ | ||||||
| self._send_model(message) | ||||||
| self._send_model(message or AgentV1KeepAlive()) | ||||||
|
||||||
| self._send_model(message or AgentV1KeepAlive()) | |
| self._send_model(message or AgentV1KeepAlive(type="keep_alive")) |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -81,26 +81,26 @@ async def send_media(self, message: bytes) -> None: | |
| """ | ||
| await self._send(message) | ||
|
|
||
| async def send_finalize(self, message: ListenV1Finalize) -> None: | ||
| async def send_finalize(self, message: typing.Optional[ListenV1Finalize] = None) -> None: | ||
| """ | ||
| Send a message to the websocket connection. | ||
| The message will be sent as a ListenV1Finalize. | ||
| """ | ||
| await self._send_model(message) | ||
| await self._send_model(message or ListenV1Finalize(type="Finalize")) | ||
|
|
||
| async def send_close_stream(self, message: ListenV1CloseStream) -> None: | ||
| async def send_close_stream(self, message: typing.Optional[ListenV1CloseStream] = None) -> None: | ||
| """ | ||
| Send a message to the websocket connection. | ||
| The message will be sent as a ListenV1CloseStream. | ||
| """ | ||
| await self._send_model(message) | ||
| await self._send_model(message or ListenV1CloseStream(type="CloseStream")) | ||
|
|
||
| async def send_keep_alive(self, message: ListenV1KeepAlive) -> None: | ||
| async def send_keep_alive(self, message: typing.Optional[ListenV1KeepAlive] = None) -> None: | ||
| """ | ||
| Send a message to the websocket connection. | ||
| The message will be sent as a ListenV1KeepAlive. | ||
| """ | ||
| await self._send_model(message) | ||
| await self._send_model(message or ListenV1KeepAlive(type="KeepAlive")) | ||
|
Comment on lines
+84
to
+103
|
||
|
|
||
| async def recv(self) -> V1SocketClientResponse: | ||
| """ | ||
|
|
@@ -186,26 +186,26 @@ def send_media(self, message: bytes) -> None: | |
| """ | ||
| self._send(message) | ||
|
|
||
| def send_finalize(self, message: ListenV1Finalize) -> None: | ||
| def send_finalize(self, message: typing.Optional[ListenV1Finalize] = None) -> None: | ||
| """ | ||
| Send a message to the websocket connection. | ||
| The message will be sent as a ListenV1Finalize. | ||
| """ | ||
| self._send_model(message) | ||
| self._send_model(message or ListenV1Finalize(type="Finalize")) | ||
|
|
||
| def send_close_stream(self, message: ListenV1CloseStream) -> None: | ||
| def send_close_stream(self, message: typing.Optional[ListenV1CloseStream] = None) -> None: | ||
| """ | ||
| Send a message to the websocket connection. | ||
| The message will be sent as a ListenV1CloseStream. | ||
| """ | ||
| self._send_model(message) | ||
| self._send_model(message or ListenV1CloseStream(type="CloseStream")) | ||
|
|
||
| def send_keep_alive(self, message: ListenV1KeepAlive) -> None: | ||
| def send_keep_alive(self, message: typing.Optional[ListenV1KeepAlive] = None) -> None: | ||
| """ | ||
| Send a message to the websocket connection. | ||
| The message will be sent as a ListenV1KeepAlive. | ||
| """ | ||
| self._send_model(message) | ||
| self._send_model(message or ListenV1KeepAlive(type="KeepAlive")) | ||
|
|
||
| def recv(self) -> V1SocketClientResponse: | ||
| """ | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
AgentV1KeepAliverequires atypefield (no default in the model), soAgentV1KeepAlive()will raise a validation error. This meanssend_keep_alive()is still not callable with no args. Construct the default message with the requiredtype(e.g., the "KeepAlive" literal) whenmessageis omitted.