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
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
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?
Hi,
was ist ein newUrl-feature?
Gruß, Uli
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 (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.
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
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 ....
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
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
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
Hi,
Da muss ein WVC-kundiger ran, da hier nur Effekte, aber keine Fehler beschrieben sind.
Gruß Uli
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
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
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 (http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd)">
<html xmlns="http://www.w3.org/1999/xhtml (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>
Hi,
das doppelte Body-Tag ist behoben. Prüf bitte ob das update des Programms bei Dir wirklich h funktioniert hat.
=8-)
Hier mein HTML-Head:
<head root="/fhem">
<title>Tablet</title>
<meta charset="UTF-8">
<link href="/fhem/pgm2/jquery-ui.min.css" rel="stylesheet">
<link href="/fhem/css/JO_TABLET_floorplanstyle2.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">var wvcDevices = {12345: 'WandTablet'}</script><script type="text/javascript" src="/fhem/pgm2/webviewcontrol.js"></script><script type="text/javascript" charset="UTF-8"></script>
<script attr="" type="text/javascript" src="/fhem/pgm2/dashboard.js"></script>
</head>
Und, funktioniert WVC damit?
Also ich habe die aktuelle FLOORPLAN.pm (update von heute) und WVC funktioniert nur sehr sporadisch (nach fünf bis zehn Seitenwechseln ist die Akkuanzeige mal wieder da). Mit dem alten FLOORPLAN mit Fix ging es...
Ronny
Sowohl rainer1962 als auch cotecmania verwenden nicht die aktuellste FLOORPLAN Version.
Der Fix für den doppelten body Tag wurde im svn am 17.1. eingecheckt. Und bei cotecmania sieht man an den doppelten Anführungszeichen nach dem attr, dass es nicht die aktuellste Version ist:
<script attr="" type="text/javascript"
Die eingecheckte FLOORPLAN Version verwendet einfache Anführungszeichen:
<script attr='' type="text/javascript" src="/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"></script>
(Ausschnitt aus meinem Header)
Gruß,
Gero
Mein Header:
<!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>Uebersicht</title>
<meta charset="UTF-8">
<link href="/fhem/pgm2/jquery-ui.min.css" rel="stylesheet"/>
<link href="/fhem/css/darkfloorplanstyle.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_pageswap.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 type="text/javascript" src="/fhem/pgm2/fhemweb_uzsu.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 = {192002: 'EG.st.BP.Tuer', 123456: 'OG.ez.BP.Whg_Tuer', 810810: 'WVC.HandyRonny'}</script><script type="text/javascript" charset="UTF-8"></script>
<script attr='' type="text/javascript" src="/fhem/pgm2/hm485.js?1424801995.08059"><script type="text/javascript" charset="UTF-8"></script>
</head>
<body name="Uebersicht" generated="1424844171" longpoll="1" longpollfilter="fp_Uebersicht=.%2B" >
Das Problem könnte beim nicht abgeschlossenen <script> liegen:
<script attr='' type="text/javascript" src="/fhem/pgm2/hm485.js?1424801995.08059"><script type="text/javascript" charset="UTF-8"></script>
Zitat von: RoBra81 am 25 Februar 2015, 07:08:24
Das Problem könnte beim nicht abgeschlossenen <script> liegen:
<script attr='' type="text/javascript" src="/fhem/pgm2/hm485.js?1424801995.08059"><script type="text/javascript" charset="UTF-8"></script>
Das Problem ist behoben, es funktioniert aber trotzdem nicht - daran lag's also nicht...
Sieh die mal in einem Browser die Javascript Konsole an. Vielleicht siehst du dort etwas.
Du verwendest einige Module, die ich nicht verwende, bzw. die noch gar nicht offiziell verfügbar sind.
z.B.:
<script type="text/javascript" src="/fhem/pgm2/fhemweb_pageswap.js"></script>
<script type="text/javascript" src="/fhem/pgm2/fhemweb_uzsu.js"></script>
Jeder Javascript Fehler kann dazu führen, dass WVC nicht mehr richtig funktioniert.
Gruß,
Gero
Zitat von: gero am 24 Februar 2015, 22:43:34
Sowohl rainer1962 als auch cotecmania verwenden nicht die aktuellste FLOORPLAN Version.
Der Fix für den doppelten body Tag wurde im svn am 17.1. eingecheckt. Und bei cotecmania sieht man an den doppelten Anführungszeichen nach dem attr, dass es nicht die aktuellste Version ist:
<script attr="" type="text/javascript"
Die eingecheckte FLOORPLAN Version verwendet einfache Anführungszeichen:
<script attr='' type="text/javascript" src="/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"></script>
(Ausschnitt aus meinem Header)
Habe soeben einen update force gemacht und trotzdem sieht mein Header so aus :
<title>Tablet</title>
<meta charset="UTF-8">
<link href="/fhem/pgm2/jquery-ui.min.css" rel="stylesheet">
<link href="/fhem/css/JO_TABLET_floorplanstyle2.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">var wvcDevices = {12345: 'WandTablet'}</script><script type="text/javascript" src="/fhem/pgm2/webviewcontrol.js"></script><script type="text/javascript" charset="UTF-8"></script>
<script attr="" type="text/javascript" src="/fhem/pgm2/dashboard.js"></script>
Bin jederzeit bereit, weitere Tests zu machen, denn das WebViewControl hat seither super funktioniert und läuft auf meinem Wandtablet und ist meine Schaltzentrale.
Wie man im WebViewControl - Thread sieht, haben dieses Problem leider viele ...
Gruss
Joe
Kannst du mal bitte ein
version FLOORPLAN
in der Commandline eingeben?
Bei mir wird folgende Version angezeigt:
# $Id: 95_FLOORPLAN.pm 8062 2015-02-22 08:18:15Z ulimaass $
Gruß,
Gero
Hi,
# $Id: 95_FLOORPLAN.pm 8062 2015-02-22 08:18:15Z ulimaass $
Heute nochmals upgedated und neu gestartet.
Header immer noch mit doppelten "" ...
Gibt es Probleme wenn im FHEM-Verzeichnis noch Sicherungskopien liegen wie 95_Floorplan-old.pm ?
Gruss
Joe
Seltsam...
Vielleicht ersetzt auch dein Browser die singlequotes einfach durch doublequotes.
Was mich aber auch wundert ist die Reihenfolge der script Tags:
Deine Variante:
<script attr="" type="text/javascript" src="/fhem/pgm2/cordova-2.3.0.js"></script><script type="text/javascript">var wvcDevices = {12345: 'WandTablet'}</script><script type="text/javascript" src="/fhem/pgm2/webviewcontrol.js"></script><script type="text/javascript" charset="UTF-8"></script>
Meine Variante:
<script attr='' type="text/javascript" src="/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"></script>
Bei dir kommen zuerst die IDs der Geräte und danach das webviewcontrol.js. Bei mir ist es umgekehrt.
Vielleicht hat jemand anderes eine Idee, was da los ist?
Gruß,
Gero
Echt Käse.
Habe im Januar alles umgestellt auf ein WandTablet mit WebViewControl und Floorplan und es hat alles bestens funktioniert.
Longpoll und Sprachausgabe ...
Und jetzt geht nichts mehr ...
Da bleibt wohl nur noch der Umstieg aufs Dashboard ...
Die oben erwähnten Sicherungskopien hast Du aber mal weggeworfen (und danach neu gestartet) um sicherzugehen, dass es daran nicht liegt?
Logo ;)