Bei Auftreten v.Events div.Webseiten umschalten(Floorplan,Dashboard,etc)[gelöst]

Begonnen von cocojambo, 30 November 2017, 21:58:00

Vorheriges Thema - Nächstes Thema

cocojambo

ich möchte wenn ein Event bei FHEM auftritt einen bestimmten Weblink,Floorplan oder dashboard Tab aufrufen. zb. wenn ein Anruf eingeht auf die Telefonliste im Dashboard auf Tab3 umschalten um die Nummer des Anrufs zu sehen. Die int.Adresse des Tab3 ist:
192.168.115.72:8083/fhem/dashboard/Steuerung#dashboard_tab3
und habe zu Testzwecken dann einen dummy angelegt, um mit on-off das Umschalten zu testen:
define Telefonliste dummy
attr Telefonliste alias Telefonliste
attr Telefonliste onOffDevice true
attr Telefonliste room System
attr Telefonliste webCmd on:off
define Telefonliste_html_Aufruf notify Telefonliste:on { weblink("http://192.168.115.72:8083/fhem/dashboard/Steuerung#dashboard_tab3") }

auch mit
define Telefonliste_html_Aufruf notify Telefonliste:on { GetHttpFile("http://192.168.115.72:8083/fhem/dashboard/Steuerung#dashboard_tab3") }
geht es nicht
Ich habe auch "http://" weggelassen oder durch "www." ersetzt, nix geht.

Weiß jemand wie man einen solchen Link definieren muß?

Gruß aus Köln
Norbert
FHEM6.2 FB7490 FB7430 3xraspi2+3+4 2xHM-LAN-CFG 2xESP CUL868 CUNO868 HUE-Bridge Harmony-Hub 5xHM-LC-Sw-PI-2 3xHM-WDS30-T2-SN 1xHM-LC_Sw4-DR 3xHM-ES-PMSw1-PI 7xFS20SIG2 6xFS20KSE 2xHM-ES-PMSW1-PL 5xS300TH 1xASH2200 1xEM1000

Otto123

Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

cocojambo

Hallo Otto,
auf diese Seite bin ich gleich am Anfang schon gestossen, habe es probiert und auf Anhieb nicht zum Laufen bekommen. Habe dann diese Lösung "als zu kompliziert" erst man verworfen, weil ich der Meinung war, es muß viel einfacher gehen mit einem einfachen Link in FHEM.
Um zB von meinem Floorplan wieder zurück zum Dashboard zu kommen, habe ich auch nur ein Link in der Menüleiste eingefügt mit der Adresse des Dashbords, etwa so
define Link_Erdgeschoss weblink htmlCode { return '<a href="http://192.168.115.72:8086/fhem/dashboard/Steuerung">Dashboard<a/>' }
attr Link_Erdgeschoss fp_Erdgeschoss 102,25,0,

So ähnlich und einfach hatte ich mir die Lösung vorgestellt, deshalb die Idee das mit einem einfachen Link zu lösen. Bin auch noch nicht 100%ig davon überzeugt, das es nicht anders gehen soll, angelehnt an diesen Wiki Beitrag:
https://wiki.fhem.de/wiki/HTML_Aufruf_senden
Vielleicht stolpert ja noch jemand über meinen Beitrag und noch einen anderen Vorschlag

Trotzdem, auf jeden Fall vielen Dank für deine schnelle Antwort.
Gruß
Norbert
FHEM6.2 FB7490 FB7430 3xraspi2+3+4 2xHM-LAN-CFG 2xESP CUL868 CUNO868 HUE-Bridge Harmony-Hub 5xHM-LC-Sw-PI-2 3xHM-WDS30-T2-SN 1xHM-LC_Sw4-DR 3xHM-ES-PMSw1-PI 7xFS20SIG2 6xFS20KSE 2xHM-ES-PMSW1-PL 5xS300TH 1xASH2200 1xEM1000

fiedel

Auf der WIKI- Seite rechts oben in dem grünen Kasten stehen 3 Links. Lies bitte die mal durch! Das dort Beschriebene ist die einfachere / modernere Art der Browsersteuerung in FHEM.  Aber auch den Inhalt des eigentlichen WIKI- Artikels haben schon viele Anfänger erfolgreich nachnutzen können. Sieht komplizierter aus als es ist, weil ich damals möglichst viel "drumherum" erklären wollte.

Gruß
Frank
FeatureLevel: 6.1 auf Wyse N03D ; Deb. 11 ; Perl: v5.14.2 ; IO: HM-MOD-RPI-PCB + VCCU|CUL 868 V 1.66|LinkUSBi |TEK603
HM: SEC-SCO|SCI-3-FM|LC-SW4-PCB|ES-PMSW1-PL|RC-4-2|SEN-MDIR-O|SEC-WDS-2
CUL: HMS100TF|FS20 S4A-2 ; OWDevice: DS18S20|DS2401|DS2406|DS2423

cocojambo

Hallo Frank,

habe mir nochmal die Seite und auch die Links angesehen und erneut probiert die Sache ans Laufen zu bekommen. Ich habe die "js" Datei nach /pgm/ kopiert und und die zweite Datei in der .cfg hinten angehangen. longpoll ist eingeschaltet.

Anschließend set Befehl eingegeben
set Dum_pageswap_D http://192.168.115.72:8083/fhem/dashboard/Steuerung
weil ich ja nicht weiß, welche Seite im Dashboard angezeigt wird, wenn das Telefon klingelt.

Ich habe dann im Dashboard einfach mal die Device Telefionliste angelgt von wo ich dann über "on" Taste die Info Seite des Dashboards aufrufen möchte (nachher dann ausgelöst durch den Callmonitor)
define Telefonliste_html_Aufruf notify Telefonliste:on set http://192.168.115.72:8083/fhem?detail=Steuerung_weblink#dashboard_tab3

Es tut sich nichts....so einfach ist deine Anleitung doch nicht. Tut mir leid, ich verstehe sie wahrscheinlich falsch.

Gruß
Norbert



FHEM6.2 FB7490 FB7430 3xraspi2+3+4 2xHM-LAN-CFG 2xESP CUL868 CUNO868 HUE-Bridge Harmony-Hub 5xHM-LC-Sw-PI-2 3xHM-WDS30-T2-SN 1xHM-LC_Sw4-DR 3xHM-ES-PMSw1-PI 7xFS20SIG2 6xFS20KSE 2xHM-ES-PMSW1-PL 5xS300TH 1xASH2200 1xEM1000

fiedel

Hi Norbert,

du machst nichts falsch: Die Funktion scheint aktuell nicht mehr zu gehen (gerade getestet mit Fully und Firefox). Auf der Wiki- Seite oben rechts im grünen Kasten stehen die Links zur "neuen" Methode. Bitte lies dich dort mal ein, ich werde wohl meine alte Funktion nicht reparieren, sondern auch umsteigen. Schreib mal, ob es geklappt hat! Soll recht unkompliziert sein.

Gruß
Frank
FeatureLevel: 6.1 auf Wyse N03D ; Deb. 11 ; Perl: v5.14.2 ; IO: HM-MOD-RPI-PCB + VCCU|CUL 868 V 1.66|LinkUSBi |TEK603
HM: SEC-SCO|SCI-3-FM|LC-SW4-PCB|ES-PMSW1-PL|RC-4-2|SEN-MDIR-O|SEC-WDS-2
CUL: HMS100TF|FS20 S4A-2 ; OWDevice: DS18S20|DS2401|DS2406|DS2423

cocojambo

So, habe mich mal daran gemacht.
Ergebniss: Auf meinem Monitor mit Firefox funktioniert das sowohl mit Text als auch mit Weiterleitung auf eine interne Fhem-Seite. Wie man nach einer bestimmten Zeit wieder auf die Ausgangsseite zurück kommt habe ich noch nicht probiert.
define Telefonliste_html_Aufruf notify Telefonliste_Test:on trigger WEB JS:location="/fhem/dashboard/Steuerung#dashboard_tab3"

Auf meinen Android Tablets mit dem Fully-Browser funktioniert es nicht. Ich habe dort 2 verschiedene WEB Instanzen laufen, 8083 für die Editierung und 8086 als Info.
Das Tablet für die Edidierung reagiert garnicht und das Info Tablet meldet folgenden Fehler:
fhem line1 Uncaught Reference Error: location is not defined

Aber die line1 in der fhem.cfg beinhaltet aber nur die Angaben für "attr global userattr". Schade, das es nicht funktioniert, aber vielleicht liegt es ja nur an dem Fully-Browser, und läßt sich beheben?

Gruß
Norbert
FHEM6.2 FB7490 FB7430 3xraspi2+3+4 2xHM-LAN-CFG 2xESP CUL868 CUNO868 HUE-Bridge Harmony-Hub 5xHM-LC-Sw-PI-2 3xHM-WDS30-T2-SN 1xHM-LC_Sw4-DR 3xHM-ES-PMSw1-PI 7xFS20SIG2 6xFS20KSE 2xHM-ES-PMSW1-PL 5xS300TH 1xASH2200 1xEM1000

fiedel

FeatureLevel: 6.1 auf Wyse N03D ; Deb. 11 ; Perl: v5.14.2 ; IO: HM-MOD-RPI-PCB + VCCU|CUL 868 V 1.66|LinkUSBi |TEK603
HM: SEC-SCO|SCI-3-FM|LC-SW4-PCB|ES-PMSW1-PL|RC-4-2|SEN-MDIR-O|SEC-WDS-2
CUL: HMS100TF|FS20 S4A-2 ; OWDevice: DS18S20|DS2401|DS2406|DS2423

cocojambo

Danke Frank
Ich habe jetzt mal das Problem weitergegeben und mich im "Fully Fullscreen Browser für Android" Thread gemeldet. Mal sehen, was der Entwickler dazu sagt.
Gruß
Norbert
FHEM6.2 FB7490 FB7430 3xraspi2+3+4 2xHM-LAN-CFG 2xESP CUL868 CUNO868 HUE-Bridge Harmony-Hub 5xHM-LC-Sw-PI-2 3xHM-WDS30-T2-SN 1xHM-LC_Sw4-DR 3xHM-ES-PMSw1-PI 7xFS20SIG2 6xFS20KSE 2xHM-ES-PMSW1-PL 5xS300TH 1xASH2200 1xEM1000

cocojambo

Ich melde mich noch mal zu meinem Problem. Der Entwickler von Fully sagt das es in dieser Funktion keinen Unterschied zwischen der kostenlosen und der Vollversion gibt. Muß bei beiden Versionen einwandfrei funktionieren. Es liegt an der Android Version und an der verwendeten WEBVIEW Version. Bei meinem Android 4.4.2 geht es nur mit Fehlermeldungen. Ich soll es ab Version 5.11/6.01 versuchen. Ich habe das Ganze dann auf einem 5.11 Tablet getestet.
define FritzBox1_notify notify FritzBox1:event.*ring trigger WEBhome JS:location="/fhem/floorplan/Anruf"
wobei "Anruf" ein floorplan mit dem Reading des letzten Anrufs ist. Es funktioniert aber nur wenn ich im eigenglichen FHEM Verzeichniss bin.
http://192.168.115.72:8086/fhem/ oder http://192.168.115.72:8083/fhem/
Sobald ich in ein Unterverzeichniss wechsele schaltet der Anruf nicht mehr zurück in den Anruf Floorplan, also auch nicht wenn ich im eigendlichen Dashboard bin. zB.:
http://192.168.115.72:8086/fhem/dashboard/ oder http://192.168.115.72:8086/fhem/dashboard/Steuerung/

Was muß ich ändern, das der Anruf tatsächlich immer auf den Anruf Floorplan schaltet?

Gruß aus Köln
Norbert
FHEM6.2 FB7490 FB7430 3xraspi2+3+4 2xHM-LAN-CFG 2xESP CUL868 CUNO868 HUE-Bridge Harmony-Hub 5xHM-LC-Sw-PI-2 3xHM-WDS30-T2-SN 1xHM-LC_Sw4-DR 3xHM-ES-PMSw1-PI 7xFS20SIG2 6xFS20KSE 2xHM-ES-PMSW1-PL 5xS300TH 1xASH2200 1xEM1000

fiedel

Hi Norbert,
du könntest z.B. das Verhalten mal mit einem Windowsrechner mit Firefox vergleichen. Geht es dort auch nicht, ist es vermutlich so "gewollt" und du müsstest dich in dem Thread zu der Funktion melden.
FeatureLevel: 6.1 auf Wyse N03D ; Deb. 11 ; Perl: v5.14.2 ; IO: HM-MOD-RPI-PCB + VCCU|CUL 868 V 1.66|LinkUSBi |TEK603
HM: SEC-SCO|SCI-3-FM|LC-SW4-PCB|ES-PMSW1-PL|RC-4-2|SEN-MDIR-O|SEC-WDS-2
CUL: HMS100TF|FS20 S4A-2 ; OWDevice: DS18S20|DS2401|DS2406|DS2423

cocojambo

Hallo Frank,
Ich habe Fixefox und das Tab mit 5.11 beide auf das Dashboard gestellt und dann über die Commandozeile eingegeben:
trigger WEBhome JS:location="/fhem/floorplan/Anruf
Es funktioniert dann einwandfrei. Ich bin dann hingegegangen und habe über eine FB das Kommando ausgelöst, funktioniert auch.
Wenn ich aber das gleiche Kommando abhängig vom "ring" mache geht es nicht mehr. Das habe ich x-mal probiert, keine Chance.
define Telefon_Aufruf notify Telefon_Test:on trigger WEBhome JS:location="/fhem/floorplan/Anruf"
define FritzBox1_notify notify FritzBox1:event.*ring trigger WEBhome JS:location="/fhem/floorplan/Anruf"

obere Zeile geht einwandfrei, untere Zeile nicht.
Es muß mit dem eingehenden Anruf zu tun hben. Irgendwie verhindert dieser das auf den Anruf-Floorplan geschaltet wird.

Gruß
Norbert
FHEM6.2 FB7490 FB7430 3xraspi2+3+4 2xHM-LAN-CFG 2xESP CUL868 CUNO868 HUE-Bridge Harmony-Hub 5xHM-LC-Sw-PI-2 3xHM-WDS30-T2-SN 1xHM-LC_Sw4-DR 3xHM-ES-PMSw1-PI 7xFS20SIG2 6xFS20KSE 2xHM-ES-PMSW1-PL 5xS300TH 1xASH2200 1xEM1000

fiedel

So seltsame Sachen hatte ich ausch schon und musste irgendwas um die Ecke machen. Probier mal:

define Telefon_Aufruf notify Telefon_Aufruf trigger WEBhome JS:location="/fhem/floorplan/Anruf"
define FritzBox1_notify notify FritzBox1:event.*ring trigger Telefon_Aufruf
FeatureLevel: 6.1 auf Wyse N03D ; Deb. 11 ; Perl: v5.14.2 ; IO: HM-MOD-RPI-PCB + VCCU|CUL 868 V 1.66|LinkUSBi |TEK603
HM: SEC-SCO|SCI-3-FM|LC-SW4-PCB|ES-PMSW1-PL|RC-4-2|SEN-MDIR-O|SEC-WDS-2
CUL: HMS100TF|FS20 S4A-2 ; OWDevice: DS18S20|DS2401|DS2406|DS2423

cocojambo

So eine Idee hatte ich auch schon, so ähnlich. Ich hatte das mit einer IF Abfrage probiert.
Habe jetzt deinen Vorschlag mal probiert. Leider ohne Erfog. Im LOG erscheint nur
notify Telefon_Anruf (Aufruf habe ich in Anruf korrigiert)
Weiter passiert nichts. Ich habe es vorher noch mit der FB probiert, ging.
Es muß daran liegen, das FHEM im Moment des Anrufs nichts die Webseite umschalten kann.

Gruß
Norbert
FHEM6.2 FB7490 FB7430 3xraspi2+3+4 2xHM-LAN-CFG 2xESP CUL868 CUNO868 HUE-Bridge Harmony-Hub 5xHM-LC-Sw-PI-2 3xHM-WDS30-T2-SN 1xHM-LC_Sw4-DR 3xHM-ES-PMSw1-PI 7xFS20SIG2 6xFS20KSE 2xHM-ES-PMSW1-PL 5xS300TH 1xASH2200 1xEM1000

fiedel

Ist ja irre. Vielleicht ist das auch der simple Grund, warum meine alte Funktion nicht mehr geht.
Test: Lass doch mal das Tel. klingeln und triggere dabei die Funktion (notify) die immer funktioniert hatte. Dann müsste die in dem Moment (Klingeln) ja nicht mehr gehen.
FeatureLevel: 6.1 auf Wyse N03D ; Deb. 11 ; Perl: v5.14.2 ; IO: HM-MOD-RPI-PCB + VCCU|CUL 868 V 1.66|LinkUSBi |TEK603
HM: SEC-SCO|SCI-3-FM|LC-SW4-PCB|ES-PMSW1-PL|RC-4-2|SEN-MDIR-O|SEC-WDS-2
CUL: HMS100TF|FS20 S4A-2 ; OWDevice: DS18S20|DS2401|DS2406|DS2423