Tvheadend Aufnahmebenachrichtigung an Openhab

  • Hat sich schonmal jemand die Tvheadend API angeschaut?
    Momentan lasse ich mir per Telegram von Openhab eine Benachrichtigung schicken wenn eine Tvheadend Aufnahme abgeschlossen ist.
    Allerdings läuft das recht rudimentär und es wird nicht der Titel der Aufnahme mit gesendet.
    Daher also meine Frage...jemand schon mit der Tvheadend API rumgespielt? Wird der Name der letzten Aufnahme ausgegeben?


    edit:
    eine lösung gibts hier Tvheadend Aufnahmebenachrichtigung an Openhab

  • Hat sich schonmal jemand die Tvheadend API angeschaut?

    Hast Du auf die Schnelle einen Link dazu? Ansonsten würde mir die Postprocessing-Action einfallen, die ja ausgelöst wird, wenn eine Aufnahme beendet wird. Sowas könnte man auch in ein Python-Skript packen und z.B. eine JSON oder XML oder whatever verschicken.

    AZi (DEV): Nexus auf LibreElec | Asrock J4205 | 4 GB RAM | 128 GB Sandisk| Rii mini
    DEV: PC Ubuntu 20.04 | Matrix
    AZi: Tanix TX3 | Android/CoreElec Dualboot (EMMC), Nexus
    WoZi: Nexus auf LibreElec | Asrock J4205 | 4GB RAM | 128 GB Sandisk SSD | Atric IR | URC7960

    NAS: unRaid, 3x6TB, 2x12TB | TV-Server: Futro S550 mit Hauppauge QuadHD DVB-C
    PayPal: paypal.me/pvdbj1

  • postprocessor command in tvh nutze ich schon für meine quick and dirty lösung.
    dort einfach per http was zu openhab senden curl 192.168.2.85:8080/basicui/CMD?TVH_Aufnahme=ON .
    in openhab ist ein dummy item angelegt  Switch TVH_Aufnahme "Aufnahme" welches mit der folgenden rule einfach was zu telegram absetzt:

    Code
    rule "aufnahme "
    when
    Item TVH_Aufnahme received command ON
    then
    sendTelegram("Bot", "Hallo, eine TV Aufnahme wurde gerade abgeschlossen.")
    end

    eigentlich müsste der aufnahmetitel per regex oder json extrahierbar sein.
    link zur api auflistung https://oberguru.net/tvheadend/api.html
    link zum eintrag für die letzte aufnahme http://192.168.2.85:9981/api/dvr/entry/grid_finished?limit=1

    genau auf dich hab ich in diesem thread gehofft :rolleyes:

  • hab mal getestet... jsonpath für openhab wäre JSONPATH($.entries.*.title.ger)
    damit bekommt man den titel extrahiert. das ganze müsste dann in einem item per http abgefragt werden. dann hat man schonmal den titel und kann das ganze per rule zu telegram senden.
    ich mach mal heute was fertig wenn ich ein paar minuten zeit finde.

    edit....gerade nochmal den string geprüft, das geht alles soweit. muss man sich nur noch ne vernünftige methode ausdenken, wie das ganze in einer rule arbeiten soll.

  • so hier mal ne schnelle lösung... wenn jemand einen eleganteren weg hat, immer her damit

    in openhab ein dummy item anlegen: Switch TVH_Aufnahme "Aufnahme" 
    in tvheadend unter: configuration -> recording -> digital video recorder profiles in der rechten spalte bei:
    "Pre-processor command" folgendes rein curl 192.168.2.85:8080/basicui/CMD?TVH_Aufnahme=ON ip natürlich mit der von eurem openhab system ersetzen
    und bei:
    "Post-processor command" das hier rein curl 192.168.2.85:8080/basicui/CMD?TVH_Aufnahme=OFF ip natürlich mit der von eurem openhab system ersetzen
    in openhab dann eine rule erstellen in der ihr die parameter "tvhname,tvhpasswort,ip von tvh, botname" auf eure werte setzen müsst.

    das ergebnis sieht wie folgt aus

    anmerkung: Pre-processor command sowie die rule im case format wäre grundsätzlich natürlich nicht notwendig. so habt ihr aber die möglichkeit auch irgendwas auszulösen wenn eine aufnahme startet.
    weiterhin könnt ihr bei startenden oder beendeten aufnahmen natürlich auch irgendwelche anderen automatismen von openhab ausführen lassen.

  • Ich sehe schon, Du brauchst mich nicht ;) . Aber Deinen Ansatz werde ich mal im Auge behalten. Zur TVH-API habe ich ein Wiki gefunden: https://github.com/dave-p/TVH-API-docs/wiki

    AZi (DEV): Nexus auf LibreElec | Asrock J4205 | 4 GB RAM | 128 GB Sandisk| Rii mini
    DEV: PC Ubuntu 20.04 | Matrix
    AZi: Tanix TX3 | Android/CoreElec Dualboot (EMMC), Nexus
    WoZi: Nexus auf LibreElec | Asrock J4205 | 4GB RAM | 128 GB Sandisk SSD | Atric IR | URC7960

    NAS: unRaid, 3x6TB, 2x12TB | TV-Server: Futro S550 mit Hauppauge QuadHD DVB-C
    PayPal: paypal.me/pvdbj1

  • ein bekannter von mir beklagt das seine aufnahmen nach ner gewissen zeit sich von alleine löschen,
    Ich wüsste in tvh aber kein vorkonfigurierten menüpunkt der das könnte,
    Du ?

  • das neue telegram binding schreit gerade zu nach nützlichen integrationen.
    ich muss mir echt mal anschauen wie handbrake über kommandozeile funktioniert.

    hier mal ein screenshot vom neuen telegram binding. hab mal eine dummyrule getestet.

  • Ich hätte jetzt nicht wenig Lust, einen Message-Broker für Kodi zu schreiben ;) . Was soll er können:

    • er sammelt alle Messages, die über http reinkommen - z.B. von OpenHAB - und zeigt sie zyklisch an.
    • jede Message (Notification) muss weggeklickt werden, dann gilt sie als gelesen und wird gelöscht.
    • man kann sich alle Nachrichten gesammelt anzeigen lassen
    • Nachrichten-Management (löschen, alle löschen, Details usw.)

    Heb' ich mir mal für die Sommerpause auf. Wäre das was?

    AZi (DEV): Nexus auf LibreElec | Asrock J4205 | 4 GB RAM | 128 GB Sandisk| Rii mini
    DEV: PC Ubuntu 20.04 | Matrix
    AZi: Tanix TX3 | Android/CoreElec Dualboot (EMMC), Nexus
    WoZi: Nexus auf LibreElec | Asrock J4205 | 4GB RAM | 128 GB Sandisk SSD | Atric IR | URC7960

    NAS: unRaid, 3x6TB, 2x12TB | TV-Server: Futro S550 mit Hauppauge QuadHD DVB-C
    PayPal: paypal.me/pvdbj1

  • klingt interessant...
    für welchen anwendungsfall stellst du dir das bspw vor?
    mich interessiert das neue telegram binding primär, weil man da mit erinnerungsfunktionen in rules arbeiten kann.
    ich denke da bspw so an meine xiaomi pflanzensensoren.
    da lese ich öfter mal die nachricht "pflanze x,y,z braucht wasser/dünger" und hab sie schnell wieder vergessen :whistling: .
    wenn aber ein kodi popup auftauchen würde (nicht wie bisher nur eine notification von openhab) welches man wegklicken muss würde das den eigenen hintern vlt eher in bewegung setzen.

    ansonsten könnte man natürlich einige nützliche funktionen die eine interaktion wollen mit einbauen.
    ich persönlich hab auch eher meine harmony in der hand als das doofe handy.

  • Hey, ich habe damit mal rumgespielt weil ich im Urlaub bin und wissen wollte wann daheim Aufnahmen laufen ohne ständig ins TVH zu gucken.


    3 Änderungen habe ich vorgenommen, vielleicht auch für andere interessant:

    1. Den Zweig "ON" habe ich aufgemacht, da ich auch wissen möchte wenn eine Aufnahme startet.
    2. Dazu habe ich die API Abfragen in die Zweige verlegt da eine leicht andere Abfrage für gerade gestartete Aufnahmen nötig ist.
    3. Scheinbar feuert mein TVH so schnell den "OFF" Befehl raus dass die API Aufrage noch die vorletzte Aufnahme liefert (TVH hat scheinbar die Datenbank noch nicht aktuell). Deswegen habe ich 5 Sekunden Wartezeit reingeschrieben, das ist ja wirklich zu verschmerzen.

    Code:

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!