From b58193065a1f9a43db1b5be8a76fb48e13fb3c1c Mon Sep 17 00:00:00 2001 From: Paulus Schoutsen Date: Mon, 1 Dec 2025 15:51:15 -0500 Subject: [PATCH 1/5] Add webRTC integration --- source/_integrations/webrtc.markdown | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 source/_integrations/webrtc.markdown diff --git a/source/_integrations/webrtc.markdown b/source/_integrations/webrtc.markdown new file mode 100644 index 000000000000..e117a24e4842 --- /dev/null +++ b/source/_integrations/webrtc.markdown @@ -0,0 +1,15 @@ +--- +title: WebRTC +description: Instructions on how to configure the WebRTC integration for Home Assistant. +ha_category: + - Other +ha_release: '2026.1' +ha_quality_scale: internal +ha_domain: webrtc +ha_iot_class: Calculated +ha_codeowners: + - '@home-assistant/core' +ha_integration_type: system +--- + +The **WebRTC** {% term integration %} is an internal integration that provides WebRTC functionality for camera streaming in Home Assistant. It manages ICE (Interactive Connectivity Establishment) servers used for establishing peer-to-peer connections. From 76d1257c6e6d5519dcecc48dc2108f1477607c36 Mon Sep 17 00:00:00 2001 From: Paulus Schoutsen Date: Mon, 1 Dec 2025 16:23:36 -0500 Subject: [PATCH 2/5] Rename to web_rtc --- source/_integrations/{webrtc.markdown => web_rtc.markdown} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename source/_integrations/{webrtc.markdown => web_rtc.markdown} (96%) diff --git a/source/_integrations/webrtc.markdown b/source/_integrations/web_rtc.markdown similarity index 96% rename from source/_integrations/webrtc.markdown rename to source/_integrations/web_rtc.markdown index e117a24e4842..9a614ae0afef 100644 --- a/source/_integrations/webrtc.markdown +++ b/source/_integrations/web_rtc.markdown @@ -5,7 +5,7 @@ ha_category: - Other ha_release: '2026.1' ha_quality_scale: internal -ha_domain: webrtc +ha_domain: web_rtc ha_iot_class: Calculated ha_codeowners: - '@home-assistant/core' From f62a54a2541c8a83d4f116f979e10f77d01d0bc3 Mon Sep 17 00:00:00 2001 From: Paulus Schoutsen Date: Mon, 1 Dec 2025 16:57:57 -0500 Subject: [PATCH 3/5] Improve --- source/_integrations/web_rtc.markdown | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/source/_integrations/web_rtc.markdown b/source/_integrations/web_rtc.markdown index 9a614ae0afef..291473f59b92 100644 --- a/source/_integrations/web_rtc.markdown +++ b/source/_integrations/web_rtc.markdown @@ -6,10 +6,11 @@ ha_category: ha_release: '2026.1' ha_quality_scale: internal ha_domain: web_rtc -ha_iot_class: Calculated ha_codeowners: - '@home-assistant/core' ha_integration_type: system --- -The **WebRTC** {% term integration %} is an internal integration that provides WebRTC functionality for camera streaming in Home Assistant. It manages ICE (Interactive Connectivity Establishment) servers used for establishing peer-to-peer connections. +The **WebRTC** {% term integration %} is an internal integration that provides WebRTC functionality for camera streaming in Home Assistant. It is automatically set up when needed and does not require any manual configuration. + +If you want to configure your own TURN and STUN servers, [check the core config](/integrations/homeassistant/#webrtc). From 5e683f2fbf83e7c502f365775e212371ae6d294f Mon Sep 17 00:00:00 2001 From: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com> Date: Tue, 2 Dec 2025 07:30:48 +0100 Subject: [PATCH 4/5] resolve acronyms --- source/_integrations/web_rtc.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_integrations/web_rtc.markdown b/source/_integrations/web_rtc.markdown index 291473f59b92..f8bf73012fe0 100644 --- a/source/_integrations/web_rtc.markdown +++ b/source/_integrations/web_rtc.markdown @@ -13,4 +13,4 @@ ha_integration_type: system The **WebRTC** {% term integration %} is an internal integration that provides WebRTC functionality for camera streaming in Home Assistant. It is automatically set up when needed and does not require any manual configuration. -If you want to configure your own TURN and STUN servers, [check the core config](/integrations/homeassistant/#webrtc). +If you want to configure your own TURN and STUN servers, [check the core config](/integrations/homeassistant/#webrtc). From 9bd20de50b27ae32a84c7a633a578239f9ec3985 Mon Sep 17 00:00:00 2001 From: Paulus Schoutsen Date: Thu, 4 Dec 2025 14:54:14 +0000 Subject: [PATCH 5/5] Add YAML example --- source/_integrations/web_rtc.markdown | 49 ++++++++++++++++++++++++++- 1 file changed, 48 insertions(+), 1 deletion(-) diff --git a/source/_integrations/web_rtc.markdown b/source/_integrations/web_rtc.markdown index f8bf73012fe0..244a96a2bc51 100644 --- a/source/_integrations/web_rtc.markdown +++ b/source/_integrations/web_rtc.markdown @@ -13,4 +13,51 @@ ha_integration_type: system The **WebRTC** {% term integration %} is an internal integration that provides WebRTC functionality for camera streaming in Home Assistant. It is automatically set up when needed and does not require any manual configuration. -If you want to configure your own TURN and STUN servers, [check the core config](/integrations/homeassistant/#webrtc). +## Advanced configuration + +To configure your own STUN and TURN servers, add the following to your {% term "`configuration.yaml`" %} file: + +```yaml +# Example configuration.yaml entry +web_rtc: +``` + +{% configuration %} +web_rtc: + description: Enables the WebRTC integration. Only allowed once. + required: true + type: map + keys: + ice_servers: + description: List of STUN and TURN server configurations. + required: true + type: list + keys: + url: + description: STUN or TURN server URLs. This can either be a single URL or a list of URLs. + required: true + type: string + username: + description: Username for TURN server authentication. + required: false + type: string + credential: + description: Credential for TURN server authentication. + required: false + type: string +{% endconfiguration %} + +### Configuration example + +```yaml +# Example configuration.yaml entry with custom STUN and TURN servers +web_rtc: + ice_servers: + # Add an entry for each STUN or TURN server + - url: + - "stun:stun.example.com:19302" + - "stun:stun2.example.com:12345" + - url: "turn:turn.domain.com" + username: "username" + credential: "abc123" +```