Zitat von: Jörg am 01 April 2026, 19:05:24attr KG_Waermepumpe_sg_ready_1_WWKI300 interval 43200/rpc/EM1... wird nur gemäß Interval abgeholt, und das ist bei dir 12 Stunden.
Zitat von: passibe am 01 April 2026, 22:56:37Gib uns bitte mal dein compose file.
Ich kann das hierZitat von: mistepke am 01 April 2026, 18:47:32Im Docker Container habe ich die notwendigen Pakete mit:und das hier
sudo apt-get install libconvert-base32-perl libauthen-oath-perl libcrypt-urandom-perl
nachinstalliert. Hat auch nichts geholfen.Zitat von: mistepke am 01 April 2026, 19:07:502026.04.01 18:53:21 1: reload: Error:Modul 98_GoogleAuth deactivated:nämlich aus zwei Gründen nicht nachvollziehen:
Can't locate Authen/OATH.pm in @INC (you may need to install the Authen::OATH module) (@INC entries checked: . ./FHEM ./lib /usr/src/app/core/lib/perl5/aarch64-linux-gnu /usr/src/app/core/lib/perl5 /usr/src/app/3rdparty/lib/perl5/aarch64-linux-gnu /usr/src/app/3rdparty/lib/perl5 /usr/local/lib/perl5/site_perl/5.38.5/aarch64-linux-gnu /usr/local/lib/perl5/site_perl/5.38.5 /usr/local/lib/perl5/vendor_perl/5.38.5/aarch64-linux-gnu /usr/local/lib/perl5/vendor_perl/5.38.5 /usr/local/lib/perl5/5.38.5/aarch64-linux-gnu /usr/local/lib/perl5/5.38.5 ./FHEM/lib) at ./FHEM/98_GoogleAuth.pm line 87.
BEGIN failed--compilation aborted at ./FHEM/98_GoogleAuth.pm line 87.
1. Das Nachinstallieren von Paketen war auf die von dir beschriebene Weise noch nie sinnvoll möglich (in einen laufenden Container "hineininstallierte" Pakete sind nämlich weg, wenn der Container neu erstellt wird). Ab Image-Version 4 muss man dazu ein eigenes Image bauen; die alte Methode über APT_PKGS, etc. funktioniert nicht mehr: https://github.com/fhem/fhem-docker?tab=readme-ov-file#since-version-4. Darauf hat Sidey auch schon hingewiesen.
2. Ist das aber für Google Authenticator überhaupt nicht notwendig, weil jedenfalls Authen::OATH standardmäßig vorhanden ist und define GoogleAuth GoogleAuth jedenfalls im aktuellen Docker Image (5-bookworm) problemlos ausgeführt werden kann.
Ob ein Perl-Paket installiert ist, kann man mit perldoc -l <PAKET> testen.
Wenn ich bei mir in der FHEM-Kommandozeile (Image-Tag 5-bookworm)"perldoc -l Authen::OATH"eingebe (wichtig, mit Anführungszeichen!), erscheint bei mir der Pfad /usr/src/app/core/lib/perl5/Authen/OATH.pm im FHEM-Logfile.
Gleiches Ergebnis mitsudo docker exec -it <FHEM_CONTAINER> perldoc -l Authen::OATHauch hier wird der Pfad zurückgegeben.
Deshalb bitte dein compose file posten. Wenn du docker run nutzt, bitte nimm dir erstmal die Zeit und steig auf docker compose um. docker run sollte mE nicht für dauerhaft laufende Dienste verwendet werden; das eignet sich eher zum testen oder für one-shot-Befehle:Zitat von: passibe am 09 Januar 2026, 21:12:30Am besten man nutzt nicht docker run, sondern docker compose und ein entsprechendes compose file.
Mit docker run sind sämtliche Parameter mit denen man den container startet nur extrem schlecht reproduzierbar (allenfalls über die Terminal-history). Das ist meiner Meinung nach alles eher ungeeignet für Container, die ständig laufen sollen und von deren (Docker-)Konfiguration man auch ein vernünftiges Backup haben will.
Internals:
DEF <Gerät>,<Position>,<Zeit_Auf_Früh>,<Zeit_Auf_Spät>,<Zeit_Auf_WE/Hol>,<Zeit_Zu_Früh>,<Zeit_Zu_Spät>,<Modus_Zu>,<Modus_Auf>
(MQTT2_shellyplus2pm_.*|Velux_.*|.*Rolladen|Jalousie_.*):pct,!?ASC_Time_Up_Early,!?ASC_Time_Up_Late,!?ASC_Time_Up_WE_Holiday,!?ASC_Time_Down_Early,!?ASC_Time_Down_Late,!?ASC_Mode_Down,!?ASC_Mode_Up
FUUID 697e9bbc-f33f-6b5c-0621-8d5456292659d9bf
NAME rg_ASC_Rolllaeden_Times
NR 498
NTFY_ORDER 50-rg_ASC_Rolllaeden_Times
STATE Initialized
TYPE readingsGroup
changed 0
mayBeVisible 1
CONTENT:
MQTT2_shellyplus2pm_2cbcbb2d7040 1
MQTT2_shellyplus2pm_2cbcbb7c2f4c 1
MQTT2_shellyplus2pm_30c9224ea21c 1
Velux_0 1
Velux_1 1
CONTENT2:
DEVICES:
ARRAY(0x5d116abc)
ARRAY(0x58c36568)
ARRAY(0x5d1e2af0)
ARRAY(0x5d308094)
ARRAY(0x5c82754c)
ARRAY(0x5d135380)
fhem:
lastDefChange 6
last_update 1775076577.36226
helper:
DEF
commands:
ASC_Mode_Down ASC_Mode_Down:always,absent,off
ASC_Mode_Up ASC_Mode_Up:always,absent,off
ASC_Time_Down_Early ASC_Time_Down_Early:15:00,15:15,15:30,15:45,16:00,16:15,16:30,16:45,17:00,17:15,17:30,17:45,18:00,18:15,18:30,18:45,19:00,19:15,19:30,19:45,20:00,20:15,20:30,20:45,21:00,21:15,21:30,21:45,22:00
ASC_Time_Down_Late ASC_Time_Down_Late:19:00,19:15,19:30,19:45,20:00,20:15,20:30,20:45,21:00,21:15,21:30,21:45,22:00,22:15,22:30,22:45,23:00,23:15,23:30
ASC_Time_Up_Early ASC_Time_Up_Early:05:00,05:05,05:30,05:55,06:00,06:15,06:30,06:45,07:00,07:15,07:30,07:45,08:00,08:15,08:30,08:45,09:00,09:15,09:30,09:45,10:00
ASC_Time_Up_Late ASC_Time_Up_Late:06:00,06:15,06:30,06:45,07:00,07:15,07:30,07:45,08:00,08:15,08:30,08:45,09:00,09:15,09:30,09:45,10:00
ASC_Time_Up_WE_Holiday ASC_Time_Up_WE_Holiday:06:00,06:15,06:30,06:45,07:00,07:15,07:30,07:45,08:00,08:15,08:30,08:45,09:00,09:15,09:30,09:45,10:00
pct pct:0,10,20,30,35,40,45,50,55,60,65,70,75,80,85,90,95,100
positions:
MQTT2_shellyplus2pm_2cbcbb2d7040.ASC_Mode_Down 2:7
MQTT2_shellyplus2pm_2cbcbb2d7040.ASC_Mode_Up 2:8
MQTT2_shellyplus2pm_2cbcbb2d7040.ASC_Time_Down_Early 2:5
MQTT2_shellyplus2pm_2cbcbb2d7040.ASC_Time_Down_Late 2:6
MQTT2_shellyplus2pm_2cbcbb2d7040.ASC_Time_Up_Early 2:2
MQTT2_shellyplus2pm_2cbcbb2d7040.ASC_Time_Up_Late 2:3
MQTT2_shellyplus2pm_2cbcbb2d7040.ASC_Time_Up_WE_Holiday 2:4
MQTT2_shellyplus2pm_2cbcbb2d7040.pct 2:1
MQTT2_shellyplus2pm_2cbcbb7c2f4c.ASC_Mode_Down 3:7
MQTT2_shellyplus2pm_2cbcbb7c2f4c.ASC_Mode_Up 3:8
MQTT2_shellyplus2pm_2cbcbb7c2f4c.ASC_Time_Down_Early 3:5
MQTT2_shellyplus2pm_2cbcbb7c2f4c.ASC_Time_Down_Late 3:6
MQTT2_shellyplus2pm_2cbcbb7c2f4c.ASC_Time_Up_Early 3:2
MQTT2_shellyplus2pm_2cbcbb7c2f4c.ASC_Time_Up_Late 3:3
MQTT2_shellyplus2pm_2cbcbb7c2f4c.ASC_Time_Up_WE_Holiday 3:4
MQTT2_shellyplus2pm_2cbcbb7c2f4c.pct 3:1
MQTT2_shellyplus2pm_30c9224ea21c.ASC_Mode_Down 4:7
MQTT2_shellyplus2pm_30c9224ea21c.ASC_Mode_Up 4:8
MQTT2_shellyplus2pm_30c9224ea21c.ASC_Time_Down_Early 4:5
MQTT2_shellyplus2pm_30c9224ea21c.ASC_Time_Down_Late 4:6
MQTT2_shellyplus2pm_30c9224ea21c.ASC_Time_Up_Early 4:2
MQTT2_shellyplus2pm_30c9224ea21c.ASC_Time_Up_Late 4:3
MQTT2_shellyplus2pm_30c9224ea21c.ASC_Time_Up_WE_Holiday 4:4
MQTT2_shellyplus2pm_30c9224ea21c.pct 4:1
Velux_0.ASC_Mode_Down 5:7
Velux_0.ASC_Mode_Up 5:8
Velux_0.ASC_Time_Down_Early 5:5
Velux_0.ASC_Time_Down_Late 5:6
Velux_0.ASC_Time_Up_Early 5:2
Velux_0.ASC_Time_Up_Late 5:3
Velux_0.ASC_Time_Up_WE_Holiday 5:4
Velux_0.pct 5:1
Velux_1.ASC_Mode_Down 6:7
Velux_1.ASC_Mode_Up 6:8
Velux_1.ASC_Time_Down_Early 6:5
Velux_1.ASC_Time_Down_Late 6:6
Velux_1.ASC_Time_Up_Early 6:2
Velux_1.ASC_Time_Up_Late 6:3
Velux_1.ASC_Time_Up_WE_Holiday 6:4
Velux_1.pct 6:1
values:
formated:
undef
ARRAY(0x5d1bfd58)
ARRAY(0x5d0ec280)
ARRAY(0x5d1ce32c)
ARRAY(0x5c7f6940)
ARRAY(0x5d0ec5dc)
ARRAY(0x5d1ce2dc)
ARRAY(0x5c58c0a4)
ARRAY(0x5d1df444)
orig:
undef
ARRAY(0x5d1c8014)
ARRAY(0x5d1c52e8)
ARRAY(0x5c8242c0)
ARRAY(0x5d1df3e0)
ARRAY(0x5d1be534)
ARRAY(0x5d1df0ac)
ARRAY(0x5d1e6ce0)
ARRAY(0x5d0b1fc4)
prefixsuffix:
undef
ARRAY(0x5c8293c0)
ARRAY(0x5d1c0014)
ARRAY(0x5d0b5438)
ARRAY(0x5d3078c4)
ARRAY(0x5d0b1da8)
ARRAY(0x5cb11870)
ARRAY(0x5d0f0730)
ARRAY(0x5d1c9a0c)
Attributes:
commands {pct => 'pct:0,10,20,30,35,40,45,50,55,60,65,70,75,80,85,90,95,100',
ASC_Time_Down_Early => 'ASC_Time_Down_Early:15:00,15:15,15:30,15:45,16:00,16:15,16:30,16:45,17:00,17:15,17:30,17:45,18:00,18:15,18:30,18:45,19:00,19:15,19:30,19:45,20:00,20:15,20:30,20:45,21:00,21:15,21:30,21:45,22:00',
ASC_Time_Down_Late => 'ASC_Time_Down_Late:19:00,19:15,19:30,19:45,20:00,20:15,20:30,20:45,21:00,21:15,21:30,21:45,22:00,22:15,22:30,22:45,23:00,23:15,23:30',
ASC_Time_Up_WE_Holiday => 'ASC_Time_Up_WE_Holiday:06:00,06:15,06:30,06:45,07:00,07:15,07:30,07:45,08:00,08:15,08:30,08:45,09:00,09:15,09:30,09:45,10:00',
ASC_Time_Up_Early => 'ASC_Time_Up_Early:05:00,05:05,05:30,05:55,06:00,06:15,06:30,06:45,07:00,07:15,07:30,07:45,08:00,08:15,08:30,08:45,09:00,09:15,09:30,09:45,10:00',
ASC_Time_Up_Late => 'ASC_Time_Up_Late:06:00,06:15,06:30,06:45,07:00,07:15,07:30,07:45,08:00,08:15,08:30,08:45,09:00,09:15,09:30,09:45,10:00',
ASC_Mode_Down => 'ASC_Mode_Down:always,absent,off',
ASC_Mode_Up => 'ASC_Mode_Up:always,absent,off' }Zitat von: mistepke am 01 April 2026, 18:47:32Im Docker Container habe ich die notwendigen Pakete mit:und das hier
sudo apt-get install libconvert-base32-perl libauthen-oath-perl libcrypt-urandom-perl
nachinstalliert. Hat auch nichts geholfen.
Zitat von: mistepke am 01 April 2026, 19:07:502026.04.01 18:53:21 1: reload: Error:Modul 98_GoogleAuth deactivated:nämlich aus zwei Gründen nicht nachvollziehen:
Can't locate Authen/OATH.pm in @INC (you may need to install the Authen::OATH module) (@INC entries checked: . ./FHEM ./lib /usr/src/app/core/lib/perl5/aarch64-linux-gnu /usr/src/app/core/lib/perl5 /usr/src/app/3rdparty/lib/perl5/aarch64-linux-gnu /usr/src/app/3rdparty/lib/perl5 /usr/local/lib/perl5/site_perl/5.38.5/aarch64-linux-gnu /usr/local/lib/perl5/site_perl/5.38.5 /usr/local/lib/perl5/vendor_perl/5.38.5/aarch64-linux-gnu /usr/local/lib/perl5/vendor_perl/5.38.5 /usr/local/lib/perl5/5.38.5/aarch64-linux-gnu /usr/local/lib/perl5/5.38.5 ./FHEM/lib) at ./FHEM/98_GoogleAuth.pm line 87.
BEGIN failed--compilation aborted at ./FHEM/98_GoogleAuth.pm line 87.
"perldoc -l Authen::OATH"eingebe (wichtig, mit Anführungszeichen!), erscheint bei mir der Pfad /usr/src/app/core/lib/perl5/Authen/OATH.pm im FHEM-Logfile.sudo docker exec -it <FHEM_CONTAINER> perldoc -l Authen::OATHauch hier wird der Pfad zurückgegeben.Zitat von: passibe am 09 Januar 2026, 21:12:30Am besten man nutzt nicht docker run, sondern docker compose und ein entsprechendes compose file.
Mit docker run sind sämtliche Parameter mit denen man den container startet nur extrem schlecht reproduzierbar (allenfalls über die Terminal-history). Das ist meiner Meinung nach alles eher ungeeignet für Container, die ständig laufen sollen und von deren (Docker-)Konfiguration man auch ein vernünftiges Backup haben will.
Zitat von: Sidey am 01 April 2026, 22:31:56Zitat von: mistepke am 01 April 2026, 21:36:27Die Frage ist aber wie?
Perl Pakete gemäß Anleitung nachinstallieren über cpm.
https://github.com/fhem/fhem-docker?tab=readme-ov-file#add-custom-packages
Da ich das Google Authenticator Plugin nicht kenne. Wo kommt das her?
Wenn es eine Quelle gibt, dann schau ich mal was ich machen kann, damit die Abhängigkeit im Docker Image enthalten ist
Grüße Sidey
Zitat von: denis.robel am 01 April 2026, 22:36:09Zitat von: denis.robel am 01 April 2026, 22:16:18Das kling gut. Da ich aber noch totaler Newbe in Bezug auf Solarforecast bin: Wo hinterlege ich die ganzen Modellparameter aus Deinem Code. Das müsste ich ja für mich auch noch irgendwie erledigen...
Ok hab es missverstanden. Das sind die Parameter, die man nach dem Training abfragen kann, richtig?
aiTrainStart=3
aiStorageDuration=3600
aiTreesPV=30
aiConActivate=1
aiConAlpha=0.8
aiConTrainStart=7:3
aiConActFunc=ELLIOT_SYMMETRIC
aiConHiddenLayers=80-40
aiConLearnRate=0.002
aiConMomentum=0.8
aiConShuffleMode=2
aiConShufflePeriod=20
aiConSteepness=1.0
aiConTrainAlgo=INCREMENTAL
aiConProfile=v1_heatpump_active_pv
aiConBitFailLimit=0.20
Zitat von: denis.robel am 01 April 2026, 22:16:18Das kling gut. Da ich aber noch totaler Newbe in Bezug auf Solarforecast bin: Wo hinterlege ich die ganzen Modellparameter aus Deinem Code. Das müsste ich ja für mich auch noch irgendwie erledigen...