* add ha_addons repository to cscode workspace * Issue220 ha addon dokumentation update (#232) * initial DOCS.md for Addon * links to Mosquitto and Adguard * replaced _ by . for PV-Strings * mentioned add-on installation method in README.md * fix most of the markdown linter warnings * add missing alt texts * added nice add repository to my Home Assistant badges --------- Co-authored-by: Michael Metz <michael.metz@siemens.com> Co-authored-by: Stefan Allius <stefan.allius@t-online.de> * S allius/issue216 (#235) * improve docker run - establish multistage Dockerfile - build a python wheel for all needed packages - remove unneeded tools like apk for runtime * pin versions, fix hadolint warnings * merge from dev-0.12 --------- Co-authored-by: Michael Metz <michael.metz@siemens.com> * Issue220 ha addon dokumentation update (#245) * revised config disclaimer * add newline at end of file to fix linter warning --------- Co-authored-by: Michael Metz <michael.metz@siemens.com> * 238 ha addon repository check (#244) * move Makefile and bake file into parent folder * build config.yaml from template * use Makefile instead of build shell script * ignore temporary or created files * add rules for building the add-on repository * add rel version of add-on * add jinja2-cli * ignore inverter replays which a older than 1 day (#246) * S allius/issue7 (#248) * report alarm and fault bitfield to ha * define the alarm and fault names * configure log path and max number of daily log files (#243) * configure log path and max number of daily log files * don't use a subfolder for configs * use make instead of a build script * mount /homeassistant/tsun-proxy * Add venv to base image * give write access to mounted folder * intial checkin, ignore SC1091 * set advanced and stage value in config.yaml * fix typo * added watchdog and removed Port 8127 from mapping * fixed typo and use new add-on repro - change the install button to install from https://github.com/s-allius/ha-addons * add addon-rel target * disable watchdog due to exceptions in the ha supervisor * update changelog --------- Co-authored-by: Michael Metz <michael.metz@siemens.com> * Update README.md (#251) install `https://github.com/s-allius/ha-addons` as repro for our add-on * add german language file (#253) * fix return type get_extra_info in FakeWriter * move global startup code into main methdod * pin version of base image * avoid forwarding to a private (lokal) IP addr (#256) * avoid forwarding to a private (lokal) IP addr * test DNS resolver issues * increase test coverage * update changelog * fix client_mode configuration block (#252) * fix client_mode block * add client mode * fix tests with client_mode values * log client_mode configuration * add forward flag for client_mode * improve startup logging * added client_mode example * adjusted translation files * AT commands added * typo * missing "PLUS" * link to config details * improve log msg for config problems * improve log msg on config errors * improve log msg for config problems * copy CHANGELOG.md into add-on repro --------- Co-authored-by: Michael Metz <michael.metz@siemens.com> * rename "ConfigErr" to match naming convention * disable test coverage for __main__ * update changelog version 0.12 --------- Co-authored-by: metzi <147942647+mime24@users.noreply.github.com> Co-authored-by: Michael Metz <michael.metz@siemens.com>
111 lines
3.3 KiB
Django/Jinja
Executable File
111 lines
3.3 KiB
Django/Jinja
Executable File
name: {{name}}
|
|
description: {{description}}
|
|
version: {% if version is defined and version|length %} {{version}} {% else %} {{AppVersion}} {% endif %}
|
|
image: docker.io/sallius/tsun-gen3-addon
|
|
url: https://github.com/s-allius/tsun-gen3-proxy
|
|
slug: {{slug}}
|
|
advanced: {{advanced}}
|
|
stage: {{stage}}
|
|
init: false
|
|
arch:
|
|
- aarch64
|
|
- amd64
|
|
- armhf
|
|
- armv7
|
|
startup: services
|
|
homeassistant_api: true
|
|
map:
|
|
- type: addon_config
|
|
path: /homeassistant/tsun-proxy
|
|
read_only: False
|
|
services:
|
|
- mqtt:want
|
|
ports:
|
|
5005/tcp: 5005
|
|
10000/tcp: 10000
|
|
|
|
# FIXME: we disabled the watchdog due to exceptions in the ha supervisor. See: https://github.com/s-allius/tsun-gen3-proxy/issues/249
|
|
# watchdog: "http://[HOST]:[PORT:8127]/-/healthy"
|
|
|
|
# Definition of parameters in the configuration tab of the addon
|
|
# parameters are available within the container as /data/options.json
|
|
# and should become picked up by the proxy - current workaround as a transfer script
|
|
# TODO: check again for multi hierarchie parameters
|
|
# TODO: implement direct reading of the configuration file
|
|
schema:
|
|
inverters:
|
|
- serial: str
|
|
monitor_sn: int?
|
|
node_id: str
|
|
suggested_area: str
|
|
modbus_polling: bool
|
|
client_mode.host: str?
|
|
client_mode.port: int?
|
|
client_mode.forward: bool?
|
|
#strings: # leider funktioniert es nicht die folgenden 3 parameter im schema aufzulisten. möglicherweise wird die verschachtelung nicht unterstützt.
|
|
# - string: str
|
|
# type: str
|
|
# manufacturer: str
|
|
# daher diese variante
|
|
pv1.manufacturer: str?
|
|
pv1.type: str?
|
|
pv2.manufacturer: str?
|
|
pv2.type: str?
|
|
pv3.manufacturer: str?
|
|
pv3.type: str?
|
|
pv4.manufacturer: str?
|
|
pv4.type: str?
|
|
pv5.manufacturer: str?
|
|
pv5.type: str?
|
|
pv6.manufacturer: str?
|
|
pv6.type: str?
|
|
tsun.enabled: bool
|
|
solarman.enabled: bool
|
|
inverters.allow_all: bool
|
|
# optionale parameter
|
|
# TODO besser strukturieren und vervollständigen
|
|
mqtt.host: str?
|
|
mqtt.port: int?
|
|
mqtt.user: str?
|
|
mqtt.passwd: password?
|
|
ha.auto_conf_prefix: str? # suggeriert optionale konfigurationsoption -> es darf jedoch kein default unter "options" angegeben werden
|
|
ha.discovery_prefix: str? # dito
|
|
ha.entity_prefix: str? #dito
|
|
ha.proxy_node_id: str? #dito
|
|
ha.proxy_unique_id: str? #dito
|
|
tsun.host: str?
|
|
solarman.host: str?
|
|
gen3plus.at_acl.tsun.allow:
|
|
- str
|
|
gen3plus.at_acl.tsun.block:
|
|
- str?
|
|
gen3plus.at_acl.mqtt.allow:
|
|
- str
|
|
gen3plus.at_acl.mqtt.block:
|
|
- str?
|
|
|
|
# set default options for mandatory parameters
|
|
# for optional parameters do not define any default value in the options dictionary.
|
|
# If any default value is given, the option becomes a required value.
|
|
options:
|
|
inverters:
|
|
- serial: R17E760702080400
|
|
node_id: PV-Garage
|
|
suggested_area: Garage
|
|
modbus_polling: false
|
|
# strings:
|
|
# - string: PV1
|
|
# type: SF-M18/144550
|
|
# manufacturer: Shinefar
|
|
# - string: PV2
|
|
# type: SF-M18/144550
|
|
# manufacturer: Shinefar
|
|
pv1.manufacturer: Shinefar
|
|
pv1.type: SF-M18/144550
|
|
pv2.manufacturer: Shinefar
|
|
pv2.type: SF-M18/144550
|
|
tsun.enabled: true # set default
|
|
solarman.enabled: true # set default
|
|
inverters.allow_all: false # set default
|
|
gen3plus.at_acl.tsun.allow: ["AT+Z", "AT+UPURL", "AT+SUPDATE"]
|
|
gen3plus.at_acl.mqtt.allow: ["AT+"] |