Moin,
ich versuche in FHEMWEB einen temporären weblink/iframe zu erzeugen, da sich dessen Link ändern kann und ich diesen als Teil der Definition ja nicht ändern kann, oder?
Wenn ich nun also einen Weblink wie folgt anlege:
define -temporary Test weblink iframe https://foo.bar.html
dann taucht dieser weblink nur im Raum "Everything" auf und er lässt sich auch nicht in einen anderen Raum verschieben, in dem man das attr room entsprechend setzt... Wenn ich einen weblink nicht temporär anlege, dann taucht dieser weblink im Raum "Unsorted" auf, lässt sich aber per attr room anschließend in einen beliebigen Raum verschieben.
Wie kann ich das lösen?
Gruß,
budy
Vielleicht verstehe ich was falsch, aber:
- weblinks kann man mit modify oder defmod aendern.
- ich kann einem mit "define -temporary" erzeugten weblink einen Raum zuweisen, danach sehe ich das weblink auch in diesem Raum.
Beides gerade nachgeprueft, da ich schon an unentdeckte Bugs gedacht habe.
Ok, defmod ist an mir irgendwie vorbeigegangen, danke. Aber das Problem, dass ich einen temporären weblink nicht in dem Raum sehen kann, den ich ihm er attr zugewiesen habe, habe ich dennoch.
Außerdem triggert ein defmod -temporary bei mir immer noch das "Save config" im FHEM, was ich ja eigentlich zu vermeiden suchte.
Zitat von: budy am 02 Januar 2019, 20:00:47
Ok, defmod ist an mir irgendwie vorbeigegangen, danke. Aber das Problem, dass ich einen temporären weblink nicht in dem Raum sehen kann, den ich ihm er attr zugewiesen habe, habe ich dennoch.
Und das ändert sich auch nicht, wenn Du den Client-Browser mit völlig leerem Cache neu startest?
Zitat von: curt am 03 Januar 2019, 23:33:59
Und das ändert sich auch nicht, wenn Du den Client-Browser mit völlig leerem Cache neu startest?
Nein, ich habe das gerade noch mal probiert. Einen temporären weblink eingerichtet und dann sein attr room einmal über die Shell geändert von einem anderen Browser zugegriffen - gleiches Ergebnis. Der weblink ist immer noch im Raum "Unsorted". Dann habe das attr room nochmals über FHEMWEB geändert, gleiches Ergebnis.
Nun bin ich neugierig geworden: Darf man sich das komplette Beispiel denn mal ansehen?
Zitat von: curt am 05 Januar 2019, 01:17:21
Nun bin ich neugierig geworden: Darf man sich das komplette Beispiel denn mal ansehen?
Ehh... wie meinst du das? Screenshots oder so was? Ich habe eben nochmal folgendes gemacht:
define -temporary ringVideo weblink iframe https://ring-transcoded-videos.s3.amazonaws.com/xxxx
Daraufhin ist der weblink im Raum "Unsorted" erschienen... dann habe ich auf den weblink geklickt und das Raum-Attribut geändert und gesichert:
list ringVideo
Internals:
DEF iframe https://ring-transcoded-videos.s3.amazonaws.com/xxxx
LINK https://ring-transcoded-videos.s3.amazonaws.com/xxxx
NAME ringVideo
NR 118993
STATE initialized
TEMPORARY 1
TYPE weblink
WLTYPE iframe
Attributes:
room Flur EG
Aber... der weblink bleibt im Raum "Unsorted" - im Raum "Flur EG" ist der weblink nicht zu sehen. Ist etwas schwierig das mit Screenshots zu demonstrieren.
Das TEMPORARY Internal ist dafuer gedacht, temporaere FHEM-Definitionen, wie HTTP-Socket-Verbindungen vom Benutzer zu verstecken, und diese Definitionen nicht zu speichern.
Die -temporary Option bei define setzt diesen Wert, und ist nur deswegen entstanden, weil ich einen Modulautor nicht von meiner Meinung ueberzeugen konnte, und ihn bei FHEM behalten wollte. Sie is nicht fuer die "normale" Benutzung gedacht, wenn deswegen irgendwelche Darstellungsprobleme entstehen, dann ist das halt so, und bleibt auch.
Das kann ich nachvollziehen und ich hätte auch nichts gegen einen permanenten weblink, welcher ohne die Option -temporary erzeugt wird, aber ich bekomme es nicht hin in so einem weblink den LINK für den iframe zu ändern, ohne dass FHEMWEB anzeigt, dass sich die Konfig geändert hat und das ist halt unschön, weil diese Information eben dynamischg ist und sich andauernd ändert.
Der LINK gehört ja zur Definiton und ist kein Attribut, welches man ändern könnte. defmod mit -temporary zu verwenden hilft hier leider auch nicht - es scheint schlichtweg ignoriert zu werden.
Hi budy,
ich hatte da vorhin so einen Einfall: Hast Du das attr WEB column gesetzt?
Oder noch ein anderes attr was einfach alles nicht definierte aus dem Raum Flur EG ausblendet/nicht darstellt?
Gruß Otto
Moin Otto,
nein - habe ich nicht.
list webApache
Internals:
CONNECTS 7394
DEF 8000 global
FD 72
NAME webApache
NR 567
NTFY_ORDER 50-webApache
PORT 8000
STATE Initialized
TYPE FHEMWEB
.attraggr:
.attrminint:
READINGS:
2019-01-03 06:25:14 state Initialized
Attributes:
confirmDelete 0
csrfToken none
hiddenroom AlarmRoom
ownCSS fhem-style-haus-automatisierung/styles.css
room Infrastructure
stylesheetPrefix dark
userattr ownCSS
Ich muss es ja, wie gesagt auch gar nicht damit machen. Es wäre nur schön, wenn man irgendwie an das Internal LINK heran käme...
Gruß, Budy
Vielleicht hilft dir das weiter... so zeige ich dynamisch die letzten x Bilder meiner Kamera an:
defmod SY_lastCamPic weblink htmlCode {"<iframe src='http://myhost/lastpic.php?cnt=".AttrVal("SY_lastCamPic","count",10)."' ".AttrVal("SY_lastCamPic","htmlattr","")."></iframe>"}
Also - ich verwende weblink nicht mit iframe, sondern mit htmlcode und baue mir den Inhalt dann dynamisch zusammen.
Danke - das funktioniert genauso, wie ich mir das vorstelle. Hab's angepasst und eingebaut. 👍