Dummy Icon auf FTUI anzeigen

Begonnen von Tommy82, 06 November 2018, 16:06:01

Vorheriges Thema - Nächstes Thema

Tommy82

Hallo,
ich möchte mir einen Dummy Wert(Icon) auf meiner FTUI anzeigen lassen, das ganze geht hieraus hervor
https://forum.fhem.de/index.php/topic,92636.0.html

allerdings bekomme ich den Status nicht angezeigt auf der FTUI
Ich abe es sowohl mit dem Symbol wie auch mit dem Image Widget versucht, beim Image wird mir garnichts angezeigt, beim Symbol wird mir irgend ein "seltsames" Symbol angezeigt.
Habs grad mal noch so versucht:
Code: [Auswählen]
<div data-type="symbol" data-device="Anruferbild"  data-states='["594948929","473993""]' data-icons='[594948929.png"]' ></div>
aber auch dann wird nichts angezeigt

Vieleicht hat da auch noch einer eine idee
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

Thorsten Pferdekaemper

Hi,
mir fallen auf den ersten Blick zwei Dinge auf:
1. Es sollten genauso viele icons wie states sein.
2. Bei data-icons fehlt ein "
Gruß,
   Thorsten
FUIP

Tommy82

Hi,
erstmal danke für deine Tips,
mir ist aber noch ein grundlegender Fehler aufgefallen, deshalb hab ich nochmal was geändert, der Code in der FTUI sieht jetzt so aus:

<td>
<div data-type="symbol" data-device="Anruferliste" data-get="external_number" data-states='["0151xxxxx7"]' data-icons='["0151xxxxx7.png"]' ></div>
</td>

Die .png Dateien liegen unter /opt/fhem/www/images/default/

Die Anruferliste sieht so aus:
Internals:
   DEF        192.168.188.1
   DeviceName 192.168.188.1:1012
   FD         14
   NAME       Telefon
   NOTIFYDEV  global
   NR         253
   NTFY_ORDER 50-Telefon
   PARTIAL   
   STATE      opened
   TYPE       FB_CALLMONITOR
   READINGS:
     2018-11-04 20:48:22   call_duration   0
     2018-11-04 20:48:22   call_id         0
     2018-11-04 20:48:22   direction       incoming
     2018-11-04 20:48:22   event           disconnect
     2018-11-04 20:48:22   external_connection SIP2
     2018-11-04 20:48:22   external_name   Thomas xyz
     2018-11-04 20:48:22   external_number 0151xxxx7
     2018-11-02 18:40:26   internal_connection Answering_Machine_1
     2018-11-04 20:48:22   internal_number 02xxxxxxx0
     2018-11-04 20:48:22   missed_call     0151xxxx7 (Thomas Halberstadt)
     2015-12-11 17:25:13   missed_call_line 02xxxxxxx0
     2018-11-06 18:36:46   state           opened
   helper:
     PHONEBOOKS:
       0:


Die idee ist ja das mir zu jeder nummer das richtige Anruferbild angezeigt wird, aber irgendwie klappt das leider noch nicht
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

Thorsten Pferdekaemper

Hi,
möglicherweise wird die Telefonnummer auch als Zahl interpretiert, was irgendeine Sonderbehandlung erfährt. Nimm mal versuchsweise den Namen.
Gruß,
    Thorsten
FUIP

Tommy82

Hab ich grade schon versucht, leider kein Unterschied zu vorher
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

Thorsten Pferdekaemper

Vielleicht liegt's auch daran, dass das Device "Telefon" heißt und nicht "Anruferliste"...
FUIP

Tommy82

Das ist absolut richtig  ???

Leider trotzdem keine Besserung, es wird nichts angezeigt

div data-type="symbol" data-device="Telefon" data-get="external_name" data-states='["Thomas xyz"]' data-icons='["0151xxx7.png"]' ></div>
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

Thorsten Pferdekaemper

Was  mir jetzt erst kommt: Das mit den Icons funktioniert so nicht. Das musst Du entweder so machen wie hier beschrieben:
https://wiki.fhem.de/wiki/FHEM_Tablet_UI#Icons
...oder das Image Widget nehmen:
https://wiki.fhem.de/wiki/FTUI_Widget_Image
FUIP

Tommy82

Hi,
auch damit bekomme ich es nicht hin, wenn ich es richtig verstehe wie es hier steht https://wiki.fhem.de/wiki/FHEM_Tablet_UI#Icons
dann muss ich ja in den head meiner Seite folgendes einbauen

<style type="text/css">
        .logo-fhem {
            background: href="/fhem/images/default no-repeat;
            width: 120px;
            height: 132px;
            background-size: contain;
        }
  </style>


unter /fhem/images/default liegen die Bilder

Im Body würde es dann so aussehen
<div data-type="symbol" data-device="Telefon" data-get="external_number" data-states='["0151xxxxx7"]' data-icon="logo-fhem" ></div> was aber ja eigentlich nicht funktionieren kann, denn wie soll da die Zuordnung des Bildes zu der Nummer funktionieren.

Unter https://wiki.fhem.de/wiki/FTUI_Widget_Image finde ich keine passende möglichkeit für mein Anliegen
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

Thorsten Pferdekaemper

Hi,
ok, da fehlen Dir wohl eine ganze Menge Grundlagen. Zuerst einmal wird CSS, HTML und JavaScript vom Browser verarbeitet. D.h. interne Pfade des Servers können gar nicht gehen. Außerdem braucht man für ein Hintergrundbild ("backgriund") den vollständigen Pfad zum Bild.
...aber egal erstmal.
Ich würde das folgendermaßen angehen:
1. Lege die Bilder so ab, dass sie über eine URL vom Browser aus erreichbar sind. Ausprobieren!
2. Bastle Dir ein userreading oder ähnliches, in das Du die URL abhängig von der Nummer einträgst. D.h. erledige die Ermittlung der URL im Backend.
3. Das neue Reading verwendest Du dann im Image Widget.
Gruß,
   Thorsten
FUIP

Tommy82

Zitat von: Thorsten Pferdekaemper am 07 November 2018, 09:28:32
Hi,
ok, da fehlen Dir wohl eine ganze Menge Grundlagen. Zuerst einmal wird CSS, HTML und JavaScript vom Browser verarbeitet. D.h. interne Pfade des Servers können gar nicht gehen. Außerdem braucht man für ein Hintergrundbild ("backgriund") den vollständigen Pfad zum Bild.
...aber egal erstmal.
Ich würde das folgendermaßen angehen:
1. Lege die Bilder so ab, dass sie über eine URL vom Browser aus erreichbar sind. Ausprobieren!
2. Bastle Dir ein userreading oder ähnliches, in das Du die URL abhängig von der Nummer einträgst. D.h. erledige die Ermittlung der URL im Backend.
3. Das neue Reading verwendest Du dann im Image Widget.
Gruß,
   Thorsten

Hi, zu 1, das versteh ich nicht ganz, der Browser kann doch auch die lokalen html Seiten aufrufen, die die einzelnen FTUI Seiten darstellen, wieso geht das mit den Bildern nicht?
Zu 2. dann wären wir wohl wieder hier wo ich nicht wirklich weiter komme https://forum.fhem.de/index.php/topic,92636.msg854698.html#msg854698
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

Thorsten Pferdekaemper

Zitat von: Tommy82 am 07 November 2018, 18:54:20
Hi, zu 1, das versteh ich nicht ganz, der Browser kann doch auch die lokalen html Seiten aufrufen, die die einzelnen FTUI Seiten darstellen,
Der Browser kann vielleicht schon "lokale" Seiten anzeigen, also solche, die auf demselben Rechner liegen, auf dem auch der Browser läuft. Das ist hier aber (mindestens konzeptionell) nicht so. Du hat wahrscheinlich auf irgendeinem Laptop/Telefon/Tablet den Browser laufen, aber FHEM auf einem RasPi oder so. Die FTUI-Seiten und auch die Bilder liegen auf dem RasPi. Dein Browser kann nicht wirklich auf die Dateien des RasPi zugreifen! Er bekommt nur das geliefert, was der Server (also der RasPi) liefern will.   

Zitat
wieso geht das mit den Bildern nicht?
Weil Du dem Browser keine URL zu den Bildern gibst, sondern einen Dateinamen, der nur auf dem Dateisystem des RasPi sinnvoll ist. (...also zumindest mal im Prinzip.)

Zitat
Zu 2. dann wären wir wohl wieder hier wo ich nicht wirklich weiter komme https://forum.fhem.de/index.php/topic,92636.msg854698.html#msg854698
Na da gehst Du aber auch gleich wieder einen Schritt weiter. Mach das ganze doch erst einmal mit einer Nummer. Wenn das klappt, dann kann man das immer noch erweitern.
Ich bin mir ganz sicher, dass das Image-Widget hier zielführender ist als alles andere.

Gruß,
   Thorsten
FUIP

Tommy82

Zitat von: Thorsten Pferdekaemper am 07 November 2018, 09:28:32
Hi,
ok, da fehlen Dir wohl eine ganze Menge Grundlagen. Zuerst einmal wird CSS, HTML und JavaScript vom Browser verarbeitet. D.h. interne Pfade des Servers können gar nicht gehen. Außerdem braucht man für ein Hintergrundbild ("backgriund") den vollständigen Pfad zum Bild.
...aber egal erstmal.
Ich würde das folgendermaßen angehen:
1. Lege die Bilder so ab, dass sie über eine URL vom Browser aus erreichbar sind. Ausprobieren!

Gruß,
   Thorsten

Also ich hänge immer noch hier, auch an der logik, die Bilder liegen doch auf dem gleichen Server wie die FTUI HMTL Seiten die der Browser darstellt, damit sollen sich doch die Bilder wenn sie in der FTUI HTML angegeben sind aufrufen lassen!?mIN HTML wäre das doch z.b. <img src="Bild.jpg"> !?in der FTUI müsste es doch über https://wiki.fhem.de/wiki/FTUI_Widget_Image#Dynamische_URL
gehen!?
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

Thorsten Pferdekaemper

Zitat von: Tommy82 am 13 Dezember 2018, 20:11:38
Also ich hänge immer noch hier, auch an der logik, die Bilder liegen doch auf dem gleichen Server wie die FTUI HMTL Seiten die der Browser darstellt, damit sollen sich doch die Bilder wenn sie in der FTUI HTML angegeben sind aufrufen lassen!?
Diese Schlussfolgerung verstehe ich nicht.

ZitatmIN HTML wäre das doch z.b. <img src="Bild.jpg"> !?
Das kann schon funktionieren. "Bild.jpg" muss halt auf dem Server im richtigen Pfad liegen. Wenn es sich um eine "Standard"-FTUI-Seite handelt, dann wahrscheinlich im Verzeichnis /opt/fhem/www/tablet. 

Zitat
in der FTUI müsste es doch über https://wiki.fhem.de/wiki/FTUI_Widget_Image#Dynamische_URL
gehen!?
Wahrscheinlich, wenn die Bilder im Verzeichnis /opt/fhem/www/images/TVSender liegen.

Aber vielleicht fängst Du wirklich mal vorne an. Mach Dir mal ein Verzeichnis entweder unterhalb von /opt/fhem/www/images oder /opt/fhem/www/tablet und lege dort ein paar Bilder rein. Diese müsstest Du dann entweder mit http://<ip>:<port>/fhem/ftui/<verzeichnis>/<bild-datei> oder http://<ip>:<port>/fhem/images/<verzeichnis>/<bild-datei> aufrufen können.

Als Beispiel kannst Du auch mal diese URL versuchen: http://<ip>:<port>/fhem/images/default/Shutdown.png
Das müsste einen kleinen roten "Aus"-Knopf zeigen.

Wenn das funktioniert, dann sehen wir weiter.

Gruß,
   Thorsten

FUIP

Paul

Zitat von: Tommy82 am 13 Dezember 2018, 20:11:38
IN HTML wäre das doch z.b. <img src="Bild.jpg">

So kannst du es auch in einer FTUI-Seite einbinden.
Cubietruck, HM-USB, CUL, FS20, FHT, HUE, Keymatic

Tommy82

Zitat von: Thorsten Pferdekaemper am 13 Dezember 2018, 21:14:04


Aber vielleicht fängst Du wirklich mal vorne an. Mach Dir mal ein Verzeichnis entweder unterhalb von /opt/fhem/www/images oder /opt/fhem/www/tablet und lege dort ein paar Bilder rein. Diese müsstest Du dann entweder mit http://<ip>:<port>/fhem/ftui/<verzeichnis>/<bild-datei> oder http://<ip>:<port>/fhem/images/<verzeichnis>/<bild-datei> aufrufen können.

Als Beispiel kannst Du auch mal diese URL versuchen: http://<ip>:<port>/fhem/images/default/Shutdown.png
Das müsste einen kleinen roten "Aus"-Knopf zeigen.

Wenn das funktioniert, dann sehen wir weiter.

Gruß,
   Thorsten

Hallo,
also das funktioniert:
http://192.168.188.47:8085/fhem/images/default/Shutdown.png
und auch ein
http://192.168.188.47:8085/fhem/www/tablet/Anrufe/015532526366.jpg
funktioniert.

Wäre dann die anzeige in der FTUI?
<div data-type="image"   data-url="http://192.168.188.47:8085/fhem/www/tablet/Anrufe/015532526366.jpg"  data-size="100px"></div>

Habs so mal probiert und damit wird mir das entsprechende Buld auch angezeigt, nur wie ordne ich das Bild jetzt dem jeweiligen Anrufer zu?
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

Thorsten Pferdekaemper

Hi,
ich kann mir vorstellen, dass es so geht:

<div data-type="image"
data-device="Telefon"
data-get="external_number"
data-path="http://192.168.188.47:8085/fhem/www/tablet/Anrufe/"
         data-suffix=".jpg"
data-size="100px"></div>

Wenn das klappt, dann versuch mal den ersten Teil der URL wegzulassen, also

data-path="/fhem/www/tablet/Anrufe/"

Das ist dann stabiler für spätere Änderungen.
Gruß,
   Thorsten
FUIP

Tommy82

Hi,
erstmal vielen Dank für deine geduldige Hilfe, jetzt sieht es irgendwie so einfach aus, denn es funktioniert alles:-)

Ich musste nur noch vom Device Telefon auf Anruferliste und die entsprechenden readings umstellen und schon ist es so wie es sein sollte.

Nochmal vielen Dank

MFG
Thomas
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

Tommy82

Hi,
muss das dann doch nochmal fragen, es gibt ja anrufer wo ich noch kein Bild zu eingpflegt habe, dort würde ich gerne ein Standart Bild Namens John_Doo.jpg anzeigen lassen, aber wie kann ich das jetzt noch einfügen?

Danke
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

Thorsten Pferdekaemper

Hi,
dazu fällt mir nur ein, das im Backend zu erledigen. D.h. ein Reading (vielleicht mit userReadings) zu machen, das weiß, für was es Nummern gibt und dann bei "nicht bekannt" John_Doo reinschreibt.
Gruß,
   Thorsten
FUIP