Change dashboard on event?

I feel like this has been discussed by I wasnt able to find anything while searching so I apologize if this is already been discussed.

I finally got my cameras into dashboard and I am wondering if there is anyway I can have the dashboard change to the “security” page on a certain event. Like motion in my yard or driveway would just switch from my normal dashboard to the dashboard that displays the cams?

you can create an app for that like:

init(...):
  self.listen_state(self.show_dash,"sensor.motion")

def self.show_dash(...):
  self.dash_navigate("/AlarmStatus", timeout=10)        # Switch to AlarmStatus Panel then return to current panel after 10 seconds
1 Like

My man! thats awesome thank you sir!

Nowwwww I just gotta read up and find out where I slide this in…lol

Works killin me, taking all my time away from all my fun!

2 Likes

Did you ever get it working? Where did you put that code?

you need to create an app for it.
an app is python code that goes in your apps dir.

an easy tutorial on how to start to write apps can be found here:

1 Like

I got my main dashboard changing to a different dashboard when it notices movement in HA using a automation and a script. However, it takes around 2-5 seconds to change to the new dashboard. Is there anyway to speed up the navigate widget in HADashboard? I’m using a Fire HD 8 tablet.

there are a lot of different things that influence the loading speed from a dashboard.

  • network speed
  • wifi connection
  • device that shows the dashboard
  • if you recompile every time or not
  • if you use an outside dns (duckdns) to reache your dashboard or not
  • in that case internet speed, server speed duckdns, etc.

if you dont use dash force compile then the loading speed is only influenced by things outside appdaemon.

How did you do that Maaniac?

@MPopt here is a simple automation which turns on a script whenever either of the lights change status.

- alias: Dashboard Page View
  initial_state: true
  hide_entity: true
  trigger:
    platform: state
    entity_id: light.kitchen_level, light.under_cabinets_level
  action:
    - service: script.turn_on
      entity_id: script.testing_hadashboard

testing_hadashboard:
  alias: Navigate
  sequence:
  - event: hadashboard
    event_data:
      command: navigate
      timeout: 10
      target: Test

Thanks a lot!

I achieve same with full kiosk browser, and is faster

you can change between different dashboards in fully based on settings in home assistant?

for example you can change your dashboard in fully to a dasshboard displays outside temperatures when an temperature outside goes below a certain point?

i dont think so, because your fully kiosk browser doesnt know what HA knows.

I have this automation

action:
      - service: switch.turn_on
        entity_id: switch.teclast1_screen
 # teclast1_screen_state:
 #   url: !secret teclast1_screen_state
 #   method: 'get'
switch:
  - platform: command_line
    switches:
      teclast1_screen:
        command_on: /usr/bin/curl -k "http://192.168.1.52:2323/?cmd=screenOn&password=xxx"
        command_off: /usr/bin/curl -k "http://192.168.1.52:2323/?cmd=screenOff&password=xxc"
        command_state: '/usr/bin/curl --silent -X GET "http://192.168.1.52:2323/?password=xxx" |grep "Screen status" |grep "on\|off" |sed "s/<[^>]*>//g" |sed "s/Screen status//g" |sed "s/Turn on//g" |sed "s/Turn off//g"'
        value_template: '{{ value == "on" }}'
        friendly_name: Teclast1 Screen
  - platform: command_line        
    switches:
      alarm_notify:
        command_on: /usr/bin/curl -k "http://192.168.1.52:2323/?cmd=textToSpeech&text=The+House+Alarm+Has+Been+Disarmed&password=xxc"
        friendly_name: Teclast1 Nofify Alarm Disarmed Open

so you are not achieving the same with fully, but you do something simular in HA.

and there is no way that sending a dashboard to an external app is faster then sending the same dashboard to an already active dashboard.

the device you send it to, still has to load the dashboard and it does it in a browser (and if you didnt change settings in fully its even the same browser)

by the way, i have fully active for a long time now, and i use it also for dashboards.
the way to set up different dashboard events that maaniac describes is easier and works also for people that dont have fully installed. (and it works a hell of a lot better when you have an older device that has an old android installed. and it does also work on IOS devices and fully not)

Sorry to resurrect an old thread. Is it possible to send an event to navigate a certain dashboard? e.g. I have multiple tablets on the wall, each viewing a separate dash file. I want to show a full screen camera when motion is detected but only on the tablet next to the door. Is this possible? Currently I’m testing the fully kiosk browser option, but I haven’t purchased a licence yet.

at this moment all you can do is change the dashboard from ALL dashboards you have.
but you can set a time and then it goes back to the previous dashboard.

if you really want it to be at just 1 dashboard then you have 2 options:

  1. make a navigate button on the dashboard or
  2. make it happen at the client side and then fully is a good option.

I appreciate your quick reply. That’s what I figured. I’m using node-red to translate the motion event into a GET request to fully then 15 seconds later go back to the original dashboard. I assume that it would be faster not opening a new connection going directly from dashboard to dashboard with the events but I have about 10 tablets running and they all don’t need to show the camera at the same time.
Thanks ReneTode.

i theory you could also create a javascript inside your skin.
and that javascript would then do the navigate if a sensor is changed. but the sensor needs to be on the dashboard as well when you do that. (or you need to add some more javascript to start checking the state frequently, but you dont want to go that way)

The sensor is on the dashboard actually. Javascript isn’t really my strong suit though. I will have to look into it though. Thanks for the suggestion!

Sorry to bump this again, but I have been using a script just like this to automate a dashboard change when my front door motion is triggered for some time. I just upgraded my AppDaemon add-in from V3 to V4 and this automation no longer works, and nothing happens even if I try to trigger the script manually. Does something in the automation or script code need to change for this to work again with V4?