exposedev / exposedev/expose

[Bug]: Home Assistant Websocket API not working

Open
#462 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
PHP
Stars
4.6k
Forks
308
PR merge metrics
No merged PRs in 30d

Description

### System architecture

Linux

### PHP Version

_No response_

### Bug description

Hey guys -

Foremost, great work. I love working with expose. It is a super useful tool.

Currently, I am implementing a Home Assistant Add-On to expose my home assistant running on a Raspberry Pi in my local network without the need of Port Forwarding in the Router. Expose would be great for that, because in combination with the nginx proxy manager you have full control over it, and you do not rely on any environments like Cloudflare.

So I have a nginx proxy manager and the expose server on my VPS. Expose is working perfect for normal http requests. But I think there is a problem with the WebSocket handling in expose. For some reason, I don't get any answers from the expose server when I establish a WebSocket connection.

When access my home assistant with the remote URL I can log in but when I get redirected after entering my credentials and the OAuth process (https://developers.home-assistant.io/docs/api/websocket/) starts, I get a Bad Request after 10 Seconds.
I tried to simulate that process with Postman and I get the same result. I can establish the connection but i don't get any answer of my message:

Image

Here is my nginx proxy configuration:
Image

Here are the logs of the expose client:

```
Thank you for using expose.
Shared site homeassistant:8123
Dashboard http://127.0.0.1:4040
Public URL https://ha.not-my-domain.io
GET /api/websocket ............................. 07:30:25 17 ms
101 GET /api/websocket ............................. 07:30:25 78 ms
101 GET /api/websocket ............................. 07:30:25 78 ms
GET /api/websocket ............................. 07:30:46 0 ms
101 GET /api/websocket ............................. 07:30:25 78 ms
101 GET /api/websocket ............................. 07:30:46 18 ms
101 GET /api/websocket ............................. 07:30:25 78 ms
101 GET /api/websocket ............................. 07:30:46 19 ms
101 GET /api/websocket ............................. 07:30:25 78 ms
```

I've spent a lot of hours on trying to fix something on my proxy, but nothing works. Slowly I am thinking that there has to be an error or missing functionality on expose. Can you guys help me please?

### Steps to reproduce

_No response_

### Relevant log output

```shell

```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.