Felix Riesterer: URL per Button an Mediola Gateway senden

Beitrag lesen

Liebe(r) Sigi,

http://192.168.2.35/command?code=19082401000900000100E0587D0101000100000000000100000000&XC_FNC=Send2

wie der Aufruf sich genau zusammensetzt, hat @Rolf B ja schon erklärt.

Das Gateway ist über Ethernet verbunden und sendet Infrarotbefehle an Fernseher, CD Spieler etc. und soll über eine Webpage bedient werden.

Gibt "das Gateway" denn eine Antwortseite bei solch einem Aufruf zurück? Und wenn ja, wie sieht die aus?

Wenn ich die folgende URL in die Browserleiste kopiere und Enter betätige, wird das Gateway problemlos angesprochen, und führt den gewünschten Befehl aus (sendet das gewünschte IR Signal aus)

Und was kommt da als Ergebnis im Browser an?

Das Ziel ist es, diese URL von einem Button auf einer Webpage an das Gateway abzusetzen.

Du willst doch eine virtuelle Fernbedienung basteln. Die Buttons sollen nicht auf eine neue Seite verlinken, sondern "nur" etwas auslösen. Dazu fiele mir als HTML-only-Lösung spontan ein klassisches Frameset oder iFrame ein, bei dem Deine "Buttons" in Wirklichkeit Hyperlinks sind, die ihr Ziel nicht im gegenwärtigen Dokument, sondern in einem Frame aufrufen.

Ein Frameset teilt das Browserfenster in Unterfenster (Frames) ein:

<frameset>
  <frame src="fernbedienung.html"></frame>
  <frame name="gateway"></frame>
</frameset>

Das bedeutet, dass Du zwei HTML-Dateien hast, wovon in einer Deine Fernbedienungsseite steht, in einer anderen das Frameset, welches sie lädt. Das mag umständlich sein, ist aber historisch bedingt so.

Mit einem iFrame hast Du ein "reguläres" Dokument, in dem sich eine Art Unterfenster befinden kann:

...<body>
  <h1>Meine Fernbedienung</h1>
  ...
  <iframe name="gateway"></iframe>
</body>...

Das Dokument mit dem iFrame ist sicherlich praktischer, da Du nur eine HTML-Datei benötigst.

Die Links sehen dann jeweils so aus:

<a target="gateway" href="http://192.168.2.35/command?...">Button-Text</a>

Das target-Attribut dient dazu, dass das Ziel nicht im eigentlichen Fenster (Frame), sondern im "gateway" benannten Fenster geöffnet wird.

Damit die Links so aussehen wie Buttons, benötigst Du passende Layoutregeln. Das macht man mit CSS.

Liebe Grüße

Felix Riesterer