2023.7: Responding services

Can’t even get that far. As soon as the dashboard opens, even in edit mode, it’s unresponsive.

Because the page you trying to open contains “bad code”.
Is it a graph inside grid?
You need to open a page w/o these things.

Seems I just shared a virus and soon it will capture all smart homes…

I am, but I need to see the code on the “bad” page to confirm that it has these grids. I can’t see the code because I can’t open the page, even in edit mode. Where is the code stored? Can I get to it from the terminal?

My 1st method was “open a raw yaml file, scroll to a hanging view, edit the code”.

Here is a 2nd method:
There is a json file in “.storage” folder, it is called “lovelace.NAME_OF_DASHBOARD”, you can edit it.

1 Like

OK, I got it. Looks like my history cards are in “vertical-stack” and “horizontal-stack” types, not grids. But maybe these are just specialized instances of grid?

What I also did with my “virus” is:

  1. Add this card:
type: vertical-stack
cards:
  - type: history-graph
    hours_to_show: 12
    entities:
      - entity: zone.home
  1. It works ok, I can add more cards etc.
  2. Then replace “vertical-stack” with “grid” - hanging. I even cannot save the card.

There is one more issue, seems to be same origin:

Hmm, this is also causing hanging:

1 Like

OK, more info (but probably more confusing):

On Linux Firefox:

  • I can reproduce issue with your code
  • My dashboard also broken (no grid, but vertical and horizontal stacks and history-graph)

On Windows 10 Firefox:

  • I can reproduce your issue with your code
    - My dashboard runs fine!

On Android app:

  • My dashboard unresponsive
  • I can’t test yours because I can’t get past my dashboard

Well, let’s see if any feedback comes from Dev.

Actually, even a detailed description of a bug sometimes does not matter.
Different priorities, no mood to revise a code, etc…
For me, the most desired update will be “2023.8: Solving ancient bugs”.

2 Likes

Who decided on those lock colors of green for locked and red for unlocked?

This seems the opposite of most physical lock and alarm devices I have interacted with, where green normally is for open/ready/authorized and red is for secured/armed/rejected?

3 Likes

There were some discussions about colors - if a “discussion” is a proper word for a process when some users are discussing colors, other users trying to shut them up & devs are mainly keeping silence.

You are probably correct, but I can see how red=unsafe=open and green=safe=closed would be understood. Ideally a way to change this would have been preferred.

Ditto.

Using an ELK M1 for 15 years and its keypads indicate ‘ready to arm’ in green and ‘armed’ in red.

Oh well, I can get used to Home Assistant’s inverse version.

There are some more examples of controversial default color choices. Anyway there is a possibility to redefine them by a theme.
P.S. only zones are still only blue or grey.

I’m not familiar with themes, but at least on the dashboard its lucky just the same old blue padlock icons.


what is it with people posting this, that makes them think
it helps the general atmosphere in this community
it helps their challenge see a solution
it helps, well, anything really

why ask for names and back numbers, if all you feel is some simple design was not as you expected it to be? why feel so mistreated, if you don’t always get what you want, or if others don’t immediately respond and fix you personal challenge?

please let us all work towards a friendly ambiance in this community where we invite others to think along, and not be thrown off by the tone of voice, or personification of your ‘issue’.

end rant


On the matter at hand: if you check the docs that have been added as a result of some serious And fruitful interaction between this community and the Frontend dev team, more specifically on the state-color: Home Assistant frontend - Home Assistant

it will help out on any colorization you might want (well, almost, we have to accept we live in a world where we just cant always get what we want…)

5 Likes

You have to add the repository first to HACS (Go to HACS → Integrations → 3 dot menu → custom repository). Add briancmpbll/home_assistant_custom_envoy (github.com)

Also, check this thread for more information on this issue: Enphase Envoy stopped - Energy - Home Assistant Community (home-assistant.io)

just found another way of showing snapshots in the Frontend, and still have them served from our protected /media share (opposed to what I had to do above in the /www folder using the new image template):

see: 2023.7 image entity local image - #17 by Mariusthvdb

bottom line is I used the Local File technique on that snapshot:

camera:

  - platform: local_file
    name: Snapshot Oprit
    file_path: /media/snapshots/camera_oprit.jpg

and show it with:

  - type: picture-entity
    entity: camera.snapshot_oprit

only minor gripe is it does not show the time the snapshot is taken in the footer of the picture-entity, but the state of the camera being idle.
I dont really get that, since at the time the snapshot was taken the cam was active (obviously ) and there would be no connection to the current state of the cam, since this is a file/image not cam feed anymore?

add:

    show_state: false

Anyways, for me it’s the best go between now, as the snapshot itself has the timestamp in the image. best of both worlds now: secure/ auto-updated in Dashboard/simpler config(no extra script actions)

it might be an older integration (no unique_id, no frontend config) but it does the job nicely

1 Like

I think it could be further simplified, by proper definition of input_text in the first place. So I can imagine something like:

input_text:
  volumio_2_description:
    name: Volumio_2 Album Description
  state: 'not yet updated'
  attributes:
    album_description: "Initial value"
    album_title: "{{ state_attr('media_player.volumio_2', 'media_album_name') }}"
    artist_name: "{{ state_attr('media_player.volumio_2', 'media_artist') }}"
    song_title: "{{ state_attr('media_player.volumio_2', 'media_title') }}"
    album_art: "{{ state_attr('media_player.volumio_2', 'entity_picture') }}"

This way state and album_description attribute could be set by respective services and other attributes would be templated and as such could not be changed by service.
Moreover, this logic could be applied to any type of entity, that is user defined (sensors and helpers).

Good point, I will prepare a fix for that. I had already added a “Configured” label a couple of days ago but looks like that did not make it into the release. That would already help in your use-case, but I will add dedicated “nothing found” labels to make it even clearer.

EDIT: Clearly show if there are no ignored or disabled integrations by spacegaier · Pull Request #17251 · home-assistant/frontend · GitHub

Hi Guys

Upgraded to 2023.7.1 from 2023.6.5 last night. Since then the RAINBIRD integration is not loading - I also tried to remove/uninstall the rainbird integration to set it up again but also not able to remove/uninstall it. Tried searching for a solution but nothing came up - anybody else experiencing issues with the rainbird integration ?

Restarted several times but no luck.

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 813, 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 "/usr/src/homeassistant/homeassistant/components/rainbird/__init__.py", line 4, in <module>
    from pyrainbird.async_client import AsyncRainbirdClient, AsyncRainbirdController
  File "/usr/local/lib/python3.11/site-packages/pyrainbird/async_client.py", line 22, in <module>
    from aiohttp_retry import RetryClient, RetryOptions, JitterRetry
ImportError: cannot import name 'RetryOptions' from 'aiohttp_retry' (/usr/local/lib/python3.11/site-packages/aiohttp_retry/__init__.py)

when trying to remove the integration:

Logger: aiohttp.server
Source: components/rainbird/__init__.py:4
First occurred: 10:27:19 (2 occurrences)
Last logged: 11:51:30

Error handling request
Traceback (most recent call last):
  File "/usr/local/lib/python3.11/site-packages/aiohttp/web_protocol.py", line 433, in _handle_request
    resp = await request_handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/aiohttp/web_app.py", line 504, in _handle
    resp = await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/aiohttp/web_middlewares.py", line 117, in impl
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/security_filter.py", line 85, in security_filter_middleware
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/forwarded.py", line 227, in forwarded_middleware
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/request_context.py", line 28, in request_context_middleware
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/ban.py", line 80, in ban_middleware
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/auth.py", line 236, in auth_middleware
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/view.py", line 148, in handle
    result = await handler(request, **request.match_info)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/config/config_entries.py", line 87, in delete
    result = await hass.config_entries.async_remove(entry_id)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 1089, in async_remove
    await entry.async_remove(self.hass)
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 581, in async_remove
    component = integration.get_component()
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/loader.py", line 813, 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 "/usr/src/homeassistant/homeassistant/components/rainbird/__init__.py", line 4, in <module>
    from pyrainbird.async_client import AsyncRainbirdClient, AsyncRainbirdController
  File "/usr/local/lib/python3.11/site-packages/pyrainbird/async_client.py", line 22, in <module>
    from aiohttp_retry import RetryClient, RetryOptions, JitterRetry
ImportError: cannot import name 'RetryOptions' from 'aiohttp_retry' (/usr/local/lib/python3.11/site-packages/aiohttp_retry/__init__.py)