2024-03-16 19:45:43 +02:00
|
|
|
# HomeApi
|
2024-03-17 00:05:55 +02:00
|
|
|
**Inherits:** [Node](https://docs.godotengine.org/de/4.x/classes/class_node.html)
|
2024-03-16 19:45:43 +02:00
|
|
|
|
2024-03-17 01:14:31 +02:00
|
|
|
## Description
|
2024-03-16 19:45:43 +02:00
|
|
|
|
2024-03-17 01:14:31 +02:00
|
|
|
Manages the connection to the home automation system and provides a unified interface to the different home automation systems.
|
2024-03-16 19:45:43 +02:00
|
|
|
|
|
|
|
## Properties
|
|
|
|
|
2024-03-17 01:14:31 +02:00
|
|
|
| Name | Type | Default |
|
|
|
|
| ---------------- | ------------------------------------------------------------------- | ------- |
|
|
|
|
| [api](#prop-api) | [Node](https://docs.godotengine.org/de/4.x/classes/class_node.html) | |
|
2024-03-16 19:45:43 +02:00
|
|
|
|
|
|
|
## Methods
|
|
|
|
|
|
|
|
| Returns | Name |
|
|
|
|
| ------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
|
|
|
| void | [_on_connect](#-on-connect) ( ) |
|
|
|
|
| void | [_on_disconnect](#-on-disconnect) ( ) |
|
|
|
|
| void | [_ready](#-ready) ( ) |
|
|
|
|
| [Variant](https://docs.godotengine.org/de/4.x/classes/class_variant.html) | [get_device](#get-device) ( id: [String](https://docs.godotengine.org/de/4.x/classes/class_string.html) ) |
|
|
|
|
| [Variant](https://docs.godotengine.org/de/4.x/classes/class_variant.html) | [get_devices](#get-devices) ( ) |
|
|
|
|
| [Variant](https://docs.godotengine.org/de/4.x/classes/class_variant.html) | [get_state](#get-state) ( entity: [String](https://docs.godotengine.org/de/4.x/classes/class_string.html) ) |
|
2024-03-18 14:30:37 +02:00
|
|
|
| [VoiceHandler](/reference/lib--home_apis--voice_handler.html) | [get_voice_assistant](#get-voice-assistant) ( ) |
|
2024-03-16 19:45:43 +02:00
|
|
|
| [Variant](https://docs.godotengine.org/de/4.x/classes/class_variant.html) | [has_connected](#has-connected) ( ) |
|
2024-03-18 14:30:37 +02:00
|
|
|
| [bool](https://docs.godotengine.org/de/4.x/classes/class_bool.html) | [has_integration](#has-integration) ( ) |
|
2024-03-16 19:45:43 +02:00
|
|
|
| [Variant](https://docs.godotengine.org/de/4.x/classes/class_variant.html) | [set_state](#set-state) ( entity: [String](https://docs.godotengine.org/de/4.x/classes/class_string.html), state: [Variant](https://docs.godotengine.org/de/4.x/classes/class_variant.html), attributes: [Dictionary](https://docs.godotengine.org/de/4.x/classes/class_dictionary.html) ) |
|
|
|
|
| void | [start_adapter](#start-adapter) ( type: [String](https://docs.godotengine.org/de/4.x/classes/class_string.html), url: [String](https://docs.godotengine.org/de/4.x/classes/class_string.html), token: [String](https://docs.godotengine.org/de/4.x/classes/class_string.html) ) |
|
2024-03-18 14:30:37 +02:00
|
|
|
| void | [update_room](#update-room) ( room: [String](https://docs.godotengine.org/de/4.x/classes/class_string.html) ) |
|
2024-03-16 19:45:43 +02:00
|
|
|
| [Variant](https://docs.godotengine.org/de/4.x/classes/class_variant.html) | [watch_state](#watch-state) ( entity: [String](https://docs.godotengine.org/de/4.x/classes/class_string.html), callback: [Callable](https://docs.godotengine.org/de/4.x/classes/class_callable.html) ) |
|
|
|
|
|
2024-03-17 00:05:55 +02:00
|
|
|
## Signals
|
|
|
|
|
|
|
|
### on_connect ( ) {#on-connect}
|
|
|
|
|
2024-03-17 01:14:31 +02:00
|
|
|
Emitted when the connection to the home automation system is established
|
2024-03-17 00:05:55 +02:00
|
|
|
|
|
|
|
### on_disconnect ( ) {#on-disconnect}
|
|
|
|
|
2024-03-17 01:14:31 +02:00
|
|
|
Emitted when the connection to the home automation system is lost
|
2024-03-17 00:05:55 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
2024-03-17 01:14:31 +02:00
|
|
|
## Constants
|
|
|
|
|
2024-03-17 00:05:55 +02:00
|
|
|
### Hass = `<Object>` {#const-Hass}
|
|
|
|
|
|
|
|
No description provided yet.
|
|
|
|
|
|
|
|
### HassWebSocket = `<Object>` {#const-HassWebSocket}
|
|
|
|
|
|
|
|
No description provided yet.
|
|
|
|
|
2024-03-18 14:30:37 +02:00
|
|
|
### VoiceAssistant = `<Object>` {#const-VoiceAssistant}
|
|
|
|
|
|
|
|
No description provided yet.
|
|
|
|
|
2024-03-17 00:05:55 +02:00
|
|
|
### apis = `{"hass": <Object>, "hass_ws": <Object>}` {#const-apis}
|
|
|
|
|
|
|
|
No description provided yet.
|
|
|
|
|
2024-03-17 01:14:31 +02:00
|
|
|
### methods = `[
|
|
|
|
"get_devices",
|
|
|
|
"get_device",
|
|
|
|
"get_state",
|
|
|
|
"set_state",
|
|
|
|
"watch_state"
|
|
|
|
]` {#const-methods}
|
2024-03-17 00:05:55 +02:00
|
|
|
|
|
|
|
No description provided yet.
|
|
|
|
|
2024-03-16 19:45:43 +02:00
|
|
|
## Property Descriptions
|
|
|
|
|
2024-03-17 01:14:31 +02:00
|
|
|
### api: [Node](https://docs.godotengine.org/de/4.x/classes/class_node.html) {#prop-api}
|
2024-03-16 19:45:43 +02:00
|
|
|
|
2024-03-17 01:14:31 +02:00
|
|
|
The current home automation system adapter
|
2024-03-16 19:45:43 +02:00
|
|
|
|
|
|
|
## Method Descriptions
|
|
|
|
|
2024-03-17 01:14:31 +02:00
|
|
|
### _on_connect ( ) -> void {#-on-connect}
|
2024-03-16 19:45:43 +02:00
|
|
|
|
|
|
|
No description provided yet.
|
|
|
|
|
2024-03-17 01:14:31 +02:00
|
|
|
### _on_disconnect ( ) -> void {#-on-disconnect}
|
2024-03-16 19:45:43 +02:00
|
|
|
|
|
|
|
No description provided yet.
|
|
|
|
|
2024-03-17 01:14:31 +02:00
|
|
|
### _ready ( ) -> void {#-ready}
|
2024-03-16 19:45:43 +02:00
|
|
|
|
|
|
|
No description provided yet.
|
|
|
|
|
2024-03-17 01:14:31 +02:00
|
|
|
### get_device (id: [String](https://docs.godotengine.org/de/4.x/classes/class_string.html) ) -> [Variant](https://docs.godotengine.org/de/4.x/classes/class_variant.html) {#get-device}
|
2024-03-16 19:45:43 +02:00
|
|
|
|
|
|
|
Get a single device by id
|
|
|
|
|
2024-03-17 01:14:31 +02:00
|
|
|
### get_devices ( ) -> [Variant](https://docs.godotengine.org/de/4.x/classes/class_variant.html) {#get-devices}
|
2024-03-16 19:45:43 +02:00
|
|
|
|
|
|
|
Get a list of all devices
|
|
|
|
|
2024-03-17 01:14:31 +02:00
|
|
|
### get_state (entity: [String](https://docs.godotengine.org/de/4.x/classes/class_string.html) ) -> [Variant](https://docs.godotengine.org/de/4.x/classes/class_variant.html) {#get-state}
|
2024-03-16 19:45:43 +02:00
|
|
|
|
|
|
|
Returns the current state of an entity
|
|
|
|
|
2024-03-18 14:30:37 +02:00
|
|
|
### get_voice_assistant ( ) -> [VoiceHandler](/reference/lib--home_apis--voice_handler.html) {#get-voice-assistant}
|
|
|
|
|
|
|
|
Returns the VoiceHandler if the adapter has a voice assistant
|
|
|
|
|
2024-03-17 01:14:31 +02:00
|
|
|
### has_connected ( ) -> [Variant](https://docs.godotengine.org/de/4.x/classes/class_variant.html) {#has-connected}
|
2024-03-16 19:45:43 +02:00
|
|
|
|
2024-03-17 01:14:31 +02:00
|
|
|
Returns true if the adapter is connected to the home automation system
|
2024-03-16 19:45:43 +02:00
|
|
|
|
2024-03-18 14:30:37 +02:00
|
|
|
### has_integration ( ) -> [bool](https://docs.godotengine.org/de/4.x/classes/class_bool.html) {#has-integration}
|
|
|
|
|
|
|
|
Returns true if the adapter has an integration in the home automation system allowing to send the room position of the headset.
|
|
|
|
|
2024-03-17 01:14:31 +02:00
|
|
|
### set_state (entity: [String](https://docs.godotengine.org/de/4.x/classes/class_string.html) , state: [Variant](https://docs.godotengine.org/de/4.x/classes/class_variant.html) , attributes: [Dictionary](https://docs.godotengine.org/de/4.x/classes/class_dictionary.html) ) -> [Variant](https://docs.godotengine.org/de/4.x/classes/class_variant.html) {#set-state}
|
2024-03-16 19:45:43 +02:00
|
|
|
|
|
|
|
Updates the state of the entity and returns the resulting state
|
|
|
|
|
2024-03-17 01:14:31 +02:00
|
|
|
### start_adapter (type: [String](https://docs.godotengine.org/de/4.x/classes/class_string.html) , url: [String](https://docs.godotengine.org/de/4.x/classes/class_string.html) , token: [String](https://docs.godotengine.org/de/4.x/classes/class_string.html) ) -> void {#start-adapter}
|
2024-03-16 19:45:43 +02:00
|
|
|
|
2024-03-17 01:14:31 +02:00
|
|
|
Starts the adapter for the given type and url
|
2024-03-16 19:45:43 +02:00
|
|
|
|
2024-03-18 14:30:37 +02:00
|
|
|
### update_room (room: [String](https://docs.godotengine.org/de/4.x/classes/class_string.html) ) -> void {#update-room}
|
|
|
|
|
|
|
|
Updates the room position of the headset in the home automation system
|
|
|
|
|
2024-03-17 01:14:31 +02:00
|
|
|
### watch_state (entity: [String](https://docs.godotengine.org/de/4.x/classes/class_string.html) , callback: [Callable](https://docs.godotengine.org/de/4.x/classes/class_callable.html) ) -> [Variant](https://docs.godotengine.org/de/4.x/classes/class_variant.html) {#watch-state}
|
2024-03-16 19:45:43 +02:00
|
|
|
|
|
|
|
Watches the state and each time it changes, calls the callback with the changed state, returns a function to stop watching the state
|