Limited guest access addon

Tags: #<Tag:0x00007f326c560a68>

I’ve created my first home assistant addon.
I got the idéa from a fellow community member Albertjvanr#6536, who wanted to be able to share a link to friends coming to visit.

Now his guests don’t have to call him to ask him to open the gate any more, they get a link with a one-time-use or time limited button which opens his gate instead.

Do you need something similar?
Grab a copy from the addon store, just add this repository:

7 Likes

I installed it and trying to use it. Created a sample light.toggle; do i need to give friends to use address: ‘192.168.1.30:8888/1d9fbd/’ assuming they logged in to my home wifi? Is port 8888 true??

UPDATE: When try to connect to this address i get a ‘Remote Control’ page with black background and no buttons whatsoever…

Hi @febalci

The first part of the address is what you entered into the external_url configuration value,
you can either port forward port 8888 in your router, or make use of a proxy in front of the addon.

The missing buttons is probably because of time limitation, if you choose that a button is visible
from today to today (default settings) it will never show as default time is 00:00:00 on both valid from and expires at

So you need to change time or date when the button expires (there’s already an issue to write some kind of more descriptive text instead of just showing up blank.

Kind regards I

Thanks @TekniskSupport, that did it. 2 things maybe would be better:

  1. As you mentioned, default action create gives today’s date however both time boxes come out as ‘–:--:–’. And that prevents the button to be visible. Maybe it would be better to also give default parameters for time as from 00:00:00 to 23:59:59. So that new users would be easier to adapt.
  2. Both date and time parameters appear as USA format in my install; so like “09/10/2020 12:00 AM”. But i use European format (Germany maybe?) like “10.09.2020 23:59”. And all my settings are in European format like for OS and also Home Assistant. The only place i see USA format is in this addon. So, is there a way for me to change it?

My last humble comments;

  1. maybe it would be better to write “Your friends should go to http://xxxx.xxx:8888/yyyyy to be able to use the button page” on the README on github page.
  2. Is there a way to change the random page name to some more meaningful word? Like instead of “192.168.1.30:8888/1d9fbd/” i want to use “192.168.1.30:8888/(name of the friend)/”

Thanks to you, this addon will solve most of my problems…

Hi,

Thanks for your input, will consider!

The date and time parameters are not chosen by me, it is all rendered by your browser and should be according to your locales on the browser as far as i know (only thing i did was add <input type="date"> and <input type="time">)

see here how to change in chrome:
https://one.workfront.com/s/article/Changing-Date-Format-For-Chrome-1043451320

I will update the README. and added an issue about the name-of-friend suggestion

//i

@febalci I updated the code to account for 1.1 and 2.1.

The last comment (2.2) I added as an issue on github and will include in a future update,
I already have a few tasks created that has to do with link-data, check them out here (and don’t hesitate to create new issues over there if you have any more idéas):

/i

Hi

in
external_url: ‘https://your-external-visitor-url.tld:port/’

I have to put my Home assistant URL, correct?

I did my first link, but when I put it on a browser I get

404: Not Found

Hi @Klagio,

Not really. you can put anything in there.
All that settings really does is to prepend this field:

It can be your hass-domain:8888 (if you didn’t change the port of the addon) or it could be your external ip, or another domain pointing at your ip or yeah you get the picture, it’s not important for the functionality of the addon anyhow.

If you don’t have a proxy in front, you may have to open port 8888 in your router or firewall

Kind regards I

Superb, thank you…

Sorry I do not understand.

My HA is on port 8123 but I have it forwarded with Caddy. So I access my HA with https://myhomeassistant.com

So I put in external url
https://myhomeassistant.com

my first link created is
https://myhomeassistant.com/d8c61a/

when I put on a browser that link I get
404: Not Found

what am I missing?

Ok so you are already running a reverse proxy for your homeassistant intance
and have a domain pointing at your ip, then

you can either, open port 8888 in your firewall/router and set external_url to http://myhomeassistant.com:8888/

Or prefered method, you can add a new reverse proxy to caddy with another domain (perhaps a subdomain?)
and set the external_url to https://subdomain.myhomeassistant.com/

caddy reverse-proxy --from subdomain.myhomeassistant.com --to ha-internal-ip:8888

Should now be resolved in version 0.1.10

2 Likes

Very clear, thanks. Will try when back home

Fantastic.

Each URL it’s a command, right?

I suggest to all the Android app HTTP SHORTCUT to make GET URLs and put as widget on the smartphone.

So clicking the widget it fires the Home Assistant command

running in the same issue. I have home assistant behind a proxy and don*t want to use port 8888 I will try to map this via proxy and will report

works perfectly by just proxy pass domain:8888 to domain.tld. We should maybe mention that the url of this app is not releated to the hass url. then it might be better understandable.

btw…great stuff!!! possible to design a bit the buttons and background to make it look nicer?

wow… i am that fascinated now that i would really like to make some ideas here:

  1. Addind possibility to add custom header
  2. adding possibility to add custom background color / piture / background

That would make this app awesome!

not really, the idéa is to create a link with mutiple actions, but you could if you wanted to copy the link off of a button which would be to an action

Now this, solved all my problems. Thank you very much for all the hard work…

Thanks for the idéas

I will work on the button design, perhaps even add the ability to inject css
i think for 1, and 2, the best solution would be to make a theme with transparent background, that way you could make a wrapper with custom design and render the buttons in an iframe with custom background and so on

//i

It works great. I am very happy thatnks a lot!!!

One question, is it possible to have a mini webpage with multiple commands?

I would give to my “stranger” only one URL https://stranger.myhomeassistant.com

and this would give multiple actions on one single webpage

open external door
open internal door
turn on light

hope I am clear

@Klagio
Yes that’s the idéa :slight_smile:
Just add multiple actions to the link

1 Like