From 3b412113e80fa755fc41e44672214f46214ab958 Mon Sep 17 00:00:00 2001 From: Roman Stein Date: Tue, 1 Dec 2020 20:06:22 +0100 Subject: [PATCH 1/3] Bump version to 1.16.2 --- zigbee2mqtt/CHANGELOG.md | 8 ++++++++ zigbee2mqtt/Dockerfile | 2 +- zigbee2mqtt/config.json | 6 ++++-- 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/zigbee2mqtt/CHANGELOG.md b/zigbee2mqtt/CHANGELOG.md index db22900..9ce1022 100644 --- a/zigbee2mqtt/CHANGELOG.md +++ b/zigbee2mqtt/CHANGELOG.md @@ -1,3 +1,11 @@ +## 1.16.2 +- Updated Zigbee2mqtt to version [`1.16.2`](https://github.com/Koenkk/zigbee2mqtt/releases/tag/1.16.2) +- New configuration options + - `mqtt` + - `force_disable_retain` + - `frontend` + - `host` + ## 1.16.1 - Updated Zigbee2mqtt to version [`1.16.1`](https://github.com/Koenkk/zigbee2mqtt/releases/tag/1.16.1) diff --git a/zigbee2mqtt/Dockerfile b/zigbee2mqtt/Dockerfile index 4bce106..3c39173 100644 --- a/zigbee2mqtt/Dockerfile +++ b/zigbee2mqtt/Dockerfile @@ -4,7 +4,7 @@ FROM $BUILD_FROM # Add env ENV LANG C.UTF-8 -ENV ZIGBEE2MQTT_VERSION=1.16.1 +ENV ZIGBEE2MQTT_VERSION=1.16.2 ENV ARCHIVE=zigbee2mqtt-$ZIGBEE2MQTT_VERSION RUN apk add --update --no-cache curl jq nodejs npm socat \ diff --git a/zigbee2mqtt/config.json b/zigbee2mqtt/config.json index 3cd107a..27e8e47 100644 --- a/zigbee2mqtt/config.json +++ b/zigbee2mqtt/config.json @@ -1,6 +1,6 @@ { "name": "Zigbee2mqtt", - "version": "1.16.1", + "version": "1.16.2", "slug": "zigbee2mqtt", "description": "Zigbee to MQTT Bridge", "auto_uart": true, @@ -94,7 +94,8 @@ "keepalive": "int?", "version": "int?", "reject_unauthorized": "bool?", - "include_device_information": "bool?" + "include_device_information": "bool?", + "force_disable_retain": "bool?" }, "serial": { "port": "str", @@ -157,6 +158,7 @@ "new_api": "bool?" }, "frontend": { + "host": "string?", "port": "int?" }, "socat": { From 8f03267922d87cc5889c398111cf5a7eb25256d0 Mon Sep 17 00:00:00 2001 From: Roman Stein Date: Tue, 1 Dec 2020 22:46:17 +0100 Subject: [PATCH 2/3] Support multiple files for groups and devices options --- zigbee2mqtt/CHANGELOG.md | 1 + zigbee2mqtt/DOCS.md | 1 + zigbee2mqtt/run.sh | 2 ++ 3 files changed, 4 insertions(+) diff --git a/zigbee2mqtt/CHANGELOG.md b/zigbee2mqtt/CHANGELOG.md index 9ce1022..149ab5d 100644 --- a/zigbee2mqtt/CHANGELOG.md +++ b/zigbee2mqtt/CHANGELOG.md @@ -5,6 +5,7 @@ - `force_disable_retain` - `frontend` - `host` +- `devices` and `groups` options now accept a comma-separated string of files ## 1.16.1 - Updated Zigbee2mqtt to version [`1.16.1`](https://github.com/Koenkk/zigbee2mqtt/releases/tag/1.16.1) diff --git a/zigbee2mqtt/DOCS.md b/zigbee2mqtt/DOCS.md index ae337f7..7825386 100644 --- a/zigbee2mqtt/DOCS.md +++ b/zigbee2mqtt/DOCS.md @@ -30,6 +30,7 @@ See the [zigbee2mqtt configuration docs](https://www.zigbee2mqtt.io/information/ - Depending on your configuration, the MQTT server config may need to include the port, typically `1883` or `8883` for SSL communications. For example, `mqtt://core-mosquitto:1883` for Home Assistant's Mosquitto add-on. - To find out which serial ports you have exposed go to **Supervisor → System → Host system → ⋮ → Hardware** - Please see this add-on's [documentation on GitHub](https://github.com/danielwelch/hassio-zigbee2mqtt#socat) for further add-on-specific information (using Socat, how to add support for new devices etc.). +- The 'devices' and 'groups' configuration options accept arrays of files since Zigbee2MQTT v1.16.2. In order to maintain backwards compatibility of configurations, the same functionality is achieved in this addon by the use of comma-separated strings. # Additional Configuration Options - `network_key_string` diff --git a/zigbee2mqtt/run.sh b/zigbee2mqtt/run.sh index 28d2791..23701ab 100644 --- a/zigbee2mqtt/run.sh +++ b/zigbee2mqtt/run.sh @@ -20,6 +20,8 @@ fi # Parse config cat "$CONFIG_PATH" | jq 'del(.data_path, .zigbee_shepherd_debug, .zigbee_shepherd_devices, .socat)' \ + | jq 'if .devices then .devices = (.devices | split(",")|map(gsub("\\s+";"";"g"))) else . end' \ + | jq 'if .groups then .groups = (.groups | split(",")|map(gsub("\\s+";"";"g"))) else . end' \ | jq 'if .advanced.ext_pan_id_string then .advanced.ext_pan_id = (.advanced.ext_pan_id_string | (split(",")|map(tonumber))) | del(.advanced.ext_pan_id_string) else . end' \ | jq 'if .advanced.network_key_string then .advanced.network_key = (.advanced.network_key_string | (split(",")|map(tonumber))) | del(.advanced.network_key_string) else . end' \ | jq 'if .device_options_string then .device_options = (.device_options_string|fromjson) | del(.device_options_string) else . end' \ From 90642bd1ebbcdf1396ec6f54464292acf0e68068 Mon Sep 17 00:00:00 2001 From: Roman Stein Date: Wed, 2 Dec 2020 00:20:17 +0100 Subject: [PATCH 3/3] Add new v1.16.2 configuration options to edge --- zigbee2mqtt-edge/config.json | 6 ++++-- zigbee2mqtt-edge/run.sh | 2 ++ 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/zigbee2mqtt-edge/config.json b/zigbee2mqtt-edge/config.json index 50e817a..1fb7d7e 100644 --- a/zigbee2mqtt-edge/config.json +++ b/zigbee2mqtt-edge/config.json @@ -94,7 +94,8 @@ "keepalive": "int?", "version": "int?", "reject_unauthorized": "bool?", - "include_device_information": "bool?" + "include_device_information": "bool?", + "force_disable_retain": "bool?" }, "serial": { "port": "str", @@ -157,6 +158,7 @@ "new_api": "bool?" }, "frontend": { + "host": "string?", "port": "int?" }, "socat": { @@ -170,4 +172,4 @@ } }, "image": "dwelch2101/zigbee2mqtt-edge-{arch}" -} \ No newline at end of file +} diff --git a/zigbee2mqtt-edge/run.sh b/zigbee2mqtt-edge/run.sh index 35f3a90..372b73d 100644 --- a/zigbee2mqtt-edge/run.sh +++ b/zigbee2mqtt-edge/run.sh @@ -29,6 +29,8 @@ mkdir -p "$DATA_PATH" # Parse config cat "$CONFIG_PATH" | jq 'del(.data_path, .zigbee_shepherd_debug, .zigbee_shepherd_devices, .socat)' \ + | jq 'if .devices then .devices = (.devices | split(",")|map(gsub("\\s+";"";"g"))) else . end' \ + | jq 'if .groups then .groups = (.groups | split(",")|map(gsub("\\s+";"";"g"))) else . end' \ | jq 'if .advanced.ext_pan_id_string then .advanced.ext_pan_id = (.advanced.ext_pan_id_string | (split(",")|map(tonumber))) | del(.advanced.ext_pan_id_string) else . end' \ | jq 'if .advanced.network_key_string then .advanced.network_key = (.advanced.network_key_string | (split(",")|map(tonumber))) | del(.advanced.network_key_string) else . end' \ | jq 'if .device_options_string then .device_options = (.device_options_string|fromjson) | del(.device_options_string) else . end' \