Ein "webcmd" für HarmonyHub Aktion "Fernsehen" hinzufügen

Begonnen von Kinzal, 03 Oktober 2016, 19:36:40

Vorheriges Thema - Nächstes Thema

Kinzal

Hallo zusammen,

bin absoluter Neuling bei FHEM, und habe direkt eine Frage  ;D.

Ich habe mir FHEM auf meinem Raspi installiert und das Softwarepaket für Harmony installiert. Mein Ziel ist es, dass ich per URL eine Aktivität z.B. "Fernsehen" über die Harmony starten kann. Nun habe ich herausgefunden, dass man sich dafür einen "WebCMD" anlegen muss, ist das korrekt? Jedenfalls bekomme ich es einfach nicht hin, darüber die Aktivität "Fernsehen" ans laufen zu bekommen. Ich habe jetzt viel gelesen, aber es funktioniert einfach nicht, entweder habe ich den Falschen Befehl, oder ich bin einfach zu dumm  :-\. Den Befehl den ich unteranderem eingegeben habe war "set SZ.Harmony activity Fernsehen" aber das klappt wie gesagt nicht, nehme ich den Befehl "mute" dann klappt es und es wird Lautlos.

Wäre echt super wenn mir dazu jemand den richtigen Befehl nennen könnte, oder wie ich evtl. am einfachsten die Aktivitäten per HTTP starten kann.

Vielen Dank euch und noch einen schönen Sonntag Abend!

DeeSPe

Sofern die gewünschten Activities in der Harmony App angelegt worden sind erscheinen diese automatisch als Dropdown wenn:
attr SZ.Harmony webCmd activity
gesetzt ist.

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

DeeSPe

get SZ.Harmony activities
eventuell noch ausführen nach Anlegen der Activities in der Harmony App.

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

Kinzal

Hi, danke für deine Antwort.

Wie genau meinst Du das? Im Moment sieht es bei mir so aus (siehe Bild)


DeeSPe

Zitat von: Kinzal am 03 Oktober 2016, 19:51:54
Wie genau meinst Du das?

Genau so wie ich es geschrieben habe.

Zitat von: DeeSPe am 03 Oktober 2016, 19:48:47
Sofern die gewünschten Activities in der Harmony App angelegt worden sind erscheinen diese automatisch als Dropdown wenn:
attr SZ.Harmony webCmd activity
gesetzt ist.

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

Kinzal

Super, habe es verstanden. "attr SZ.Harmony webCmd activity AirPlay" Vielen Dank!

DeeSPe

Zitat von: Kinzal am 03 Oktober 2016, 19:54:06
Super, habe es verstanden. "attr SZ.Harmony webCmd activity AirPlay" Vielen Dank!

Das AirPlay ist falsch!
attr SZ.Harmony webCmd activity
Sollte reichen um das Dropdown anzuzeigen.
Gesetzt wird eine Activity (ohne Dropdown) mit:
set SZ.Harmony activity AirPlay

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

Kinzal

#7
Sorry ich verstehe es irgendwie nicht.

Wenn ich "attr SZ.Harmony webCmd activity" eingebe dann wird unter "Attributes" nur ein Eintrag "activity" hinzugefügt (edit: Und Dropdown-Menü ist für die einzelnen Aktivitäten vorhanden). Und wenn ich "set SZ.Harmony activity AirPlay" eingebe dann wird die Aktion "AirPlay" gestartet, aber ich sehe die Aktivität dann nicht unter "Attributes" gespeichert.

DeeSPe

Zitat von: Kinzal am 03 Oktober 2016, 19:59:56
Sorry ich verstehe es irgendwie nicht.

Wenn ich "attr SZ.Harmony webCmd activity" eingebe dann wird unter "Attributes" nur ein Eintrag "activity" hinzugefügt. Und wenn ich "set SZ.Harmony activity AirPlay" eingebe dann wird die Aktion "AirPlay" gestartet, aber ich sehe die Aktivität dann nicht unter "Attributes" gespeichert.

Wenn Du "attr SZ.Harmony webCmd activity" setzt bekommst Du wie gesagt ein einzelnes Dropdown angezeigt welches mit einfachem Klick auf einen Eintrag die entsprechende Activity startet. Dieses Dropdown sieht Du allerdings nicht in der Detailansicht, sondern nur in der Raumansicht.

Eine Activity wird auch nicht unter Attributes gespeichert sondern in den Readings activity und currentActivity angezeigt.

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

Kinzal

#9
Ok, verstanden. Danke!

Also mit dieser URL "http://raspberrypi:8083/fhem?detail=SZ.Harmony&cmd.SZ.Harmony=set%20SZ.Harmony%20activity%20Fernsehen" starte ich die Aktion "Fernsehen" und das klappt auch. Aber dadurch wird auch das WebIF von FHEM auch mit aufgerufen, was scheinbar dann Probleme mit der Homematic gibt.

Normal ruft man eine URL per Programm so auf:

"string url="'http://raspberrypi:8083/fhem?detail=SZ.Harmony&cmd.SZ.Harmony=set%20SZ.Harmony%20activity%20Fernsehen'";
dom.GetObject("CUxD.CUX2801001:4.CMD_EXEC").State("wget -q -O - "#url);"

das klappt aber nicht.

Meinen VU+ Receiver kann ich dann so z.B. steuern:

"string url="'http://benutzer:passwort@192.168.179.32:80/web/remotecontrol?command=116'";
dom.GetObject("CUxD.CUX2801001:4.CMD_EXEC").State("wget -q -O - "#url);"

Damit schalte ich den VU+ Receiver aus.

Ich dachte so könnte ich dann per URL auch meine Harmony über die Homematic mit einem Programm steuern bzw. starten so wie mit dem VU+ Receiver. Aber es klappt wohl nicht, weil die URL noch das WebIF aufruft von FHEM. Ich denke das es deswegen nicht klappt, weiß es aber nicht. Bisher hatte ich mit "Steuerbaren" URLs per Homematic in Programmen keine Probleme.

Hast Du evtl. eine Idee, oder gibt es einen weg per URL den Befehl zu starten ohne das das WebIF aufgerufen wird, sondern nur der Befehl gesendet wird?

Vielen Dank"

DeeSPe

Lass mal die details raus!

"string url="'http://raspberrypi:8083/fhem?cmd.SZ.Harmony=set%20SZ.Harmony%20activity%20Fernsehen'";

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

justme1968

du solltest an alle urls die du per wget aufrufst &XHR=1 anhängen. dann wird keine webseite zurück geliefert.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Kinzal

#12
Hm, dies klappt leider auch nicht.

Weder so: http://raspberrypi:8083/fhem?cmd.SZ.Harmony=set%20SZ.Harmony%20activity%20Fernsehen

noch so: http://raspberrypi:8083/fhem?cmd.SZ.Harmony=set%20SZ.Harmony%20activity%20Fernsehen&XHR=1

Beide URLs funktionieren im Browser ohne Probleme.

Edit:

Problem gefunden. Es funktioniert nicht, weil "attr WEB basicAuth XXXXXXXXXX" in der fhem.cfg gesetzt ist. Nehme ich den Eintrag raus, dann funktioniert es.

So funktioniert es jetzt: http://benutzer:passwort@raspberrypi:8083/fhem?cmd.SZ.Harmony=set%20SZ.Harmony%20activity%20Fernsehen&XHR=1

Vielen Dank für eure Hilfe!

Kinzal

Hallo, ich habe noch eine Frage.

Kann man auch einen Befehl erstellen, der ein Gerät automatisch steuert? Also zB. Befehl "TV Helligkeit" schickt hintereinander Befehle an den TV: Menü > Pfeil rechts > Pfeil nach unten > ok > 5x Pfeil nach links > ok > Exit

Geht sowas?

Danke

justme1968

entweder als sequenz in der harmony oder wie sonst in fhem auch: einfach mehrere set mit ; getrennt.

wobei dinge wie helligkeit mit der harmony eigentlich direkt gehen sollen.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968