fixing gitignore + traefik logging
|
|
@ -1,3 +1,11 @@
|
||||||
librespeed/config/log/*
|
librespeed/config/log/*
|
||||||
**/[Ll]ogs
|
**/[Ll]ogs
|
||||||
**/[Ll]og
|
**/[Ll]og
|
||||||
|
ha/config/custom_components/*
|
||||||
|
ha/config/themes/*
|
||||||
|
ha/config/image/*
|
||||||
|
ha/config/www/community/*
|
||||||
|
ha/config/www/community/*
|
||||||
|
ha/config/www/media/ha-bambulab/*
|
||||||
|
ha/matter_server/
|
||||||
|
secrets/
|
||||||
|
|
|
||||||
|
|
@ -1,184 +0,0 @@
|
||||||
http:
|
|
||||||
pprof:
|
|
||||||
port: 6060
|
|
||||||
enabled: false
|
|
||||||
address: 0.0.0.0:80
|
|
||||||
session_ttl: 720h
|
|
||||||
users:
|
|
||||||
- name: simon
|
|
||||||
password: $2a$10$LmhzPrlAZ8gzqXuibTTlPud.vOXgkpa3zhzrVj8xgLqFEnHQTFt7e
|
|
||||||
auth_attempts: 5
|
|
||||||
block_auth_min: 15
|
|
||||||
http_proxy: ""
|
|
||||||
language: ""
|
|
||||||
theme: auto
|
|
||||||
dns:
|
|
||||||
bind_hosts:
|
|
||||||
- 0.0.0.0
|
|
||||||
port: 53
|
|
||||||
anonymize_client_ip: false
|
|
||||||
ratelimit: 20
|
|
||||||
ratelimit_subnet_len_ipv4: 24
|
|
||||||
ratelimit_subnet_len_ipv6: 56
|
|
||||||
ratelimit_whitelist: []
|
|
||||||
refuse_any: true
|
|
||||||
upstream_dns:
|
|
||||||
- https://dns.cloudflare.com/dns-query
|
|
||||||
- https://dns.google/dns-query
|
|
||||||
- https://security.cloudflare-dns.com/dns-query
|
|
||||||
upstream_dns_file: ""
|
|
||||||
bootstrap_dns:
|
|
||||||
- 9.9.9.10
|
|
||||||
- 149.112.112.10
|
|
||||||
- 2620:fe::10
|
|
||||||
- 2620:fe::fe:10
|
|
||||||
fallback_dns:
|
|
||||||
- 1.1.1.2
|
|
||||||
upstream_mode: load_balance
|
|
||||||
fastest_timeout: 1s
|
|
||||||
allowed_clients: []
|
|
||||||
disallowed_clients: []
|
|
||||||
blocked_hosts:
|
|
||||||
- version.bind
|
|
||||||
- id.server
|
|
||||||
- hostname.bind
|
|
||||||
trusted_proxies:
|
|
||||||
- 127.0.0.0/8
|
|
||||||
- ::1/128
|
|
||||||
cache_size: 4194304
|
|
||||||
cache_ttl_min: 0
|
|
||||||
cache_ttl_max: 0
|
|
||||||
cache_optimistic: false
|
|
||||||
bogus_nxdomain: []
|
|
||||||
aaaa_disabled: false
|
|
||||||
enable_dnssec: false
|
|
||||||
edns_client_subnet:
|
|
||||||
custom_ip: ""
|
|
||||||
enabled: false
|
|
||||||
use_custom: false
|
|
||||||
max_goroutines: 300
|
|
||||||
handle_ddr: true
|
|
||||||
ipset: []
|
|
||||||
ipset_file: ""
|
|
||||||
bootstrap_prefer_ipv6: false
|
|
||||||
upstream_timeout: 10s
|
|
||||||
private_networks: []
|
|
||||||
use_private_ptr_resolvers: false
|
|
||||||
local_ptr_upstreams: []
|
|
||||||
use_dns64: false
|
|
||||||
dns64_prefixes: []
|
|
||||||
serve_http3: false
|
|
||||||
use_http3_upstreams: false
|
|
||||||
serve_plain_dns: true
|
|
||||||
hostsfile_enabled: true
|
|
||||||
tls:
|
|
||||||
enabled: false
|
|
||||||
server_name: ""
|
|
||||||
force_https: false
|
|
||||||
port_https: 443
|
|
||||||
port_dns_over_tls: 853
|
|
||||||
port_dns_over_quic: 853
|
|
||||||
port_dnscrypt: 0
|
|
||||||
dnscrypt_config_file: ""
|
|
||||||
allow_unencrypted_doh: false
|
|
||||||
certificate_chain: ""
|
|
||||||
private_key: ""
|
|
||||||
certificate_path: ""
|
|
||||||
private_key_path: ""
|
|
||||||
strict_sni_check: false
|
|
||||||
querylog:
|
|
||||||
dir_path: ""
|
|
||||||
ignored: []
|
|
||||||
interval: 2160h
|
|
||||||
size_memory: 1000
|
|
||||||
enabled: true
|
|
||||||
file_enabled: true
|
|
||||||
statistics:
|
|
||||||
dir_path: ""
|
|
||||||
ignored: []
|
|
||||||
interval: 24h
|
|
||||||
enabled: true
|
|
||||||
filters:
|
|
||||||
- enabled: false
|
|
||||||
url: https://adguardteam.github.io/HostlistsRegistry/assets/filter_1.txt
|
|
||||||
name: AdGuard DNS filter
|
|
||||||
id: 1
|
|
||||||
- enabled: false
|
|
||||||
url: https://adguardteam.github.io/HostlistsRegistry/assets/filter_2.txt
|
|
||||||
name: AdAway Default Blocklist
|
|
||||||
id: 2
|
|
||||||
whitelist_filters: []
|
|
||||||
user_rules: []
|
|
||||||
dhcp:
|
|
||||||
enabled: false
|
|
||||||
interface_name: ""
|
|
||||||
local_domain_name: lan
|
|
||||||
dhcpv4:
|
|
||||||
gateway_ip: ""
|
|
||||||
subnet_mask: ""
|
|
||||||
range_start: ""
|
|
||||||
range_end: ""
|
|
||||||
lease_duration: 86400
|
|
||||||
icmp_timeout_msec: 1000
|
|
||||||
options: []
|
|
||||||
dhcpv6:
|
|
||||||
range_start: ""
|
|
||||||
lease_duration: 86400
|
|
||||||
ra_slaac_only: false
|
|
||||||
ra_allow_slaac: false
|
|
||||||
filtering:
|
|
||||||
blocking_ipv4: ""
|
|
||||||
blocking_ipv6: ""
|
|
||||||
blocked_services:
|
|
||||||
schedule:
|
|
||||||
time_zone: UTC
|
|
||||||
ids: []
|
|
||||||
protection_disabled_until: null
|
|
||||||
safe_search:
|
|
||||||
enabled: false
|
|
||||||
bing: true
|
|
||||||
duckduckgo: true
|
|
||||||
google: true
|
|
||||||
pixabay: true
|
|
||||||
yandex: true
|
|
||||||
youtube: true
|
|
||||||
blocking_mode: default
|
|
||||||
parental_block_host: family-block.dns.adguard.com
|
|
||||||
safebrowsing_block_host: standard-block.dns.adguard.com
|
|
||||||
rewrites:
|
|
||||||
- domain: '*.milvert.com'
|
|
||||||
answer: milvert.com
|
|
||||||
- domain: milvert.com
|
|
||||||
answer: 10.0.0.3
|
|
||||||
safebrowsing_cache_size: 1048576
|
|
||||||
safesearch_cache_size: 1048576
|
|
||||||
parental_cache_size: 1048576
|
|
||||||
cache_time: 30
|
|
||||||
filters_update_interval: 24
|
|
||||||
blocked_response_ttl: 10
|
|
||||||
filtering_enabled: true
|
|
||||||
parental_enabled: false
|
|
||||||
safebrowsing_enabled: false
|
|
||||||
protection_enabled: false
|
|
||||||
clients:
|
|
||||||
runtime_sources:
|
|
||||||
whois: true
|
|
||||||
arp: true
|
|
||||||
rdns: true
|
|
||||||
dhcp: true
|
|
||||||
hosts: true
|
|
||||||
persistent: []
|
|
||||||
log:
|
|
||||||
enabled: true
|
|
||||||
file: ""
|
|
||||||
max_backups: 0
|
|
||||||
max_size: 100
|
|
||||||
max_age: 3
|
|
||||||
compress: false
|
|
||||||
local_time: false
|
|
||||||
verbose: false
|
|
||||||
os:
|
|
||||||
group: ""
|
|
||||||
user: ""
|
|
||||||
rlimit_nofile: 0
|
|
||||||
schema_version: 28
|
|
||||||
|
|
@ -0,0 +1,18 @@
|
||||||
|
apiVersion: 1
|
||||||
|
|
||||||
|
deleteDatasources:
|
||||||
|
- name: CarConnectivity-SQLite
|
||||||
|
orgId: 1
|
||||||
|
|
||||||
|
datasources:
|
||||||
|
- name: CarConnectivity-SQLite
|
||||||
|
uid: P2EF847825A020B66
|
||||||
|
type: frser-sqlite-datasource
|
||||||
|
access: proxy
|
||||||
|
isDefault: true
|
||||||
|
editable: false
|
||||||
|
jsonData:
|
||||||
|
path: /carconnectivity.db
|
||||||
|
pathPrefix: "file:"
|
||||||
|
pathOptions: "mode=ro&_ignore_check_constraints=1"
|
||||||
|
attachLimit: 0
|
||||||
|
|
@ -29,7 +29,8 @@
|
||||||
{
|
{
|
||||||
"type": "database",
|
"type": "database",
|
||||||
"config": {
|
"config": {
|
||||||
"db_url": "sqlite:///carconnectivity.db"
|
"log_level": "error",
|
||||||
|
"db_url": "postgresql://carconnect:carconnect@postgres:5432/carconnect"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
|
||||||
|
|
@ -15,4 +15,16 @@ EOF
|
||||||
chmod 600 /root/.netrc
|
chmod 600 /root/.netrc
|
||||||
|
|
||||||
# Kör original-cmd
|
# Kör original-cmd
|
||||||
|
if [ -n "$ADDITIONAL_INSTALLS" ]; then
|
||||||
|
echo "Installing additional packages: $ADDITIONAL_INSTALLS"
|
||||||
|
# try pip3 first, fall back to pip
|
||||||
|
if command -v pip3 >/dev/null 2>&1; then
|
||||||
|
pip3 install --no-cache-dir $ADDITIONAL_INSTALLS || echo "Warning: pip3 install failed for $ADDITIONAL_INSTALLS"
|
||||||
|
elif command -v pip >/dev/null 2>&1; then
|
||||||
|
pip install --no-cache-dir $ADDITIONAL_INSTALLS || echo "Warning: pip install failed for $ADDITIONAL_INSTALLS"
|
||||||
|
else
|
||||||
|
echo "No pip found in container; skipping additional installs"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
exec "$@"
|
exec "$@"
|
||||||
|
|
@ -1,6 +1,16 @@
|
||||||
db:
|
db:
|
||||||
path: diun.db
|
path: diun.db
|
||||||
|
|
||||||
|
defaults:
|
||||||
|
watchRepo: false
|
||||||
|
notifyOn:
|
||||||
|
- new
|
||||||
|
- update
|
||||||
|
maxTags: 10
|
||||||
|
sortTags: reverse
|
||||||
|
includeTags:
|
||||||
|
- '^v[0-9]+\.[0-9]+\.[0-9]+$'
|
||||||
|
|
||||||
watch:
|
watch:
|
||||||
workers: 20
|
workers: 20
|
||||||
schedule: "0 */6 * * *"
|
schedule: "0 */6 * * *"
|
||||||
|
|
|
||||||
|
|
@ -13,7 +13,7 @@ services:
|
||||||
- backend
|
- backend
|
||||||
ports:
|
ports:
|
||||||
- "8088:8080"
|
- "8088:8080"
|
||||||
image: koenkk/zigbee2mqtt:2.7
|
image: koenkk/zigbee2mqtt:2.10
|
||||||
restart: always
|
restart: always
|
||||||
volumes:
|
volumes:
|
||||||
- ./zigbee_home_2:/app/data
|
- ./zigbee_home_2:/app/data
|
||||||
|
|
@ -43,7 +43,7 @@ services:
|
||||||
max-file: "5"
|
max-file: "5"
|
||||||
networks:
|
networks:
|
||||||
- backend
|
- backend
|
||||||
image: koenkk/zigbee2mqtt:2.6
|
image: koenkk/zigbee2mqtt:2.10
|
||||||
restart: always
|
restart: always
|
||||||
volumes:
|
volumes:
|
||||||
- ${DIR}/zigbee2matt:/app/data
|
- ${DIR}/zigbee2matt:/app/data
|
||||||
|
|
|
||||||
|
|
@ -49,7 +49,7 @@ services:
|
||||||
reverse-proxy:
|
reverse-proxy:
|
||||||
# The official v2.0 Traefik docker image
|
# The official v2.0 Traefik docker image
|
||||||
#image: traefik:v2.11
|
#image: traefik:v2.11
|
||||||
image: traefik:v3.3
|
image: traefik:v3.7
|
||||||
container_name: "traefik"
|
container_name: "traefik"
|
||||||
logging:
|
logging:
|
||||||
driver: "json-file"
|
driver: "json-file"
|
||||||
|
|
@ -65,7 +65,7 @@ services:
|
||||||
- "80:80"
|
- "80:80"
|
||||||
- "443:443"
|
- "443:443"
|
||||||
# Insecure port
|
# Insecure port
|
||||||
- "8080:8080"
|
# - "8080:8080"
|
||||||
# Influx
|
# Influx
|
||||||
- "8086:8086"
|
- "8086:8086"
|
||||||
# Mqtt
|
# Mqtt
|
||||||
|
|
@ -77,7 +77,7 @@ services:
|
||||||
- ${DIR_LOCAL}/traefik/log:/log:rw
|
- ${DIR_LOCAL}/traefik/log:/log:rw
|
||||||
- ./traefik.yml:/etc/traefik/traefik.yml
|
- ./traefik.yml:/etc/traefik/traefik.yml
|
||||||
- ./traefik:/rules
|
- ./traefik:/rules
|
||||||
- ./static_config.yml:/etc/traefik/static_config.yml
|
# - ./static_config.yml:/etc/traefik/static_config.yml
|
||||||
# - "./log.json:/etc/traefik/log.json"
|
# - "./log.json:/etc/traefik/log.json"
|
||||||
# - ./acme.json:/acme.json
|
# - ./acme.json:/acme.json
|
||||||
- ./letsencrypt/:/letsencrypt:rw
|
- ./letsencrypt/:/letsencrypt:rw
|
||||||
|
|
@ -95,6 +95,7 @@ services:
|
||||||
authelia:
|
authelia:
|
||||||
image: authelia/authelia:4
|
image: authelia/authelia:4
|
||||||
container_name: authelia
|
container_name: authelia
|
||||||
|
restart: always
|
||||||
volumes:
|
volumes:
|
||||||
- ./authelia:/config
|
- ./authelia:/config
|
||||||
- ./notify.txt:/tmp/authelia/notification.txt
|
- ./notify.txt:/tmp/authelia/notification.txt
|
||||||
|
|
@ -176,36 +177,6 @@ services:
|
||||||
- "traefik.http.routers.ddnsupdater.tls=true"
|
- "traefik.http.routers.ddnsupdater.tls=true"
|
||||||
|
|
||||||
|
|
||||||
adguard:
|
|
||||||
container_name: adguard
|
|
||||||
image: adguard/adguardhome:v0.107.52
|
|
||||||
restart: unless-stopped
|
|
||||||
networks:
|
|
||||||
docker_vlan:
|
|
||||||
ipv4_address: 10.0.0.204
|
|
||||||
ports:
|
|
||||||
- 53/udp
|
|
||||||
- 67/udp
|
|
||||||
- 68/tcp
|
|
||||||
- 68/udp
|
|
||||||
- 80/tcp
|
|
||||||
- 443/tcp
|
|
||||||
- 853/tcp
|
|
||||||
- 3000/tcp
|
|
||||||
volumes:
|
|
||||||
- ./adguard/conf:/opt/adguardhome/conf
|
|
||||||
- ./adguard/work:/opt/adguardhome/work
|
|
||||||
labels:
|
|
||||||
- diun.enable=true
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.services.adguard.loadbalancer.server.port=80"
|
|
||||||
- "traefik.http.routers.adguard.entrypoints=web-secure"
|
|
||||||
- "traefik.http.routers.adguard.rule=Host(`adguard.${DOMAIN}`)"
|
|
||||||
- "traefik.http.routers.adguard.middlewares=chain-authelia@file"
|
|
||||||
- "traefik.http.routers.adguard.tls.certresolver=milvert_dns"
|
|
||||||
- "traefik.http.routers.adguard.tls=true"
|
|
||||||
|
|
||||||
|
|
||||||
######################### DATABASE ############################
|
######################### DATABASE ############################
|
||||||
#
|
#
|
||||||
# DATABASE
|
# DATABASE
|
||||||
|
|
@ -252,8 +223,7 @@ services:
|
||||||
labels:
|
labels:
|
||||||
- diun.enable=true
|
- diun.enable=true
|
||||||
- "traefik.enable=true"
|
- "traefik.enable=true"
|
||||||
- "traefik.http.middlewares.webdb-mid.ipallowlist.sourcerange=127.0.0.1/32, 10.0.0.1/24"
|
- "traefik.http.routers.webdb-secure.middlewares=chain-local@file"
|
||||||
- "traefik.http.routers.webdb-secure.middlewares=webdb-mid"
|
|
||||||
- "traefik.http.routers.webdb-secure.entrypoints=web-secure"
|
- "traefik.http.routers.webdb-secure.entrypoints=web-secure"
|
||||||
- "traefik.http.routers.webdb-secure.rule=Host(`webdb.${DOMAIN}`)"
|
- "traefik.http.routers.webdb-secure.rule=Host(`webdb.${DOMAIN}`)"
|
||||||
- "traefik.http.routers.webdb-secure.tls.certresolver=milvert_dns"
|
- "traefik.http.routers.webdb-secure.tls.certresolver=milvert_dns"
|
||||||
|
|
@ -315,8 +285,7 @@ services:
|
||||||
labels:
|
labels:
|
||||||
- diun.enable=true
|
- diun.enable=true
|
||||||
- "traefik.enable=true"
|
- "traefik.enable=true"
|
||||||
#- "traefik.http.middlewares.webpg-mid.ipwhitelist.sourcerange=127.0.0.1/32, 10.0.0.1/24"
|
- "traefik.http.routers.webpg-secure.middlewares=chain-local@file"
|
||||||
# # # - "traefik.http.routers.webpg-secure.middlewares=webpg-mid"
|
|
||||||
- "traefik.http.routers.webpg-secure.entrypoints=web-secure"
|
- "traefik.http.routers.webpg-secure.entrypoints=web-secure"
|
||||||
- "traefik.http.routers.webpg-secure.rule=Host(`webpg.${DOMAIN}`)"
|
- "traefik.http.routers.webpg-secure.rule=Host(`webpg.${DOMAIN}`)"
|
||||||
- "traefik.http.routers.webpg-secure.tls.certresolver=milvert_dns"
|
- "traefik.http.routers.webpg-secure.tls.certresolver=milvert_dns"
|
||||||
|
|
@ -348,13 +317,14 @@ services:
|
||||||
|
|
||||||
ha:
|
ha:
|
||||||
container_name: ha
|
container_name: ha
|
||||||
image: homeassistant/home-assistant:2026.1
|
image: homeassistant/home-assistant:2026.2
|
||||||
restart: always
|
restart: always
|
||||||
privileged: true
|
privileged: true
|
||||||
networks:
|
networks:
|
||||||
backend:
|
backend:
|
||||||
docker_vlan:
|
docker_vlan:
|
||||||
ipv4_address: 10.0.0.203
|
ipv4_address: 10.0.0.203
|
||||||
|
ipv6_address: "2001:9b0:215:8e00::203"
|
||||||
depends_on:
|
depends_on:
|
||||||
- postgres
|
- postgres
|
||||||
ports:
|
ports:
|
||||||
|
|
@ -375,6 +345,11 @@ services:
|
||||||
- "traefik.http.routers.ha.tls.certresolver=milvert_dns"
|
- "traefik.http.routers.ha.tls.certresolver=milvert_dns"
|
||||||
- "traefik.http.routers.ha.tls=true"
|
- "traefik.http.routers.ha.tls=true"
|
||||||
- "traefik.http.services.ha.loadbalancer.server.port=8123"
|
- "traefik.http.services.ha.loadbalancer.server.port=8123"
|
||||||
|
- "traefik.http.routers.ha-int.entrypoints=web-secure"
|
||||||
|
- "traefik.http.routers.ha-int.rule=Host(`ha-int.${DOMAIN}`)"
|
||||||
|
- "traefik.http.routers.ha-int.middlewares=localNetwork@file,chain-no-auth@file"
|
||||||
|
- "traefik.http.routers.ha-int.tls=true"
|
||||||
|
- "traefik.http.routers.ha-int.tls.certresolver=milvert_dns"
|
||||||
|
|
||||||
hassconf:
|
hassconf:
|
||||||
container_name: hassconf
|
container_name: hassconf
|
||||||
|
|
@ -466,11 +441,29 @@ services:
|
||||||
labels:
|
labels:
|
||||||
- diun.enable=true
|
- diun.enable=true
|
||||||
|
|
||||||
|
matter-server:
|
||||||
|
image: ghcr.io/matter-js/python-matter-server:stable
|
||||||
|
container_name: matter-server
|
||||||
|
restart: unless-stopped
|
||||||
|
networks:
|
||||||
|
backend:
|
||||||
|
docker_vlan:
|
||||||
|
ipv4_address: 10.0.0.204
|
||||||
|
ipv6_address: "2001:9b0:215:8e00::204"
|
||||||
|
#security_opt:
|
||||||
|
# Needed for Bluetooth via dbus
|
||||||
|
# - apparmor:unconfined
|
||||||
|
volumes:
|
||||||
|
# Create an .env file that sets the USERDIR environment variable.
|
||||||
|
- ./ha/matter_server:/data
|
||||||
|
environment:
|
||||||
|
- diun.enable=true
|
||||||
|
|
||||||
evcc:
|
evcc:
|
||||||
command:
|
command:
|
||||||
- evcc
|
- evcc
|
||||||
container_name: evcc
|
container_name: evcc
|
||||||
image: evcc/evcc:0.300.3
|
image: evcc/evcc:0.305.1
|
||||||
ports:
|
ports:
|
||||||
- 7070:7070/tcp
|
- 7070:7070/tcp
|
||||||
volumes:
|
volumes:
|
||||||
|
|
@ -527,8 +520,8 @@ services:
|
||||||
- backend
|
- backend
|
||||||
environment:
|
environment:
|
||||||
- TZ=${TZ}
|
- TZ=${TZ}
|
||||||
ports:
|
# ports:
|
||||||
- "1881:1880"
|
# - "1881:1880"
|
||||||
#devices:
|
#devices:
|
||||||
#- /dev/ttyAMA0
|
#- /dev/ttyAMA0
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
@ -848,15 +841,19 @@ services:
|
||||||
container_name: carconnect-grafana
|
container_name: carconnect-grafana
|
||||||
volumes:
|
volumes:
|
||||||
- ${DIR_LOCAL}/carconnect-grafana:/var/lib/grafana
|
- ${DIR_LOCAL}/carconnect-grafana:/var/lib/grafana
|
||||||
- ${DIR_LOCAL}/carconnectivity/sqlite.db:/carconnectivity.db:ro
|
# - ${DIR_LOCAL}/carconnectivity/sqlite.db:/carconnectivity.db:ro
|
||||||
- ./carconnectivity/carconnectivity-sqlite.yaml:/etc/grafana/provisioning/datasources/carconnectivity-sqlite.yml
|
# - ./carconnectivity/carconnectivity-sqlite.yaml:/etc/grafana/provisioning/datasources/carconnectivity-sqlite.yml
|
||||||
environment:
|
environment:
|
||||||
- PUID=1000
|
- PUID=1000
|
||||||
- PGID=1004
|
- PGID=1004
|
||||||
- TZ=Europe/Stockholm
|
- TZ=Europe/Stockholm
|
||||||
- GF_SECURITY_ADMIN_USER=admin
|
- GF_SECURITY_ADMIN_USER=admin
|
||||||
- GF_SECURITY_ADMIN_PASSWORD_FILE=/run/secrets/carconnect_grafana_pw
|
- GF_SECURITY_ADMIN_PASSWORD_FILE=/run/secrets/carconnect_grafana_pw
|
||||||
- GF_PLUGINS_TRUSTED_FILES=/carconnectivity.db
|
- DB_USER=carconnect
|
||||||
|
- DB_PASSWORD=carconnect
|
||||||
|
- DB_NAME=carconnect
|
||||||
|
- DB_HOSTNAME=postgres
|
||||||
|
- DB_PORT=5432
|
||||||
secrets:
|
secrets:
|
||||||
- carconnect_grafana_pw
|
- carconnect_grafana_pw
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
@ -888,11 +885,15 @@ networks:
|
||||||
docker_vlan:
|
docker_vlan:
|
||||||
external: true
|
external: true
|
||||||
driver: macvlan
|
driver: macvlan
|
||||||
|
enable_ipv6: true
|
||||||
driver_opts:
|
driver_opts:
|
||||||
parent: eno1
|
parent: eno1
|
||||||
ipam:
|
ipam:
|
||||||
config:
|
config:
|
||||||
- subnet: 10.0.0.200/27
|
- subnet: 10.0.0.0/24 # Hela Home-nätverket
|
||||||
|
gateway: 10.0.0.1
|
||||||
|
- subnet: "2001:9b0:215:8e00::/64"
|
||||||
|
gateway: "2001:9b0:215:8e00::1"
|
||||||
|
|
||||||
volumes:
|
volumes:
|
||||||
vwfriend_grafana:
|
vwfriend_grafana:
|
||||||
|
|
|
||||||
|
|
@ -32,10 +32,6 @@ binary_sensor:
|
||||||
script:
|
script:
|
||||||
- id: wake_screen
|
- id: wake_screen
|
||||||
mode: restart
|
mode: restart
|
||||||
then:
|
|
||||||
if:
|
|
||||||
condition:
|
|
||||||
light.is_off: backlight
|
|
||||||
then:
|
then:
|
||||||
- light.turn_on:
|
- light.turn_on:
|
||||||
id: backlight
|
id: backlight
|
||||||
|
|
@ -47,6 +43,7 @@ script:
|
||||||
id(current_image) = 0;
|
id(current_image) = 0;
|
||||||
- component.update: display_main
|
- component.update: display_main
|
||||||
|
|
||||||
|
|
||||||
- id: send_volume_debounced
|
- id: send_volume_debounced
|
||||||
mode: restart
|
mode: restart
|
||||||
then:
|
then:
|
||||||
|
|
|
||||||
214
evcc/evcc.yaml
|
|
@ -32,123 +32,124 @@ vehicles:
|
||||||
# source: mqtt
|
# source: mqtt
|
||||||
# topic: weconnect/0/vehicles/WVGZZZE2ZPE051949/domains/climatisation/climatisationStatus/climatisationState
|
# topic: weconnect/0/vehicles/WVGZZZE2ZPE051949/domains/climatisation/climatisationStatus/climatisationState
|
||||||
|
|
||||||
- name: skoda_car
|
#- name: skoda_car
|
||||||
type: custom
|
#type: custom
|
||||||
title: elroq
|
#title: elroq
|
||||||
capacity: 64 # kWh
|
#capacity: 64 # kWh
|
||||||
soc:
|
#soc:
|
||||||
source: mqtt
|
#source: mqtt
|
||||||
topic: carconnectivity/0/garage/TMBNC7NY8SF105227/drives/primary/level
|
#topic: carconnectivity/0/garage/TMBNC7NY8SF105227/drives/primary/level
|
||||||
range:
|
#range:
|
||||||
source: mqtt
|
#source: mqtt
|
||||||
topic: carconnectivity/0/garage/TMBNC7NY8SF105227/drives/primary/range
|
#topic: carconnectivity/0/garage/TMBNC7NY8SF105227/drives/primary/range
|
||||||
odometer:
|
#odometer:
|
||||||
source: mqtt
|
#source: mqtt
|
||||||
topic: carconnectivity/0/garage/TMBNC7NY8SF105227/odometer
|
#topic: carconnectivity/0/garage/TMBNC7NY8SF105227/odometer
|
||||||
climater:
|
#climater:
|
||||||
source: mqtt
|
#source: mqtt
|
||||||
topic: carconnectivity/0/garage/TMBNC7NY8SF105227/climatization/binarystate
|
#topic: carconnectivity/0/garage/TMBNC7NY8SF105227/climatization/binarystate
|
||||||
limitsoc:
|
#limitsoc:
|
||||||
source: mqtt
|
#source: mqtt
|
||||||
topic: carconnectivity/0/garage/TMBNC7NY8SF105227/charging/settings/target_level
|
#topic: carconnectivity/0/garage/TMBNC7NY8SF105227/charging/settings/target_level
|
||||||
status:
|
#status:
|
||||||
source: mqtt
|
#source: mqtt
|
||||||
topic: carconnectivity/0/garage/TMBNC7NY8SF105227/charging/state
|
#topic: carconnectivity/0/garage/TMBNC7NY8SF105227/charging/state
|
||||||
|
|
||||||
chargers:
|
chargers:
|
||||||
- name: wallbox
|
#- name: wallbox
|
||||||
type: easee
|
#type: easee
|
||||||
user: simon+easee@milvert.com
|
#user: simon+easee@milvert.com
|
||||||
password: X7#aEzjlEysBgl
|
#password: X7#aEzjlEysBgl
|
||||||
charger: EHCNF485
|
#charger: EHCNF485
|
||||||
|
|
||||||
circuits:
|
circuits:
|
||||||
- name: main # if there is only one circuit defined the name needs to be 'main'
|
#- name: main # if there is only one circuit defined the name needs to be 'main'
|
||||||
title: 'main circuit' # name for the UI (not implemented in UI yet)
|
#title: 'main circuit' # name for the UI (not implemented in UI yet)
|
||||||
maxCurrent: 20
|
#maxCurrent: 20
|
||||||
maxPower: 10000
|
#maxPower: 10000
|
||||||
meter: my_grid # optiona
|
#meter: my_grid # optiona
|
||||||
|
|
||||||
loadpoints:
|
loadpoints:
|
||||||
- title: Garage
|
#- title: Garage
|
||||||
charger: wallbox
|
# charger: wallbox
|
||||||
vehicle: skoda_car
|
#vehicle: skoda_car
|
||||||
circuit: main
|
#circuit: main
|
||||||
mode: pv
|
#mode: pv
|
||||||
enable:
|
#enable:
|
||||||
threshold: 0
|
#threshold: 0
|
||||||
delay: 15s
|
#delay: 15s
|
||||||
disable:
|
#disable:
|
||||||
threshold: 500
|
#threshold: 500
|
||||||
delay:
|
#delay:
|
||||||
2m
|
#2m
|
||||||
|
|
||||||
site:
|
#site:
|
||||||
title: Hemma
|
#title: Hemma
|
||||||
meters:
|
#meters:
|
||||||
pv:
|
#pv:
|
||||||
- pv
|
#- pv
|
||||||
grid: my_grid
|
#grid:
|
||||||
|
#- my_grid
|
||||||
|
|
||||||
meters:
|
#meters:
|
||||||
- name: pv
|
#- name: pv
|
||||||
type: custom
|
#type: custom
|
||||||
power:
|
#power:
|
||||||
source: mqtt
|
#source: mqtt
|
||||||
topic: inverter/measure/active_power
|
#topic: inverter/measure/active_power
|
||||||
# jq: .value
|
# jq: .value
|
||||||
energy:
|
#energy:
|
||||||
source: mqtt
|
#source: mqtt
|
||||||
topic: inverter/calculated/accumulated_yield_energy
|
#topic: inverter/calculated/accumulated_yield_energy
|
||||||
timeout: 60s
|
#timeout: 60s
|
||||||
currents:
|
#currents:
|
||||||
- source: mqtt
|
#- source: mqtt
|
||||||
topic: inverter/measure/phase_A_current
|
#topic: inverter/measure/phase_A_current
|
||||||
timeout: 60s
|
#timeout: 60s
|
||||||
# jq: .value
|
# jq: .value
|
||||||
- source: mqtt
|
#- source: mqtt
|
||||||
topic: inverter/measure/phase_B_current
|
#topic: inverter/measure/phase_B_current
|
||||||
timeout: 60s
|
#timeout: 60s
|
||||||
# jq: .value
|
# jq: .value
|
||||||
- source: mqtt
|
#- source: mqtt
|
||||||
topic: inverter/measure/phase_C_current
|
#topic: inverter/measure/phase_C_current
|
||||||
timeout: 60s
|
#timeout: 60s
|
||||||
|
|
||||||
- name: my_grid
|
#- name: my_grid
|
||||||
type: custom
|
#type: custom
|
||||||
power:
|
#power:
|
||||||
source: calc
|
#source: calc
|
||||||
add:
|
#add:
|
||||||
- source: mqtt
|
#- source: mqtt
|
||||||
topic: dsmr/reading/electricity_currently_returned
|
#topic: dsmr/reading/electricity_currently_returned
|
||||||
scale: -1000
|
#scale: -1000
|
||||||
timeout: 30s
|
#timeout: 30s
|
||||||
- source: mqtt
|
#- source: mqtt
|
||||||
topic: dsmr/reading/electricity_currently_delivered
|
#topic: dsmr/reading/electricity_currently_delivered
|
||||||
scale: 1000
|
#scale: 1000
|
||||||
timeout: 30s
|
#timeout: 30s
|
||||||
energy:
|
#energy:
|
||||||
source: calc
|
#source: calc
|
||||||
add:
|
#add:
|
||||||
- source: mqtt
|
#- source: mqtt
|
||||||
topic: dsmr/reading/electricity_returned_1
|
#topic: dsmr/reading/electricity_returned_1
|
||||||
scale: 0.001
|
#scale: 0.001
|
||||||
timeout: 30s
|
#timeout: 30s
|
||||||
- source: mqtt
|
#- source: mqtt
|
||||||
topic: dsmr/reading/electricity_delivered_1
|
#topic: dsmr/reading/electricity_delivered_1
|
||||||
scale: -0.001
|
#scale: -0.001
|
||||||
timeout: 30s
|
#timeout: 30s
|
||||||
|
|
||||||
currents:
|
#currents:
|
||||||
- source: mqtt
|
#- source: mqtt
|
||||||
topic: dsmr/reading/phase_power_current_l1
|
#topic: dsmr/reading/phase_power_current_l1
|
||||||
timeout: 30s
|
#timeout: 30s
|
||||||
- source: mqtt
|
#- source: mqtt
|
||||||
topic: dsmr/reading/phase_power_current_l2
|
#topic: dsmr/reading/phase_power_current_l2
|
||||||
timeout: 30s
|
#timeout: 30s
|
||||||
- source: mqtt
|
#- source: mqtt
|
||||||
topic: dsmr/reading/phase_power_current_l1
|
#topic: dsmr/reading/phase_power_current_l1
|
||||||
timeout: 30s
|
#timeout: 30s
|
||||||
|
|
||||||
|
|
||||||
influx:
|
influx:
|
||||||
|
|
@ -162,3 +163,8 @@ mqtt:
|
||||||
user: simon
|
user: simon
|
||||||
password: bajsa123
|
password: bajsa123
|
||||||
topic: evcc
|
topic: evcc
|
||||||
|
|
||||||
|
network:
|
||||||
|
host: 0.0.0.0
|
||||||
|
port: 7070
|
||||||
|
externalUrl: https://box.milvert.com
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,23 @@
|
||||||
|
# Gitignore settings for HA
|
||||||
|
# This is an example and may include too much for your use-case.
|
||||||
|
# You can modify this file to suit your needs.
|
||||||
|
/.cloud
|
||||||
|
/.storage
|
||||||
|
/backups
|
||||||
|
/tts
|
||||||
|
*.db*
|
||||||
|
*.log*
|
||||||
|
*.pyc
|
||||||
|
**/.config-db
|
||||||
|
custom_components/bambu_lab
|
||||||
|
custom_components/battery_notes
|
||||||
|
custom_components/edge_tts
|
||||||
|
custom_components/evcc_intg
|
||||||
|
custom_components/fontawesome
|
||||||
|
custom_components/hacs
|
||||||
|
custom_components/nordpool_git_repo
|
||||||
|
custom_components/plant
|
||||||
|
custom_components/pollenprognos
|
||||||
|
|
||||||
|
|
||||||
|
www/community
|
||||||
|
|
@ -0,0 +1,17 @@
|
||||||
|
sensor:
|
||||||
|
- platform: nordpool
|
||||||
|
region: "SE3"
|
||||||
|
currency: "SEK"
|
||||||
|
VAT: false # Vi sätter false här för att styra momsen exakt som i din Python-kod!
|
||||||
|
name: "Nordpool Köppris Med Avgifter"
|
||||||
|
# (Spotpris + överföring + skatt + påslag + certifikat) * 1.25 moms
|
||||||
|
additional_costs: "{{ ((current_price + 0.3120 + 0.4390 + 0.07 + 0.014) * 1.25) - current_price }}"
|
||||||
|
|
||||||
|
- platform: nordpool
|
||||||
|
region: "SE3"
|
||||||
|
currency: "SEK"
|
||||||
|
VAT: false
|
||||||
|
name: "Nordpool Säljpris Med Nätnytta"
|
||||||
|
# Spotpris + nätnytta (ingen moms på export)
|
||||||
|
additional_costs: "{{ 0.132 }}"
|
||||||
|
|
||||||
|
|
@ -172,17 +172,18 @@
|
||||||
mode: single
|
mode: single
|
||||||
- id: '1709494545609'
|
- id: '1709494545609'
|
||||||
alias: växtlampa schema
|
alias: växtlampa schema
|
||||||
trigger:
|
description: ''
|
||||||
- platform: template
|
triggers:
|
||||||
value_template: '{{ now().hour == 7 }}'
|
- value_template: '{{ now().hour == 9 }}'
|
||||||
id: 'on'
|
id: 'on'
|
||||||
- platform: template
|
trigger: template
|
||||||
value_template: '{{ (now().hour, now().minute) == (21,30) }}'
|
- value_template: '{{ (now().hour, now().minute) == (21,30) }}'
|
||||||
id: 'off'
|
id: 'off'
|
||||||
action:
|
trigger: template
|
||||||
- service: light.turn_{{ trigger.id }}
|
actions:
|
||||||
target:
|
- target:
|
||||||
entity_id: light.vaxtlampa
|
label_id: blomma
|
||||||
|
action: homeassistant.turn_{{ trigger.id }}
|
||||||
- id: '1713552723716'
|
- id: '1713552723716'
|
||||||
alias: Automation_oscar_skrivbord
|
alias: Automation_oscar_skrivbord
|
||||||
description: ''
|
description: ''
|
||||||
|
|
@ -333,17 +334,27 @@
|
||||||
action: scene.turn_on
|
action: scene.turn_on
|
||||||
mode: single
|
mode: single
|
||||||
- id: '1725646259613'
|
- id: '1725646259613'
|
||||||
alias: Kök på 5 min
|
alias: Kök släck efter 5 min utan rörelse
|
||||||
description: ''
|
description: ''
|
||||||
trigger:
|
triggers:
|
||||||
- platform: state
|
- entity_id:
|
||||||
entity_id:
|
- binary_sensor.sensor_inne_kitchen_mt004_occupancy
|
||||||
- light.kok_ct
|
to:
|
||||||
to: 'on'
|
- 'on'
|
||||||
condition: []
|
trigger: state
|
||||||
action:
|
conditions: []
|
||||||
- entity_id: script.kok_ct_timer_2
|
actions:
|
||||||
action: script.turn_on
|
- wait_for_trigger:
|
||||||
|
- entity_id: binary_sensor.sensor_inne_kitchen_mt004_occupancy
|
||||||
|
to: 'off'
|
||||||
|
trigger: state
|
||||||
|
- delay: 00:05:00
|
||||||
|
- condition: state
|
||||||
|
entity_id: binary_sensor.sensor_inne_kitchen_mt004_occupancy
|
||||||
|
state: 'off'
|
||||||
|
- target:
|
||||||
|
entity_id: light.kok_ct
|
||||||
|
action: light.turn_off
|
||||||
mode: restart
|
mode: restart
|
||||||
- id: '1729969302596'
|
- id: '1729969302596'
|
||||||
alias: Tänd och släck vrum upp vid helgmorgon
|
alias: Tänd och släck vrum upp vid helgmorgon
|
||||||
|
|
@ -753,3 +764,52 @@
|
||||||
media_content_type: playlist
|
media_content_type: playlist
|
||||||
tag_id: '{{ trigger.event.data.tag_id }}'
|
tag_id: '{{ trigger.event.data.tag_id }}'
|
||||||
current: '{{ TAGS.get(tag_id) }}'
|
current: '{{ TAGS.get(tag_id) }}'
|
||||||
|
- id: '1762201785091'
|
||||||
|
description: Lås elroq efter 5 min
|
||||||
|
triggers:
|
||||||
|
- trigger: state
|
||||||
|
entity_id:
|
||||||
|
- sensor.elroq_vehicle_state
|
||||||
|
for:
|
||||||
|
hours: 0
|
||||||
|
minutes: 30
|
||||||
|
seconds: 0
|
||||||
|
to: parked
|
||||||
|
conditions: []
|
||||||
|
actions:
|
||||||
|
- action: lock.lock
|
||||||
|
metadata: {}
|
||||||
|
data: {}
|
||||||
|
target:
|
||||||
|
entity_id: lock.elroq_lock_unlock
|
||||||
|
mode: single
|
||||||
|
- id: '1763930495328'
|
||||||
|
alias: Jul belysning 2025
|
||||||
|
description: ''
|
||||||
|
triggers:
|
||||||
|
- value_template: '{{ now().hour >= 16 }}'
|
||||||
|
id: 'on'
|
||||||
|
trigger: template
|
||||||
|
- value_template: '{{ (now().hour) == 8 }}'
|
||||||
|
id: 'off'
|
||||||
|
trigger: template
|
||||||
|
actions:
|
||||||
|
- target:
|
||||||
|
label_id: jul
|
||||||
|
action: homeassistant.turn_{{ trigger.id }}
|
||||||
|
- id: '1777316920776'
|
||||||
|
alias: Vattna_notis
|
||||||
|
description: ''
|
||||||
|
triggers:
|
||||||
|
- trigger: numeric_state
|
||||||
|
entity_id:
|
||||||
|
- sensor.h034s_soil_moisture
|
||||||
|
below: 19.9
|
||||||
|
conditions: []
|
||||||
|
actions:
|
||||||
|
- action: notify.mobile_app_simon_mobil
|
||||||
|
metadata: {}
|
||||||
|
data:
|
||||||
|
title: "Dags att vattna! \U0001F331"
|
||||||
|
message: Fuktnivån är nu nere på {{ states('sensor.h034s_soil_moisture') }}%.
|
||||||
|
mode: single
|
||||||
|
|
|
||||||
|
|
@ -10,26 +10,14 @@ frontend:
|
||||||
|
|
||||||
|
|
||||||
automation: !include automations.yaml
|
automation: !include automations.yaml
|
||||||
|
|
||||||
script: !include scripts.yaml
|
script: !include scripts.yaml
|
||||||
scene: !include scenes.yaml
|
scene: !include scenes.yaml
|
||||||
command_line: !include sensor.yaml
|
command_line: !include sensor.yaml
|
||||||
|
|
||||||
battery_notes:
|
input_select: !include_dir_merge_named input_select # States såsom house/pople etc
|
||||||
|
|
||||||
|
|
||||||
#lovelace:
|
|
||||||
# mode: storage
|
|
||||||
# resources:
|
|
||||||
# - url: /local/week-planner-card_2.js
|
|
||||||
# type: module
|
|
||||||
# dashboards:
|
|
||||||
# dash-general:
|
|
||||||
# mode: yaml
|
|
||||||
# filename: dashboards/default.yaml
|
|
||||||
# title: Overview
|
|
||||||
# icon: mdi:tools
|
|
||||||
# show_in_sidebar: true
|
|
||||||
# require_admin: false
|
|
||||||
|
|
||||||
tts:
|
tts:
|
||||||
- platform: edge_tts
|
- platform: edge_tts
|
||||||
|
|
@ -41,14 +29,6 @@ input_text:
|
||||||
tts_syntesiser:
|
tts_syntesiser:
|
||||||
name: TTS-til-Google
|
name: TTS-til-Google
|
||||||
|
|
||||||
proximity:
|
|
||||||
home_jaffa:
|
|
||||||
zone: home
|
|
||||||
devices:
|
|
||||||
- device_tracker.jaffa_location
|
|
||||||
tolerance: 5
|
|
||||||
unit_of_measurement: km
|
|
||||||
|
|
||||||
homeassistant:
|
homeassistant:
|
||||||
internal_url: http://10.0.0.203:8123
|
internal_url: http://10.0.0.203:8123
|
||||||
external_url: https://ha.milvert.com
|
external_url: https://ha.milvert.com
|
||||||
|
|
@ -77,15 +57,6 @@ sonos:
|
||||||
logger:
|
logger:
|
||||||
default: error
|
default: error
|
||||||
|
|
||||||
#logs:
|
|
||||||
|
|
||||||
#homeassistant.components.command_line: debug
|
|
||||||
#adax: debug
|
|
||||||
#custom_components.adax: debug
|
|
||||||
#homeassistant.components.adax: debug
|
|
||||||
# rflink: error
|
|
||||||
# homeassistant.components.rflink: debug
|
|
||||||
|
|
||||||
|
|
||||||
http:
|
http:
|
||||||
use_x_forwarded_for: true
|
use_x_forwarded_for: true
|
||||||
|
|
@ -93,6 +64,7 @@ http:
|
||||||
login_attempts_threshold: 5
|
login_attempts_threshold: 5
|
||||||
trusted_proxies:
|
trusted_proxies:
|
||||||
- 10.0.0.223
|
- 10.0.0.223
|
||||||
|
- 172.20.0.0/16
|
||||||
- 172.19.0.0/24
|
- 172.19.0.0/24
|
||||||
|
|
||||||
template:
|
template:
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M480 32c0-12.9-7.8-24.6-19.8-29.6s-25.7-2.2-34.9 6.9L381.7 53c-48 48-113.1 75-181 75l-8.7 0-32 0-96 0c-35.3 0-64 28.7-64 64l0 96c0 35.3 28.7 64 64 64l0 128c0 17.7 14.3 32 32 32l64 0c17.7 0 32-14.3 32-32l0-128 8.7 0c67.9 0 133 27 181 75l43.6 43.6c9.2 9.2 22.9 11.9 34.9 6.9s19.8-16.6 19.8-29.6l0-147.6c18.6-8.8 32-32.5 32-60.4s-13.4-51.6-32-60.4L480 32zm-64 76.7L416 240l0 131.3C357.2 317.8 280.5 288 200.7 288l-8.7 0 0-96 8.7 0c79.8 0 156.5-29.8 215.3-83.3z"/></svg>
|
||||||
|
After Width: | Height: | Size: 688 B |
|
After Width: | Height: | Size: 5.3 KiB |
|
After Width: | Height: | Size: 121 KiB |
|
|
@ -0,0 +1,22 @@
|
||||||
|
{
|
||||||
|
"monday": {
|
||||||
|
"simon": "jobbet",
|
||||||
|
"sandra": "hemma"
|
||||||
|
},
|
||||||
|
"tuesday": {
|
||||||
|
"simon": "hemma",
|
||||||
|
"sandra": "jobbet"
|
||||||
|
},
|
||||||
|
"wednesday": {
|
||||||
|
"simon": "jobbet",
|
||||||
|
"sandra": "jobbet"
|
||||||
|
},
|
||||||
|
"thursday": {
|
||||||
|
"simon": "hemma",
|
||||||
|
"sandra": "hemma"
|
||||||
|
},
|
||||||
|
"friday": {
|
||||||
|
"simon": "jobbet",
|
||||||
|
"sandra": "hemma"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,3 @@
|
||||||
|
{"temperature": 22, "humidity": 36}
|
||||||
|
{"temperature": 23, "humidity": 36}
|
||||||
|
{"temperature": 25, "humidity": 36}
|
||||||
|
|
@ -1,17 +0,0 @@
|
||||||
jaffa_location:
|
|
||||||
hide_if_away: false
|
|
||||||
icon: mdi:car
|
|
||||||
mac: ff:ff:ff:ff:f1
|
|
||||||
name: Jaffa
|
|
||||||
picture: https://ibb.co/nbXgmH3
|
|
||||||
track: true
|
|
||||||
unique_id: unique_id_jaffa_location
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
jaffa_location:
|
|
||||||
name: jaffa_location
|
|
||||||
mac:
|
|
||||||
icon:
|
|
||||||
picture:
|
|
||||||
track: true
|
|
||||||
|
|
@ -0,0 +1,15 @@
|
||||||
|
automation:
|
||||||
|
- id: arbetsrum_släck_17_simon_hemma
|
||||||
|
alias: Arbetsrum – släck liten gul lampa 17:00 när Simon jobbar hemma
|
||||||
|
trigger:
|
||||||
|
- platform: time
|
||||||
|
at: "17:00:00"
|
||||||
|
condition:
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_select.simon_work_state
|
||||||
|
state: "Hemma"
|
||||||
|
action:
|
||||||
|
- service: light.turn_off
|
||||||
|
target:
|
||||||
|
entity_id: light.arum_gullampa
|
||||||
|
mode: single
|
||||||
|
|
@ -0,0 +1,23 @@
|
||||||
|
template:
|
||||||
|
- sensor:
|
||||||
|
- name: "Nordpool Köppris Med Avgifter"
|
||||||
|
unique_id: "nordpool_koppris_med_avgifter_2026"
|
||||||
|
unit_of_measurement: "SEK/kWh"
|
||||||
|
device_class: monetary
|
||||||
|
state: >
|
||||||
|
{% set spot = states('sensor.nordpool_kwh_se3_sek_3_10_0') | float(0) %}
|
||||||
|
{% set overforing = 0.3120 %}
|
||||||
|
{% set energiskatt = 0.4390 %}
|
||||||
|
{% set spotpaslag = 0.07 %}
|
||||||
|
{% set elcertifikat = 0.014 %}
|
||||||
|
{{ ((spot + overforing + energiskatt + spotpaslag + elcertifikat) * 1.25) | round(3) }}
|
||||||
|
|
||||||
|
- name: "Nordpool Säljpris Med Nätnytta"
|
||||||
|
unique_id: "nordpool_saljpris_med_natnytta_2026"
|
||||||
|
unit_of_measurement: "SEK/kWh"
|
||||||
|
device_class: monetary
|
||||||
|
state: >
|
||||||
|
{% set spot = states('sensor.nordpool_kwh_se3_sek_3_10_0') | float(0) %}
|
||||||
|
{% set natnytta = 0.132 %}
|
||||||
|
{{ (spot + natnytta) | round(3) }}
|
||||||
|
|
||||||
|
|
@ -0,0 +1,38 @@
|
||||||
|
# Package: Vardagsrum - Kamin
|
||||||
|
|
||||||
|
template:
|
||||||
|
- binary_sensor:
|
||||||
|
- name: "Vardagsrum kamin igång"
|
||||||
|
unique_id: vardagsrum_kamin_igang
|
||||||
|
state: >
|
||||||
|
{{ states('sensor_inne_kamin_th017_temperature') | float(0) > 23 }}
|
||||||
|
delay_on:
|
||||||
|
minutes: 5
|
||||||
|
delay_off:
|
||||||
|
minutes: 30
|
||||||
|
icon: >
|
||||||
|
{% if is_state('binary_sensor.vardagsrum_kamin_igang', 'on') %}
|
||||||
|
mdi:fire
|
||||||
|
{% else %}
|
||||||
|
mdi:fireplace-off
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
counter:
|
||||||
|
vardagsrum_kamin_eldningar:
|
||||||
|
name: "Vardagsrum: Antal eldningar"
|
||||||
|
icon: mdi:counter
|
||||||
|
step: 1
|
||||||
|
|
||||||
|
automation:
|
||||||
|
- id: vardagsrum_rakna_eldning
|
||||||
|
alias: "Vardagsrum: Räkna eldning"
|
||||||
|
mode: single
|
||||||
|
trigger:
|
||||||
|
- platform: state
|
||||||
|
entity_id: binary_sensor.vardagsrum_kamin_igang
|
||||||
|
from: "off"
|
||||||
|
to: "on"
|
||||||
|
action:
|
||||||
|
- service: counter.increment
|
||||||
|
target:
|
||||||
|
entity_id: counter.vardagsrum_kamin_eldningar
|
||||||
|
|
@ -14,14 +14,6 @@
|
||||||
effect:
|
effect:
|
||||||
color_mode:
|
color_mode:
|
||||||
brightness:
|
brightness:
|
||||||
last_seen: '2023-12-16T12:43:47.097Z'
|
|
||||||
linkquality: 36
|
|
||||||
power_on_behavior:
|
|
||||||
update:
|
|
||||||
installed_version: 587806257
|
|
||||||
latest_version: 587806257
|
|
||||||
state: idle
|
|
||||||
update_available: false
|
|
||||||
friendly_name: Matrum_tak
|
friendly_name: Matrum_tak
|
||||||
supported_features: 44
|
supported_features: 44
|
||||||
state: 'off'
|
state: 'off'
|
||||||
|
|
@ -49,11 +41,11 @@
|
||||||
- 69.357
|
- 69.357
|
||||||
rgb_color:
|
rgb_color:
|
||||||
- 255
|
- 255
|
||||||
- 162
|
- 163
|
||||||
- 78
|
- 78
|
||||||
xy_color:
|
xy_color:
|
||||||
- 0.538
|
- 0.536
|
||||||
- 0.388
|
- 0.389
|
||||||
friendly_name: matrum_fönster_2
|
friendly_name: matrum_fönster_2
|
||||||
supported_features: 44
|
supported_features: 44
|
||||||
state: 'on'
|
state: 'on'
|
||||||
|
|
@ -159,9 +151,6 @@
|
||||||
hs_color:
|
hs_color:
|
||||||
rgb_color:
|
rgb_color:
|
||||||
xy_color:
|
xy_color:
|
||||||
color:
|
|
||||||
x: 0.4599
|
|
||||||
y: 0.4106
|
|
||||||
friendly_name: Kök tak
|
friendly_name: Kök tak
|
||||||
supported_features: 44
|
supported_features: 44
|
||||||
state: 'off'
|
state: 'off'
|
||||||
|
|
@ -219,11 +208,19 @@
|
||||||
- stop_effect
|
- stop_effect
|
||||||
supported_color_modes:
|
supported_color_modes:
|
||||||
- brightness
|
- brightness
|
||||||
|
effect:
|
||||||
|
color_mode:
|
||||||
|
brightness:
|
||||||
friendly_name: Vrum fönster
|
friendly_name: Vrum fönster
|
||||||
supported_features: 44
|
supported_features: 44
|
||||||
effect:
|
state: 'off'
|
||||||
|
light.nodeid_23_nodeid_23_dimmer:
|
||||||
|
supported_color_modes:
|
||||||
|
- brightness
|
||||||
color_mode: brightness
|
color_mode: brightness
|
||||||
brightness: 143
|
brightness: 144
|
||||||
|
friendly_name: Egen
|
||||||
|
supported_features: 0
|
||||||
state: 'on'
|
state: 'on'
|
||||||
icon: mdi:lightbulb-night
|
icon: mdi:lightbulb-night
|
||||||
metadata:
|
metadata:
|
||||||
|
|
@ -255,6 +252,8 @@
|
||||||
entity_only: true
|
entity_only: true
|
||||||
light.h020l:
|
light.h020l:
|
||||||
entity_only: true
|
entity_only: true
|
||||||
|
light.nodeid_23_nodeid_23_dimmer:
|
||||||
|
entity_only: true
|
||||||
- id: '1698441557226'
|
- id: '1698441557226'
|
||||||
name: Natt
|
name: Natt
|
||||||
entities:
|
entities:
|
||||||
|
|
@ -673,7 +672,7 @@
|
||||||
entities:
|
entities:
|
||||||
switch.h016s:
|
switch.h016s:
|
||||||
friendly_name: UteSlinga
|
friendly_name: UteSlinga
|
||||||
state: 'off'
|
state: 'on'
|
||||||
light.h018l:
|
light.h018l:
|
||||||
effect_list:
|
effect_list:
|
||||||
- blink
|
- blink
|
||||||
|
|
@ -690,11 +689,6 @@
|
||||||
friendly_name: Garage_sida
|
friendly_name: Garage_sida
|
||||||
supported_features: 44
|
supported_features: 44
|
||||||
state: 'on'
|
state: 'on'
|
||||||
switch.utebaksida_brytare:
|
|
||||||
restored: true
|
|
||||||
friendly_name: Utebaksida brytare
|
|
||||||
supported_features: 0
|
|
||||||
state: unavailable
|
|
||||||
light.baksida_spot_ute:
|
light.baksida_spot_ute:
|
||||||
min_color_temp_kelvin: 2000
|
min_color_temp_kelvin: 2000
|
||||||
max_color_temp_kelvin: 6535
|
max_color_temp_kelvin: 6535
|
||||||
|
|
@ -772,8 +766,8 @@
|
||||||
supported_features: 44
|
supported_features: 44
|
||||||
state: 'on'
|
state: 'on'
|
||||||
switch.h024s:
|
switch.h024s:
|
||||||
friendly_name: Framsida slingor
|
friendly_name: Garage slinga
|
||||||
state: 'off'
|
state: 'on'
|
||||||
switch.h023s:
|
switch.h023s:
|
||||||
friendly_name: Ute baksida
|
friendly_name: Ute baksida
|
||||||
state: 'on'
|
state: 'on'
|
||||||
|
|
@ -786,8 +780,6 @@
|
||||||
entity_only: true
|
entity_only: true
|
||||||
light.h018l:
|
light.h018l:
|
||||||
entity_only: true
|
entity_only: true
|
||||||
switch.utebaksida_brytare:
|
|
||||||
entity_only: true
|
|
||||||
light.baksida_spot_ute:
|
light.baksida_spot_ute:
|
||||||
entity_only: true
|
entity_only: true
|
||||||
light.h013s:
|
light.h013s:
|
||||||
|
|
|
||||||
|
|
@ -24,29 +24,6 @@ talk_on_oscar:
|
||||||
media_player:
|
media_player:
|
||||||
- media_player.oscar
|
- media_player.oscar
|
||||||
icon: mdi:speaker-message
|
icon: mdi:speaker-message
|
||||||
kok_ct_timer_2:
|
|
||||||
alias: kok_ct_timer_2
|
|
||||||
sequence:
|
|
||||||
- action: timer.start
|
|
||||||
metadata: {}
|
|
||||||
data: {}
|
|
||||||
target:
|
|
||||||
entity_id: timer.kokct
|
|
||||||
- wait_template: '"{{ state.binary_sensor.sensor_inne_kitchen_mt004_occupancy.state
|
|
||||||
== ''on'' }}"'
|
|
||||||
continue_on_timeout: true
|
|
||||||
timeout: 00:05:00
|
|
||||||
- action: timer.cancel
|
|
||||||
metadata: {}
|
|
||||||
data: {}
|
|
||||||
target:
|
|
||||||
entity_id: timer.kokct
|
|
||||||
- action: light.turn_off
|
|
||||||
metadata: {}
|
|
||||||
data: {}
|
|
||||||
target:
|
|
||||||
entity_id: light.kok_ct
|
|
||||||
description: ''
|
|
||||||
test:
|
test:
|
||||||
alias: Test
|
alias: Test
|
||||||
sequence:
|
sequence:
|
||||||
|
|
@ -329,3 +306,13 @@ nfc_playbox_volume_down:
|
||||||
mode: restart
|
mode: restart
|
||||||
icon: mdi:spotify
|
icon: mdi:spotify
|
||||||
description: ''
|
description: ''
|
||||||
|
talk_on_ada:
|
||||||
|
alias: talk_on_ada
|
||||||
|
use_blueprint:
|
||||||
|
path: balloob/announce-text-to-speech-on-media-player.yaml
|
||||||
|
input:
|
||||||
|
text_to_speech_engine: tts.google_sv_se
|
||||||
|
media_player:
|
||||||
|
- media_player.ada
|
||||||
|
icon: mdi:speaker-message
|
||||||
|
description: ''
|
||||||
|
|
|
||||||
|
After Width: | Height: | Size: 125 KiB |
|
After Width: | Height: | Size: 144 KiB |
|
After Width: | Height: | Size: 184 KiB |
|
After Width: | Height: | Size: 198 KiB |
|
After Width: | Height: | Size: 59 KiB |
|
After Width: | Height: | Size: 71 KiB |
|
After Width: | Height: | Size: 193 KiB |
|
After Width: | Height: | Size: 142 KiB |
|
After Width: | Height: | Size: 46 KiB |
|
After Width: | Height: | Size: 46 KiB |
|
After Width: | Height: | Size: 32 KiB |
|
After Width: | Height: | Size: 239 KiB |
|
After Width: | Height: | Size: 59 KiB |
|
After Width: | Height: | Size: 54 KiB |
|
After Width: | Height: | Size: 46 KiB |
|
After Width: | Height: | Size: 852 KiB |
|
|
@ -0,0 +1 @@
|
||||||
|
.config-db
|
||||||
|
|
@ -0,0 +1,19 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# This script will quickly and easily swap between two different configurations so that access to configuration
|
||||||
|
# options can be easily turned on or off, this can help to protect against unauthorised setting changes.
|
||||||
|
|
||||||
|
STR=$(cat access.ini | head -n1| cut -c4)
|
||||||
|
GOOD=$(cat access_yes)
|
||||||
|
BAD=$(cat access_no)
|
||||||
|
|
||||||
|
echo $STR
|
||||||
|
|
||||||
|
if [ $STR = 0 ]
|
||||||
|
then
|
||||||
|
echo -e "\x1B[31m Access Opened \x1B[0m"
|
||||||
|
echo "$GOOD" > access.ini
|
||||||
|
else
|
||||||
|
echo -e "\x1B[32m Access Closed \x1B[0m"
|
||||||
|
echo "$BAD" > access.ini
|
||||||
|
fi
|
||||||
|
|
@ -0,0 +1,23 @@
|
||||||
|
;; 1
|
||||||
|
;; ruTorrent permissions.
|
||||||
|
;; All flags are assumed to be yes by default.
|
||||||
|
|
||||||
|
[settings]
|
||||||
|
showDownloadsPage = yes
|
||||||
|
showConnectionPage = yes
|
||||||
|
showBittorentPage = yes
|
||||||
|
showAdvancedPage = yes
|
||||||
|
|
||||||
|
[tabs]
|
||||||
|
showPluginsTab = yes
|
||||||
|
|
||||||
|
[statusbar]
|
||||||
|
canChangeULRate = yes
|
||||||
|
canChangeDLRate = yes
|
||||||
|
|
||||||
|
[dialogs]
|
||||||
|
canChangeTorrentProperties = yes
|
||||||
|
canAddTorrentsWithoutPath = yes
|
||||||
|
canAddTorrentsWithoutStarting = yes
|
||||||
|
canAddTorrentsWithResume = yes
|
||||||
|
canAddTorrentsWithRandomizeHash = yes
|
||||||
|
|
@ -0,0 +1,23 @@
|
||||||
|
;; 0
|
||||||
|
;; ruTorrent permissions.
|
||||||
|
;; All flags are assumed to be yes by default.
|
||||||
|
|
||||||
|
[settings]
|
||||||
|
showDownloadsPage = no
|
||||||
|
showConnectionPage = no
|
||||||
|
showBittorentPage = no
|
||||||
|
showAdvancedPage = no
|
||||||
|
|
||||||
|
[tabs]
|
||||||
|
showPluginsTab = no
|
||||||
|
|
||||||
|
[statusbar]
|
||||||
|
canChangeULRate = no
|
||||||
|
canChangeDLRate = no
|
||||||
|
|
||||||
|
[dialogs]
|
||||||
|
canChangeTorrentProperties = no
|
||||||
|
canAddTorrentsWithoutPath = no
|
||||||
|
canAddTorrentsWithoutStarting = no
|
||||||
|
canAddTorrentsWithResume = no
|
||||||
|
canAddTorrentsWithRandomizeHash = no
|
||||||
|
|
@ -0,0 +1,23 @@
|
||||||
|
;; 1
|
||||||
|
;; ruTorrent permissions.
|
||||||
|
;; All flags are assumed to be yes by default.
|
||||||
|
|
||||||
|
[settings]
|
||||||
|
showDownloadsPage = yes
|
||||||
|
showConnectionPage = yes
|
||||||
|
showBittorentPage = yes
|
||||||
|
showAdvancedPage = yes
|
||||||
|
|
||||||
|
[tabs]
|
||||||
|
showPluginsTab = yes
|
||||||
|
|
||||||
|
[statusbar]
|
||||||
|
canChangeULRate = yes
|
||||||
|
canChangeDLRate = yes
|
||||||
|
|
||||||
|
[dialogs]
|
||||||
|
canChangeTorrentProperties = yes
|
||||||
|
canAddTorrentsWithoutPath = yes
|
||||||
|
canAddTorrentsWithoutStarting = yes
|
||||||
|
canAddTorrentsWithResume = yes
|
||||||
|
canAddTorrentsWithRandomizeHash = yes
|
||||||
|
|
@ -0,0 +1,73 @@
|
||||||
|
<?php
|
||||||
|
// configuration parameters
|
||||||
|
|
||||||
|
// for snoopy client
|
||||||
|
@define('HTTP_USER_AGENT', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.87 Safari/537.36', true);
|
||||||
|
@define('HTTP_TIME_OUT', 30, true); // in seconds
|
||||||
|
@define('HTTP_USE_GZIP', true, true);
|
||||||
|
$httpIP = null; // IP string. Or null for any.
|
||||||
|
$httpProxy = array
|
||||||
|
(
|
||||||
|
'use' => false,
|
||||||
|
'proto' => 'http', // 'http' or 'https'
|
||||||
|
'host' => 'PROXY_HOST_HERE',
|
||||||
|
'port' => 3128
|
||||||
|
);
|
||||||
|
|
||||||
|
@define('RPC_TIME_OUT', 5, true); // in seconds
|
||||||
|
|
||||||
|
@define('LOG_RPC_CALLS', false, true);
|
||||||
|
@define('LOG_RPC_FAULTS', true, true);
|
||||||
|
|
||||||
|
// for php
|
||||||
|
@define('PHP_USE_GZIP', false, true);
|
||||||
|
@define('PHP_GZIP_LEVEL', 2, true);
|
||||||
|
|
||||||
|
$schedule_rand = 10; // rand for schedulers start, +0..X seconds
|
||||||
|
|
||||||
|
$do_diagnostic = true;
|
||||||
|
$log_file = '/config/log/rutorrent/rutorrent.log'; // path to log file (comment or leave blank to disable logging)
|
||||||
|
|
||||||
|
$saveUploadedTorrents = true; // Save uploaded torrents to profile/torrents directory or not
|
||||||
|
$overwriteUploadedTorrents = false; // Overwrite existing uploaded torrents in profile/torrents directory or make unique name
|
||||||
|
|
||||||
|
$topDirectory = '/'; // Upper available directory. Absolute path with trail slash.
|
||||||
|
$forbidUserSettings = false;
|
||||||
|
|
||||||
|
// $scgi_port = 5000;
|
||||||
|
// $scgi_host = "127.0.0.1";
|
||||||
|
|
||||||
|
// For web->rtorrent link through unix domain socket
|
||||||
|
// (scgi_local in rtorrent conf file), change variables
|
||||||
|
// above to something like this:
|
||||||
|
//
|
||||||
|
$scgi_port = 0;
|
||||||
|
$scgi_host = "unix:////run/php/.rtorrent.sock";
|
||||||
|
|
||||||
|
$XMLRPCMountPoint = "/RPC2"; // DO NOT DELETE THIS LINE!!! DO NOT COMMENT THIS LINE!!!
|
||||||
|
|
||||||
|
$pathToExternals = array(
|
||||||
|
"php" => '/usr/bin/php7', // Something like /usr/bin/php. If empty, will be found in PATH.
|
||||||
|
"pgrep" => '/usr/bin/pgrep', // Something like /usr/bin/pgrep. If empty, will be found in PATH.
|
||||||
|
"python" => '/usr/bin/python3', // Something like /usr/bin/python3. If empty, will be found in PATH.
|
||||||
|
"curl" => '/usr/bin/curl', // Something like /usr/bin/curl. If empty, will be found in PATH.
|
||||||
|
"gzip" => '/usr/bin/gzip', // Something like /usr/bin/gzip. If empty, will be found in PATH.
|
||||||
|
"id" => '/usr/bin/id', // Something like /usr/bin/id. If empty, will be found in PATH.
|
||||||
|
"stat" => '/bin/stat', // Something like /usr/bin/stat. If empty, will be found in PATH.
|
||||||
|
);
|
||||||
|
|
||||||
|
$localhosts = array( // list of local interfaces
|
||||||
|
"127.0.0.1",
|
||||||
|
"localhost",
|
||||||
|
);
|
||||||
|
|
||||||
|
$profilePath = '/config/rutorrent/profiles'; // Path to user profiles
|
||||||
|
$profileMask = 0777; // Mask for files and directory creation in user profiles.
|
||||||
|
// Both Webserver and rtorrent users must have read-write access to it.
|
||||||
|
// For example, if Webserver and rtorrent users are in the same group then the value may be 0770.
|
||||||
|
|
||||||
|
$tempDirectory = '/config/rutorrent/profiles/tmp/'; // Temp directory. Absolute path with trail slash. If null, then autodetect will be used.
|
||||||
|
|
||||||
|
$canUseXSendFile = true; // Use X-Sendfile feature if it exist
|
||||||
|
|
||||||
|
$locale = "UTF8";
|
||||||
|
|
@ -0,0 +1,27 @@
|
||||||
|
;; Plugins' permissions.
|
||||||
|
;; If flag is not found in plugin section, corresponding flag from "default" section is used.
|
||||||
|
;; If flag is not found in "default" section, it is assumed to be "yes".
|
||||||
|
;;
|
||||||
|
;; For setting individual plugin permissions you must write something like that:
|
||||||
|
;;
|
||||||
|
;; [ratio]
|
||||||
|
;; enabled = yes ;; also may be "user-defined", in this case user can control plugin's state from UI
|
||||||
|
;; canChangeToolbar = yes
|
||||||
|
;; canChangeMenu = yes
|
||||||
|
;; canChangeOptions = no
|
||||||
|
;; canChangeTabs = yes
|
||||||
|
;; canChangeColumns = yes
|
||||||
|
;; canChangeStatusBar = yes
|
||||||
|
;; canChangeCategory = yes
|
||||||
|
;; canBeShutdowned = yes
|
||||||
|
|
||||||
|
[default]
|
||||||
|
enabled = user-defined
|
||||||
|
canChangeToolbar = yes
|
||||||
|
canChangeMenu = yes
|
||||||
|
canChangeOptions = yes
|
||||||
|
canChangeTabs = yes
|
||||||
|
canChangeColumns = yes
|
||||||
|
canChangeStatusBar = yes
|
||||||
|
canChangeCategory = yes
|
||||||
|
canBeShutdowned = yes
|
||||||
17
traefik.yml
|
|
@ -1,7 +1,7 @@
|
||||||
api:
|
api:
|
||||||
dashboard: true
|
dashboard: true
|
||||||
debug: true
|
debug: true
|
||||||
insecure: true
|
insecure: false
|
||||||
|
|
||||||
providers:
|
providers:
|
||||||
docker:
|
docker:
|
||||||
|
|
@ -25,9 +25,22 @@ accessLog:
|
||||||
statusCodes:
|
statusCodes:
|
||||||
- "200"
|
- "200"
|
||||||
- "300-302"
|
- "300-302"
|
||||||
- "500"
|
- "400-599"
|
||||||
retryAttempts: true
|
retryAttempts: true
|
||||||
minDuration: "10ms"
|
minDuration: "10ms"
|
||||||
|
fields:
|
||||||
|
defaultMode: keep
|
||||||
|
names:
|
||||||
|
RequestPath: drop
|
||||||
|
RequestLine: drop
|
||||||
|
ClientUsername: drop
|
||||||
|
headers:
|
||||||
|
defaultMode: drop
|
||||||
|
names:
|
||||||
|
Authorization: drop
|
||||||
|
Cookie: drop
|
||||||
|
Set-Cookie: drop
|
||||||
|
X-Forwarded-For: keep
|
||||||
|
|
||||||
#metrics:
|
#metrics:
|
||||||
#influxDB:
|
#influxDB:
|
||||||
|
|
|
||||||
|
|
@ -35,7 +35,7 @@ http:
|
||||||
ipAllowList:
|
ipAllowList:
|
||||||
sourceRange:
|
sourceRange:
|
||||||
- "127.0.0.1/32"
|
- "127.0.0.1/32"
|
||||||
- "10.0.0.1/8"
|
- "10.0.0.0/8"
|
||||||
|
|
||||||
middlewares-https-redirectscheme:
|
middlewares-https-redirectscheme:
|
||||||
redirectScheme:
|
redirectScheme:
|
||||||
|
|
|
||||||
|
|
@ -46,7 +46,7 @@ http:
|
||||||
- chain-authelia
|
- chain-authelia
|
||||||
|
|
||||||
redirecttohttps:
|
redirecttohttps:
|
||||||
rule: "HostRegexp(`{host:.+}`)"
|
rule: "PathPrefix(`/`)"
|
||||||
middlewares:
|
middlewares:
|
||||||
- middlewares-https-redirectscheme
|
- middlewares-https-redirectscheme
|
||||||
service: noop
|
service: noop
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
data
|
||||||
|
|
@ -47,8 +47,6 @@ devices:
|
||||||
'0x001788010452ec91':
|
'0x001788010452ec91':
|
||||||
friendly_name: Philips Lily 4
|
friendly_name: Philips Lily 4
|
||||||
retain: false
|
retain: false
|
||||||
'0x14b457fffe6d87e8':
|
|
||||||
friendly_name: Kök_Multidimmer
|
|
||||||
'0x086bd7fffe5a6240':
|
'0x086bd7fffe5a6240':
|
||||||
friendly_name: Kök 1
|
friendly_name: Kök 1
|
||||||
'0xd0cf5efffed8c794':
|
'0xd0cf5efffed8c794':
|
||||||
|
|
@ -93,6 +91,10 @@ devices:
|
||||||
friendly_name: '0x00124b002a51c5f1'
|
friendly_name: '0x00124b002a51c5f1'
|
||||||
'0x00158d000484f134':
|
'0x00158d000484f134':
|
||||||
friendly_name: sensor/inne/ada/th002
|
friendly_name: sensor/inne/ada/th002
|
||||||
|
'0x000d6ffffe61e2f8':
|
||||||
|
friendly_name: Kök_dimmer_2
|
||||||
|
'0x000b57fffe8abe13':
|
||||||
|
friendly_name: Jul - stjärna 4
|
||||||
groups:
|
groups:
|
||||||
'1':
|
'1':
|
||||||
friendly_name: Kök_ct
|
friendly_name: Kök_ct
|
||||||
|
|
@ -105,4 +107,8 @@ groups:
|
||||||
retain: false
|
retain: false
|
||||||
'4':
|
'4':
|
||||||
friendly_name: baksida_spot_ute
|
friendly_name: baksida_spot_ute
|
||||||
version: 4
|
'44386':
|
||||||
|
friendly_name: '44386'
|
||||||
|
'57338':
|
||||||
|
friendly_name: '57338'
|
||||||
|
version: 5
|
||||||
|
|
|
||||||
|
|
@ -84,7 +84,7 @@ devices:
|
||||||
'0x680ae2fffe6d374c':
|
'0x680ae2fffe6d374c':
|
||||||
friendly_name: Kök_svart_2
|
friendly_name: Kök_svart_2
|
||||||
'0x086bd7fffe05e8ad':
|
'0x086bd7fffe05e8ad':
|
||||||
friendly_name: Julstjärna röd
|
friendly_name: Jul - stjärna 3
|
||||||
'0xb4e3f9fffe6c3642':
|
'0xb4e3f9fffe6c3642':
|
||||||
friendly_name: Växtlampa
|
friendly_name: Växtlampa
|
||||||
'0x54ef4410003e9419':
|
'0x54ef4410003e9419':
|
||||||
|
|
@ -107,7 +107,7 @@ devices:
|
||||||
'0xb4e3f9fffec8b2bb':
|
'0xb4e3f9fffec8b2bb':
|
||||||
friendly_name: Oscar Skrivbord
|
friendly_name: Oscar Skrivbord
|
||||||
'0x385b44fffe1cb234':
|
'0x385b44fffe1cb234':
|
||||||
friendly_name: Ute_garage_slinga
|
friendly_name: H032S
|
||||||
'0x1c34f1fffe7b1d6c':
|
'0x1c34f1fffe7b1d6c':
|
||||||
friendly_name: mormor_malla_1
|
friendly_name: mormor_malla_1
|
||||||
'0x1c34f1fffed69863':
|
'0x1c34f1fffed69863':
|
||||||
|
|
@ -207,9 +207,6 @@ devices:
|
||||||
'0x588e81fffe14100f':
|
'0x588e81fffe14100f':
|
||||||
friendly_name: H018L
|
friendly_name: H018L
|
||||||
description: Ute soptunna
|
description: Ute soptunna
|
||||||
'0x00158d00058a2ad5':
|
|
||||||
friendly_name: sensor/ute/vind/th007
|
|
||||||
description: Temp vind
|
|
||||||
'0x00158d0005888dfa':
|
'0x00158d0005888dfa':
|
||||||
friendly_name: H017S
|
friendly_name: H017S
|
||||||
description: Växthus
|
description: Växthus
|
||||||
|
|
@ -226,13 +223,36 @@ devices:
|
||||||
description: 'Baksida '
|
description: 'Baksida '
|
||||||
'0xa4c138743401b4ed':
|
'0xa4c138743401b4ed':
|
||||||
friendly_name: H024S
|
friendly_name: H024S
|
||||||
description: Julslinga
|
description: 'Garage sida '
|
||||||
'0x5c0272fffe8ab0ce':
|
'0x5c0272fffe8ab0ce':
|
||||||
friendly_name: H025L
|
friendly_name: H025L
|
||||||
description: Garage inne
|
description: Garage inne
|
||||||
|
'0x00158d00058a2ad5':
|
||||||
|
friendly_name: sensor/ute/vind/th007
|
||||||
|
description: Temp vind
|
||||||
|
'0x0c2a6ffffe27eb85':
|
||||||
|
friendly_name: H026L
|
||||||
|
description: Spot framsida 2
|
||||||
|
'0x0c2a6ffffe27e999':
|
||||||
|
friendly_name: H027L
|
||||||
|
description: Spot framsida 3
|
||||||
|
'0xa46dd4fffe3000d5':
|
||||||
|
friendly_name: H028s
|
||||||
|
description: Temp oscar
|
||||||
|
temperature_precision: 2
|
||||||
|
'0x8c8b48fffec70f78':
|
||||||
|
friendly_name: Jul - stjärna 2
|
||||||
|
'0xbc8d7efffe33627d':
|
||||||
|
friendly_name: h029
|
||||||
|
'0x94a081fffef4b1c9':
|
||||||
|
friendly_name: h030r
|
||||||
'0xf4ce364abf76dbac':
|
'0xf4ce364abf76dbac':
|
||||||
friendly_name: h014s
|
friendly_name: H014S
|
||||||
description: Lås
|
'0xa4c138986ee26ddd':
|
||||||
|
friendly_name: H033S
|
||||||
|
'0xa4c1382931eb162b':
|
||||||
|
friendly_name: H034S
|
||||||
|
description: Framsida, jord
|
||||||
groups:
|
groups:
|
||||||
'0':
|
'0':
|
||||||
friendly_name: default_0
|
friendly_name: default_0
|
||||||
|
|
@ -252,4 +272,4 @@ homeassistant:
|
||||||
enabled: true
|
enabled: true
|
||||||
experimental_event_entities: true
|
experimental_event_entities: true
|
||||||
status_topic: homeassistant/status
|
status_topic: homeassistant/status
|
||||||
version: 4
|
version: 5
|
||||||
|
|
|
||||||