state mit iframe geht nicht mehr seit einem der letzten Updates

Begonnen von mumpitzstuff, 09 Juni 2020, 23:55:14

Vorheriges Thema - Nächstes Thema

mumpitzstuff

Die folgenden beiden DOIFs sind seit Monaten gelaufen, jetzt zeigen sie nichts mehr an.

defmod di_WETTER DOIF ([+01:00])
attr di_WETTER do always
attr di_WETTER room WETTER
attr di_WETTER state {('<iframe src="https://www.meteoblue.com/de/wetter/widget/three/ditzingen_deutschland_2936705?geoloc=fixed&nocurrent=0&noforecast=0&days=4&tempunit=CELSIUS&windunit=KILOMETER_PER_HOUR&layout=dark"  frameborder="0" scrolling="NO" allowtransparency="true" sandbox="allow-same-origin allow-scripts allow-popups allow-popups-to-escape-sandbox" style="width: 460px;;height: 588px"></iframe><div><!-- DO NOT REMOVE THIS LINK --><a href="https://www.meteoblue.com/de/wetter/vorhersage/woche/ditzingen_deutschland_2936705?utm_source=weather_widget&utm_medium=linkus&utm_content=three&utm_campaign=Weather%2BWidget" target="_blank">meteoblue</a></div>')}


defmod di_WETTER1 DOIF ([+01:00])
attr di_WETTER1 do always
attr di_WETTER1 room WETTER
attr di_WETTER1 state {('<script type="text/javascript" src="https://darksky.net/widget/default/48.8264,9.0658/uk12/de.js?width=100%&height=420&title=Ditzingen&textColor=333333&bgColor=FFFFFF&transparency=false&skyColor=undefined&fontFamily=Default&customFont=&units=uk&htColor=333333&ltColor=C7C7C7&displaySum=yes&displayHeader=yes"></script>')}


Das Problem muss es erst seit kurzem geben.

Beim Öffnen des Raumes erhalte ich ebenfalls folgende Logeinträge:

2020.06.09 23:51:46 1: PERL WARNING: Use of uninitialized value $unit in sprintf at ./FHEM/98_DOIF.pm line 4096.
2020.06.09 23:51:46 1: stacktrace:
2020.06.09 23:51:46 1:     main::__ANON__                      called by ./FHEM/98_DOIF.pm (4096)
2020.06.09 23:51:46 1:     ui_Table::bar                       called by (eval 2672) (1)
2020.06.09 23:51:46 1:     (eval)                              called by ./FHEM/01_FHEMWEB.pm (2908)
2020.06.09 23:51:46 1:     main::FW_dev2image                  called by ./FHEM/01_FHEMWEB.pm (3231)
2020.06.09 23:51:46 1:     main::FW_devState                   called by ./FHEM/01_FHEMWEB.pm (1826)
2020.06.09 23:51:46 1:     main::FW_makeDeviceLine             called by ./FHEM/01_FHEMWEB.pm (1999)
2020.06.09 23:51:46 1:     main::FW_showRoom                   called by ./FHEM/01_FHEMWEB.pm (1159)
2020.06.09 23:51:46 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (590)
2020.06.09 23:51:46 1:     main::FW_Read                       called by fhem.pl (3791)
2020.06.09 23:51:46 1:     main::CallFn                        called by fhem.pl (761)


Also in der sub bar fehlt eindeutig:

$unit="" if (!defined $unit);

Leider behebt das nur die Fehlermeldungen im Logfile, nicht jedoch das die beiden iframes nicht mehr funktionieren.


Damian

Das iframe funktioniert bei mir ohne Probleme. Man muss natürlich eine Stunde warten oder set cmd_1 ausführen, wenn es sofort funktionieren soll.

Das Script funktioniert bei mir nicht.

Beim state hat sich im DOIF nichts geändert, also gehe nicht davon aus, dass es mit der aktuellen DOIF-Version etwas zu tun hat.

Die Warnung für unit habe ich behoben.

Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

mumpitzstuff

Ups mein Fehler. Da hat wohl ein Filter zugeschlagen und keine iframes mehr durchgelassen. Jetzt geht wieder alles wunderbar. Sry für die Umstände.