FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: KiK am 28 September 2019, 15:15:22

Titel: [gelöst] weblink image: Ändern der html-Adresse zur Laufzeit
Beitrag von: KiK am 28 September 2019, 15:15:22
Hallo,

Über das Modul "IPCAM" speichere ich auf Anforderung 3 Bilder in einer Sequenz ab. Ich will davon das erste Bild anzeigen. Dieser Dateiname wird im Reading "snapshot2" gespeichert:

{ReadingsVal("IPCAM_Foscam", "snapshot2", "")}

.z.B.
IPCAM_Foscam_20190928_124436.jpg

Jetzt will ich dieses Bild darstellen. Das define wäre also z.B.
define Last_Pic weblink image fhem/images/webcam/IPCAM_Foscam_20190928_124436.jpg
...funktioniert soweit. Allerdings ändert sich der Dateiname zur Laufzeit.

Also will ich über defmod die Definition zur Laufzeit ändern. Und hier hänge ich:
defmod Last_Pic weblink image fhem/images/webcam/{ReadingsVal("IPCAM_Foscam", "snapshot2", "")}
...funktioniert nicht, da der Text 1:1 und nicht der Inhalt / das Ergebnis von {...} übernommen wird.

Habt ihr einen Tipp?
Titel: Antw:weblink image: Ändern der html-Adresse zur Laufzeit
Beitrag von: KiK am 28 September 2019, 15:29:01
Ok, ich habs (kann aber die Frage hier im Forum nicht löschen).

Die Lösung war

{fhem "defmod Last_Pic weblink image fhem/images/webcam/".ReadingsVal("IPCAM_Foscam", "snapshot2", "")}
Titel: Antw:[gelöst] weblink image: Ändern der html-Adresse zur Laufzeit
Beitrag von: Otto123 am 28 September 2019, 18:26:56
Hi,

ich denke flexibler (ohne Config Änderung) wäre es mit htmlcode
So wie hier?

https://forum.fhem.de/index.php?topic=72922.0

Gruß Otto
Titel: Antw:[gelöst] weblink image: Ändern der html-Adresse zur Laufzeit
Beitrag von: KiK am 29 September 2019, 09:56:46
Super! So ist es wirklich eleganter und nach einigen Versuchen funktioniert es jetzt auch.


sub set_bell_filename($)
{
  my $new_filename = $_[0];
  $main::bell_html_actual = $main::bell_html_default;
  $main::bell_html_actual =~ s/IPCAM_Foscam_snapshot.jpg/$new_filename/g;
 
  return 1;
}


Danke