From 7e2c1fd31cd983484a70a8ea1f55875e7c24a4b4 Mon Sep 17 00:00:00 2001 From: mrlt8 <67088095+mrlt8@users.noreply.github.com> Date: Tue, 17 Sep 2024 20:54:47 -0700 Subject: [PATCH] Set video: true for HW image #769 --- home_assistant/hw/Dockerfile | 1 + home_assistant/hw/config.yml | 137 ++++++++++++++++++++++++++ home_assistant/hw/translations/en.yml | 103 +++++++++++++++++++ 3 files changed, 241 insertions(+) create mode 100644 home_assistant/hw/Dockerfile create mode 100644 home_assistant/hw/config.yml create mode 100644 home_assistant/hw/translations/en.yml diff --git a/home_assistant/hw/Dockerfile b/home_assistant/hw/Dockerfile new file mode 100644 index 00000000..04a25769 --- /dev/null +++ b/home_assistant/hw/Dockerfile @@ -0,0 +1 @@ +FROM mrlt8/wyze-bridge:latest-hw diff --git a/home_assistant/hw/config.yml b/home_assistant/hw/config.yml new file mode 100644 index 00000000..08218f91 --- /dev/null +++ b/home_assistant/hw/config.yml @@ -0,0 +1,137 @@ +name: Docker Wyze Bridge (HW branch) +description: HW build. Use the REBUILD button to pull latest image. +slug: docker_wyze_bridge_hw +url: "https://github.com/mrlt8/docker-wyze-bridge" +version: hw +stage: experimental +arch: + - amd64 +startup: application +boot: auto +apparmor: false +hassio_api: true +ports: + 1935/tcp: 1935 + 8554/tcp: 8554 + 8888/tcp: 8888 + 8189/udp: 8189 + 8889/tcp: 8889 + 5000/tcp: 5000 +ports_description: + 1935/tcp: RTMP streams + 8554/tcp: RTSP streams + 8888/tcp: HLS streams + 8189/udp: WebRTC ICE + 8889/tcp: WebRTC streams + 5000/tcp: Web-UI/Snapshots +environment: + IMG_DIR: media/wyze/img/ + RECORD_PATH: media/wyze/{CAM_NAME} + MQTT_DTOPIC: homeassistant +map: + - addon_config:rw + - media:rw + - ssl:ro +services: + - mqtt:want +video: true +ingress: true +ingress_port: 5000 +panel_icon: mdi:bridge +options: + ENABLE_AUDIO: true + ON_DEMAND: true + WB_AUTH: true + MOTION_API: true + MQTT: true + CAM_OPTIONS: [] +schema: + WYZE_EMAIL: email? + WYZE_PASSWORD: password? + API_ID: match(\s*[a-fA-F0-9-]{36}\s*)? + API_KEY: match(\s*[a-zA-Z0-9]{60}\s*)? + WB_IP: str? + REFRESH_TOKEN: str? + ACCESS_TOKEN: str? + NET_MODE: list(LAN|P2P|ANY)? + SNAPSHOT: list(API|RTSP|RTSP15|RTSP30|RTSP60|RTSP180|RTSP300|Disable)? + SNAPSHOT_FORMAT: str? + SNAPSHOT_KEEP: str? + IMG_TYPE: list(jpg|png)? + IMG_DIR: str? + ENABLE_AUDIO: bool? + ON_DEMAND: bool? + MOTION_API: bool? + MOTION_INT: float(1.1,)? + MOTION_START: bool? + MOTION_WEBHOOKS: str? + SUBSTREAM: bool? + AUDIO_CODEC: list(COPY|AAC|LIBOPUS|MP3|PCM_MULAW|PCM_ALAW)? + AUDIO_FILTER: str? + LLHLS: bool? + DISABLE_CONTROL: bool? + RTSP_FW: bool? + RECORD_ALL: bool? + RECORD_LENGTH: int? + RECORD_PATH: str? + RECORD_FILE_NAME: str? + MQTT: bool + MQTT_HOST: str? + MQTT_AUTH: str? + MQTT_TOPIC: str? + MQTT_DTOPIC: str? + MQTT_RETRIES: int? + FILTER_NAMES: str? + FILTER_MODELS: str? + FILTER_MACS: str? + FILTER_BLOCK: bool? + ROTATE_DOOR: bool? + H264_ENC: str? + FORCE_ENCODE: bool? + IGNORE_OFFLINE: bool? + OFFLINE_WEBHOOKS: bool? + FRESH_DATA: bool? + URI_MAC: bool? + URI_SEPARATOR: list(-|_|#)? + QUALITY: str? + SUB_QUALITY: str? + FORCE_FPS: int? + SUB_RECORD: bool? + FFMPEG_FLAGS: str? + FFMPEG_CMD: str? + LOG_LEVEL: list(INFO|DEBUG)? + LOG_FILE: bool? + LOG_TIME: bool? + FFMPEG_LOGLEVEL: list(quiet|panic|fatal|error|warning|info|verbose|debug)? + IGNORE_RES: int? + BOA_ENABLED: bool? + BOA_INTERVAL: int? + BOA_TAKE_PHOTO: bool? + BOA_PHOTO: bool? + BOA_ALARM: bool? + BOA_MOTION: str? + BOA_COOLDOWN: int? + CAM_OPTIONS: + - CAM_NAME: str? + AUDIO: bool? + FFMPEG: str? + LIVESTREAM: str? + NET_MODE: str? + ROTATE: bool? + QUALITY: str? + SUB_QUALITY: str? + FORCE_FPS: int? + RECORD: bool? + SUB_RECORD: bool? + SUBSTREAM: bool? + MOTION_WEBHOOKS: str? + MEDIAMTX: + - match(^\w+=.*)? + WB_HLS_URL: str? + WB_RTMP_URL: str? + WB_RTSP_URL: str? + WB_WEBRTC_URL: str? + WB_AUTH: bool? + WB_USERNAME: str? + WB_PASSWORD: str? + STREAM_AUTH: str? diff --git a/home_assistant/hw/translations/en.yml b/home_assistant/hw/translations/en.yml new file mode 100644 index 00000000..29d609e4 --- /dev/null +++ b/home_assistant/hw/translations/en.yml @@ -0,0 +1,103 @@ +configuration: + API_ID: + name: Key ID + description: Optional, but must be used in combination with the API Key. + API_KEY: + name: API Key + description: Optional, but must be used in combination with the Key ID. + REFRESH_TOKEN: + name: Refresh Token + description: Use existing refresh token for authentication. + ACCESS_TOKEN: + name: Access Token + description: Use existing access token for authentication. + NET_MODE: + name: Allowed Net Modes + SNAPSHOT: + name: Snapshot Mode + ENABLE_AUDIO: + name: Enable Audio For All Cameras + SUBSTREAM: + name: Enable sub-stream + description: Create a secondary SD30 stream on "/cam-name-sub" + FILTER_NAMES: + name: Filter cameras by name + FILTER_MODELS: + name: Filter cameras by camera model + FILTER_MACS: + name: Filter cameras by MAC address + FILTER_BLOCK: + name: Invert Filter + description: Block cameras in filter list + AUDIO_CODEC: + name: Audio Codec + description: Cams with PCM audio will be re-encoded to AAC by default for RTSP compatibility. + AUDIO_FILTER: + name: FFmpeg Audio Filter + description: Requires audio codec to be set to AAC or MP3. + OFFLINE_IFTTT: + name: IFTTT Webhook + description: e.g. `EventName:Webhooks_Key`. + ROTATE_DOOR: + name: Rotate Doorbells + description: Will rotate video 90 degrees clockwise. + CAM_OPTIONS: + name: Camera Specific Options + FRESH_DATA: + name: Pull Fresh Data From Wyze API + description: Ignore local cache and pull fresh data from the wyze API. + WEBRTC: + name: Print WebRTC Credentials + WB_SHOW_VIDEO: + name: HLS Player in Web-UI + MEDIAMTX: + name: MediaMTX config + description: Use `=` to specify the value and use `_` in place of spaces. + BOA_ENABLED: + name: Enable Boa HTTP* + description: Enable http webserver on select cameras. *Req LAN and SD Card. + BOA_INTERVAL: + name: Boa Keep Alive + description: The number of seconds between photos/keep alive. + BOA_TAKE_PHOTO: + name: Interval Photo + description: Take a photo on the camera on Boa Keep Alive Interval. + BOA_PHOTO: + name: Pull Photo (MQTT Motion Alerts) + description: Pull the HQ photo from the SD card via Boa. + BOA_ALARM: + name: Pull Alarm (MQTT Motion Alerts) + description: Pull alarm/motion image from the SD card via Boa. + BOA_COOLDOWN: + name: Motion Cooldown + description: Number of seconds to keep the motion flag set to true before resetting it. + BOA_MOTION: + name: Webhook on Boa Motion + description: Make a Webhook/HTTP request to any url. e.g., http://localhost/motion?cam={cam_name} + WB_HLS_URL: + name: Custom HLS url + WB_RTMP_URL: + name: Custom RTMP url + WB_RTSP_URL: + name: Custom RTSP url + WB_WEBRTC_URL: + name: Custom WebRTC url + RTSP_FW: + name: Firmware RTSP + description: Proxy additional RTSP stream from official RTSP firmware. + DISABLE_CONTROL: + name: Disable Control + description: Disable camera control from the API/mqtt. + WB_IP: + name: Bridge IP + description: Home Assistant IP for WebRTC ICE traffic. + TOTP_KEY: + name: TOTP Key + description: Used to auto generate a TOTP code when needed. + WB_AUTH: + name: WebUI Auth + description: Enable authentication for WebUI + WB_USERNAME: + name: WebUI Username + WB_PASSWORD: + name: WebUI Password