[yavdr-ansible] Update für das Frontend-Skript

  • Hallo,

    ich habe gerade eine neue Version des Pakets python3-yavdrfrontend hochgeladen, deren Verhalten näher an dem ist, was mit yaVDR 0.6 möglich war. Da sich die Abschnitte in der Konfigurationsdatei /etc/yavdr-frontend/config.yml etwas geändert haben bitte die neue Version aus dem Paket übernehmen bzw. die Anpassungen mit dem neuen Stand zusammenführen.


    Man kann jetzt im Abschnitt vdr über die Variable attach_on_startup festlegen, ob das VDR-Frontend beim Start attached werden soll:

    Code: /etc/yavdr-frontend/config.yml
    1. [...]
    2. vdr:
    3. id: 0 # vdr instance id
    4. dbus2vdr_bus: SystemBus # the bus to communicate with the dbus2vdr plugin - SystemBus or SessionBus
    5. attach_on_startup: auto # choose one of auto, always or never
    6. [...]
    • auto: Das VDR-Frontend wird attached, wenn der VDR einen "Manual Start" erkannt hat.
    • always: Das VDR-Frontend wird immer attached, der VDR wird auf den Nutzeraktivitätsstatus vor dem Attachen des Frontends gesetzt. Damit sollte er jetzt auch bei einer Timer-Aufnahme gemäß den Einstellungen zum Brückentimeout herunterfahren
    • never: Das Frontend wird erst attached, wenn der Benutzer eine Knopf auf der Fernbedienung drückt bzw. über die DBus-API das Frontend aktiviert

    Wenn der Recher vom vdr-addon-acpiwakeup ohne existierenden Aufwachzeitpunkt für einen Timer bzw. VDR-Plugin geweckt wurde, versucht das yavdr-frontend ihn nach dem Brückentimeout automatisch wieder herunterzufahren.


    Beim Druck auf die Power-Taste der Fernbedienung (sollte den Tastendruck KEY_POWER2 auslösen) wird das aktuell aktive Frontend (VDR-Ausgabeplugin, KODI usw.) gestoppt und falls der VDR gerade nicht herunterfahren will in Abständen von ca. 5 Minuten versucht den Shutdown zu wiederholen. Falls man bei attach_on_startup als Wert always gewählt hat, bleibt das VDR-Frontend bis zum erfolgreichen Shutdown attached. Ein rotes Shutdown-Symbol im yaVDR-Logo des Hintergrundes (sieht in etwa so aus: https://github.com/yavdr/yavdr…ges/animation/extro09.png) signalisiert, wenn das yavdr-frontend versucht den VDR periodisch herunterzufahren. Durch einen Druck auf der Fernbedienung bzw. Start eines Frontends über die DBus-API kann man den Shutdown abbrechen.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Vorhin, wie ich meinen VDR per FB eingeschaltet habe, kam gleich der Hinweis dass der VDR in 5:00 Minuten ausgeschaltet wird. Ein Druck auf die FB hat diese Meldung "quittiert".


    Könnt ihr das nachvollziehen?

    Gruß utiltiy



    VDR Projekte EPGD EPG2VDR

  • Super. Danke dir Alexander.


    Gruß

    VDR_1:

    Asus J3455-M, GT 710, SSD 240GB, 8GB DDR3, 1x DvbSky S950 with yavdr-ansible (testing)

    VDR_2:

    AsRock J3455, GT 710, SSD 120GB + SATA 400GB, 8GB DDR3, 1x DvbSky S952 with yavdr-ansible (testing)

    VDR_3_Testing:

    AtomiPi with Intel Atom x5-Z8350, 2GB DDR3, 16GB eMMC, 1x Sundtekt DVB-S with yavdr-ansible (testing)


  • Vorhin, wie ich meinen VDR per FB eingeschaltet habe, kam gleich der Hinweis dass der VDR in 5:00 Minuten ausgeschaltet wird. Ein Druck auf die FB hat diese Meldung "quittiert".

    Kannst du mal das Log von dem Boot posten (journalctl -b -l > log.txt)? Meine Vermutung wäre, dass der VDR von einem Start für einen Timer bzw. Plugin ausgegangen ist und das Frontend-Skript dann nach dem Attachen den Benutzer wieder inaktiv gesetzt hat.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Sieht so aus:


    Hab das ganze Log per PN verlinkt.

    Gruß utiltiy



    VDR Projekte EPGD EPG2VDR

  • Dez 30 10:30:34 vdr03 yavdr-frontend[1910]: DEBUG:VDRFrontend:Could not retrieve Shutdown.IsUserActive(): '<CompositeObject>' object has no attribute 'IsUserActive'

    Ah, ich hatte vergessen die neue dbus2vdr-Version in experimental-vdr bauen zu lassen, der alten fehlt noch die Methode IsUserActive().

    Das Paket vdr-plugin-dbus2vdr - 20181026140000experimental-0yavdr0~bionic baut gerade im PPA.


    Edit: Paket ist fertig und wurde veröffentlicht.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

    The post was edited 2 times, last by seahawk1986 ().

  • Bei yavdr 0.6 gab es eine Möglichkeit, das Frontend per ssh zu attachen.

    frontend-dbus-send /frontend atta


    Gibt es eine ähnliche Möglichkeit auch bei yavdr ansible?


    Nach dem Update wird das Bild nämlich nicht mehr vom Live Plugin gegrabt, und ich frage mich ob es nicht einen Zusammenhang gibt.

  • Es wurde zuvor auch nicht angezeigt solange das Frontend nicht aktiviert ist, das Verhalten ist wie früher.

    Gruß utiltiy



    VDR Projekte EPGD EPG2VDR

  • frontend-dbus-send /frontend atta


    Gibt es eine ähnliche Möglichkeit auch bei yavdr ansible?

    Ja, das yavdr-frontend hat eine DBus API dafür, die Aufrufe sind anders als bei yaVDR 0.6:

    Um das aktuelle Frontend zu attachen bzw. zu starten, kannst du also frontend-dbus-send start aufrufen. Mit frontend-dbus-send switchbetween kodi vdr kann man zwischen dem VDR-Frontend und KODI umschalten (macht sich z.B. gut in der /var/lib/vdr/.lircrc für irexec).


    Ansonsten kann man z.B. auch lircd2uinput nutzen, um Fernbedienungstasten auf dem Eventlircd-Sockel auszugeben, was dann beim VDR bzw. KODI oder auch irexec ankommt: lircd2uinput-send KEY_OK

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Vielen Dank für die ausführlichen Erläuterungen und für den Hinweis auf die Alternative mit lircd2uinput-send.


    Ich habe es jedoch gleich mit frontend-dbus-send start versucht und das gegrabte Bild erschien im Live Plugin.


    Noch einen guten Rutsch ins Jahr 2019 für dich und allen anderen Mitglieder des Forums.

  • frontend-dbus-send switchbetween kodi vdr hab ich probiert. Von VDR zu KODI ging es, wie ich zurück wollte zum VDR kam nur das yaVDR Logo und kein Bild / Ton. Wobei das "zurückschalten" zum VDR länger gedauert hat bis was sichtlich passiert ist.


    Hab den VDR dann auf die schnelle neu booten lassen weil auch kein Restart vom VDR geholfen hat weil er benötigt wurde....

    Gruß utiltiy



    VDR Projekte EPGD EPG2VDR

  • frontend-dbus-send switchbetween kodi vdr hab ich probiert. Von VDR zu KODI ging es, wie ich zurück wollte zum VDR kam nur das yaVDR Logo und kein Bild / Ton. Wobei das "zurückschalten" zum VDR länger gedauert hat bis was sichtlich passiert ist.

    Da bräuchte ich ein Log davon - das müsstest du in den /var/log/syslog* Dateien finden können (wenn du journald das persistente Speichern der Logdaten erlaubst, kannst du dir den Zeitraum auch mit journalctl rauslassen).

    Entweder du hast einen Deadlock im VDR (in dem Log, das du mir gestern gezeigt hast, gab es eine Meldung für eine falsche Lock-Reihenfolge mit dem zappilot-Plugin und auch Crashes des VDR, die man sich mal genauer ansehen sollte) oder du hast KODI (17 oder 18?) in einer Phase erwischt, wo es nicht sauber auf den Quit-Befehl reagiert (das kommt z.B. gerne mal vor, wenn es gerade Datenbanken aktualisiert).

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Müsste das: https://pastebin.ubuntu.com/p/cgcRVkTgnQ/ gewesen sein.


    Das zappilot-Plugin ist vom PPA, komisch.

    Gruß utiltiy



    VDR Projekte EPGD EPG2VDR

  • Dass sich ein Paket im PPA bauen lässt, bedeutet leider nicht automatisch, dass es problemlos funktioniert - es gibt vermutlich noch etliche Plugins, die das Locking nicht sauber handhaben. Zur Fehlersuche am besten mal alles abgesehen vom Ausgabeplugin und dbus2vdr deaktivieren und dann nach und nach Plugins dazu nehmen und schauen, ob es Deadlocks bzw. Warnungen zur Locking-Reihenfolge im Log gibt.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Frohes neues seahawk,


    beim beenden (über die Fernbedienung) von Kodi 18 kann ich nicht zum vdr zurückkehren. Wenn ich über das Menü gehe und Beenden/Verlassen wähle geht es.


    Gruß


    Murry

  • beim beenden (über die Fernbedienung) von Kodi 18 kann ich nicht zum vdr zurückkehren. Wenn ich über das Menü gehe und Beenden/Verlassen wähle geht es.

    Nutzt du KODI 17 oder 18 und wie versuchst du über die Fernbedienung zum VDR zurückzukehren? Mit frontend-dbus-send switch bzw. frontend-dbus-send switchbetween kodi vdr oder auf einem anderen Weg?

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Hi bei mir klappt das mit dem "auto" Modus irgendwie nicht. Wenn ich ohne anstehenden Timer starte, dann lande ich immer beim "Frontend detached.." Screen.

    Im Log: DEBUG:VDRFrontend:start_t has value StartType.UNKNOWN



    Ich hatte mal testweise (z.T. ist der frontend start schon vor dem vdr start fertig ) den start des Frontend verzögert um 10s, dann hat auto beim Manuellen start funktioniert, bei einem Timer allerdings kam die frontend detached meldung nicht bzw. man konnte nicht mit anykey attachen.

    reicht das wenn der Frontend service auf dbus wartet, oder besser auf dbus+vdr ?


    komplettes Log

    Zum Guggen: yavdr0.6 + Silverstone GD04 + Intel DH57DD + Intel G6950 + Nvidia GT630 + Unicable/Jess-Sat (JPS0501-12) mit DD/L4M Max8 + 4TB WD-red + bequiet SFX300W
    Zum Testen : yavdr-Ansible + GMC Toast + DH67BL+G530+ Nvidia GT520 + L4M CineS2v6 o. SAT>IP Plugin mit DD-O'net
    VaaS (VDR-as-a-Service): yavdr06 + ML03+DH67BL+G530+2GB RAM + 2TB WD-EARX + Zotac GT610 + L4M v5.4 + bequiet SFX300W
    Squeezeboxserver: DN2800ML im Streacom F1CS NAS: HP ProLiant MicroServer NL36+ Smart Array P212

  • Ich hatte gestern, jetzt wo ich das lese, auch kein Bild beim manuellen Start und musste einmal auf die FB drücken. Hab da jedoch noch nicht weiter gesucht woran es lag ;)

    Gruß utiltiy



    VDR Projekte EPGD EPG2VDR

  • Ah wenigstens nicht alleine ;D

    ich probier gerade rum, warte gerade auf einen Timerstart...

    Zum Guggen: yavdr0.6 + Silverstone GD04 + Intel DH57DD + Intel G6950 + Nvidia GT630 + Unicable/Jess-Sat (JPS0501-12) mit DD/L4M Max8 + 4TB WD-red + bequiet SFX300W
    Zum Testen : yavdr-Ansible + GMC Toast + DH67BL+G530+ Nvidia GT520 + L4M CineS2v6 o. SAT>IP Plugin mit DD-O'net
    VaaS (VDR-as-a-Service): yavdr06 + ML03+DH67BL+G530+2GB RAM + 2TB WD-EARX + Zotac GT610 + L4M v5.4 + bequiet SFX300W
    Squeezeboxserver: DN2800ML im Streacom F1CS NAS: HP ProLiant MicroServer NL36+ Smart Array P212