226 lines
6.4 KiB
Markdown
226 lines
6.4 KiB
Markdown
---
|
||
title: Homeassistant Part 1
|
||
description:
|
||
published: 1
|
||
date: 2024-02-18T07:54:46.237Z
|
||
tags:
|
||
editor: markdown
|
||
dateCreated: 2024-02-03T20:23:54.798Z
|
||
---
|
||
|
||
|
||
|
||
Need to access time sensor
|
||
|
||
alternatively, use now
|
||
|
||
|
||
template:
|
||
- trigger:
|
||
- platform: time_pattern
|
||
seconds: "/1"
|
||
sensor:
|
||
- name: time
|
||
state: "{{ now().strftime('%H:%M:%S') }}"
|
||
|
||
{{ now().strftime("%I:%M %p") }}
|
||
|
||
{{ as_timestamp(state_attr("device_tracker.android_9050f88e39898022", "last_time_reachable")) | timestamp_local }}
|
||
{##{{ state_attr("device_tracker.android_9050f88e39898022", "last_time_reachable").strftime('%H:%M:%S') }}##}
|
||
|
||
- condition: template
|
||
value_template: '"{{ now().timestamp()+300 < (as_timestamp(state_attr("device_tracker.android_9050f88e39898022", "last_time_reachable")) | float)
|
||
}}"'
|
||
|
||
|
||
|
||
|
||
Change attribute value via automation
|
||
|
||
https://community.home-assistant.io/t/how-to-manually-set-state-value-of-sensor/43975/21
|
||
- id: automation 3
|
||
trigger:
|
||
platform: time_pattern
|
||
minutes: '/1'
|
||
action:
|
||
service: python_script.set_state
|
||
data_template:
|
||
entity_id: sensor.cold_water_rate
|
||
state: 42
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
new HA OS on RaPi4
|
||
http://192.168.178.52:8123/
|
||
• ==create user
|
||
◦ user: bora, pass: bora
|
||
• select location==
|
||
• activate advanced mode under profile settings
|
||
• install add ons
|
||
◦ Samba share
|
||
▪ username: homeassistant, password: bora, workgroup: WORKGROUP
|
||
▪ add a new network location: \\192.168.178.52\config
|
||
◦ file editor
|
||
◦ duckdns
|
||
▪ domains:
|
||
- habora.duckdns.org
|
||
token: 799093a4-0b34-454f-99cb-25a4637bf404
|
||
aliases: []
|
||
lets_encrypt:
|
||
accept_terms: true
|
||
algo: secp384r1
|
||
certfile: fullchain.pem
|
||
keyfile: privkey.pem
|
||
seconds: 300
|
||
•
|
||
◦ MariaDB
|
||
▪ databases:
|
||
- homeassistant
|
||
logins:
|
||
- username: homeassistant
|
||
password: password1234
|
||
- username: read_only_user
|
||
password: password1234
|
||
rights:
|
||
- username: homeassistant
|
||
database: homeassistant
|
||
- username: read_only_user
|
||
database: homeassistant
|
||
privileges:
|
||
- SELECT
|
||
▪ recorder:
|
||
db_url: mysql://homeassistant:password@core-mariadb/homeassistant?charset=utf8mb4
|
||
▪
|
||
◦ Nginx Proxy Manager
|
||
▪ Open WebUI → admin@example.com / changeme
|
||
▪ Hosts – Proxy Hosts → Add Proxy Host
|
||
▪ Domain Names: habora.duckdns.org
|
||
▪ Als Scheme wählt Ihr http, unter „Forward Hostname / IP“ tragt Ihr die IP eures Home Assistant ein. → 192.168.178.52
|
||
▪ Bei Forward Port gebt Ihr den Port ein, unter dem euer Home Assistant erreichbar ist. (Standardmäßig ist das der Port 8123)
|
||
▪ Aktiviert abschließend noch den Punkt „Websockets Support„.
|
||
▪ Anschließend wechselt Ihr auf den Reiter SSL.
|
||
▪ Hier wählt ihr unter „SSL Certificate“ den Eintrag „Request a new SSL Certificate“ um ein neues Zertifikat zu erstellen aus.
|
||
▪ Aktiviert nun den Punkt „Force SSL„, tragt eine gültige Email-Adresse für eure Zertifikat ein und akzeptiert die Let’s Encrypt Bedingungen durch aktivieren der Option am unteren Rand der Dialog.
|
||
▪ Bestätigt nun die Eingaben durch einen Klick auf „Save“ und wartet, bis der Vorgang abgeschlossen ist.
|
||
▪ Dann werden im Hintergrund die Zertifikate von Let’s Encrypt generiert. Das kann einen Augenblick in Anspruch nehmen.
|
||
▪ Das registrieren des Zertifikates funktioniert nur, wenn die eingetragene Domain auch auf eure externe IP zeigt, und die Ports 80 und 443 auf die Home Assistant IP weitergeleitet sind.
|
||
• <span style="color:green;font-weight:700;font-size:20px"><mark>PICTURE</mark></span>
|
||

|
||
▪ configuration.yaml
|
||
• http:
|
||
• use_x_forwarded_for: true
|
||
• trusted_proxies:
|
||
• - 127.0.0.1
|
||
• - 172.30.33.0/24
|
||
• - ::1
|
||
◦ Let's Encrypt
|
||
▪ domains:
|
||
- habora.duckdns.org
|
||
email: boraers@googlemail.com
|
||
keyfile: privkey.pem
|
||
certfile: fullchain.pem
|
||
challenge: http
|
||
dns: {}
|
||
▪ add to configuration.aml
|
||
http:
|
||
ssl_certificate: /ssl/fullchain.pem
|
||
ssl_key: /ssl/privkey.pem
|
||
◦ influxdb
|
||
▪ no adaptation of configuration was needed
|
||
▪ http://192.168.178.52:8123/api/hassio_ingress/FJZMGvrT7OnlTzBKdUP9jKiKEe4yp4V4D5VT4zHP5cQ/sources/0/hosts
|
||
▪ http://192.168.178.52:8123/hassio/ingress/a0d7b954_influxdb
|
||
▪ create database: home_assistant
|
||
▪ create user: homeassistant, pass: homeassistant, permissions: ALL
|
||
◦ mosquitto
|
||
▪ Logins:
|
||
- username: note4
|
||
password: note4
|
||
▪ MQTT integration configuration:
|
||
127.0.0.1 ← not core-mosquitto
|
||
1883
|
||
note4
|
||
note4
|
||
MQTT protocol: 5
|
||
◦ Grafana
|
||
▪ env_vars:
|
||
- name: GF_SECURITY_ALLOW_EMBEDDING
|
||
value: "true"
|
||
- name: GF_AUTH_ANONYMOUS_ORG_NAME
|
||
value: Main Org.
|
||
- name: GF_AUTH_ANONYMOUS_ENABLED
|
||
value: "true"
|
||
- name: GF_AUTH_DISABLE_LOGIN_FORM
|
||
value: "false"
|
||
▪ SSL: false or true, depending on having ssl set up
|
||
▪ Network:
|
||
3000
|
||
▪ http://192.168.178.52:8123/hassio/ingress/a0d7b954_grafana
|
||
▪ in web panel
|
||
• add data source: InfluxDB
|
||
• URL: http://a0d7b954-influxdb:8086
|
||
• database, user, pass
|
||
•
|
||
◦ Terminal and SSH
|
||
• integrations
|
||
◦ HACS
|
||
▪ github credentials required
|
||
◦ OpenWeatherMap
|
||
▪ API Ke:
|
||
◦ solarman
|
||
• re-use old config files
|
||
◦ automations
|
||
◦ blueprints
|
||
◦ bosch_shc
|
||
◦ custom_components
|
||
◦ group
|
||
◦ images
|
||
◦ python_scripts
|
||
◦ www
|
||
◦ alarm_control_panel.yaml
|
||
◦ automations.yaml
|
||
◦ climate.yaml
|
||
◦ configuration.yaml
|
||
◦ influxdb.yaml
|
||
◦ mqtt.yaml
|
||
◦ scenes.yaml
|
||
◦ scripts.yaml
|
||
◦ secrets.yaml
|
||
◦ sensor.yaml
|
||
• move to external SSD
|
||
• che
|
||
|
||
<span style="color:green;font-weight:700;font-size:20px"><mark>PICTURE</mark></span>
|
||

|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|