-
Notifications
You must be signed in to change notification settings - Fork 513
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’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
failing WebSocket opening handshake #508
Comments
This should work by default starting in 0.11.7. |
According to status_page/ros_melodic_default.html?q=rosbridge Melodic currently is at @balinttahi: would you have pending updates? |
I tried many versions from github to solve the problem, starting from 0.11.4 but I had this problem in all of them. Now I installed it with |
I can try to reproduce this if you can point me at the repo for NACHI ROS Driver or submit code for an isolated example client. Otherwise, here is a brief code review: Here is where the error comes from. You can see that if Here is where rosbridge gets the param (defaulting to |
The client you are using may not be correctly implementing the
The only valid case for not specifying the port is a proxy listening on port 80. In this case configuring You might try clearing your ROS params, a bad value may still be sitting in |
5 minutes ago, I almost said it is working. FlexGui 2.4 (NACHI Driver) can connect now to rosbridge, if the
Neither a C# code (using simple websocket client): So this "solution" kills everything else (or I am missing something). Ofc. the listening port can't be 80, because for that, I need to run rosbridge as root. |
If I run 2 rosbridge in 2 different namespace (1 in root, 1 in lets say ... "legacy"). The legacy has the external_port = 80, the one in the root is a totally default rosbridge, then everything works fine ... ofc I am eating more resources than I should and this is just a brute force workaround ... but at least working. If you have a much better solution, where:
Thanks! |
I recommend fixing the request headers. If you have a solution for rosbridge, your PR is welcome. |
I am getting the exact same error message like @balinttahi. By looking at the Factory code, I noticed, that the clearing of the external port parameter cannot work, since, if it it not defined, they are parsing the port out of the URL that ROSBridge gives it here |
This should actually be fixed in newer versions of autobahn crossbario/autobahn-python@80fe02d . Unfortunately these require python3 which might break other things. Update: |
I had the same problem and solved it with the websocket_external_port arg. The port 40000 in the host was mapped to 9090 in the container. Below is the full command I used:
|
Works! Thanks! |
roslaunch rosbridge_server rosbridge_websocket.launch port:=9090 websocket_external_port:=40000 --screen |
Worked when the websocket_external_port:=80, one week trying to figure it out. |
This issue has been marked as stale because there has been no activity in the past 6 months. Please add a comment to keep it open. |
Hi, I am trying to use our NACHI ROS Driver (FlexGui 2.4) with rosbridge. It was working fine with ROS Kinetic (and also older ones), now we moved to ROS Melodic and we are not able to connect anymore. The error message is the following:
We are running rosbridge on the default 9090 port, WSS is false.
Specifications
echo $ROS_DISTRO
): melodicgrep DISTRIB_CODENAME /etc/lsb-release
): bionicroscat rosbridge_server package.xml | grep '<version>'
): 0.11.4python -c 'import twisted; print twisted.version'
): 17.9.0The text was updated successfully, but these errors were encountered: