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

cocojambo

Gut die Idee, Frank

Ich habe aus der Idee heraus jetzt was "zusammengebastelt" was zumindest funktioniert, auf Tab mit 5.11 und Firefox und FB, sieht so aus (nicht lachen)
define Telefon_Anfruf notify Telefon_Test:on trigger WEBhome JS:location="/fhem/floorplan/Anruf"
attr Telefon_Anruf do always
define FritzBox1_notify notify FritzBox1:event.*ring trigger WEBhome JS:location="/fhem/floorplan/Anruf"

define FritzBox1_DOIF DOIF ([FritzBox1:event] eq "ring") (trigger WEBhome JS:location="/fhem/floorplan/Anruf")
attr FritzBox1_DOIF do always
attr FritzBox1_DOIF wait 5:0
#attr FritzBox_DOIF checkReadingEvent 1 

Die 5 sek merkt man nicht, denn FHEM hat das "ring" viel früher als mein erstes Telefon klingelt (hinter Fritzbox ist Telefonanlage dazwischen). Der Monitor ist etwas schneller als das TAB, aber bereits nach dem 2.klingeln schaltete es um. Habe es ein paar Mal probiert, auch aus verschiedeinen Unterordnern und Floorplänen, hat zu fast 100% funktioniert. Werde diese Version jetzt mal weiter mit ein paar Readings aus dem Callmonitor und ein bischen schöner auf den Anruf Floorplan bringen und mal weiter probieren.
Mal sehen..... sonst melde ich mich wieder, auch wenn´s weiter klappt.

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

Sehr schön. Freue mich für dich! Ich kommentiere es mal um zu entwirren:

define Telefon_Anfruf notify Telefon_Test:on trigger WEBhome JS:location="/fhem/floorplan/Anruf" # sollte weg können, weil "Telefon_Test:on" hier nirgendwo getriggert wird
attr Telefon_Anruf do always # kann weg, weil "Telefon_Anruf" kein DOIF ist
define FritzBox1_notify notify FritzBox1:event.*ring trigger WEBhome JS:location="/fhem/floorplan/Anruf" # ist wirksam weil "FritzBox1:event.*ring" aus deinem FRITZBOX- Modul heraus getriggert wird

# hier beginnt ein DOIF welches das gleiche tut wie das obige notify, nur mit etwas Verzögerung - damit kann quasi alles hier drüber weg, da das obige notify sonst sinnlos mitarbeitet
define FritzBox1_DOIF DOIF ([FritzBox1:event] eq "ring") (trigger WEBhome JS:location="/fhem/floorplan/Anruf")
attr FritzBox1_DOIF do always
attr FritzBox1_DOIF wait 5:0
#attr FritzBox_DOIF checkReadingEvent 1 


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

Ja, habe ich mir schon gedacht, aber die ersten beiden Zeilen habe ich einfach drin gelassen, weil ich damit immer als Vergleich gucken konnte ob es über die FB noch geht. "do always" ist natürlich Quatsch, hat mich aber nicht gestört.
Die dritte Zeile ist noch aus der ersten Version und ist beim Kopieren für den Thread mit hereingeraten. Die hat da garnichts zu suchen und ist in meiner CFG auch nicht drin.
Die letzten 4 Zeilen sind die, die eigendlich nur wichtig sind. Die oberen waren nur zun Testen und werden garnicht gebraucht. Ich muß kein Anruf-Floorplan mit der FB einschalten.

Aber du kennst das ja sicher auch, als es plötzlich ging, habe ich sofort die Finger davon gelassen, Kopie von der FHEM.cfg gemacht, und erst mal alles getestet nach den Motto "never touch a running system".
Vorsichtige Frage: gibt es eigndlich bei FHEM sowas wie ein "Back-Funktion" um so wieder zum vorherigen Bildschirm zurückzukehren?

Meinst du es wäre sinnvoll, das ich rudolfkönig mal per PM oder in dem Thread, wo er diese Lösung vorgestellt hat, mitteile, das  es bei Verwendung des CALLMONITOR noch einen kleinen Bug gibt. Vielleicht interessiert ihn das und hat dazu eine Lösung, auch wenns so bei mir funktioniert?

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

Zitat von: cocojambo am 28 Dezember 2017, 16:33:32
Aber du kennst das ja sicher auch, als es plötzlich ging, habe ich sofort die Finger davon gelassen, Kopie von der FHEM.cfg gemacht, und erst mal alles getestet nach den Motto "never touch a running system".
Vorsichtige Frage: gibt es eigndlich bei FHEM sowas wie ein "Back-Funktion" um so wieder zum vorherigen Bildschirm zurückzukehren?

Meinst du es wäre sinnvoll, das ich rudolfkönig mal per PM oder in dem Thread, wo er diese Lösung vorgestellt hat, mitteile, das  es bei Verwendung des CALLMONITOR noch einen kleinen Bug gibt. Vielleicht interessiert ihn das und hat dazu eine Lösung, auch wenns so bei mir funktioniert?

Na klar kenne ich das.  ;D Für "Back" nutze ich nur den Zurück- Button des Browsers. Wenn es den nicht gibt, müsste man sich Weblinks bauen und im z.B. im Floorplan platzieren:# Button Haupt- FP zu öffnen:
define Main weblink htmlCode <a onClick="window.open "href="/fhem/floorplan/0_Hauptbildschirm"><img src="/fhem/icons/Button_DOE" width="100" height="100" border="0" alt="Home"></a>
attr Main fp_1_Untergeschoss 33,213,0,
attr Main fp_2_Obergeschoss 33,213,0,
attr Main fp_3_Garten 316,236,0,
attr Main fp_4_Plots_Heizung 33,213,0,
attr Main fp_5_Plots_Sicherheit 33,213,0,
attr Main fp_6_Plots_Klima 33,213,0,
attr Main fp_7_Plots_Energie 33,213,0,
attr Main group Weblink_Buttons
attr Main room 5_System


Bei der Telefon- Anzeige- Funktion habe ich noch ein zweites Notify auf ".event:.disconnect", was mir den Bildschirm wieder auf den Startfloorplan zurückholt, wenn aufgelegt wurde.

Weil das ja nun doch schon etwas umfangreicher hier ist, habe ich mal selbst getestet: Bei mir geht die neue Variante aus der Eingabezeile heraus und auch aus dem Notify auf "ring" einwandfrei mit Firefox und Chrome (ohne Verzögerungszeit). 
Muss also doch bei dir was faul sein. Das wird ja dann wohl am Server liegen: Triggerst du noch andere Sachen auf "ring" von der FB?
Wenn ja, bitte die erst mal deaktivieren. Oder auch anderes, was als notify oder DOIF an der FB hängt.
Ein Fall für den Thread der Umschaltfunktion ist dass dann wohl vorerst nicht.

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

Das einzige was bei mir noch in Verbindung mit der FritzBox1 Abfrage läuft ist der CALLMONITOR, CALLIST und ein notify der beiden FB Box ABs über "internal_connection". Eine "ring" Abfrage läuft nicht zusätzlich.
Wenn ich es ohne die 5 sek versuche, geht es nicht aus den TABs des Dashboards heraus. Dann schaltet FHEM nur zufällig mal um, mit 5 Sek geht zuverlässig immer, aus jedem Verzeichniss. Ohne "ring" Abfrage gehts auch im TAB und auch bei Firefox über die Test-FB und Kommandozeileneingabe.
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

Habe es gerade noch mal mit Dashboard probiert: Auch da sofortiges sicheres umschalten auf die Anrufer- Floorplanseite. Hm, also du kannst es ja so lassen wenn es für dich o.k. ist, oder du betreibst Ursachenforschung.

Dazu würde ich z.B. den Inhalt des FHEM- Ordners (/opt) sichern und dann neu installieren, oder ein frisch heruntergeladenes FHEM dort hinkopieren. Dann dort nach und nach dein System aus der Sicherung dort wieder aufbauen und dabei immer testen, ab wann die Verzögerung auftritt. Ein zweiter Minirechner mit Testsystem macht sich für sowas immer gut.
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,

danke für deinen Ratschlag, aber ich muß dir sagen, ich bin froh, das ich das nicht gemacht habe, und stattdessen weiter gesucht habe.
Der Fehler mit der Verzögerung macht die FB_CALLLIST. Wenn ich die komplett rausnehme geht es wie du gesagt hast, direkt beim ersten Klingeln und aus jedem Unterordner des Dashboards.
define Anrufliste FB_CALLLIST FritzBox1
attr Anrufliste create-readings 1
attr Anrufliste event-on-change-reading .*
attr Anrufliste group Anrufliste
attr Anrufliste language de
attr Anrufliste number-of-calls 100

Und zwar tritt die Verzögerung immer deutlicher auf, wenn die Anzahl der anzuzeigenden Anrufe größer wird. Lösche ich die Anrufliste, funktioniert es einwandfrei. Sind die ersten 20-30 Anrufe drin geht es nur noch zeitweise und bei 100 dann nur noch mit der eingebauten Verzögering im DOIF.
Jetzt stellt sich mir die Frage warum? Werden die 100 Anrufe jedesmal neu eingelesen oder was soll sonst die Verzögerung ausmachen. Die 100 Anrufe sind doch gespeichert und es muß doch nur der Neue dazu und unten einer "weg" genommen werden.

Wie kann man jetzt erreichen, das die FB_CALLLIST nicht mehr die direkte Anrufanzeige verzögert?

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,
das klingt doch schon mal gut. Meine Callist ist z.B. nur 5 Einträge groß. Es muss ja jeder Eintrag um 1 Zeile weitergeschoben werden und das kostet vermutlich bei vielen Einträgen viel Zeit. Du könntest nun die Liste auf z.B. 10 Einträge verkleinern, oder mal den Developer der Callist fragen, ob man da noch was machen kann.

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

Ich habe Markus Bloch mal per PM angeschrieben. Mal sehen was er meint.
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

Markus Bloch

Hallo Norbert,

hier hast du Dein Problem versteckt. Bin durch Zufall drauf gestoßen.

Zu deinem Problem: Aktuell wird bei jedem Event die gesamte Liste aktualisiert. Das bedeutet für jede Zeile wird ein spezielles Event direkt an entsprechende Web-Clients geschickt, die eine FB_CALLLIST gerade geöffnet haben. Bei 100 Einträgen sind das also 100 Events um jede einzelne Zeile neu zu ändern. Dazu kommen noch über 600 Events, wenn man "create-readings" aktiviert hat, da für jedes Reading ein einzelnen Event erzeugt wird.

Ich habe mal FB_CALLLIST intern umgebaut um eben nicht immer die gesamte Liste zu aktualisieren, sondern nur den betreffenden Eintrag (einzelne Zeile) zu ändern. Es wird bei einem Anrufevent nun nur noch ein einzelnes Event gefeuert um den jeweiligen Eintrag in der Liste hinzuzufügen/aktualisieren/löschen. Da die Änderungen doch sehr gravierend waren, ist es durchaus möglich, das ich nicht alles bedacht habe.

Bei Readings werden natürlich nachwievor alle Readings mit einem Event getriggert, da hier die Werte wirklich zum nächsten Reading wandern müssen. Bei 100 Einträgen würde ich generell emfpehlen auf Readings zu verzichten, da dies einen enormen Overhead für die Event-Maschinerie darstellt.

Viele Grüße

Markus

Die Änderungen gibts ab morgen.

Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

cocojambo

Hallo Markus,

habe gerade ein Update gemacht und werde mal beobachten was passiert wenn sich so langsam die Liste bis 100 gefüllt hat.
Was aber auch eine Möglichkeit wäre, das man die FB_CALLLIST einfach nach Eingang des Anruf zeitverzögert ausführt. Dann wäre das Problem doch auch gelöst, oder?

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

cocojambo

Hallo Markus
Die Änderung der Calllist funktioniert bei eingehenden Anrufen zuverlässig immer, bei ausgehenden Anrufen fast immer (>90%), aber das Problem ist auf jeden Fall mit der Änderung gelöst und ich habe auch sonst keine Fehler bemerkt.

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