Convert WebSocket messages to bytes before passing them to `send_message` (#129300)

pull/129329/head
J. Nick Koston 2024-10-28 01:21:12 -10:00 committed by GitHub
parent f7ad40263b
commit 4749af6e90
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 17 additions and 9 deletions

View File

@ -16,6 +16,12 @@ from homeassistant.helpers.http import current_request
from homeassistant.util.json import JsonValueType
from . import const, messages
from .messages import (
error_message,
event_message,
message_to_json_bytes,
result_message,
)
from .util import describe_request
if TYPE_CHECKING:
@ -126,12 +132,12 @@ class ActiveConnection:
@callback
def send_result(self, msg_id: int, result: Any | None = None) -> None:
"""Send a result message."""
self.send_message(messages.result_message(msg_id, result))
self.send_message(message_to_json_bytes(result_message(msg_id, result)))
@callback
def send_event(self, msg_id: int, event: Any | None = None) -> None:
"""Send a event message."""
self.send_message(messages.event_message(msg_id, event))
self.send_message(message_to_json_bytes(event_message(msg_id, event)))
@callback
def send_error(
@ -145,13 +151,15 @@ class ActiveConnection:
) -> None:
"""Send an error message."""
self.send_message(
messages.error_message(
msg_id,
code,
message,
translation_key=translation_key,
translation_domain=translation_domain,
translation_placeholders=translation_placeholders,
message_to_json_bytes(
error_message(
msg_id,
code,
message,
translation_key=translation_key,
translation_domain=translation_domain,
translation_placeholders=translation_placeholders,
)
)
)