FHEM Forum

FHEM => fhem-users => Thema gestartet von: Guest am 17 August 2012, 13:42:51

Titel: system() liefter nach einiger Zeit -1
Beitrag von: Guest am 17 August 2012, 13:42:51
Originally posted by: <email address deleted>

Hi,

habe seit ein paar Tagen an meinen FHEM-OpenWRT-Router eine Soundkarte
angeschlossen und geben den Sound über madplay aus. Das ganze passiert in
einer Funktion mit ein paar if-Abfragen über ein system("madplay foo.mp3").
Das funktioniert auch einwandfrei, bis irgendwann (manchmal schon nach ein
paar Stunden) system() anscheinend -1 zurückliefert (so stehts im FHEMWEB,
wenn ich die Funktion manuell auslöse). ALLERDINGS funktioniert "madplay
foo.mp3" (z.B. über das Eingabefeld im FHEMWEB) bzw. ein madplay foo.mp3 in
der shell einwandfrei. Ein attr global verbose 5 liefert leider keinen
Aufschluss zum Fehler.

Hat da irgendjemand eine Idee?

Gruß

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Titel: Re: system() liefter nach einiger Zeit -1
Beitrag von: rudolfkoenig am 17 August 2012, 14:20:51
                                                   

> Hat da irgendjemand eine Idee?

Stdout/stderr sollte eigentlich im fhem-log landen. Steht da was?
Als Alternative zu system(...) wuerde ich auch `` probieren:
  my $ret = `<...shellcmd...> 2>&1`;
  Log 1, "Ret:$ret";

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Titel: Re: system() liefter nach einiger Zeit -1
Beitrag von: Guest am 17 August 2012, 17:10:35
Originally posted by: <email address deleted>

Hi,

Am Freitag, 17. August 2012 14:20:51 UTC+2 schrieb Rudolf Koenig:
>
> Steht da was?  
>

Nein, da steht nur 2012.08.17 13:29:26 5: Cmd: >{system("madplayfoo.mp3")}<.

Mittlerweile funktioniert es auch nurnoch über die shell, d.h. ein "madplay
foo.mp3" in der Eingabezeile im FHEMWEB geht auch nicht, aber auch hier
steht das selbe wie oben im Log; keine Fehlermeldung o.ä.



Am Freitag, 17. August 2012 14:20:51 UTC+2 schrieb Rudolf Koenig:
>
>   my $ret = `<...shellcmd...> 2>&1`;
>   Log 1, "Ret:$ret";
>

Tut's auch nicht, im Log steht 2012.08.17 16:57:32 1: Ret:

Ich kann allerdings definitiv einen OpenWRT-/Hardwareseitigen Fehler
ausschließen, da es über die shell einwandfrei funktioniert.

Gruß

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Titel: Re: system() liefter nach einiger Zeit -1
Beitrag von: Guest am 18 August 2012, 14:54:01
Originally posted by: <email address deleted>

Ich hab nochmal weiter probiert: ein perl -e 'system("madplay foo.mp3")'
über die shell funktioniert auch einwandfrei, während es über FHEM nicht
funktioniert. Ich habe aber jetzt herausgefunden, dass ein Neustart von
FHEM das Problem behebt.

Gruß

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Titel: Re: system() liefter nach einiger Zeit -1
Beitrag von: Guest am 18 August 2012, 14:59:13
Originally posted by: <email address deleted>

Nachtrag: im Log steht jetzt auch (bei Benutzung von 'my $ret = '
2>&1'; Log1, "Ret:$ret";'):

2012.08.18 14:55:42 1: Ret:sh: madplay foo.mp3 &: not found

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com