When attempting to connect to Membrane VideoRoom from a client on a different origin, the WebRTC connection fails to establish. The following error message is displayed in the console:
"ICE failed, your TURN server appears to be broken"
Steps to Reproduce:
- Open the Membrane VideoRoom application on a server with a TURN server configured
- Attempt to connect to the application from a client on a different origin
- Observe that the WebRTC connection fails to establish and the error message "ICE failed, your TURN server appears to be broken" is displayed in the console.
Expected Result: The WebRTC connection should successfully establish, allowing the client to participate in the video conference.
Actual Result: The WebRTC connection fails to establish and the error message "ICE failed, your TURN server appears to be broken" is displayed in the console.
Workarounds: None found.
Additional Information:
- The TURN server has been configured correctly and is operational.
- The server's firewall has been configured to allow incoming traffic on the required ports.
- The WebRTC connection is successfully established when connecting from a client on the same origin.
- The issue only occurs when attempting to connect to the application from a client on a different origin.
- I'm developing a frontend-only application to connect to the server using the React application from membrane_videoroom hosted on a different origin. I've used the Corsica plug to allow all origins.
Environment: Membrane VideoRoom version: 2.0.1 Server OS: Ubuntu 20.04 Client OS: Windows 10 Browser: Google Chrome 97.0.4692.99
Attachments: Log files from the server and client are attached for further investigation.
Request: Could you please provide a beginner-friendly explanation of the root cause of the issue and suggest any possible solutions that could help resolve it? Thank you in advance for your help!