FHEM Forum

FHEM => Frontends => TabletUI => Thema gestartet von: Rolfg am 11 November 2017, 12:58:43

Titel: Http Befehl über Button senden
Beitrag von: Rolfg am 11 November 2017, 12:58:43
Hallo,

steh gerade aufm Schlauch. Ich möchte mir auf der Weboberfläche von TabletUi ein paar Buttons machen um den Dvb Viewer zu steuern. Das geht über Http befehle. Ich finde nur leider nirgendwo wie oder wo ich den Befehl hinschreibe. Ich kenne nur wie ich Fhem Geräte steuern kann. Fals das überhaupt geht. Die Befehle sehen folgendermaßen aus.


http://user:passwort@192.168.100.15:8089/api/dvbcommand.html?target=Video&cmd=-c:11110


Vielleicht kann mir ja jemand einen Denkanstoß geben.

danke und Gruß Rolf

Titel: Antw:Http Befehl über Button senden
Beitrag von: setstate am 11 November 2017, 13:01:22
Bei einem Push oder Pagebutton data-url oder data-url-xhr benutzen.

data-url        wechselt zu der Seite
data-url-xhr  ruft die Seite im Hintergrund
Titel: Antw:Http Befehl über Button senden
Beitrag von: Rolfg am 11 November 2017, 13:55:04
Hallo Setstate,

danke für deine Antwort. Leider funktioniert das nicht. Ich habe es so Probiert:


<div data-type="push"
            data-url="http://user:passwort@192.168.100.15:8089/api/dvbcommand.html?target=Video&cmd=-c:10301"
                        data-icon="fa-power-off"
data-on-color="#eee"
data-off-color="#eee"
data-on-background-color="#0088CC"
data-off-background-color="#888"
class="big">
            </div>


Damit ruft er eine Seite auf die es nicht gibt. Ich will den Befehl in mein Netwerk senden, quasi als cmd. Also an den Rechner auf dem Dvb Viewer läuft. Mit dem Befehl wird z,b, auf ARD umgeschaltet. Wenn ich den Befehl über Browser absetze funktioniert es. Vielleicht kann mir ja doch noch jemand helfen.

Danke und Gruß Rolf
Titel: Antw:Http Befehl über Button senden
Beitrag von: setstate am 11 November 2017, 14:06:42
siehe oben

Zitatdata-url-xhr  ruft die Seite im Hintergrund
Titel: Antw:Http Befehl über Button senden
Beitrag von: Rolfg am 11 November 2017, 14:22:19
Hallo Setstate,

leider geht das auch nicht:


<div data-type="push"
                    data-url-xhr="http://user:passwort@192.168.100.15:8089/api/dvbcommand.html?target=Video&cmd=-c:10301"
            data-icon="fa-power-off"
data-on-color="#eee"
data-off-color="#eee"
data-on-background-color="#0088CC"
data-off-background-color="#888"
class="big">
            </div>


Irgendwo ist ein Fehler. Werde mal weiter probieren. Mit Alexa und Firefox geht der Befehl.

Danke und Gruß Rolf
Titel: Antw:Http Befehl über Button senden
Beitrag von: viegener am 11 November 2017, 15:46:23
Was heisst denn geht nicht?

Es könnte vielleicht daran liegen, dass der URL inkorrekt ist, denn das ":" muss normalerweise urlencoded werden - ersetze doch mal den Doppelpunkt durch %3A

Titel: Antw:Http Befehl über Button senden
Beitrag von: Rolfg am 11 November 2017, 16:20:20
Hallo,

habe mal alle : durch %3A ersetzt:


<div data-type="push"
            data-url-xhr="http%3A//user%3Apasswort@192.168.100.15%3A8089/api/dvbcommand.html?target=Video&cmd=-c%3A10301"
            data-icon="fa-power-off"
data-on-color="#eee"
data-off-color="#eee"
data-on-background-color="#0088CC"
data-off-background-color="#888"
class="big">
            </div>


Funktioniert leider auch nicht. Funktioniert nicht heißt. Wenn der DvbViewer z.b. mit ZDF läuft und ich den Befehl in einem anderen Rechner per Firefox sende schaltet er auf ARD um. Der gleiche Befehl ist in Alexa HA Bridge und dort geht er auch. Nur leider nicht mit dem Button aus Tablet UI. Da passiert leider Nix. Ich weiß auch nicht ob ich iregndwo schauen kann was passiert wenn ich den Button drücke. Bei Fhem gibt es ja die Log. Gibt es sowas auch bei TabletUI? Bei allen ander Buttons schreibt er ja den set Befehl kurz unten hin beim betätigen in TabletUI. Bei diesem Button schreibt er nix.

Danke und Gruß Rolf
Titel: Antw:Http Befehl über Button senden
Beitrag von: viegener am 11 November 2017, 16:27:48
Nein - Missverständnis: Vorne müssen natürlich die Doppelpunkte erhalten bleiben:

Also bitte nochmal folgenden URL probieren:

http://user:passwort@192.168.100.15:8089/api/dvbcommand.html?target=Video&cmd=-c%3A10301
Titel: Antw:Http Befehl über Button senden
Beitrag von: Rolfg am 11 November 2017, 16:48:07
Hallo viegener,

erstmal Danke für deine Hilfe! Auch an setstate!
Der : wahr schon mal gut. Hätte ich vielleicht auch selber drauf kommen müssen. Das Leerzeichen wird ja auch maskiert. Es funktioniert aber nur mit data-url. Mit data-url-xhr geht es leider nicht. So bekomme ich dann immer eine Leere Webseite was nicht so optimal ist. Vielleicht noch eine Idee?

Danke und Gruß Rolf