Hallo zusammen,
komme bei einem aktuellen Problem leider nicht wirklich weiter und hoffe, dass hier jemand die Lösung kennt.
Zielsetzung:
Geplant ist die Musiksteuerung des Sonos-Systems über einen 4-fach Taster:
Taste 1: Bei Tastendruck soll das Radio der entsprechenden Zone die dem Taster zugeordnet wird eingeschaltet werden. Dies klappt auch ohne Probleme. Realisiert wird das über den startwin-Befehl und eine entsprechende Batch-Datei. Nun kommen wir jedoch zu meinem Problem:
Bei einem erneuten Tastendruck auf Taste 1 soll eine andere Batch-Datei gestartet werden in der ein anderer Radiosender hinterlegt ist. Ziel soll es sein mit einer Taste verschiedene Radiosender durchschalten zu können.
Bisher habe ich versucht dies über den GEHEZU-Befehl zu realisieren – leider ohne Erfolg. Was könnte alternativ funktionieren?
Taste 2:
Radio wird ausgeschaltet über Batch-Datei. (Klappt problemlos)
Taste 3 und 4:
Lautstärkeanpassung. Denke das mit einfachen Mitteln lediglich zwei Stufen möglich sein werden.
Taste 3: hohe Lautstärke
Taste 4: geringe Lautstärke
Sofern sich das Umschalten lösen lässt werde ich die Lautstärkeregelung als nächstes in Angriff nehmen.
Bin über alle Tips und Vorschläge dankbar.
Gruß
Matthias
Sonos Musiksteuerung über 4-fach Taster
Moderator: Co-Administratoren
-
- Beiträge: 2
- Registriert: 09.06.2012, 09:26
-
- Ehrenmitglied
- Beiträge: 12194
- Registriert: 29.07.2006, 15:58
- Wohnort: Schweiz
- Danksagung erhalten: 5 Mal
Re: Sonos Musiksteuerung über 4-fach Taster
Hallo Matthias und herzlich willkommen im Forum
Zu Taste 1: Du könntest einen Zähler einbauen (Variable Zaehler, Typ Zahl, Startwert 1):
Der "Trick" dabei ist nur das "verlassen", weil sonst immer alle Batch-Dateien ausgeführt würden!
Mit Tasten 3 und 4 könnte man vielleicht auch bei jedem Tastendruck die Lautstärke erhöhen/reduzieren; wenn das ein Parameter ist, den man der Batch-Datei übergeben könnte. Wie lautet denn das Kommando, das zum erhöhen/reduzieren der Lautstärke vom Sonos-System erwartet wird?
Viele Grüsse
Bümpi
Zu Taste 1: Du könntest einen Zähler einbauen (Variable Zaehler, Typ Zahl, Startwert 1):
Code: Alles auswählen
Wenn Zaehler = 1 dann
Startwin("Batch1.bat")
Zaehler := 2
verlassen
Endewenn
Wenn Zaehler = 2 dann
Startwin("Batch2.bat")
Zaehler := 3
verlassen
Endewenn
Wenn Zaehler = 99 dann
Startwin("Batch99.bat")
Zaehler := 1
verlassen
Endewenn
Mit Tasten 3 und 4 könnte man vielleicht auch bei jedem Tastendruck die Lautstärke erhöhen/reduzieren; wenn das ein Parameter ist, den man der Batch-Datei übergeben könnte. Wie lautet denn das Kommando, das zum erhöhen/reduzieren der Lautstärke vom Sonos-System erwartet wird?
Viele Grüsse
Bümpi
-
- Beiträge: 2
- Registriert: 09.06.2012, 09:26
Re: Sonos Musiksteuerung über 4-fach Taster
Hallo Bümpi,
danke für die schnelle und vor allem zielführende Antwort. Programm macht genau was es soll.
Bei der Lautsärkeregelung besteht das Problem, dass ich über die Batch-Datei keine einfache Erhöhung des Wertes sondern lediglich Wert X vorgeben kann. Müsste also bei beiden Tasten Zugriff auf eine gemeinsame virtuelle numerische Variable haben. Diese dann entsprechend Tastendruck anpassen und beim Ausschalten auf Grundwert zurücksetzen. Anschließend Batch-Datei über Befehl SCHREIBEDATEI ausgeben und ausführen. Sollte eigentlich möglich sein?
Muss mich jetzt einfach langsam in die für mich etwas gewöhnungsbedürftige Programmiersprache einarbeiten.
Gruß Matthias
danke für die schnelle und vor allem zielführende Antwort. Programm macht genau was es soll.
Bei der Lautsärkeregelung besteht das Problem, dass ich über die Batch-Datei keine einfache Erhöhung des Wertes sondern lediglich Wert X vorgeben kann. Müsste also bei beiden Tasten Zugriff auf eine gemeinsame virtuelle numerische Variable haben. Diese dann entsprechend Tastendruck anpassen und beim Ausschalten auf Grundwert zurücksetzen. Anschließend Batch-Datei über Befehl SCHREIBEDATEI ausgeben und ausführen. Sollte eigentlich möglich sein?
Muss mich jetzt einfach langsam in die für mich etwas gewöhnungsbedürftige Programmiersprache einarbeiten.
Gruß Matthias
-
- Ehrenmitglied
- Beiträge: 12194
- Registriert: 29.07.2006, 15:58
- Wohnort: Schweiz
- Danksagung erhalten: 5 Mal
Re: Sonos Musiksteuerung über 4-fach Taster
... das wäre sicher eine Möglichkeit. Wahrscheinlich müsste man aber zwischen dem Schreiben und dem Ausführen der Datei eine kleine Pause einlegen, was zu einer unerwünschten Verzögerung führen könnte.Matthias123 hat geschrieben:Batch-Datei über Befehl SCHREIBEDATEI ausgeben und ausführen.
Wenn die Anlage keine "lauter" und "leiser" Anweisungen kennt, besteht mal grundsätzlich das Problem, dass Homeputer die aktuelle Lautstärke nicht kennt, falls die Regelung nicht ausschliesslich über Homeputer erfolgt. Es kann dadurch zu Lautstärke-Sprüngen kommen, wenn die Lautstärke zwischendurch anderweitig verstellt wurde. Ja sogar zur grotesken Situation, dass es z.B. beim ersten "lauter" zuerst ganz leise wird, weil eben die letzte, am Vorabend von Homeputer gesetzte Lautstärke die "Einschlaf-Lautstärke" war...
Bei Batch-Dateien gibt es die Möglichkeit der Parameter-Übergabe. Lautet z.B. die Anweisung zum Setzen der Lautstärke auf 25%
Code: Alles auswählen
Sonos.exe VOLUME=25
Code: Alles auswählen
Sonos.exe VOLUME=%1
In Homeputer könnte dann das Makro etwa so aussehen:
Code: Alles auswählen
** Variablen: Lautstaerke Typ Zahl
** Anweisung Typ Zeichen
Laden("Taste3.Lautstaerke")
Wenn Taste3 eingeschaltet dann
Lautstaerke := Lautstaerke + 3
Sonst
Lautstaerke := Lautstaerke - 3
Endewenn
Wenn Lautstaerke > 100 dann
Lautstaerke := 100
Endewenn
Wenn Lautstaerke < 0 dann
Lautstaerke := 0
Endewenn
Sichern("Taste3.Lautstaerke")
Anweisung := "SonosVolume.bat " + Lautstaerke
StartWin(Anweisung)
Wenn du Leerzeichen im Pfad zu deiner BAT hast, muss die Anweisung etwas komplizierter aufgebaut werden (sh. Homeputer-Hilfe)
Betreibst du die Fernbedienung mit doppelter Kanalanzahl, musst du in beide Tasten ein Makro setzen. Die Abfrage nach "eingeschaltet" entfällt dann. Die Variablen werden in einem der beiden Makros definiert und im anderen Makro durch Voranstellen des Objektnamens verwendet.
Viele Grüsse
Bümpi