Tile Visu: Inhalt einer HtmlBox wird nicht aktualisiert

Ich habe den ein oder anderen Chart mit HighCharts umgesetzt. Hier ein Beispiel:

Die Umsetzung erfolgte mit dem Highcharts Modul der IPS-Library. Dabei wird der Inhalt bei einer „Navigation“ dynamisch aufbereitet.

In der Visualisierung ist eine HtmlBox verlinkt mit dem Inhalt

<iframe src='/user/IPSHighcharts/IPSTemplates/HighchartsV2.php?CfgFile=C:\ProgramData\Symcon\user\IPSHighcharts\Highcharts\HighchartsCfgIPSChart - PV-Prognose.json' width='100%' height='416' frameborder='0' scrolling='no'></iframe>

Im WebFront funktioniert die Navigation, in der TileVisu dagegen nicht. Dort bleibt das alte Bild stehen.

Ursache ist, dass sich zwar das Aktualisierungsdatum der Variablen ändert, nicht jedoch das Änderungsdatum. Das Webfront zeigt den Inhalt der Variablen schon bei einer Aktualisierung neu an, die TileVisu dagegen erst bei einer Änderung.

Meine Frage: sollte nicht auch in der TileVisu die Html-Seite neu angezeigt werden, wenn die Variable aktualisiert wird? Oder muss ich das Verfahren irgendwie umstellen? Wenn ja, dann wie?

Hallo,

… bei mir auch, HTMLBox wird bei Änderung des Variableninhaltes nicht automatisch in der TileVisu aktualisiert. Erst eine z.B. Vergrößerung und Verkleinerung der Kachel bringt dann die Aktualisierung der Ansicht.
Im WebFront funktioniert es bei mir ebenfalls einwandfrei (Aktualisierung der Anzeige automatisch wenn sich die HTMLBox-Variable ändert).

Gibt es dazu eine Lösung ?

Gruß
zkra

Wird bei dir tatsächlich der Variableninhalt geändert?
Bei mir passiert es nur, wenn der Variableninhalt lediglich aktualisiert wird.

… ok, ja das stimmt tatsächlich, es wird nur der Variableninhalt aktualisiert und nicht geändert

<iframe src='./user/IPS-Highcharts.php?ScriptId=57045'  width=100% height=800 frameborder='0' scrolling='no' ></iframe>

Bei Änderung der Variable funktioniert es dann auch in der TileVisu.

Gruß
   zkra

OK, dann sprechen wir vom gleichen Fall :slight_smile:

Wenn eine Variable mit dem Profil ~HTMLBOX nur aktualisiert wird (der Inhalt ändert sich nicht), wird die HTML-Box in der Visualisierung nicht neu geladen.
Ich habe hier diese Codezeilen

//HTML - Datei erzeugen
file_put_contents("C:\\ProgramData\\Symcon\\user\\awattarpivot.html",$html);
//damit wird die Anzeige aktualisiert
setvalue($diagramm_html_id,"<center><iframe src=\"../user/awattarpivot.html\" height=\"400px\" width=\"100%\" frameborder=\"0\"></iframe></center>");

Das setvalue dient eigentlich nur dazu, um IPS zu sagen, Lade neu. Tut er aber nicht. Es ändert sich die HTML Datei im iframe, nicht aber der Code in der HTML-Box. In der Version 7.0 hat das noch funktioniert. Ich könnte mir vorstellen, dass dieses Verhalten dem „HTML-Blinken“ zum Opfer gefallen ist.

Kann man da nicht einfach ein wenig Random-Code mit in die Box schreiben? Dass das sonst nicht aktualisiert wird, finde ich ganz gut.

Ich hab z.B. ein Radarbild in der HTMLbox und fülle die Variable mit diesem über ein zyklsiches Ereignis. Aber in der neuen Visu aktualisiert sich nichts stündlich. Bin aber der Meinung das ging mal…

<img src="https://morgenwirdes.de/api/v3/gif6.php?lat=54.04&long=9.48&delay=70&type=1&zoomlvl=5&bar=1&map=0&textcol=ffffff&bgcol=8393c9" alt="Regenradar" style="max-width:380px; height:auto; width: auto; display: block; margin: auto;">

Ja, das wäre ein Möglichkeit. Andererseits gibt es ja gerade das Aktualisierungsdatum, um eine Aktualisierung kundzutun.
Und genauso wurde es bislang genutzt.

Ich habe es so gelöst, dass ich in and den Dateinamen einfach einen Timestamp (time()) angehängt habe. Damit ändert sich der Inhalt. Zwar nicht sehr nachhaltig, weil halt jedesmal eine neue Datei erstellt wird, aber es funktioniert.
ODER, was auch gehen müsste, fällt mir eben ein, die Variable vorher leeren, dann reinschreiben.

Mit dem nächsten Update wird die Kachel auch bei einer Aktualisierung neu geladen.

2 „Gefällt mir“

Fortsetzung der Diskussion von IP-Symcon 7.1.x (Beta):

Inzwischen sieht es im Browser gut aus.

In der App dagegen wird die Kachel erst aktualisiert, wenn man die Kachel vergrößert. Da passt etwas noch nicht:


@Dr.Niels: habt ihr das auf dem Schirm?

Ja, da ist @Parzival dran.