Wenn dies dein erster Besuch hier ist, lies bitte zuerst die Hilfe - Häufig gestellte Fragen durch. Du musst dich vermutlich registrieren, bevor du Beiträge verfassen kannst. Klicke oben auf 'Registrieren', um den Registrierungsprozess zu starten. Du kannst auch jetzt schon Beiträge lesen. Suche dir einfach das Forum aus, das dich am meisten interessiert.
Vielen Dank für den Code -- Genial, das funktioniert super mit meinen Squeezecenter. Ich hatte das ursprünglich mit UDP versucht, dann mit TCP und bastelte nur mit dem String herum. Der Grund wahr wahrscheinlich die Verzögerung, bzw. das Timing.
da möchte ich mich gerne anschließen.
Vielen herzlichen Dank.
Am Wochenende war wegen des richtig guten Wetter nicht wirklich viel Zeit zum rumspielen.
Aber hier mal eine erste Makro-LIB für die SqueezeBox Steuerung.
Ohne Fehlerbehandlung, ohne Reconnects, ohne Überprüfungen.
Morgen kommt noch das Schreiben von Infos aufs Display.
P.S.: Bei mir funktioniert die PAUSE Funktion nicht.
wenn ich da übertragen will, dann kommt "Übertragen nicht möglich"
Kann das jemand bestätigen?
ich glaub da hab ich mich heut Nacht schlecht ausgedrückt.
Die Funktion PAUSE geht so wie Sie im Makro ist.
Aber wenn ich das Makro SBPause bei mir einfüge, dann kann ich das Programm nicht mehr an den EIBPC übertragen.
Die Übertragung bricht dann irgendwie ab.
ich habe mir das Makro SBPause mal angeschaut. Wenn du auf eine Gruppenaddrese schreiben willst, musst du write(GA, EIN) verwenden. GA = Ein funktioniert nicht.
Außerdem brauchst du die playerid(das ist die MAC-Adresse) der Squeezebox und nicht den Namen. Ich habe das Makro SBPause mal editiert.
Du kannst auch einfach noch ein paar Tage warten, dann veröffentlichen wir Makros für die Squeezebox.
Falls ihr Wünsche oder Ideen habt, lasst sie mich wissen. Das ist bisher in Planung:
- Standardfunktionen(An, Aus, Play, Stop, Pause, Forward, Rewind) mit einem Schalter oder Taster bedienen
- Lautstärke mit einem beliebigen Drehknopf/Regler einstellen
- Display als Anzeige für verschiedene Werte(z.B. Temperatur) oder Strings benutzen
- Einbettung des Squeezebox Servers in den Webserver des EibPC oder zumindest einen Link dazu.
Gruß
Thomas
Edit: Bei dieser Version kann man die Beschreibung nicht lesen, korrigiert auf Seite 8.
Außerdem werden wir auch noch ein Makro schreiben, mit dem man einen beliebigen Befehl über einen Schalter/Taster an die Squeezebox senden kann.
das sind ja super Nachrichten.
Dann warte ich mal auf eure Makros.
Das Makro war mein Versuch mit der Beta nur jetzt in richtig.
Zitat von Thomas87
ich habe mir das Makro SBPause mal angeschaut. Wenn du auf eine Gruppenaddrese schreiben willst, musst du write(GA, EIN) verwenden. GA = Ein funktioniert nicht.
Ich wollte auf die GA gar nicht schreiben. Statt GA könnte man auch VARIABLE oder so nehmen.
Ich setze damit im Prinzip nur das Validierungsschema zurück.
Die Taste, Funktion oder der WebButton braucht beim drücken dann nur ein EIN senden und die IF Anweisung wird verarbeitet.
Man könnte das natürlich auch als Toggle machen und sich dadurch ein Makro sparen.
Zitat von Thomas87
Außerdem brauchst du die playerid(das ist die MAC-Adresse) der Squeezebox und nicht den Namen. Ich habe das Makro SBPause mal editiert.
Hab die Hilfe gerade nicht da, aber das müsste eigentlich auch mit Namen funktionieren.
Zitat von Thomas87
Falls ihr Wünsche oder Ideen habt, lasst sie mich wissen. Das ist bisher in Planung:
Ja.
- Titel+Interpret in je einer Variable
- Text an die Squeezebox schicken (Title1+Title2)
Zitat von Thomas87
- Einbettung des Squeezebox Servers in den Webserver des EibPC oder zumindest einen Link dazu.
Geht, WebButton ändert eine Variable und die löst das Makro aus.
das sind ja super Nachrichten.
Dann warte ich mal auf eure Makros.
Das Makro war mein Versuch mit der Beta nur jetzt in richtig.
Ich wollte auf die GA gar nicht schreiben. Statt GA könnte man auch VARIABLE oder so nehmen.
Ich setze damit im Prinzip nur das Validierungsschema zurück.
Die Taste, Funktion oder der WebButton braucht beim drücken dann nur ein EIN senden und die IF Anweisung wird verarbeitet.
Man könnte das natürlich auch als Toggle machen und sich dadurch ein Makro sparen.
Achso, ich verstehe. Aber dann darfst du hier nur eine Variable benutzen, denn der Compiler lässt es nicht zu, dass man einer Gruppenadresse mit = etwas zuweist. Man müsste dann halt der Variable den Wert der Gruppenadresse zuweisen, dann kann man auch eine Gruppenadresse verwenden. In etwa so:
Code:
:begin SBPause(SBName,GA)
Variable = AUS
if GA==EIN then Variable = EIN endif
if Variable==EIN then connecttcp(SSPort, SSIP) endif
if after((Variable==EIN), 100u64) then sendtcp(SSPort, SSIP, SBName+$ pause$); Variable = AUS endif
Ja.
- Titel+Interpret in je einer Variable
- Text an die Squeezebox schicken (Title1+Title2)
Nur damit ich das richtig verstehe:
1) Aktueller Titel + Interpreten in je einer Variable speichern
2) 2 Titel an die Squeezebox schicken, damit der diese abspielt. Per Schalter oder wie willst du die schicken? Über einen Schalter immer wieder die gleichen Lieder abzuspielen finde ich nicht so sinnvoll. Oder wie meinst du das?
denn der Compiler lässt es nicht zu, dass man einer Gruppenadresse mit = etwas zuweist
Stimmt. Hmmm, muss ich mal drüber nachdenken.
Ja, du hast Recht. Das hat bei mir nur nicht geklappt, da mein Name aus 2 Wörtern mit Leerzeichen bestand.
Name in "" müsste funktionieren
zu 1): Ja, gerne auch mehr. Die unterschiedlichen Punkte jeweils in einer eigenen Variablen.
Problem ist, dass der EIBPC das vermutlich nicht kann.
Er schiebt die Antwort, die auf der offenen Verbindung ankommt, ins Nirvana.
Mit "listen 1" und einem Filter könnte man sonst sogar immer die aktuellen Titel abfangen und jede Änderung in der Visu anzeigen.
zu 2) Nein, nicht ganz. Ich möchte nicht den abzuspielenden Titel übergeben (naja, OK. Möchte ich vielleicht auch).
Man kann auf dem Display der SqueezeBox 2 Zeilen Freitext für eine bestimmte Zeit ausgeben.
Damit könnten zum Beispiel Alarmmeldungen angezeigt werden.
2 Möglichkeiten sind für mich denkbar:
- Variablen füllen und über eine Steuervaribale die Anzeige gezielt auslösen (mein Favorit)
- Sobald eine Zeile sich ändert sofort anzeigen.
Zeitdauer sollte auch über eine Variable steuerbar sein.
Wenn ich helfen kann, lass es mich wissen.
Bin kein Top-Programmierer, aber ein wenig bekomm ich noch hin
Wir verarbeiten personenbezogene Daten über die Nutzer unserer Website mithilfe von Cookies und anderen Technologien, um unsere Dienste bereitzustellen. Weitere Informationen findest Du in unserer Datenschutzerklärung.
Indem Du unten auf "ICH stimme zu" klickst, stimmst Du unserer Datenschutzerklärung und unseren persönlichen Datenverarbeitungs- und Cookie-Praktiken zu, wie darin beschrieben. Du erkennst außerdem an, dass dieses Forum möglicherweise außerhalb Deines Landes gehostet wird und bist damit einverstanden, dass Deine Daten in dem Land, in dem dieses Forum gehostet wird, gesammelt, gespeichert und verarbeitet werden.
Kommentar