Fehler in 95_FLOORPLAN.pm line 499 - FW Extensions

Begonnen von gero, 20 Februar 2015, 10:56:34

Vorheriges Thema - Nächstes Thema

gero

Hallo,

es gibt anscheinend einen Fehler im 95_FLOORPLAN.pm, der schon seit einiger Zeit existiert. In der aktuellen Version (Update von gestern) befindet er sich in Zeile 499

     
FW_pO sprintf($jsTemplate, $script) if ($script);

Der Formatstring $jsTemplate erwartet zwei Parameter, bekommt aber nur einen:
$jsTemplate = '<script attr=\'%s\' type="text/javascript" src="%s"></script>'."\n";

Dies führt zum einen zu der Fehlermeldung
PERL WARNING: Missing argument in sprintf at ./FHEM/95_FLOORPLAN.pm line 499.

und zum anderen dazu, dass z.B. WebViewControl im Floorplan nicht mehr richtig funtkioniert.

Hier  der durch den Fehler falsch generierte Code:
<script attr="/fhem/pgm2/cordova-2.3.0.js"></script>
<script type="text/javascript" src="/fhem/pgm2/webviewcontrol.js"></script>
<script type="text/javascript">var wvcDevices = {" 54321':="" 'nexus4_gero',="" '11111':="" 'wv_tablet'}<="" script="">
<script type="text/javascript" charset="UTF-8' type="text/javascript" src=""></script>


Meiner Meinung nach sollte Zeile 499 folgendermaßen abgeändert werden:
     
FW_pO sprintf($jsTemplate, "", $script) if ($script);


Allerdings bin ich mir nicht 100%ig sicher.

Kann jemand diesen Bug bestätigen und der Modulverantwortliche (Uli?) den Bug ggfls. fixen?

Gruß,
Gero
Odroid C1 - CULV3-868, JeeLink
16 x TX 29 DTH
MAX!: 15x Heizkörperthermostat+, 2x Wandthermostat, 14x Fenserkontakt, 1x Ecotaster
FS20 S4A, FS20IRF, BSB-Heizungssteuerung über Atmega2560
Z-Wave: ZME_UZB1, Fibaro Wall Plug + Motion Sensor

UliM

Hi,
Danke für die saubere Analyse.
Ich werd mal abgleichen wie die entspr. Zeile in fhemweb aussieht, das nachziehen und einchecken.
Gero, wenn Du mir per PN Deine Mailadresse schickst, mail ich Dir die korrigierte Version vorab zum Testen.
Komme aber erst morgen dazu.
Gruß Uli
RPi4/Raspbian, CUL V3 (ca. 30 HomeMatic-devices), LAN (HarmonyHub, alexa etc.).  Fördermitglied des FHEM e.V.

rainer1962

kann es sein dass mit dem neuen Floorplan-Update auch das "newUrl" Feauture für WVC abhanden gekommen ist?
Jedenfalls funktioniert es nicht mehr.


Es kommen keine Fehler, aber auch keine Reaktion seitens WVC. Ich kann die Seite einfach nicht umschalten.


Hat den Fehler noch jemand bemerkt?
2xFHEM auf Raspi3,MAXLAN,HMLAN,KeyMatic,MAX Heizung,2x HM-WDS10_TH-O,3xHM-SEC-SD,3xHM Wandtaster 2-Kanal, 2xWandtaster 6-Kanal,1xHM Bewegungsmelder,4xHM EinbauActor,4x Jalousien Actor,2xEGPM2LAN,2xHM DimAktor,2xFritzbox 6840/6490,4-20ma Levelsensor-Ina219,PIP5048,Raspi2 als Floorplan,4xJeeLink

UliM

RPi4/Raspbian, CUL V3 (ca. 30 HomeMatic-devices), LAN (HarmonyHub, alexa etc.).  Fördermitglied des FHEM e.V.

rainer1962

#4
man kann mit "newUrl" dem WVC eine neue Url mitgeben. Dann schaltet WVC die Seite zb. im Floorplan um ...


http://www.fhemwiki.de/wiki/WebViewControl


ich lass die seiten im wvc mit einer fernbedienung von Homematic (RC19) umschalten. Dann brauch ich nicht immer zum Tablet rennen und dort die Seite umschalten.



2xFHEM auf Raspi3,MAXLAN,HMLAN,KeyMatic,MAX Heizung,2x HM-WDS10_TH-O,3xHM-SEC-SD,3xHM Wandtaster 2-Kanal, 2xWandtaster 6-Kanal,1xHM Bewegungsmelder,4xHM EinbauActor,4x Jalousien Actor,2xEGPM2LAN,2xHM DimAktor,2xFritzbox 6840/6490,4-20ma Levelsensor-Ina219,PIP5048,Raspi2 als Floorplan,4xJeeLink

UliM

Hi,
ah ja.
Ich wüsste nicht dass es dieses feature in floorplan schoon gegeben hätte - und weiss auch nicht wie's technisch funktioniert.
Gruß, Uli
RPi4/Raspbian, CUL V3 (ca. 30 HomeMatic-devices), LAN (HarmonyHub, alexa etc.).  Fördermitglied des FHEM e.V.

rainer1962

die kommunikation mit dem WVC wird ja über javascriot / Ajax realisiert so wie ich weiss ...
kann es sein dass durch änderungen in der floorplan.pm irgendwie die kommunikation fehlerhaft geworden ist?


Vielleicht kann man mit dem Entwickler von WVC enger zusammenarbeiten ???


Wäre schön wenn das alles wieder funktionieren würde ....


vielen dank schon für eure mühe ....



2xFHEM auf Raspi3,MAXLAN,HMLAN,KeyMatic,MAX Heizung,2x HM-WDS10_TH-O,3xHM-SEC-SD,3xHM Wandtaster 2-Kanal, 2xWandtaster 6-Kanal,1xHM Bewegungsmelder,4xHM EinbauActor,4x Jalousien Actor,2xEGPM2LAN,2xHM DimAktor,2xFritzbox 6840/6490,4-20ma Levelsensor-Ina219,PIP5048,Raspi2 als Floorplan,4xJeeLink

UliM

Hi,
klar, kann schon sein. Vielleicht baer auch nicht :)
Wie gesagt, ich nutze WVC selbst nicht und kann mangels Android-Geräten auch nix testen. Auch weiß ich nicht wer WVC entwickelt, es ist nicht inegecheckt und es gibt mithin wohl auch keinen Eintrag in maintainer.txt .
Für Zusammenarbeit bin ich sicher offen, der WVC-Entwickler kann sich ja ggf. bei mir melden.
Gruß, Uli
RPi4/Raspbian, CUL V3 (ca. 30 HomeMatic-devices), LAN (HarmonyHub, alexa etc.).  Fördermitglied des FHEM e.V.

UliM

#8
Zitat von: UliM am 20 Februar 2015, 11:06:38
Ich werd mal abgleichen wie die entspr. Zeile in fhemweb aussieht, das nachziehen und einchecken.
Gero, wenn Du mir per PN Deine Mailadresse schickst, mail ich Dir die korrigierte Version vorab zum Testen.
Moin,
hab den o.g. fix von Gero eingebaut, er hat's auch erfolgreich getestet und meinte, dass newURL etc Folgefehler des nun gefixten js-Aufrufs sind.
Hab's nun eingecheckt.
Wer's eilig hat kann sich's aus dem SVN runterladen, sonst ab morgen per update.
Gruß, Uli
RPi4/Raspbian, CUL V3 (ca. 30 HomeMatic-devices), LAN (HarmonyHub, alexa etc.).  Fördermitglied des FHEM e.V.

cotecmania

Hallo,

Trotz heutigem Update habe ich wieder keine Akkuanzeige im Floorplan im WebViewControl und nach ein paar Sekunden den bekannten "BlueScreen"

mit einer alten Version von Floorplan läufts ...

Bitte dringend um Hilfe ...

Gruss
FHEM auf RaspberryPI B (buster)
2xCUL868 für MAX/Slow_RF, HM-LAN, JeeLink
MAX!/HM-Thermostate, FS20/HM-Rolladenschalter, FS20-EM, LevelJet-Ölstandsmessung, PCA301, IT, KM271, IPCAM, FireTAB10 FTUI

UliM

Hi,
Da muss ein WVC-kundiger ran, da hier nur Effekte, aber keine Fehler beschrieben sind.
Gruß Uli
RPi4/Raspbian, CUL V3 (ca. 30 HomeMatic-devices), LAN (HarmonyHub, alexa etc.).  Fördermitglied des FHEM e.V.

rainer1962

Hallo Uli,
das Nichtfunktionieren des "newUrl" hing mit einer verwendeten WVC.App zusammen. Ich habe leider nicht die DEV Version genommen .... :-(
Diese Funktion gibt es nur in der .dev Version.

Sorry dass sich meinetwegen viele Leute auf ne falsche Spur begeben haben ...

Aber was cotecmania berichtet "BlueScreen" nach einigen Sekunden der ist bei mir auch noch da ....

Die alte Floorplan geht , aber auch nur mit dem JS-Fix "FW_pO sprintf($jsTemplate, "", $script) if ($script);"  .....

Gruss Rainer

Zitat von: UliM am 22 Februar 2015, 09:20:19
Moin,
hab den o.g. fix von Gero eingebaut, er hat's auch erfolgreich getestet und meinte, dass newURL etc Folgefehler des nun gefixten js-Aufrufs sind.
Hab's nun eingecheckt.
Wer's eilig hat kann sich's aus dem SVN runterladen, sonst ab morgen per update.
Gruß, Uli
2xFHEM auf Raspi3,MAXLAN,HMLAN,KeyMatic,MAX Heizung,2x HM-WDS10_TH-O,3xHM-SEC-SD,3xHM Wandtaster 2-Kanal, 2xWandtaster 6-Kanal,1xHM Bewegungsmelder,4xHM EinbauActor,4x Jalousien Actor,2xEGPM2LAN,2xHM DimAktor,2xFritzbox 6840/6490,4-20ma Levelsensor-Ina219,PIP5048,Raspi2 als Floorplan,4xJeeLink

gero

Ich habe gerade extra nochmal kontrolliert, ob ich das aktuellste Update eingespielt habe. Positiv.
Bei mir läuft der Floorplan mit WVC ohne Probleme.
Jetzt müssen wir irgendwie herausfinden, was bei euch zum Fehler führt.
Hat mal jemand von euch eine minimale fhem.cfg probiert?
Wie sieht der Header der HTML Seite im Floorplan aus?
Andere Ideen...?

Gruß,
Gero
Odroid C1 - CULV3-868, JeeLink
16 x TX 29 DTH
MAX!: 15x Heizkörperthermostat+, 2x Wandthermostat, 14x Fenserkontakt, 1x Ecotaster
FS20 S4A, FS20IRF, BSB-Heizungssteuerung über Atmega2560
Z-Wave: ZME_UZB1, Fibaro Wall Plug + Motion Sensor

rainer1962

du glücklicher gero,
hast du auch die WVC - DEV am laufen ???

Hier mein Quelltext vom floorplan ....

Zitat
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head root="/fhem">
<title>Grundriss</title>
<meta charset="UTF-8">
<link href="/fhem/pgm2/jquery-ui.min.css" rel="stylesheet"/>
<link href="/fhem/css/zu_Hause_Floorplan.css" rel="stylesheet"/>
<script type="text/javascript" src="/fhem/pgm2/jquery.min.js"></script>
<script type="text/javascript" src="/fhem/pgm2/jquery-ui.min.js"></script>
<script type="text/javascript" src="/fhem/pgm2/fhemweb.js"></script>
<script type="text/javascript" src="/fhem/pgm2/fhemweb_colorpicker.js"></script>
<script type="text/javascript" src="/fhem/pgm2/fhemweb_knob.js"></script>
<script type="text/javascript" src="/fhem/pgm2/fhemweb_readingsGroup.js"></script>
<script type="text/javascript" src="/fhem/pgm2/fhemweb_readingsHistory.js"></script>
<script attr='' type="text/javascript" src="/fhem/pgm2/cordova-2.3.0.js"></script><script type="text/javascript" src="/fhem/js/webviewcontrol.js"></script><script type="text/javascript">var wvcDevices = {'123321': 'androidTablet1', '12345': 'androidTablet'}</script><script type="text/javascript" charset="UTF-8"></script>
</head>
<body name="Grundriss" generated="1424717467.37501" longpoll="1" >
<body id="Grundriss-body" onload="FW_delayedStart()">

<div id="backimg" style="width: 99%; height: 99%;">
<img class=' fp_Grundriss' src="/fhem/images/default/fp_Grundriss.png" alt="fp_Grundriss" title="fp_Grundriss">
</div>

<div style="z-index:999" class="fp_arrange" id="fpmenu">
<form method="post" action="/fhem/floorplan/Grundriss">
<div class="menu-add" id="fpmenu">
<select   name="add.dev" class="menu-add"><option value='Action_Device (Unsorted) dummy'>Action_Device (Unsorted) dummy</option>
<option value='Anrufliste (Telefon) readingsGroup'>Anrufliste (Telefon) readingsGroup</option>
<option value='Blumenkasten_Wasser_abends (Unsorted) at'>Blumenkasten_Wasser_abends (Unsorted) at</option>
<option value='Blumenkasten_Wasser_abends_1 (Unsorted) at'>Blumenkasten_Wasser_abends_1 (Unsorted) at</option>
<option value='Blumenkasten_Wasser_frueh (Unsorted) at'>Blumenkasten_Wasser_frueh (Unsorted) at</option>
<option value='Blumenkasten_Wasser_mittag (Unsorted) at'>Blumenkasten_Wasser_mittag (Unsorted) at</option>
<option value='CUL_HM_HM_PB_2_WM55_20541E_Btn_01 (Unsorted) CUL_HM'>CUL_HM_HM_PB_2_WM55_20541E_Btn_01 (Unsorted) CUL_HM</option>
<option value='CUL_HM_HM_PB_2_WM55_20541E_Btn_02 (Unsorted) CUL_HM'>CUL_HM_HM_PB_2_WM55_20541E_Btn_02 (Unsorted) CUL_HM</option>
<option value='CUL_HM_HM_PB_6_WM55_217A1C_Btn_01 (Unsorted) CUL_HM'>CUL_HM_HM_PB_6_WM55_217A1C_Btn_01 (Unsorted) CUL_HM</option>
<option value='CUL_HM_HM_PB_6_WM55_217A1C_Btn_02 (Unsorted) CUL_HM'>CUL_HM_HM_PB_6_WM55_217A1C_Btn_02 (Unsorted) CUL_HM</option>
<option value='CUL_HM_HM_PB_6_WM55_217A1C_Btn_03 (Unsorted) CUL_HM'>CUL_HM_HM_PB_6_WM55_217A1C_Btn_03 (Unsorted) CUL_HM</option>
<option value='CUL_HM_HM_PB_6_WM55_217A1C_Btn_04 (Unsorted) CUL_HM'>CUL_HM_HM_PB_6_WM55_217A1C_Btn_04 (Unsorted) CUL_HM</option>
<option value='CUL_HM_HM_PB_6_WM55_217A1C_Btn_05 (Unsorted) CUL_HM'>CUL_HM_HM_PB_6_WM55_217A1C_Btn_05 (Unsorted) CUL_HM</option>
<option value='CUL_HM_HM_PB_6_WM55_217A1C_Btn_06 (Unsorted) CUL_HM'>CUL_HM_HM_PB_6_WM55_217A1C_Btn_06 (Unsorted) CUL_HM</option>
<option value='CUL_HM_HM_SEC_MDIR_1F85D7 (Flur) CUL_HM (Bewegungsmelder Flur)'>CUL_HM_HM_SEC_MDIR_1F85D7 (Flur) CUL_HM (Bewegungsmelder Flur)</option>
<option value='Dum_TelMon_ShowNa_D (Telefon) dummy'>Dum_TelMon_ShowNa_D (Telefon) dummy</option>
<option value='Dum_TelMon_ShowNu_D (Telefon) dummy'>Dum_TelMon_ShowNu_D (Telefon) dummy</option>
2xFHEM auf Raspi3,MAXLAN,HMLAN,KeyMatic,MAX Heizung,2x HM-WDS10_TH-O,3xHM-SEC-SD,3xHM Wandtaster 2-Kanal, 2xWandtaster 6-Kanal,1xHM Bewegungsmelder,4xHM EinbauActor,4x Jalousien Actor,2xEGPM2LAN,2xHM DimAktor,2xFritzbox 6840/6490,4-20ma Levelsensor-Ina219,PIP5048,Raspi2 als Floorplan,4xJeeLink

UliM

Hi,
das doppelte Body-Tag ist behoben. Prüf bitte ob das update des Programms bei Dir wirklich h funktioniert hat.
=8-)
RPi4/Raspbian, CUL V3 (ca. 30 HomeMatic-devices), LAN (HarmonyHub, alexa etc.).  Fördermitglied des FHEM e.V.