cgiesche / streamdeck-homeassistant

Control your Home Assistant devices from StreamDeck
MIT License
795 stars 39 forks source link

I can get the Plugin to connect to the Home Assistant. #177

Closed tonyfitzs closed 9 months ago

tonyfitzs commented 11 months ago

Hi, I have been using the Streamdeck Home Assistant plugin for some time, and it has been working well. I am using the SSL connection (wss://< my url >/api/websocket) I had to rebuild my PC and forgot to backup the settings on the StreamDeck, and now I can't get it to work. I have created a new Long Live token, and if I use Postmen, it all connects fine using the same settings as I am using with the StreamDeck; however, in the Plugin, I get the following error.

Failed to connect to wss://< my url >/api/websocket

Im not sure how to get logs, etc. out of the stream deck, but I need this fixed because I use it all the time. im using Home Assistant 2023.10.0 Supervisor 2023.10.0 Operating System 10.5 Frontend 20231002.0 - latest

StreamDeck 6.3.0.18948

Hessenpower01 commented 11 months ago

Added the port to your IP?

cgiesche commented 11 months ago

That may help. If yo do not specify the port, the defaults are port 443 for "wss://...." and port 80 for "ws://....". For different ports, you have to specify them after the domain "wss://foo.bar.com:8443/api/websocket".

Besides that: If you are using wss, please make sure, you are using a valid certificate. Self signed certificates are (and can not) be supported.

rileymd88 commented 11 months ago

I have the same issue and it is most likely related to my certificates, however I am curious why this is an issue? If I use Postman I can connect to the Websocket API without any issues.

cgiesche commented 11 months ago

StreamDeck uses a kind of "internal webbrower" that runs the plugin. This brower does not accept self-signed or invalid certificates. From within my plugin i can not override this behaviour. :/

There are only two options

I think postman is less strict when it comes to TLS valdidation.

Razer0123 commented 11 months ago

Having the same issue after a recente windows format, can't connect anymore

cgiesche commented 11 months ago

I will check with a totally fresh install of StreamDeck.

cgiesche commented 11 months ago

Hmm, i completely removed StreamDeck and deleted all related registry keys. After reinstalling StreamDeck, downloading the plugin and entering valid URL and Token, it works as expected. :/

Razer0123 commented 11 months ago

Hmm, i completely removed StreamDeck and deleted all related registry keys. After reinstalling StreamDeck, downloading the plugin and entering valid URL and Token, it works as expected. :/

I tried but streamdeck seemed to remember the url i inserted in HA, which folders did you delete?

cgiesche commented 11 months ago

The plugin (or plugins in general) can store 2 different types of settings.

I closed the streamdeck app and deleted the whole streamdeck folder and the registry key. To reset only server settings, deleting the single registry-key should be enough.

Razer0123 commented 11 months ago

The plugin (or plugins in general) can store 2 different types of settings.

* Global Settings (like URL and Token of my plugin)

  * Are stored in the registry (on windows) under
    Path: `HKEY_CURRENT_USER\Software\Elgato Systems GmbH\StreamDeck`
    Key: `de.perdoctus.streamdeck.homeassistantde.perdoctus.streamdeck.homeassistant` (can be deleted to "reset" URL and Token)

* Button specific Settings

  * Are stored in the filesystem
    Path: `C:\Users\[your user]\AppData\Roaming\Elgato\StreamDeck\ProfilesV2` (warning, contains all your buttons. only delete if you want to re-config your whole streamdeck)

I closed the streamdeck app and deleted the whole streamdeck folder and the registry key. To reset only server settings, deleting the single registry-key should be enough.

Deleting the registry key seems to have worked, thanks!

C74K commented 10 months ago

how to conect to google home devices ?