Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

[馃殌 Feature]: Reconnect WebSockets for BiDi #13762

Open
joerg1985 opened this issue Mar 31, 2024 · 2 comments
Open

[馃殌 Feature]: Reconnect WebSockets for BiDi #13762

joerg1985 opened this issue Mar 31, 2024 · 2 comments
Labels
C-java help wanted Issues looking for contributions I-enhancement

Comments

@joerg1985
Copy link
Member

Feature and motivation

In the past the HttpClient did take care of stale connections and did reconnect the TCP socket. When switching to WebSockets / BiDi this has to be handled by the application. Otherwise users might have negative experience when selenium will switch to BiDi and there might be alot of issue tickets (as users did use selenium in the past without problems).

I have experienced this when testing BiDi via VPN and the VPN did break and reconnect automatically.

It might be good to reconnect the WebSocket when it breaks. This might require the server to have a outgoing message que and the client to check the message has been received before (in case the server did resent due to a IOException while sending the last time). The reconnect has to be initiated by the client, this might require sending ping / pong requests in case the connection is idle (to detect the sockets are broken).

What do you think, is this needed? Or at least have a plan if users complain about this?

Usage example

Running tests in a world of not perfect connectivity (VPN / switch from WiFi to docking)

Copy link

@joerg1985, thank you for creating this issue. We will troubleshoot it as soon as we can.


Info for maintainers

Triage this issue by using labels.

If information is missing, add a helpful comment and then I-issue-template label.

If the issue is a question, add the I-question label.

If the issue is valid but there is no time to troubleshoot it, consider adding the help wanted label.

If the issue requires changes or fixes from an external project (e.g., ChromeDriver, GeckoDriver, MSEdgeDriver, W3C), add the applicable G-* label, and it will provide the correct link and auto-close the issue.

After troubleshooting the issue, please add the R-awaiting answer label.

Thank you!

@diemol diemol added C-java help wanted Issues looking for contributions and removed needs-triaging labels Mar 31, 2024
Copy link

This issue is looking for contributors.

Please comment below or reach out to us through our IRC/Slack/Matrix channels if you are interested.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-java help wanted Issues looking for contributions I-enhancement
Projects
None yet
Development

No branches or pull requests

2 participants