From 5308ea360ebe98d0b9562f5c9953d89bf42ab313 Mon Sep 17 00:00:00 2001 From: Kevin McCormack Date: Sun, 19 Oct 2025 13:45:07 +0000 Subject: [PATCH 1/4] Update Vivotek docs for config flow --- Gemfile.lock | 5 +-- source/_integrations/vivotek.markdown | 53 +++++++-------------------- 2 files changed, 15 insertions(+), 43 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index 9fe310ee82ff..171189e2cf37 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -141,10 +141,9 @@ GEM ruby2_keywords (0.0.5) safe_yaml (1.0.5) sass (3.4.25) - sass-embedded (1.93.2-arm64-darwin) - google-protobuf (~> 4.31) - sass-embedded (1.93.2-x86_64-linux-gnu) + sass-embedded (1.93.2) google-protobuf (~> 4.31) + rake (>= 13) sass-globbing (1.1.5) sass (>= 3.1) sassc (2.1.0) diff --git a/source/_integrations/vivotek.markdown b/source/_integrations/vivotek.markdown index 90c36f0c2fe0..c0d01de4bc70 100644 --- a/source/_integrations/vivotek.markdown +++ b/source/_integrations/vivotek.markdown @@ -11,38 +11,29 @@ ha_domain: vivotek ha_platforms: - camera ha_integration_type: integration -related: - - docs: /docs/configuration/ - title: Configuration file ha_quality_scale: legacy +ha_config_flow: true --- The **VIVOTEK** camera {% term integration %} allows you to integrate a VIVOTEK IP camera into Home Assistant. Home Assistant will serve the images via its server, making it possible to view your IP cameras while outside of your network. The endpoint is `/api/camera_proxy/camera.[name]`. -## Configuration +{% include integrations/config_flow.md %} -To enable this camera in your installation, add the following to your {% term "`configuration.yaml`" %} file. -{% include integrations/restart_ha_after_config_inclusion.md %} - -```yaml -# Example configuration.yaml entry -camera: - - platform: vivotek - ip_address: IP_ADDRESS - username: USERNAME - password: PASSWORD -``` - -{% configuration %} +{% configuration_basic %} ip_address: description: "The IP address of your camera, e.g., `192.168.1.2`." required: true type: string +port: + description: "The port number" + required: true + default: 80 + type: integer name: description: This parameter allows you to override the name of your camera. - required: false + required: true default: VIVOTEK Camera type: string username: @@ -55,12 +46,12 @@ password: type: string authentication: description: "Type for authenticating the requests `basic` or `digest`." - required: false + required: true default: basic type: string security_level: description: The security level of the user accessing your camera. This could be `admin` or `viewer`. - required: false + required: true default: admin type: string ssl: @@ -75,7 +66,7 @@ verify_ssl: type: boolean framerate: description: The number of frames-per-second (FPS) of the stream. Can cause heavy traffic on the network and/or heavy load on the camera. - required: false + required: true default: 2 type: integer stream_path: @@ -83,25 +74,7 @@ stream_path: required: false default: live.sdp type: string -{% endconfiguration %} - -### Advanced configuration - -```yaml -# Example configuration.yaml entry -camera: - - platform: vivotek - name: Front door camera - ip_address: 192.168.1.2 - ssl: true - username: !secret fd_camera_username - password: !secret fd_camera_pwd - authentication: digest - security_level: admin - verify_ssl: false - framerate: 5 - stream_path: live2.sdp -``` +{% endconfiguration_basic %} ### Actions From d5d9297b4fd015e713c22609887adba83e15a996 Mon Sep 17 00:00:00 2001 From: Kevin McCormack Date: Sun, 19 Oct 2025 14:10:10 +0000 Subject: [PATCH 2/4] Remove unused config keys --- source/_integrations/vivotek.markdown | 40 ++++----------------------- 1 file changed, 5 insertions(+), 35 deletions(-) diff --git a/source/_integrations/vivotek.markdown b/source/_integrations/vivotek.markdown index c0d01de4bc70..5bad149ce736 100644 --- a/source/_integrations/vivotek.markdown +++ b/source/_integrations/vivotek.markdown @@ -23,57 +23,27 @@ Home Assistant will serve the images via its server, making it possible to view {% configuration_basic %} ip_address: - description: "The IP address of your camera, e.g., `192.168.1.2`." - required: true - type: string + description: The IP address of your camera, e.g., `192.168.1.2`. port: - description: "The port number" - required: true - default: 80 - type: integer + description: The port number. name: - description: This parameter allows you to override the name of your camera. - required: true - default: VIVOTEK Camera - type: string + description: The name of your camera. username: description: The username for accessing your camera. - required: true - type: string password: description: The password for accessing your camera. - required: true - type: string authentication: - description: "Type for authenticating the requests `basic` or `digest`." - required: true - default: basic - type: string + description: "Type for authenticating the requests with `basic` or `digest`." security_level: description: The security level of the user accessing your camera. This could be `admin` or `viewer`. - required: true - default: admin - type: string ssl: description: Enable or disable SSL. Set to false to use an HTTP-only camera. - required: false - default: false - type: boolean verify_ssl: description: Enable or disable SSL certificate verification. Set to false to use an HTTP-only camera, or you have a self-signed SSL certificate and haven't installed the CA certificate to enable verification. - required: false - default: true - type: boolean framerate: description: The number of frames-per-second (FPS) of the stream. Can cause heavy traffic on the network and/or heavy load on the camera. - required: true - default: 2 - type: integer stream_path: - description: This parameter allows you to override the stream path. - required: false - default: live.sdp - type: string + description: This parameter allows you to override the stream path. The default is `live.sdp`. {% endconfiguration_basic %} ### Actions From 6f96945f58906add17bfea9b42849c395a565d09 Mon Sep 17 00:00:00 2001 From: Kevin McCormack Date: Thu, 23 Oct 2025 22:28:06 -0400 Subject: [PATCH 3/4] Restore Gemfile.lock --- Gemfile.lock | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index 171189e2cf37..9fe310ee82ff 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -141,9 +141,10 @@ GEM ruby2_keywords (0.0.5) safe_yaml (1.0.5) sass (3.4.25) - sass-embedded (1.93.2) + sass-embedded (1.93.2-arm64-darwin) + google-protobuf (~> 4.31) + sass-embedded (1.93.2-x86_64-linux-gnu) google-protobuf (~> 4.31) - rake (>= 13) sass-globbing (1.1.5) sass (>= 3.1) sassc (2.1.0) From eae1a8755556b03698779500f9e2b162eec700ab Mon Sep 17 00:00:00 2001 From: Joost Lekkerkerker Date: Tue, 2 Dec 2025 19:52:59 +0100 Subject: [PATCH 4/4] Update source/_integrations/vivotek.markdown --- source/_integrations/vivotek.markdown | 1 - 1 file changed, 1 deletion(-) diff --git a/source/_integrations/vivotek.markdown b/source/_integrations/vivotek.markdown index 5bad149ce736..a1192e9a719e 100644 --- a/source/_integrations/vivotek.markdown +++ b/source/_integrations/vivotek.markdown @@ -11,7 +11,6 @@ ha_domain: vivotek ha_platforms: - camera ha_integration_type: integration -ha_quality_scale: legacy ha_config_flow: true ---