[Gelöst] "remotecontrol weblink" bearücksichtigt webname nicht

Begonnen von spi3845, 20 April 2023, 17:42:39

Vorheriges Thema - Nächstes Thema

spi3845

Hallo,

ich habe für ein remotecontrol Gerät einen weblink erstellt (set device makeweblink name). Dieses weblink wird mit /fhem? adressiert, egal welcher webname in der FHEMWEB-Instanz konfiguriert ist.

Muss ich den webnamen im remotecontrol weblink zusätzlich konfigurieren oder ist das ein Fehler analog weblink beachtet webname nicht?

Viele Grüße,
spi

rudolfkoenig

Der Maintainer dieses Moduls ist seit laengerem nicht aktiv.
Ich versuche zu helfen, aber da ich das Modul nicht kenne, brauche ich laenger.

Soweit ich sehe, erzeugt "set rc1 makeweblink" ein weblink, dessen Inhalt dynamisch generiert wird.
Beim Generieren wird das webname der zuletzt aufgerufenen FHEMWEB Instanz verwendet.
Ich sehe kein Problem mit einer FHEMWEB Instanz, bei der ich webname geaendert habe.
Vmtl. brauche ich eine Schrit-fuer-Schritt Anleitung, wie ich das Problem nachstellen soll.

spi3845

#2
Vielen Dank!

  • Ich habe eine neue FHEMWEB-Instanz auf Port 8089 angelegt, webname=haustuer, stylesheetPrefix=f18.
  • Sonstige Einschränkungen sind zum Testen alle aus (z. B. allowedCommands, allowedDevices in allowed-device oder styleData in FHEMWEB-Instanz).
  • Ich verbinde mich mit fhem:8089 und sehe haustuer in der URL.
  • Ich lege ein remotecontrol-device an.
    define rc_Haustuer remotecontrol
    attr rc_Haustuer group Haustür
    attr rc_Haustuer rc_iconpath icons/remotecontrol
    attr rc_Haustuer rc_iconprefix black_btn_
    attr rc_Haustuer room Test
    attr rc_Haustuer row00 1,2,3
    attr rc_Haustuer row01 4,5,6
    attr rc_Haustuer row02 7,8,9
    attr rc_Haustuer row03 0,:blank,x:ENTER
    #  FUUID      643e9f38-f33f-4699-04d2-0d9df04a8dbf0ccd
    #  NAME      rc_Haustuer
    #  NR        874
    #  STATE      x
    #  TYPE      remotecontrol
    #  eventCount 296
    #  READINGS:
    #    2023-04-21 15:58:39  state          x
    #
    setstate rc_Haustuer x
    setstate rc_Haustuer 2023-04-21 15:58:39 state x

  • Ich führe aus
    set rc_Haustuer makeweblink rc_Haustuer
  • In der Raumliste sehe ich zwei Devices: rc_Haustuer und web_rc_Haustuer.
  • Bin ich weiterhin mit fhem:8089 verbunden, kann ich bei rc_Haustuer die Tasten drücken, sie erzeugen einen Event. Drücke ich die Tasten auf web_rc_Haustuer, kommen Darstellungsfehler (das Layout wird verrissen), die Tasten generieren keinen Event.
  • Greife ich auf fhem:8083 zu, kann ich sowohl bei rc_Haustuer, als auch web_rc_Haustuer die Tasten drücken, Events werden erzeugt.
  • Lösche ich für fhem:8089 den webnamen (URL ist wieder fhem), kann ich sowohl bei rc_Haustuer, als auch web_rc_Haustuer Tasten drücken und Events erzeugen - den weblink für das remotecontrol muss ich nicht mal neu erzeugen.
  • Ich habe das ganze testweise über einen Reverse Proxy gejagt, um die Zugriffe sehen zu können. Ist webname=haustuer sehe ich bei allen Zugriffen bis auf web_rc_Haustuer in der URL haustuer, bei Zugriffen auf web_rc_Haustuer taucht dort in der URL immer noch fhem auf.
  • Auch wenn ich im Browser Entwicklertools einschalte, dann auf fhem:8089 mit get rc_Haustuer htmlcode mir den html-Code erzeuge und anschaue, sehe ich bei den einzelnen Tasten immer noch die URL fhem und nicht haustuer.

rudolfkoenig

remotecontrol versucht das Erzeugte HTML zu cachen, was genau in diesem Kontext zu Problemen fuehrt.
Habs angepasst, bei mir scheint es jetzt zu tun.

spi3845

Zitat von: rudolfkoenig am 21 April 2023, 17:27:05remotecontrol versucht das Erzeugte HTML zu cachen, was genau in diesem Kontext zu Problemen fuehrt.
Habs angepasst, bei mir scheint es jetzt zu tun.
Wahnsinn, das ist ja eine Antwortzeit! Mille danke! Läuft bei mir auch. Musste nicht einmal den weblink neu erzeugen. Damit laufen mehrere Instanzen mit unterschiedlichen webnamen auch sauber über einen Reverse-Proxy - hatte dazu bisher immer Ports weitergeleitet.