svdrpsend.pl in einem Script über commands.conf - funktioniert nicht!

  • Hallo Jungs,


    ich möchte gerne aus der commands.conf zB das scan-channels Script aus dem Mastertimer Paket nutzen. Nur irgendwie kann ich aus dem VDR heraus über ein Script nicht über svdrpsend auf den VDR zugreifen. Fehlermeldung keine. Das Script läuft durch und zeigt null Wirkung.


    Alle beteiligten Scripte sind ausführbar und funktinonieren wenn man sie auf der Commandozeile ausführt.


    Ich bin sprach- und ratlos.


    Any hints?

  • Mal einen Print gemacht, ob das Script mit den richtigen Parametern aufgerufen wird?
    Mal mit einer Fehlermeldung-Umleitung (2>) gespielt, ob vielleicht einfach nur im Log keine Fehler auftauchen, weil sie im vdr-Terminal erscheinen würden?
    Sagt das Log irgendwas, dass vdrpsend zumindest aufgerufen wurde? (wird glaube ich dokumentiert oder?)


    Sind nur Ideen :)

  • Ja, Parameter werden richtig übergeben. Mit Printfs habe ich auch getraced ob er überhaput an die richtige stelle im Script kommt. Alles soweit OK.


    Dann beim Aufruf von svrpsend.pl hängt sich der VDR auf. Es kommt "PANIC Watchdog Timer expired" .Der Timer steht auf 60sec! Im Log steht nichts von einem Versuch über Port 2001 und svdrpsend. Es passiert einfach nichts.


    Kann das mal einer probieren mit zB. folgender Erweiterung in der commands.conf:


    qwert: /usr/local/bin/svdrpsend.pl CHAN 1


    und ruft den EIntrag dann mal unter Befehle auf? Was passiert? Eigentlich würde ich erwarten, dass dr VDR hinterher im Kanal 1 ist. Das passiert aber nicht.


    Any hints?

  • Hi,


    VDR blockiert sich selbst durch Befehlsauführung über commands.conf ?
    Scripte, die die SVDRP-SST nutzen über die commands.conf unabhängig starten, z.B.
    qwert: at now -f scriptname
    oder
    qwert: batch -f scriptname

  • Vielen Dank, dass war es!


    Ich würde nun aber gerne ein Script schreiben, dass ein anderes Script aufruft. Das erste Script soll aber erst weiterlaufen, wenn das zweite beendet ist. Wenn ich aber aus dem ersten mit "at now -f ..." was starte, dann läuft das erste Script doch weiter und wartet nicht auf das zweite bevor es weitergeht, oder habe ich da was falsch verstanden.


    Die Idee: Aus dem vdrshutdownscript wird ein Script aufgerufen, dass alle Channels durchscant und danach den Master Timer aufruft. Erst wenn das alles gelauefn ist, dann soll das vdrshutdown Script weiterlaufen und den Rechner runterfahren. Das ganze soll nur dann passieren, wenn ein automatischer Shutdown vorliegt (Parameter 5 gleich "1").


    Das funktioniert soweit ganz gut, nur muss ich eben das Scan und Mastertimer Script mit at in den Hintergrund schieben. Vdrshutdown macht aber dann weiter und fährt den Rechner runter. Hab ich da ne Chance, oder muss ich mit Sleep arbeiten. Besser wär auch ne kleine Schleife die testst ob ein bestimmtes File existiert. Erst wenn das weg ist (gelöscht Master Timer Script) dann wird die Schleife beendet und es geht weiter mit dem Shutdown.


    Oder ich schick den Shutdown Command mit at now+10min in den Hintergund schicke.


    gehts auch einfacher?


    THANKS!

  • Hi,


    ich würde im vdrshutdown-Script bei Automatik-Shutdown mit 'at now' das 2.Script unabhängig aufrufen und sofort zu VDR zurückkehren (exit, ohne shutdown) :



    Wenn das Script (scan/mastertimer) fertig ist, ruft es zum Schluss

    Code
    svdrpsend.pl HITK POWER


    auf, und fährt dann VDR mit USER-Befehl ($5=1) runter; damit wirken dann auch die VDR-Timer Mechanismen weiter (z.B. min.Zeitdiff. bis nächste Aufnahme, falls Dein Script 'nen bißchen länger braucht :D ).

Jetzt mitmachen!

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