mirror of
https://github.com/home-assistant/core.git
synced 2025-07-18 18:57:06 +00:00
Future proof assist_pipeline.Pipeline (#100277)
This commit is contained in:
parent
9e0d23f9a8
commit
29ba5a4292
@ -298,6 +298,26 @@ class Pipeline:
|
|||||||
|
|
||||||
id: str = field(default_factory=ulid_util.ulid)
|
id: str = field(default_factory=ulid_util.ulid)
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def from_json(cls, data: dict[str, Any]) -> Pipeline:
|
||||||
|
"""Create an instance from a JSON serialization.
|
||||||
|
|
||||||
|
This function was added in HA Core 2023.10, previous versions will raise
|
||||||
|
if there are unexpected items in the serialized data.
|
||||||
|
"""
|
||||||
|
return cls(
|
||||||
|
conversation_engine=data["conversation_engine"],
|
||||||
|
conversation_language=data["conversation_language"],
|
||||||
|
id=data["id"],
|
||||||
|
language=data["language"],
|
||||||
|
name=data["name"],
|
||||||
|
stt_engine=data["stt_engine"],
|
||||||
|
stt_language=data["stt_language"],
|
||||||
|
tts_engine=data["tts_engine"],
|
||||||
|
tts_language=data["tts_language"],
|
||||||
|
tts_voice=data["tts_voice"],
|
||||||
|
)
|
||||||
|
|
||||||
def to_json(self) -> dict[str, Any]:
|
def to_json(self) -> dict[str, Any]:
|
||||||
"""Return a JSON serializable representation for storage."""
|
"""Return a JSON serializable representation for storage."""
|
||||||
return {
|
return {
|
||||||
@ -1205,7 +1225,7 @@ class PipelineStorageCollection(
|
|||||||
|
|
||||||
def _deserialize_item(self, data: dict) -> Pipeline:
|
def _deserialize_item(self, data: dict) -> Pipeline:
|
||||||
"""Create an item from its serialized representation."""
|
"""Create an item from its serialized representation."""
|
||||||
return Pipeline(**data)
|
return Pipeline.from_json(data)
|
||||||
|
|
||||||
def _serialize_item(self, item_id: str, item: Pipeline) -> dict:
|
def _serialize_item(self, item_id: str, item: Pipeline) -> dict:
|
||||||
"""Return the serialized representation of an item for storing."""
|
"""Return the serialized representation of an item for storing."""
|
||||||
|
Loading…
x
Reference in New Issue
Block a user