wie weblink automatisch aktualisieren?

Begonnen von Herjemine, 10 Januar 2019, 20:05:54

Vorheriges Thema - Nächstes Thema

Herjemine

Hallo

ich suche eine Möglichkeit z.b. eine Googlemaps Seite in Fhem einzubinden und bei Änderung eines GPS Readings zu aktualisieren
Im Moment verwende ich weblink
Im Forum habe ich nur Hinweise mit

trigger WEB JS:location.reload()

was jedoch alle gerade offene fhem Webseiten aktualisiert,
was mich, wenn ich nicht gerade auf der Seite mit dem Kartenausschnitt bin, sehr stören würde

rudolfkoenig hat in diesem Tread
https://forum.fhem.de/index.php?topic=68902.0
erklärt, dass es mit dem weblink device nicht geht, da das nicht longpol fähig ist.

Gibt es keine Möglichkeit einen externen Link in fhem zu integrieren und auch zu aktualisieren?

Danke.

Gruß Hermann

MadMax-FHEM

Du kannst zu genau dem Zweck eine zweite Webinstanz anlegen und dann nur die aktualisieren, wenn etwas passiert.

Habe eine "nowPlaying" Webinstanz wo ich immer den aktuell gespielten Titel inkl. ArtistArt anzeige und bei Änderung des Readings Artist/Title lade ich die Webinstanz neu mit genanntem Befehl...

Andere offene Seiten (verbunden mit einer anderen Webinstanz) sind davon nicht betroffen...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Herjemine

#2
Hallo Achim,

das ist dann aber im Prinzip eine zusätzliche Webseite mit anderem Port,
die nicht im momentanen Fhemweb eingebunden werden kann, oder versteh ich das falsch?

oder bindest du die webinstanz wieder als weblink ein?

Gruß
Hermann

MadMax-FHEM

Nein, richtig erkannt: eigene Webinstanz mit eigenem Port...

Ist für mich ok so.
Hab einen Shortcut auf dem Desktop (Handy) und rufe dann eben nowPlaying auf...

Andere (einfache) Lösung konnte ich nicht finden...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

frank

moin,

mit dieser funktion kann ich raumansichten auf beliebigen geräten gleichzeitig aktualisieren.

wenn du also ein reading mit den geokoordinaten hast, kannst du mit den events vom reading zb ein notify triggern, in welchem diese funktion aufgerufen wird.

map {
FW_directNotify("FILTER=room=Wetter-Unwetter", "#FHEMWEB:$_", "location.reload('true')", "")
} devspec2array("WEB.*");


"Wetter-Unwetter" ist hier mein room, dessen übersichtsseite ggf aktualisiert wird.
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

MadMax-FHEM

Zitat von: frank am 11 Januar 2019, 11:34:08
moin,

mit dieser funktion kann ich raumansichten auf beliebigen geräten gleichzeitig aktualisieren.

wenn du also ein reading mit den geokoordinaten hast, kannst du mit den events vom reading zb ein notify triggern, in welchem diese funktion aufgerufen wird.

map {
FW_directNotify("FILTER=room=Wetter-Unwetter", "#FHEMWEB:$_", "location.reload('true')", "")
} devspec2array("WEB.*");


"Wetter-Unwetter" ist hier mein room, dessen übersichtsseite ggf aktualisiert wird.

Danke, interessant. Probiere ich bei Gelegenheit mal für mein nowPlaying aus... :)

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Herjemine

Hallo Frank,

könntest Du mir ein komplettes Define Beispiel für ein Notify geben?
ich stell mich zu sehr an,  :-[
egal was ich für map nehme, es kommt immer irgend ein Fehler  :'(


2019.01.13 23:56:37 5: Triggering Notify_TrackDate
2019.01.13 23:56:37 4: Notify_TrackDate exec map {
                FW_directNotify("FILTER=room=Wetter-Unwetter", "#FHEMWEB:$_", "location.reload('true')", "")
        } devspec2array("WEB.*");


2019.01.13 23:56:37 3: Notify_TrackDate return value: Unknown command map, try help.
2019.01.13 23:57:49 5: Triggering Notify_TrackDate
2019.01.13 23:57:49 4: Notify_TrackDate exec {
                FW_directNotify("FILTER=room=Wetter-Unwetter", "#FHEMWEB:$_", "location.reload('true')", "")
        } devspec2array("WEB.*");


2019.01.13 23:57:49 3: Notify_TrackDate return value: Unknown command {
, try help.


Sorry
Gruß Hermann

MadMax-FHEM

Ein Auszug aus dem Eventmonitor würde helfen...
Mit Angabe was davon für dich relevant ist...

Oder selbst den Eventmonitor öffnen, auf das entsprechende Event warten, markieren und erzeugen lassen...

Gegebenenfalls noch etwas anpassen...

https://wiki.fhem.de/wiki/Event_monitor

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Herjemine

Hallo Joachim,

einen Notify mit event bekomm ich freilich hin,
ich bekomm Franks code nicht zum laufen




define Notify_TrackDate notify (TrackDate.*) ( map { FW_directNotify("FILTER=room=LeafMap", "#FHEMWEB:$_", "location.reload('true')") } devspec2array("WEB.*");;)


sieht man ja auch im log
der  Triggering Notify_TrackDate kommt ja

mein Googlemap weblink heist     history_map auch wenn ich den oder WEB oder nix für das map aus dem Beispiel oben nehm ...
kommt endweder
Unknown command map, try help.
oder
Unknown command {
, try help.

Gruß Hermann

frank

da es eine perl funktion ist, musst du sie einfach in geschweifte klammern einpacken.
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

Herjemine

Hallo Frank,

muss ich für das map noch ein perl inklude laden?
Wenn ich

define Notify_TrackDate notify (TrackDate.*) {map {\
FW_directNotify("FILTER=room=LeafMap", "#FHEMWEB:$_", "location.reload('true')", "")\
} devspec2array("WEB.*");;}\
\



bekomm ich


2019.01.14 09:45:21 5: Triggering Notify_TrackDate
2019.01.14 09:45:21 4: Notify_TrackDate exec {map {
                FW_directNotify("FILTER=room=LeafMap", "#FHEMWEB:$_", "location.reload('true')", "")
        } devspec2array("WEB.*");}


2019.01.14 09:45:21 3: Notify_TrackDate return value: Unknown command {map, try help.
Unknown command }

, try help.


Gruß Hermann

frank

geh auf die detailseite deines notify und klicke auf DEF. dort fügst du folgendes ein:

TrackDate.* {
map {
FW_directNotify("FILTER=room=LeafMap", "#FHEMWEB:$_", "location.reload('true')", "")
} devspec2array("WEB.*");
}


die regex sieht mir aber noch seltsam aus.
was genau soll dein notify triggern?
poste die events aus dem eventmonitor.
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

Herjemine

#12
Hallo Frank,

vorerst zum Test ein Dummy, in dem ich ein Datum für den GPS Track setze, das er in MAPs anzeigen soll.

bekomme aber immer noch

define Notify_TrackDate notify TrackDate.* {\
map {\
FW_directNotify("FILTER=room=LeafMap", "#FHEMWEB:$_", "location.reload('true')", "")\
} devspec2array("WEB.*");;\
}\



2019.01.14 11:41:51 5: Triggering Notify_TrackDate
2019.01.14 11:41:51 4: Notify_TrackDate exec {
        map {
                FW_directNotify("FILTER=room=LeafMap", "#FHEMWEB:$_", "location.reload('true')", "")
        } devspec2array("WEB.*");
}


2019.01.14 11:41:51 3: Notify_TrackDate return value: Unknown command {
, try help.
Unknown command }

, try help.




Gruß Hermann

PS: ich mach mal den gleichen Test in meinem aktuellen Test fhem, nicht das mein "live" System zu alt ist ...

Herjemine

Hallo Frank,

sorry, auf meinem aktuellen Test fhem geht es,
mein perl auf meinem prod. fhem scheint nen hau zu haben,
muss ich mal neu inst.

Geht gut!

thx
Hermann