Lautstärke vom Raspberry Pi per Slider einstellen

Begonnen von ChHerrm, 08 September 2015, 19:50:58

Vorheriges Thema - Nächstes Thema

ChHerrm

Hallo!
Ich habe aktuell ein Problem mit dem Steuern der Lautstärke:

Von Fhem aus möchte ich mit einem Slider die Lautstärke meines Raspberry Pis ändern können. Der Code sieht bislang so aus:

define Volume dummy
attr Volume alias Lautstärke
attr Volume group Radio
attr Volume icon audio_volume_mid
attr Volume room Wohnzimmer
attr Volume setList state:slider,0,10,100
attr Volume webCmd state

define Volsetz notify Volume {system('sudo amixer -c 0 set PCM %')}


Die Anweisung z.B.: {system('sudo amixer -c 0 set PCM 70%')} funktioniert nur, wenn ich sie direkt eingebe. Versuche ich es per Slider zu ändern, nimmt er jetzt durch das %-Zeichen z.B. eine 70 an und gibt es dann als db-Wert weiter. Ich denke mal, dass mir nun noch ein %-Zeichen dahinter fehlt. Bisher habe ich zahlreiche Varianten bzw. Schreibweisen erfolglos getestet. Kann mir jemand einen Hinweis geben, wie ich das Zeichen dort ranhängen muss damit es dann als normales %-Zeichen erkannt wird? :-\

Wzut

z.B durch lesen des Anfänger pdf ...
Tipp : Seite 38 ganz oben :
ZitatWenn Sie im Code Ihres notify anstatt der Variable % wirklich das Zeichen % verwenden möchten, schreiben Sie dies als
--- snipp ---
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

ChHerrm

#2
Ja, wie gesagt weiß ich dass da ein %-Zeichen hin muss und habe es in allen Varianten probiert. Also schreibe ich %% wobei das erste für den Wert und das 2. für das Zeichen steht und trotzdem passiert nichts. Hier das Ergebnis im Logfile:

2015.09.09 12:35:21 4: HTTP FHEMWEB:192.168.1.14:4076 GET /fhem?cmd=set%20Volume%2040&XHR=1
2015.09.09 12:35:21 5: Cmd: >set Volume 40<
2015.09.09 12:35:21 4: dummy set Volume 40
2015.09.09 12:35:21 5: Triggering Volume (1 changes)
2015.09.09 12:35:21 5: Notify loop for Volume 40
2015.09.09 12:35:21 5: Triggering Volsetz
2015.09.09 12:35:21 4: Volsetz exec {system('sudo amixer -c 0 set PCM %')}
2015.09.09 12:35:21 5: Cmd: >{system('sudo amixer -c 0 set PCM %')}<
2015.09.09 12:35:21 3: Volsetz return value: -1
2015.09.09 12:35:21 4: 2355:FHEMWEB:192.168.1.14:4076: /fhem?cmd=set%20Volume%2040&XHR=1 / RL:20 / text/plain; charset=UTF-8 / Content-Encoding: gzip


Ich scheine da also noch was falsch zu haben. Aber wo? ???


EDIT: Fehler gefunden, es muss heißen %EVENT%%. Danke!

Wzut

wie so oft : viele Wege führen nach Rom :)
%\%% sollte aber auch gehen
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher