Alexa Skill to display Lovelace dashboards on Echo Show

The browser bar disappears when you scroll down slightly, I wonder if you could make a javascript code to scroll down the website just enough for it to disappear?

1 Like

This is awesome. Works like a treat. Any call limits using this on aws servers?

That would finish the project perfectly :+1:t3:

This is something I actually already tried, however, without success. When I tested this, the JavaScript functions window.scrollTo() and window.scrollBy() did in fact scroll the page, but the browser search bar still remained. I guess the browser search bar only disappears when you “physically” scroll down.

Good question. I found this page on the Alexa Developer Documentation:

It says Unlimited free AWS Lambda requests, so there should be no limit I guess.

1 Like

Bit of a longshot but I wonder if we can utilise this ‘hidden’ web browser in some way.

I’ve just figured out you can input go to chrome://about and view a whole range of browser settings for the Silk Browser. In particular chrome://flags allows you to change a whole host of settings for the browser. Surely something in here could be utilised to enable a fullscreen mode.

2 Likes

Hello,

Anyboby knows if this is possible to execute a skill by touching the screen instead of vocal command ?

For example, open a Home Assistant link when I touch the clock on the screen !

Thanks in advance for your support.

I am pretty sure that it is not possible to trigger anything on an Echo Show by touching the display.
What I would suggest is to use …

  1. a smart button to trigger a Home Assistant automation …
  2. that calls an Alexa routine (via Alexa Media Player) …
  3. which executes this skill (and thus opens the requested home assistant page).

I’ve described this idea on the usage page in the documentation on GitHub.

I’m testing https://github.com/Shreyas-R/lovelace-wallpanel-screensaver and there is a option full screen and its works!

1 Like

isn’t that visible reloading every time with not responding display in the meantime?

I just got this working on my HA set up. Thanks so much for the skill!

I was wondering about the scrolling that has been discussed to remove the header bar. A javascript solution (as @aldadic has said) just scrolls the view within the web page. But what about the Amazon scrollup and scrolldown intents? Or using the “Scroll” or “ScrollTo” functions within the ADK? I tried for a little while today to get those working, but I wasn’t able to understand what the developer console was returning (this is my first time messing with skills).

Thoughts?

This Lovelace plugin uses the Fullscreen API to display the Home Assistant dashboard in fullscreen. However, this API requires that fullscreen mode is only requested while responding to a user interaction or a device orientation change; otherwise it will fail as explained here (this is also stated on the addon page). Therefore you must always interact with the Echo Shows display in some way before the dashboard can be shown in fullscreen, which doesn’t solve the problem in my opinion. If that behavior is sufficient for you, you might as well only add the following Javascript snippet as Lovelace resource and achieve the same behavior as the plugin (with regards to its fullscreen capabilities):

function enterFullscreen() {
	let el = document.documentElement;
	if (el.requestFullscreen) {
		el.requestFullscreen();
	}
	else if (el.mozRequestFullScreen) {
		el.mozRequestFullScreen();
	}
	else if (el.msRequestFullscreen) {
		el.msRequestFullscreen();
	}
	else if (el.webkitRequestFullscreen) {
		el.webkitRequestFullscreen();
	}
}

window.addEventListener('click', e => {
    enterFullscreen();
}, false);

window.addEventListener('touchend', e => {
    enterFullscreen();
}, false);

Yes, you will regularly see the page reloading and you won’t be able to interact with the dashboard while it is loading. There is unfortunately no way to prevent that.

I’m glad you like the skill!

I don’t think the scrolling intents can be used for this. As far as I understand, those intents can be used to scroll a page that is rendered by a skill. But this skill does not render a page, it just opens a specified URL in the browser. And once the browser window is open, the skill isn’t “active” any longer, so it can’t receive any commands.

Maybe do it configured in file?

I think you misunderstood me. I tried out the plugin and works as expected, the only problem is that I still have to touch the display to hide the browser bar. This is the normal behavior, the developer of this plugin made the following remark on the GitHub page:

Due to browser restrictions you will need to interact with the screen once to activate fullscreen mode after loading the dashboard page.

What I wanted to say is that the technique that this plugin uses (namely the Fullscreen API) isn’t a solution for me, because you still have to touch the display in order to hide the browser bar. In that case you could also just scroll down and achieve the same without any extra plugin.

1 Like

Hello, first of all thank you all! I just purchased a Show 8 and I was able to trow some HA dashboard there! super happy.

QUESTION: I use the Echo quite a lot for casting music. If I play music and then I trow the Alexa skill to open the dashboard the music stops. I guess this is an intended behavior? any way to keep background process managing the music?

I don’t think it is possible to play music while the browser is open. I draw this conclusion because when I say “Alexa, open Silk” while music is playing the playback immediately stops once the browser is open.

Thanks very much! Just got this working. Also, the trick with the automation every X minutes solves another problem, which is that I don’t want to see any of the Alexa advertisements. I do wish the bar wasn’t there, but oh well.

1 Like