FHEM Forum

FHEM => Frontends => FLOORPLAN => Thema gestartet von: Holgi0815 am 09 Dezember 2013, 19:53:56

Titel: longpoll/S300TH im floorplan
Beitrag von: Holgi0815 am 09 Dezember 2013, 19:53:56
Hi zusammen,

ich brauch mal Hilfe bitte:
ich stelle Sensormesswerte auf einen floorplan dar. Das device ist im FP mit "S300TH" deklariert, damti´s auch schön bunt ist...
nach dem ersten Aufruf oder einem refresh sieht alles gut aus.
Wenn dann aber ein neuer Wert über longpoll reinkomt, "verschwindet" die S300Th Darstellung.
ich hab mal 2 gifs angehängt.

in den logs+ evwentmnitor ist nichts ungewöhnliches erkennbar
Habt Ihr noch eine Idee, wo ich suchen kann??
Danke
Holger
Titel: Antw:longpoll/S300TH im floorplan
Beitrag von: Breaker am 24 Dezember 2013, 08:32:19
Hallo,

Gibt es schon eine Lösung?
Habe seit einiger Zeit (Update?) das selbe Problem.

Gruß
Titel: Antw:longpoll/S300TH im floorplan
Beitrag von: UliM am 24 Dezember 2013, 11:24:43
Hi,
Ursache ist, dass floorplan.pm bei Stil4 besondere html-tags für die Formatierung einbaut.
Longpoll aktualisiert dann jedoch nicht via floorplan.pm, sondern mittels fhemweb.js - letzteres setzt aber diese besonderen html-tags nicht - deshalb sieht die Formatierung dann so "dürftig" aus.

Lösung geht über userreadings... mal suchen... hier:
http://forum.fhem.de/index.php/topic,10392.msg60300.html#msg60300
Man muss also ein userreading erzeugen (copy+paste aus dem o.g. link) und dann in floorplan nicht mit Stil4, sondern Stil3 anzeigen.

Geht's damit?

Gruß, Uli
Titel: Antw:longpoll/S300TH im floorplan
Beitrag von: justme1968 am 24 Dezember 2013, 12:28:55
wäre es nicht schöner wenn es auch mit Stil4 out of the box gehen würde?

dazu müsste es reichen wenn du um den wert noch mal ein extra div mit der formatierung machst. beispiel:

bis jetzt: <div style=floorplan_style informid=xxx>wert</div>
besser in diesem fall: <div style=floorplan_style><div informid=xxx>wert</div></div>

damit ändert longpoll nur noch den inneren div und den wert, der div drum rum bleibt mit dem floorplanstyle erhalten.

gruss
  andre
Titel: Antw:longpoll/S300TH im floorplan
Beitrag von: UliM am 24 Dezember 2013, 13:00:17
Hi Andre,
schöner Ansatz - es sind aber zwei Werte.
Aktueller code in floorplan.pm  ($txt ist die Rückgabe aus FW_devState):
if ($style == 4 && $txt =~ /T: ([\-0-9\.]+)[ ]+H: ([\-0-9\.]+).*/) {        # S300TH-specific
   $txt = "<span class='fp_tempvalue'>".$1."&deg;C</span><BR><span class='fp_humvalue'>".$2."%</span>";
    }

Dadurch kann man Temperatur und Humidity unterschiedlich formatieren.

Müsste dann also werden
   $txt = "<span class='fp_tempvalue'><div informid=$d-temperature>".$1."</div>&deg;C</span><BR><span class='fp_humvalue'><div informid=$d-humidity>".$2."</div>%</span>";

?

Gruß, Uli
Titel: Antw:longpoll/S300TH im floorplan
Beitrag von: justme1968 am 24 Dezember 2013, 13:03:21
ja. du kannst es beliebig schachteln. longpoll ändert nur genau das div mit der passenden informId. alles darüber bleibt wie es ist.

gruss
  andre
Titel: Antw:longpoll/S300TH im floorplan
Beitrag von: UliM am 24 Dezember 2013, 13:17:24
Das funktioniert :)
Kleiner Haken: Wird mit Zeilenumbruch nach </div> dargestellt. Ne Idee wie ich das unterbinden kann?

html sieht so aus:
<tr class="devicestate fp_Peter" id="ez_Aussensensor">
<td colspan="0"><span class='fp_tempvalue'><div informId=ez_Aussensensor-temperature>14.2</div>&deg;C</span><BR><span class='fp_humvalue'><div informId=ez_Aussensensor-humidity>54</div>%</span>
</td></tr>

=8-)
Titel: Antw:longpoll/S300TH im floorplan
Beitrag von: justme1968 am 24 Dezember 2013, 13:52:49
so müsste es gehen:<tr class="devicestate fp_Peter" id="ez_Aussensensor"><table>                                                     
<tr><td><div class='fp_tempvalue'><div informId=ez_Aussensensor-temperature>14.2</div></div></td><td><div class='fp_tempvalue'>&deg;C</div></td></tr>
<tr><td><div class='fp_humvalue'><div informId=ez_Aussensensor-humidity>54</div></div><td><div class='fp_humvalue'>%</div></td></tr>
</table></tr>


gruss
  andre

edit: noch etwas: gibt es einen besonderen grund das du span statt div verwendest?
edit2: noch mal geändert damit die einheiten auch farbig werden.
Titel: Antw:longpoll/S300TH im floorplan
Beitrag von: UliM am 24 Dezember 2013, 14:34:59
Hi Andre,
danke!
Hab etwas gegoogelt, etwas getestet - es geht auch mit <span> statt <div> :
<tr class="devicestate fp_Peter" id="ez_Aussensensor">
<td><span class='fp_tempvalue' display=inline><span informId=ez_Aussensensor-temperature>13.9</span>&deg;C</span><BR><span class='fp_humvalue'><span informId=ez_Aussensensor-humidity>52.9</span>%</span>
</td></tr>


Hab's so eingecheckt - ab morgen per updata.
Stil4 geht dann mit longpoll also auch ohne das userreading.

Schöne Weihnachten,
Uli
Titel: Antw:longpoll/S300TH im floorplan
Beitrag von: justme1968 am 24 Dezember 2013, 14:46:04
hab auch gerade noch mal nachgesehen.

ich hab span immer mit zeilen in verbdinung gebracht. das ist zwar so aber div ist das element das den zeilenumbruch hinzufügt und span nicht...

gruss
  andre
Titel: Antw:longpoll/S300TH im floorplan
Beitrag von: Holgi0815 am 25 Dezember 2013, 15:26:04
Hi Ihr,

ich gerade erst gesehen, daß es neue Antworten gibt.

Beim update kam heute 95_FLOORPLAN.pm mit und nun funktioniert die Anzeige einwandfrei!

Danke
Holger
Titel: Antw:longpoll/S300TH im floorplan
Beitrag von: fiedel am 26 Dezember 2013, 10:15:59
Hallo ihr beiden, vielen Dank!

Floorplan wird ja immer besser! Jetzt hätte ich nur noch ein Problemchen, um endlich Floorplan mit Longpoll nutzen zu können. Vielleicht ist ja dafür eine ähnliche Lösung möglich:

Ich nutze im Floorplan für meine FHTTKs spezielle Icons. Also diese "$fp_fpimage" aus dem Abschnitt "Device-state per Device" in der Floorplan.pm.

Wenn ich Longpoll aktiviere, verschwinden diese speziellen Icons regelmäßig und werden durch die "normalen" state- oder devstate- Icons ersetzt. Bisher kann ich deshalb nur Refresh für die FP- Instanz verwenden, aber nicht Longpoll.

Viele Grüße

Frank
Titel: Antw:longpoll/S300TH im floorplan
Beitrag von: UliM am 05 Januar 2014, 11:53:08
Dazu weiter hier: http://forum.fhem.de/index.php/topic,18328.0.html