Document TURN relay mode support with -I option #809
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Overview
This PR addresses issue #XXX by documenting the existing TURN relay support that was already implemented but undocumented in the codebase.
Problem
Users were unaware that webrtc-streamer already supports forcing connections through TURN relay servers. The
-Ioption exists to control ICE transport types, but it was poorly documented:Solution
Enhanced documentation to make TURN relay functionality discoverable and usable:
1. Improved Command-Line Help
Updated help text in
src/main.cppto clearly show valid values:2. Updated README Usage Section
Added the
-Ioption to the documented command-line arguments with value explanations.3. Added "Forcing TURN relay mode" Section
Created comprehensive documentation explaining:
Usage Examples
Force all connections through TURN relay with embedded server:
./webrtc-streamer -s- -T0.0.0.0:3478 -tturn:turn@$(curl -s ifconfig.me):3478 -I1With external TURN server:
Transport Type Values
-I 0(default): Allow all connection types - tries direct P2P first, falls back to TURN-I 1: Force relay only - all traffic goes through TURN server-I 2: No host - prevents local network connectionsImpact
The functionality was already fully implemented in the codebase - this PR simply makes it accessible through proper documentation.
Original prompt
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.