Menu główne

Natywna integracja z Home Assistant (komponent) 2.2

Zaczęty przez admin, Wrzesień 20, 2022, 22:35:33

Poprzedni wątek - Następny wątek

bezhamulca

Hej

Probowalem zainstalowac Exta Life integration, ale zupelnie bez sukcesu.
Mam home assistant zainstalowany na VirtualBoxie. Mam zainstalowanego HACS'a.
Wrzucilem komponent do /config/custom_components i... nic.
Czy cos pominalem? Instrukcja na githubie jest dosyc skromna, a ja jestem poczatkujacym home assystentowcem.


admin

Cytat: bezhamulca w Marzec 05, 2023, 19:00:57
Probowalem zainstalowac Exta Life integration, ale zupelnie bez sukcesu.
Mam home assistant zainstalowany na VirtualBoxie. Mam zainstalowanego HACS'a.
Wrzucilem komponent do /config/custom_components i... nic.
Czy cos pominalem? Instrukcja na githubie jest dosyc skromna, a ja jestem poczatkujacym home assystentowcem.
No faktycznie opis na github jest skromny, ale pełny opis jest tutaj:
https://www.forumextalife.pl/index.php?topic=350.0


W sumie postanowiłem założyć do tego osobny wątek na przyszłość: Oto instrukcja instalacji
Powodzenia!
Elementy systemu, których używam: 3xSRP-22, 5xRDP-21, 3xROP-22, 4x ROP-21, 1xP-456/36, 1xRNK-24, 3x RNP-21, 1xRCT-22, aplikacja na Android oraz iOS + Home Assistant

zelo66

#167
Hej,

Chcę wywołać w narzędziach deweloperskich usługę refresh_state.

Kod to:

service: extalife.refresh_state
data:
  entity_id: extalife.efc_01


Komunikat to:
CytatNie udało się wywołać usługi extalife.refresh_state. Unknown error

A w logach:

Logger: homeassistant.components.websocket_api.http.connection
Source: custom_components/extalife/helpers/services.py:51
Integration: Home Assistant WebSocket API (documentation, issues)
First occurred: 18:29:01 (5 occurrences)
Last logged: 18:48:03

[140296046423120] Error handling message: Unknown error (unknown_error) XXX from XXX (Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36)
[140296046817440] Error handling message: Unknown error (unknown_error) XXX from XXX (Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36)
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/websocket_api/decorators.py", line 26, in _handle_async_response
    await func(hass, connection, msg)
  File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 647, in handle_execute_script
    await script_obj.async_run(msg.get("variables"), context=context)
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 1524, in async_run
    await asyncio.shield(run.async_run())
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 409, in async_run
    await self._async_step(log_exceptions=False)
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 453, in _async_step
    self._handle_exception(
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 476, in _handle_exception
    raise exception
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 451, in _async_step
    await getattr(self, handler)()
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 684, in _async_call_service_step
    await service_task
  File "/usr/src/homeassistant/homeassistant/core.py", line 1808, in async_call
    task.result()
  File "/usr/src/homeassistant/homeassistant/core.py", line 1851, in _execute_service
    await self._hass.async_add_executor_job(
  File "/usr/local/lib/python3.10/concurrent/futures/thread.py", line 58, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/config/custom_components/extalife/helpers/services.py", line 81, in _handle_refresh_state
    core = self._get_core(entity_id)
  File "/config/custom_components/extalife/helpers/services.py", line 45, in _get_core
    return Core.get(self._get_entry_id(entity_id))
  File "/config/custom_components/extalife/helpers/services.py", line 51, in _get_entry_id
    return registry.async_get(entity_id).config_entry_id
AttributeError: 'NoneType' object has no attribute 'config_entry_id'


+

Logger: homeassistant.helpers.script.websocket_api_script
Source: custom_components/extalife/helpers/services.py:51
Integration: Exta Life (documentation)
First occurred: 18:29:01 (5 occurrences)
Last logged: 18:48:03

websocket_api script: Error executing script. Unexpected error for call_service at pos 1: 'NoneType' object has no attribute 'config_entry_id'
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 451, in _async_step
    await getattr(self, handler)()
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 684, in _async_call_service_step
    await service_task
  File "/usr/src/homeassistant/homeassistant/core.py", line 1808, in async_call
    task.result()
  File "/usr/src/homeassistant/homeassistant/core.py", line 1851, in _execute_service
    await self._hass.async_add_executor_job(
  File "/usr/local/lib/python3.10/concurrent/futures/thread.py", line 58, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/config/custom_components/extalife/helpers/services.py", line 81, in _handle_refresh_state
    core = self._get_core(entity_id)
  File "/config/custom_components/extalife/helpers/services.py", line 45, in _get_core
    return Core.get(self._get_entry_id(entity_id))
  File "/config/custom_components/extalife/helpers/services.py", line 51, in _get_entry_id
    return registry.async_get(entity_id).config_entry_id
AttributeError: 'NoneType' object has no attribute 'config_entry_id'


Co robię źle?

sarzyk

Witam serdecznie. Przepraszam jeśli to jest zły temat ale trochę się w tym wszystkim pogubiłem. Jakiś czas temu zrobiłem integrację ha z exta. Działało to ale pob pewnym czasie przestałem z tego korzystać.
Nadzieja jednak wróciła by nauczyć się ha lepiej wykorzystywać. Mam powinien problem. W urządzeniach/encjach z urządzeń z grupy exta life nie mam urządzeń ROP-22.
RNK jest ROB jest SRP jest ale nie na ROP.
Mógł by ktoś pomóc ci zrobić by się to pojawiło?

admin

A czy widzisz te urządzenia ROP w aplikacji Exta Life? Daj screena.

HA powinien wykryć wszystko co widać w apce ExtaLife. Mówimy o ROP ExtaLife czy Exta Free?
Elementy systemu, których używam: 3xSRP-22, 5xRDP-21, 3xROP-22, 4x ROP-21, 1xP-456/36, 1xRNK-24, 3x RNP-21, 1xRCT-22, aplikacja na Android oraz iOS + Home Assistant

admin

stawiam, że tych ROPów nie masz też w apce Exta Life. A jeśli tak, to pewnie je miałeś i one zniknęły z powodu błędu w sofcie kontrolera, którego Zamel chyba dotąd nie potrafi naprawić.
Elementy systemu, których używam: 3xSRP-22, 5xRDP-21, 3xROP-22, 4x ROP-21, 1xP-456/36, 1xRNK-24, 3x RNP-21, 1xRCT-22, aplikacja na Android oraz iOS + Home Assistant

sarzyk

Dziękuje za odpowiedzi.
W aplikacji exta life wszyto jest widoczne i działa.
Chodzi o moduły ROP Extalife

krzysium81

Cześć.
Ja mam ten sam problem z ROP-22. Mam integrację kontrolera EFC-01 z HA huba od 2020 roku. Wszystko działało ok. Mój ROP-22 też jest w HA ale do skonfigurowany był tylko jeden kanał. Teraz chciałem uzyć drugi kanał (widoczny w encjach) ale wyświetla się on na szaro i jest informacja na górze "Tą encja je jest już dostarczana przez Extalife". Na kontorlerze w aplikacji od Zamel wszystko jest widoczne i można tym sterować.
Jak kupiłem drugi ROP-22 to w aplikacji wszystko działa natomiast HA w ogóle nie wykrywa niego ROPa. To samo jest z ROP-02 extafee, sterowniki rolet extafee HA widzi ale sterownika światła niestety nie. Będę wdzięczny za pomoc. Pozdrawiam

krzysium81

Cześć. Udało mi się ogarnąc problem z brakiem nowego ROP-22 oraz jedną z encji pierwszego ROPa. Do tego jeszcze pojawił się ROP-02 exta fee.
Udało mi się to poprzez podmianę plików integracji w katalogu custom_components. Starą wersję podmieniłem na najnowszą.
Najpierw wyłączyłem integrację Exta life w HA. Po ściągnięciu plików z najnowszą wersją integracji przy pomocy Samba usunąłem starą wersję i wgrałem w to miejsce najnowsze pliki. Następnie zrestartowalem HA (prawdopodobnie jeszcze w tym miejscu niepotrzebnie ale opisuję jak to robiłem). Potem uruchomiłem integrwcję i kliknąłem wczytaj ponownie integrację. Wyświetliła się i formacja o konieczności ponownego restartu HA co uczyniłem. Po uruchomieniu oba ROPy 22 wraz z 4 encjami są widoczne a przy okazji jest też widoczny i działający ROP-02.
Pozdrawiam

admin

Po aktualizacji Home Assistant do wersji 2023.9 integracja straciła kompatybilność i nie ładuje się.
Poniżej przedtawiam jak to można naprawić:

Podmieńcie linię 254 w pliku custom_components/extalife/helpers/core.py:
z:

    @property
        def hass(self) -> HomeAssistantType():
        return Core._hass


na

    @property
        def hass(self):
        return Core._hass


To na razie jedyna pomoc jaką mogę zaoferować z powodu braku czasu
Elementy systemu, których używam: 3xSRP-22, 5xRDP-21, 3xROP-22, 4x ROP-21, 1xP-456/36, 1xRNK-24, 3x RNP-21, 1xRCT-22, aplikacja na Android oraz iOS + Home Assistant

sarzyk


martinezus

Niestety trochę odruchowo usunąłem integrację, choć chciałem ją tylko zatrzymać. Niestety teraz w żaden sposób nie mogę jej przywrócić (również backup całego systemu jej nie przywraca). Nie wiem czemu, ale nie mogę także z backup'u przywrócić poprzedniej wersji HA tj. 2023.8.4.
Oczywiście zrobiłem zmiany w pliku core.py. Czy ktoś ma jakiś pomysł jak zrobić integrację przy wersji 2023.9? 

martinezus

Cytat: martinezus w Wrzesień 10, 2023, 11:44:27
Niestety trochę odruchowo usunąłem integrację, choć chciałem ją tylko zatrzymać. Niestety teraz w żaden sposób nie mogę jej przywrócić (również backup całego systemu jej nie przywraca). Nie wiem czemu, ale nie mogę także z backup'u przywrócić poprzedniej wersji HA tj. 2023.8.4.
Oczywiście zrobiłem zmiany w pliku core.py. Czy ktoś ma jakiś pomysł jak zrobić integrację przy wersji 2023.9? 

Problem rozwiązałem aktualizując do wersji 2023.8.4, a potem restore z full backup (miałem skopany jeden z backup'ów). Nie mniej jednak to chyba nie jest rozwiązanie dla wielu osób do wykonania integracji z Exta life w nowej wersji już nawet 2023.9.1 :)

PiCiU

#178
Ja mam
Home Assistant 2023.9.1
Supervisor 2023.08.3
Operating System 10.5

i nie zadziałało :(




Ten błąd pochodzi z niestandardowej integracji.

Logger: homeassistant.loader
Source: custom_components/extalife/__init__.py:76
Integration: Exta Life (documentation)
First occurred: 23:40:28 (1 occurrences)
Last logged: 23:40:28

Unexpected exception importing component custom_components.extalife
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/loader.py", line 818, in get_component
    ComponentProtocol, importlib.import_module(self.pkg_path)
                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 940, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/config/custom_components/extalife/__init__.py", line 76, in <module>
    from .helpers.core import Core
  File "/config/custom_components/extalife/helpers/core.py", line 254
    def hass(self):
IndentationError: unexpected indent
Elementy systemu, których używam: kontroler efc-01 | 4X RNK-24 | 2X p-457/4 | 5X ROP-21| 2X ROP-22 | 13X SRP-22 | 1X RDP-21 | KOLEJNE ZALEŻĄ OD POSTĘPU PRAC :p

zelo66

U mnie po zmianie tej linijki też nie działa  :(

Home Assistant 2023.9.1
Supervisor 2023.08.3
Operating System 10.5
Interfejs użytkownika: 20230908.0 - latest

Logger: homeassistant.setup
Source: loader.py:826
First occurred: 10 września 2023 10:54:16 (1 occurrences)
Last logged: 10 września 2023 10:54:16

Setup failed for custom integration extalife: Unable to import component: Exception importing custom_components.extalife
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/loader.py", line 818, in get_component
    ComponentProtocol, importlib.import_module(self.pkg_path)
                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 940, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/config/custom_components/extalife/__init__.py", line 76, in <module>
    from .helpers.core import Core
  File "/config/custom_components/extalife/helpers/core.py", line 254
    def hass(self):
IndentationError: unexpected indent

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/setup.py", line 215, in _async_setup_component
    component = integration.get_component()
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/loader.py", line 826, in get_component
    raise ImportError(f"Exception importing {self.pkg_path}") from err
ImportError: Exception importing custom_components.extalife