Openhab - Tägliche Aufnahme (Nachrichten o.ä.) auf kommando abspielen

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    • Openhab - Tägliche Aufnahme (Nachrichten o.ä.) auf kommando abspielen

      Liebe Gemeinde,

      Ich habe auf meinem Pi3 Openhab3 am Laufen. Mit dem Enigma2 Binding lässt sich meine VU Solo 4K (VTI 15.0) wunderbar steuern.

      Ich würde gern (letztlich über Alexa) mit einer Rule/Items meiner Box befehlen, die heutigen, aufgenommenen Nachrichten abzuspielen.
      Es soll also eine bestimmte Aufnahme mit definiertem Dateinamen (die Namen unterscheiden sich jeweils durch das Aufnahmedatum) aus dem jeweiligen Verzeichnis auf Knopfdruck von der VU abgespielt werden. Habe schon die Befehle vom webif über die Kommandozeile mit wget
      durchprobiert, aber nichts Passendes gefunden. Bis zum Kanalumschalten (zap) bin ich gekommen, was auch geklappt hat.
      Kann man überhaupt über die Shell der VU befehlen, eine bestimmte aufgenommene TS-Datei abzuspielen? Oder gibt es da eine elegante(re) Lösung über Openhab? Python Script? Ein Plugin will/kann ich aber nicht programmieren...
      Über Tipps von Euch würde ich mich sehr freuen!

      Besten Dank im Voraus!

      Filmgucker
    • Hallo nochmal,

      das Thema scheint wenig zu interessieren...Mittlerweile habe ich das webif bzw. openwebif und dessen API entdeckt.
      Man kann wohl mit mediaplayerplay eine bestimmte Datei aufrufen und abspielen. Tue ich das, dann
      wird auch abgespielt. Aber nur für ca. 30 Sekunden, und dann pausiert der Film, lässt sich auch nicht fortsetzen. Weiß wirklich keiner hier, wie man einen bestimmten Film durch einen Befehl aufrufen und auf der Box abspielen kann? Klickt man im openwebif selbst auf die play Taste, dann klappt das einwandfrei. Hinter meinem Anliegen steckt, dass ich den gewünschten Film über meine smarthome Anwendung direkt aufrufen möchte.

      VG
      Filmgucker
    • @filmgucker

      Es ist wirklich schwer zu verstehen, was du dir vorstellst - und über welche Fähigkeiten deine Smarthome Anwendung verfügt.

      filmgucker schrieb:

      Klickt man im openwebif selbst auf die play Taste, dann klappt das einwandfrei.
      Das wird dann aber im Browser abgespielt, also auf dem PC oder dem Gerät, auf dem der sich befindet, und nicht auf der Box.

      Hast du denn einen Browser oder Videoplayer in deiner Smarthome Anwendung?
      Eventuelle Ratschläge gebe ich nach bestem Wissen und Gewissen aber ohne jede Gewähr. Bei Fragen fragen.
      Tipps:
      Screenshots erstellen VU+ Wiki

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Dibagger ()

    • Oh Danke! Ich habe Kontakt!
      Nein. Das ist so: Die Box soll über einen Item in openhab3 gesteuert werden. Ich möchte
      also nicht im Browser oder wo anders, sondern auf der Box abspielen. Das passiert auch, wenn ich die
      Play Taste im openwebif drücke. Das andere wäre ja streamen. In der openwebif API Dokumentation gibt es ja den Befehl mediaplayerplay, und dann kann ich auf der Box damit die Playliste befüllen, und es wird
      - auf der Box - die gewählte Datei abgespielt. Aber nur für kurze Zeit...
      Dahinter steckt: Knopf in Openhab drücken, VU geht an, TV geht an und die Datei wird abgespielt (im Moment sind Nachrichten und das Sandmännchen interessant ;-)...Den Knopf kann man dann auch mit einem Alexa Befehl auslösen...
    • @Dibagger
      Nein, mit der Play-Taste im Browser über die virtuelle FB startet man eine Aufnahme auf der Box.

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von hgdo ()

    • Die virtuelle FB kenne ich. Die nützt mir nichts. Im Menü links klicke ich Aufnahmen. Dann werden rechts meine Aufnahmen angezeigt. Neben dem Titel gibt es die "Play" Taste. Daneben das TV Symbol, was für das streamen zuständig ist usw. Die "Play" Taste meine ich. Ein Klick führt dazu, dass der entsprechende Titel auf der Box abgespielt wird.
    • Die OpenWebif-API ist doch halbwegs gut dokumentiert, darin findest du auch, wie über die API ein Film gestartet wird.

      OpenWebif API documentation · E2OpenPlugins/e2openplugin-OpenWebif Wiki · GitHub

      Aber soweit ich dich verstehe, hast du das schon gefunden. Allerdings spielt das OpenWebif die Aufnahme mit der Methode "zap" ab, nicht mit "mediaplayerplay"
      Diskutiere nie mit einem Idioten. Er zieht dich auf sein Niveau runter und schlägt dich mit seiner Erfahrung.
    • In der Dokumentation ist für zap nur davon die rede, dass damit ein Sender gewechselt wird...
      Wie müsste der Befehl aussehen, um eine bestimmte Datei auszuwählen?

      vu+/api/zap?sRef=/movie/Test.ts
      brachte:
      {"message": "Active service is now '/movie/Test.ts'", "result": true}und einen dunklen Bildschirm...

      und der Austausch von sRef zu file ging auch nicht. er benötigt sRef. Aber gilt der auch für abgespeicherte Aufnahmen?

      Edit hgdo: Bitte nicht mehrere Beiträge direkt nacheinander erstellen! Du kannst einen Beitrag 3 Stunden lang bearbeiten und ergänzen.

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von hgdo ()

    • Sorry, wusste ich nicht. Gibt es keine Hoffnung? Ich war so froh, dass sich jemand gemeldet hat.
      Das Ziel ist: Der Befehl von außen an die VU als String, selbst eine bestimmte Filmdatei abzuspielen...

      Trotzdem: Vielen Dank!
    • Am besten schaust du dir mit dem Javascript-Debugger deines Browsers einmal an, wie das OpenWebif das macht. Der Javascript-Code dazu steht auch hier: e2openplugin-OpenWebif/openwebif.js at d276fd64a4ed0600c4e812f047888f8ded24476c · E2OpenPlugins/e2openplugin-OpenWebif · GitHub

      Mit dem Debugger bekommst du schnell heraus, was da übergeben wird. Zum deinem Glück steht da ja sogar noch ein "console.log()" mit im Code - eigentlich musst du dir nur die Console-Messages anschauen.
      Diskutiere nie mit einem Idioten. Er zieht dich auf sein Niveau runter und schlägt dich mit seiner Erfahrung.

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von rdamas ()

    • Herzlichen Dank! Das klingt nach einem Durchbruch für mein Problem. Und lernen kann ich
      sicher auch noch was, wenn ich mich mit dem java debugger beschäftige. Freue mich schon darauf,
      es auszuprobieren!

      VG
      Filmgucker
    • Oh ja! Die Lösung ist viel näher gekommen...Dank dem wunderbaren Tipp von rdamas. Ewiger Dank dafür!

      Die "zap" Funktion und sRef dazu ist wohl der Schlüssel. Was in die Browserzeile eingegeben werden muss,
      habe ich dann von dem Java Debugger für chrome rausgekriegt: Aufruf der Developer Tools bei geöffnetem openwebif. Schön das Fenster nach links rausziehen, damit alles sichtbar ist. "Sources" anklicken. Ganz rechts den Event Listener anklicken. "Mouse" Unterpunkt "click" markieren. Dann sagt er, was passiert, wenn man was auf der webpage anklickt. Dann die Playtaste auf der Seite "Aufnahmen" des webif angeklickt. Der gewünschte Film wurde auf der vu abgespielt. In Chrome brachte er auf der Konsole:

      1%3A0%3A0%3A0%3A0%3A0%3A0%3A0%3A0%3A0%3A/media/hdd/movie/20210627%202015%20-%20RTL%20HD%20-%20Das%20Haus%20der%20geheimnisvollen%20Uhren.ts

      Also erst mal ein langer Buchstaben- und Zeichensalat und dann der Dateiname, gespickt mit den komischen Zeichen "%20" an allen Stellen, wo eigentlich Leerzeichen hinkommen. Die sind übrigens nur deswegen da, damit Noobs wie ich bloß nicht zu schnell auf Lösungen kommen...Aber Ihr habt Euch getäuscht, Ihr Nerds! Ich krieg das raus!

      Egal, welche Aufnahme. Der Buchstabensalat ist immer der Gleiche. Der Dateiname natürlich nicht.

      In den Browser habe ich dann folgendes eingegeben;

      dreambox-ip//web/zap?sRef=1%3A0%3A0%3A0%3A0%3A0%3A0%3A0%3A0%3A0%3A/media/hdd/movie/20210627%202015%20-%20RTL%20HD%20-%20Das%20Haus%20der%20geheimnisvollen%20Uhren.ts

      und schwupps! Brav spielte meine vu den Film ab.

      Der nächste Schritt wäre dann, dies über ein Item (Http-Binding?) in Openhab auszulösen. Werden täglich die Nachrichten auf der VU aufgenommen, so unterscheiden sich die Dateinamen nur durch die Datumsangabe, die ich wiederum als Variable in den Text einfügen müsste...Mit Knopfdruck auf einen Switch werden die Nachrichten von heute auf der VU abgespielt. Und den Switch kann ich Alexa beibringen.

      Und dann sollte das Ziel erreicht sein: "Alexa, zeige die Nachrichten von heute" ....;-).

      Wäre geil und steigert die Smarthome Lebensqualität (man wird im Alter bescheidener...)
    • Zum "Buchstabensalat": URL-Encoding – Wikipedia - schau mal nach Funktionen oder Methoden, die sowas kodieren; z.B.: python: urllib.quote_plus, php: urlencode, perl: URI::Escape, Javascript: encodeURI
      Diskutiere nie mit einem Idioten. Er zieht dich auf sein Niveau runter und schlägt dich mit seiner Erfahrung.