Also, While the dashboard shows the icon and shows the input i’m on for the TV and the title of what’s playing for DirecTv and AppleTv, I can’t control any of them and I can at least turn them on and off from HA.
Nothing in the logs, no errors on the screen. It remains gray but with text across it describing what is playing.
Now, I know this may sound silly, but go to a browser and verify that HA is running and that you can log in to it using the exact same URL and password that are in your appdaemon.cfg
So ran into a Docker issue here now that I’m not in localhost terms. It looks like dash_url is literally being sent down to the client browser and its doing redirects/requests against that. 0.0.0.0 works fine from localhost but not remotely, obviously…
It appears the dash_url is also used to figure out a bind address, so it’s not possible to make this work as a container right now.
Is there a reason the relative paths didn’t work and that’s why dash_url was hard coded? If that’s the case I’d request being able to split up the bind config from the dash_url config (with defaults like, bind any:5050 is just the default if you don’t specify otherwise)
$ python3 -m appdaemon.appdaemon -c ./conf
Traceback (most recent call last):
File “/usr/local/lib/python3.5/runpy.py”, line 184, in _run_module_as_main
“main”, mod_spec)
File “/usr/local/lib/python3.5/runpy.py”, line 85, in _run_code
exec(code, run_globals)
File “/home/pi/appdaemon_dashboard/appdaemon/appdaemon/appdaemon.py”, line 17, in
from websocket import create_connection
ImportError: No module named ‘websocket’
This after installing and uninstalling and re-installing websockets
AIO RPI3 HA 0.39.2
Any ideas?
The install line was …
sudo pip3 install websocket-client
Collecting websocket-client
Requirement already satisfied: six in /usr/local/lib/python3.4/dist-packages (from websocket-client)
Installing collected packages: websocket-client
Successfully installed websocket-client-0.40.0
initially it came up with…
sudo pip3 install websocket-client
Collecting websocket-client
Retrying (Retry(total=4, connect=None, read=None, redirect=None)) after connection broken by ‘NewConnectionError(’<pip._vendor.requests.packages.urllib3.connection.VerifiedHTTPSConnection object at 0x75f35f10>: Failed to establish a new connection: [Errno -2] Name or service not known’,)’: /simple/websocket-client/
Downloading websocket_client-0.40.0.tar.gz (196kB)
100% |████████████████████████████████| 204kB 412kB/s
Requirement already satisfied: six in /usr/local/lib/python3.4/dist-packages (from websocket-client)
Building wheels for collected packages: websocket-client
Running setup.py bdist_wheel for websocket-client … done
Stored in directory: /root/.cache/pip/wheels/d1/5e/dd/93da015a0ecc8375278b05ad7f0452eff574a044bcea2a95d2
Successfully built websocket-client
Installing collected packages: websocket-client
Successfully installed websocket-client-0.40.0
This will look for a file called top_panel.yaml in the dashboards directory, then include it. There are a couple of different ways this can be used.
If the yaml file includes it’s own layouts directive, the widgets from that file will be placed as a block, in the way described by its layout, making it reusable. You can change the order of the blocks inclusion by moving where in the original layout directive you include them.
If the yaml file just includes widget definitions, it is possible to perform the layout in the higher level dash if you prefer so you still get an overall view of the dashboard. This approach has the benefit that you can be completely flexible in the layout wheras the first method defines fixed layouts for the included blocks.
There is one other option.
You can create widget definitions in the main file and use them in the layout of the header/footer/etc.
For example, I have a header that has a label in it that lists the room that the dashboard is associated with. If I put the label widget definition, in the header file, all the pages get the same message. So I put the label widget definition in the main file for the room, and referenced it from the layout in the header. Now each page has the right name displayed in the header.
Why can you click on device_trackers and toggle them from home to away??? Can you disable being able to click on it so it just shows you where they are?