Autor Thema: Squeezebox Modul - erste Version  (Gelesen 359876 mal)

Offline bugster_de

  • Sr. Member
  • ****
  • Beiträge: 849
Squeezebox Modul - erste Version
« am: 17 Dezember 2013, 22:12:10 »
Hallo,

Für Anwender findet sich eine super Doku hier: SB-FHEM Anwenderdoku

Für Entwickler:
siehe auch: http://www.fhemwiki.de/wiki/DevelopmentGuidelinesAV

Die jeweiligen Dateien zur Unterstützung von Squeezebox sind nun im Contrib Bereich von FHEM zu finden:
https://github.com/mhop/fhem-mirror/tree/master/fhem/contrib
97_SB_SERVER.pm und 98_SB_PLAYER.pm

Da es immer wieder Schwierigkeiten beim Download aus dem Contrib Bereich gibt:
bitte bei den Modulen auf den Butten "RAW" oben rechts klicken, dann alles markieren und kopieren und das Kopierte in eine Text Datei einfügen. Diese dann speichern

Die Unterstützung für Squeezebox ist zweistufig: ein Modul für den Server und je ein Modul für die Player. Bitte also beide angehängten Dateien in die ./FHEM kopieren und dann mittels shutdown restart FHEM neu starten.

Anlegen muss man nur den Server.
define <name> SB_SERVER <serverip[:cliserverport]> [RCC:rccname] [WOL:wolname] [USER:username] [PASSWORD:password]
Bitte beachten: der CLI-Port ist optional und sollte nur angegeben werden, wenn man diesen auf dem SB-Server verändert hat. Standardmässig ist das 9090
RCC: falls man für den Rechner, auf dem der SB-Server läuft in FHEM ein RCC Device angelegt hat, so kann der FHEM-SB-Server diesen aufwecken. Sprich man klickt in FHEM beim SB-Server auf on und falls der PC aus ist, wird er per RCC aufgeweckt. Der name hinter dem Doppelpunkt ist der name des FHEM-RCC-Devices. Bitte RCC: angeben.
WOL: gleich wie RCC nur halt mit einem WOL Modul
[USER:username] [PASSWord:password] diese beiden Parameter sind optional. Auf SB-Server seiten kann man die Kommunikation über den CLI Port mittels Usrename und Passwort verriegeln. Falls man dies getan hat, dann hier die beiden Parameter angeben.


Die jeweiligen Player werden selbst erkannt und automatisch angelegt, falls man autocreate eingeschaltet hat. Also einfach den Server anlegen und zurücklehnen. Nach maximal 1 Minute sollten alle Player automatisch angelegt sein.

Falls autocreate ausgeschaltet ist, dann kann man die Player auch manuell anlegen:
define <name> SB_PLAYER <player_mac_adress]> <ampl:FHEM_NAME> <coverart:FHEMNAME>Die jeweilige MAC Adresse des Players findet man im SB-Server unter Einstellungen

optional kann man ampl:xxx angeben. Hier gibt man bei XXX den Namen eines FHEM Elementes an, das auf on und off reagiert. Dies ist nützlich um z.B. einen Verstärker ein / ausschalten zu können. Bitte auch das amplifier Attribut beachten. Dieses kann man auf on oder play setzen. Der Versärker wird denn entweder mit dem Player ein/ausgeschaltet (on/off) oder bei play/pause vs. stop. Spricht bei playing und paused ist der Verstärker an, bei stopped ist er aus. Somit spart man sich die notifies und entsprechende Rechenlast auf dem FHEM Server

optional kann man coverart:XXX angeben. Unter XXX gibt man den Namen eines FHEM weblink image elementes an. Der Player aktualisiert dann jeweils den Link auf das aktuelle Coverart Bild, so dass man dieses z.B. im Floorplan anzeigen kann.
Mit den Attributen coverartheight und coverartwidth kann man die Breite bzw. Höhe bestimmen.
 Sprich einfach ein weblink Elemt mit define mylink weblink image Link.zu.einem.bild.jpg anlegen. Der SB_PLAYER aktualisiert dann den jeweiligen Image Link so dass das aktuelle Coverart z.B. im Floorplan angezeigt wird.
Bitte die Attribute für Höhe und Breite des weblink elementes NICHT verwenden. Größe wird durch den SB_PLAYER gemacht. Sonst geht das nicht

Das Player unterstützt bisher folgende Kommandos (die via set <name> angegeben werden
play --> startet die Wiedergabe
stop --> Stoppt die Wiedergabe
pause --> toggelt die Wiedergabe (wenn Pause dann Play und wenn Play dann Pause)
pause 1 --> setzt den Player auf Pause egal wie der Zustand zuvor war
pause 0 --> setzt den Player auf Un-Pause egal wie der Zustand zuvor war
channelUp --> spielt das nächste Stück (next)
channelDown --> spielt das vorherige Stück (prev)
volUp --> erhöht die Lautsärke um den Wert, der im Attribut volStep angegeben ist. Per Default 10
volDown --> veringert die Lautsärke um den Wert der im Attribut volStep angegeben ist
volume xx --> xx sollte ein Wert zwischen 0 und 100 sein und setzt die Lautstärke auf den angegebenen Wert (ist im Prinzip Prozent)
volumeStraight -_> gleich wie volume
mute --> schaltet mute um: setzt auf mute, wenn unmuted und setzt auf unmute wenn muted
on --> schaltet den Player ein, falls dieser das unterstützt. Wenn nein, dann macht es play
off --> schaltet den Player aus falls dieser das unterstützt. Wenn nein, dann macht es stop
shuffle on --> schaltet shuffle ein
shuffle off --> schaltet shuffle aus
repeat off|one|all --> schaltet repeat für die aktuelle Playlist in den jeweiligen Modus
show --> zeigt Text auf dem Player an. Dabei folgendes Format:
set sbradio show line1:text der ersten Zeile line2:text der zweiten Zeile duration:ssdas ist glaube ich selbsterklärend
nach duration verschwindet der Text dann wieder
sleep xx --> schaltet den Player nach XX Sekunden aus (und fadet vorher runter)
favorites --> hier wird eine Drop-Down Liste angezeigt, die alle Favoriten der Squeezebox erhält. Durch Auswahl eines dieser Einträge wird die Playlist geleert und dieser Eintrag gespielt.
talk xxx --> der jeweilige Player spricht den Text, der angegeben wurde
set myplayer talk Hallo Welt ich war daplaylist track|album|artist xxx --> hiermit kann man gezielt etwas aus der Datenbank anspielen. Der SB-Server scheint aber etwas pciky zu sein bezgl. korrekter Schreibweise.
set myplayer playlist track Satisfactionset myplayer playlist album Best ofset myplayer playlist artist Whitesnakeplaylist genre artist album --> spielt die jeweils angebene Tracks, die auf das Suchkriterium passen. Stern ist wildcard
set myplayer playlist * Whigfield *statusRequest --> macht einen Update der Readings
sync --> hier wird eine Liste der Player angezeigt, mit denen man eine Gruppe bilden kann (Multiroom). Der angezeigte Player ist dann der Master
unsync --> nimmt den Player wieder aus der Gruppe raus
playlists --> hier werden, wie bei den Favoritn, die Serverseitig definierten Playlisten zu Auswahl angezeigt

Und dann kann man bis zu zwei Alarme setzen
set sbradio alarm1 set 5 12:23:17
set sbradio alarm2 set 4 17:18:00
der erste Parameter ist der Wochentag (mit So = 0), der zweite ist die Uhrzeit

Löschen der Alarme
set sbradio alarm1 delete
set sbradio alarm2 delete

Lautsärke setzen mit:
set sbradio alarm1 volume xx
set sbradio alarm2 volume xx

Enable / Disable des Alarms mit:
set sbradio alarm1 enable
set sbradio alarm2 enable
set sbradio alarm1 disable
set sbradio alarm2 disable

Alle Alarme ein|aus
set sbradio allalarms enable
set sbradio allalarms disable

Und als Schmankerl kann man auch CLI Kommandos an den Player schicken
cliraw --> schickt Kommandos an den Player. Die jeweilige Player-ID (MAC Adresse) wird automatisch eingefügt.
Bsp.
set sbradio cliraw mixer volume 50Also hier die Player-ID NICHT einfügen; sie wird vom Modul eingefügt.
Die Antwort des Players auf die Anfrage findet sich dann im lastunknowncmd Reading des Players.

Der Player besitzt das Attribut donotnotify. Mit diesem kann man Einstellen, ob der Player ein FHEM Notify bei jeder Änderung der Readings lostritt. Per default ist das ausgeschaltet; der Player erzeugt dann nur ein Notify, wenn sich state (on/off) ändert aber nicht, wenn z.B. das nächste Stück angespielt wird. Ein Notify erzeugt signifikante Rechenlast im FHEM Server und so mancher Radio Sender wechselt ja alle paar Sekunden die Anzeige. Jeder dieser Anzeigenwechsel würde dann zu einem Notify auf dem FHEM Server führen.
Am Player kann man auch die Zielsprache der talk Funktion einstellen: de, en, fr, ... für die jeweilige Sprache. der hier gesetzte Wert wird so 1.1 an die Google TTS Engine übergeben. In der FHEM Oberfläche kann man ein paar Sprachen auswählen. Wer eine andere Sprache möchte, dann einfach das attribut in der fhem.cfg manuell setzen.
Das Attribut ttslink enthält den Pfad zur TTS Engine. Als Default ist hier Google eingestellt.

Mit dem Attribut volumeLimit kann man eine maximale Lautstärke vorgeben, die bei den set Kommandos volume und volumeUp beachtet wird. Es können Werte von 0 bis 100 vergeben werden. Ein Limit von 100 bedeutet Funktion ist aus.

Der Server unterstützt folgende Kommandos
renew --> erneuert die Verbindung zum Server, falls dieser down war
abort --> stoppt die Verbindung zum Server
cliraw --> hiermit kann man beliebige Kommandos des CLI Interface an den Server schicken
rescan --> startet das Durchsuchen der Musikdatenbank des SB-Servers
statusRequest --> holt alle möglichen Infos vom Server und den Playern und aktualisiert dann die Readings

ToDo:
- Szenario ohne SB Server / mit Playern die mit mysqueezebox.com verbunden sind unterstützen
- die URL der Cover-Art holen, so dass man die Cover Art dann z.B. in einem Floorplan anzeigen kann.

Nebenbemerkung:
der SB_SERVER hat kein state Reading. Die Variable power zeigt on | off. Die Variable STATE zeigt connected | disconnected an. Dies sagt aber nur etwas darüber aus, ob FHEM überhaupt auf Ethernet zugreifen kann. Wenn man den SB-Server PC in hibernate fährt, bleibt STATE auf connected. Wenn man also Verstärker etc. schalten will, dann muß man das power Reading nehmen.
« Letzte Änderung: 22 Mai 2018, 08:51:37 von bugster_de »
Hilfreich Hilfreich x 1 Liste anzeigen

Offline UliM

  • Global Moderator
  • Hero Member
  • ****
  • Beiträge: 2707
Antw:Squeezebox Modul - erste Version
« Antwort #1 am: 18 Dezember 2013, 00:07:45 »
Hi,
coole Sache!

- vielleicht magst Du die Befehle anpassen an die Multimedia-Richtlinie und Dein Modul auch in den Übersichtstabellen der Befehle hinterlegen, siehe http://www.fhemwiki.de/wiki/DevelopmentGuidelinesAV

- besteht die Möglichkeit, auch die Weckzeit der Squeezebox von fhem aus einzustellen? Das wäre für mich persönlich ein sehr wünschenswertes feature, siehe http://forum.fhem.de/index.php/topic,16965.0.html

Gruß + viel Erfolg,
Uli
RPi2/Raspbian, CUL V3 (FS20, CUL_WS), HM-CFG-USB (ca. 30 HomeMatic-devices), LAN (HueBridge, iTunes, HarmonyHub etc.). Slave-Installation auf OSX.
Aktives Mitglied des FHEM e.V. (Marketing)
Hilfreich Hilfreich x 1 Liste anzeigen

Offline bugster_de

  • Sr. Member
  • ****
  • Beiträge: 849
Antw:Squeezebox Modul - erste Version
« Antwort #2 am: 18 Dezember 2013, 11:15:35 »
Hi,

oh, diese Spezifikation kannte ich noch nicht. Das kommt halt davon, wenn man alleine im dunklen Kämmerlein vor sich hin werkelt :-)

Klar werde ich so umsetzen!

 
Muss das Modul alle der Kommandos unterstützen? Denn nicht alle Kommandos kann die Squeezebox.
Im Umkehrschluss habe ich noch keine Möglichkeit gefunden den echten Status des Players abzufragen. Squeezebox liefert da keine einfache Möglichkeit. Aber ich mache eh mal noch ein bisschen Research darauf.



Offline rippi46

  • Full Member
  • ***
  • Beiträge: 331
Antw:Squeezebox Modul - erste Version
« Antwort #3 am: 18 Dezember 2013, 20:13:28 »
Hi

würde mich über so ein Modul auch freuen ;D

Habe das ganze noch etwas umständlich in der fhem.cfg gemacht.

define LautsprecherGaeste dummy
attr LautsprecherGaeste alias Gästeklolautsprecher
attr LautsprecherGaeste eventMap BI:on B0:off
attr LautsprecherGaeste fm_type state,offbutton,onbutton
attr LautsprecherGaeste group Lautsprecher
attr LautsprecherGaeste icon audio_volume_low
attr LautsprecherGaeste room Gästeklo,Sound
attr LautsprecherGaeste setList state:on,off
define LautsprecherGaeste_ntfy notify LautsprecherGaeste:.* {\
    my $master = "10011";;\
    my $slave = "00000";;\
    my $v=Value("LautsprecherGaeste");;\
    if ($v eq "on") {connair("on",bin2dec("$master"),bin2dec("$slave"))};;\
    if ($v eq "off") {connair("off",bin2dec("$master"),bin2dec("$slave"))};;\
    }


define GaesteKlo dummy
attr GaesteKlo group Sound
attr GaesteKlo room Gästeklo,Sound
attr GaesteKlo webCmd play:pause:stop:next:back:5:10:15:20:25:30:35:40:45:50:55:60:65:70:75:80:85:90:95:100
define GaesteKlo_ntfy notify GaesteKlo:.* {\
    my $v=Value("GaesteKlo");;\
    my $server='http://192.168.178.69:9000';;\
    my $player="&player=b8:27:eb:4c:f1:b5";;\
    my $bef1="/status.html?p0=play";;\
    my $bef2="/status.html?p0=pause";;\
    my $bef3="/status.html?p0=mixer&p1=volume&p2=$v";;\
    my $bef4="/status.html?p0=stop";;\
    my $bef5="/status.html?p0=playlist&p1=jump&p2=+1";;\
    my $bef6="/status.html?p0=playlist&p1=jump&p2=-1";;\
    if ($v eq "play") {GetFileFromURL "$server$bef1$player"};;\
    if ($v eq "pause") {GetFileFromURL "$server$bef2$player"};;\
    if ($v eq "stop") {GetFileFromURL "$server$bef4$player"};;\
    if ($v eq "next") {GetFileFromURL "$server$bef5$player"};;\
    if ($v eq "back") {GetFileFromURL "$server$bef6$player"};;\
    if ($v > "0") {GetFileFromURL "$server$bef3$player&start=0"};;\
    }


Die einzelnen Player (Raspberry mit Coreplayer + kleiner Verstärker) schalte ich über Brennenstuhl Funkschalter ein und aus.
« Letzte Änderung: 19 Dezember 2013, 20:17:49 von rippi46 »
FHEM, LMS, VDR ,Dell 9010 Ubuntu 16.04, Max Komponenten, HM-Thermostate; Elro, Brennenstuhl u. Intertechno mit Connair.
Picoreplayer, Raspi IR-Lanadapter, Firmata(wifi), LaCrosse,
nanocul433, nanocul868, fhemduino, Signalduino
MySensor-GW+Sensoren, RGBWW, Xiaomi,Nextion,LEDMatrix,Alexa,Dashbutton

Offline d0np3p3

  • Full Member
  • ***
  • Beiträge: 129
Antw:Squeezebox Modul - erste Version
« Antwort #4 am: 18 Dezember 2013, 21:28:11 »
Hallo,
Danke für das Modul, ich glaube mit den Squeezeboxen ist einiges möglich.
Hier hatte ich es auf die Wunschliste gesetzt, und auch ein paar lnfos gesammelt, ich denk du kennst das schon.
http://forum.fhem.de/index.php/topic,14390.msg91198.html
Bei mir läuft es.

Ich denke eine Remote Control wie beim Samsung usw wäre sinnvoll
FHEM: Raspberry Pi (COC) & Fritz 7270 (freetz FHEM2FHEM)
IT (Elro AB440 AB600D) - Max! (6*regler 1*Thermostat 5*Fenster) Hue Bridge mit Bulbs - 2*Living-white Adapter - Iris
XBMC (Zbox) 4*SqueezeRadios 3*squeezelite dbox
AndFhem (Nexus4)

Offline bugster_de

  • Sr. Member
  • ****
  • Beiträge: 849
Antw:Squeezebox Modul - erste Version
« Antwort #5 am: 18 Dezember 2013, 23:58:41 »
Hi,

so, ich habe nun ein bisschen getippt und habe das Modul auf die allgemeine Spezifikation angepasst. Auch holt es sich nun einiges an Infos per CLI Interface vom Server. Damit das aber klappt muss man beim Define zwingend die Player ID angeben. Da ich 4 Player dran habe, konnte ich nicht testen, wie das aussieht, wenn man nur einen Player hat.

Das Modul unterstützt aus der Spezifikation nun:
on --> Play (denn on und off hängen ber Squeezebox davon ab, ob der Player das überhaupt kann)
off --> Stop
play
pause
stop
volume
volumeUp
volumeDown
channelUp --> Next
channelDown --> Prev
repeat
shuffle

Es werden momentan folgende Readings gemäß der Spezifikation angezeigt:
volume
playStatus (wird auch auf die state Variable kopiert)
currentArtist
currentTitle
currentAlbum

Als Parameter gemäß Spec gibt es:
volumeStep

Andere Parameter sind:
cliport --> default ist 9090; wenn man den im Server geändert hat, dann hier eintragen
timer --> wie oft soll der Status des Players abgefragt werden (in Sekunden)
timeout --> wieviele Sekunden soll auf Antwort des Servers gewartet werden? Während der Wartezeit steht fhem. Bei mir geht es mit 1 Sek ganz gut

Das Modul im initialen Thread oben habe ich gelöscht (stiftet sonst nur Verwirrung)

Die anderen Readings etc. baue ich die Tage auch mal noch ein.
« Letzte Änderung: 20 Dezember 2013, 11:12:50 von bugster_de »

Offline eppi

  • Full Member
  • ***
  • Beiträge: 345
Antw:Squeezebox Modul - erste Version
« Antwort #6 am: 19 Dezember 2013, 22:18:30 »
Hi Bugster
Danke für das tolle Modul! Es funktioniert einwandfrei soweit ich testen konnte. Im Log taucht bei mirsobald ich den Player stoppe alle 30sec nachfolgende Meldung auf:
2013.12.19 22:12:56 1: f5:68:80:a2:a2:af mode ?Kann man das noch bereinigen oder unterdrücken?
Verobose 0 geht leider nicht...

Danke für die Analyse und Gruss Dani

Anbei noch ein "list" meines Players:

Internals:
   CONNECTION connected
   DEF        192.168.0.20 f5:68:80:a2:a2:af 9002
   IP         192.168.0.20
   NAME       Musik_SB_Aussen
   NR         1083
   PLAYERID   f5:68:80:a2:a2:af
   PLAYERNAME Slave-Aussen
   PORT       9002
   SERVER     192.168.0.20:9002
   STATE      stop
   TYPE       SB_PLAYER
   Readings:
     2013-12-19 22:19:59   currentAlbum    ?
     2013-12-19 22:19:59   currentArtist   Satzy & Daniel aus Tirol
     2013-12-19 22:19:59   currentTitle    Made in Tirol
     2013-12-19 22:19:59   playStatus      stop
     2013-12-19 22:19:59   state           stop
     2013-12-19 22:19:59   volume          10
Attributes:
   cliport    9090
   timeout    2
   timer      30
   verbose    0
   volumeStep 10

« Letzte Änderung: 19 Dezember 2013, 22:21:57 von eppi »
HM, FS20, CUL, CUNO V1, CUNO V2, HMLAN, FHT, S555, SIS-PM, IT, OWFS,  DebianWheezy@ODROID-U3

Offline bugster_de

  • Sr. Member
  • ****
  • Beiträge: 849
Antw:Squeezebox Modul - erste Version
« Antwort #7 am: 20 Dezember 2013, 11:14:52 »
Hi,

freut mich dass es funktioniert !

Zitat
Kann man das noch bereinigen oder unterdrücken?
oh sorry, da war noch ein unnötiges Log drin. Das habe ich jetzt raus genommen; somit sollte auch die Log Datei nicht zugemüllt werden. Anbei die aktuelle Version.

Hast Du sonst noch Ideen, welche Funktionalität dem Modul gut tun würde?
« Letzte Änderung: 13 Januar 2014, 22:22:12 von bugster_de »

Offline d0np3p3

  • Full Member
  • ***
  • Beiträge: 129
Antw:Squeezebox Modul - erste Version
« Antwort #8 am: 20 Dezember 2013, 13:38:57 »
Wenn Du noch Ideen brauchst, kannst Du Dich vom Sonos Modul inspirieren lassen.
Interessant z.B. auch das es möglich ist, den Wecker über die CLI Commandline zu steuern.
Senden von events an die Squeezeboxen, oder PNG zb morgens das Wetter usw.
FHEM: Raspberry Pi (COC) & Fritz 7270 (freetz FHEM2FHEM)
IT (Elro AB440 AB600D) - Max! (6*regler 1*Thermostat 5*Fenster) Hue Bridge mit Bulbs - 2*Living-white Adapter - Iris
XBMC (Zbox) 4*SqueezeRadios 3*squeezelite dbox
AndFhem (Nexus4)

Offline MarkusN

  • Full Member
  • ***
  • Beiträge: 223
    • Markus´ Blog
Antw:Squeezebox Modul - erste Version
« Antwort #9 am: 20 Dezember 2013, 14:09:59 »
Schöne Sache, dieses Modul! Habe mal die letzte von dir gepostete Version getestet, er holt auch die korrekten Infos für den Player von meinem LMS, jedoch bleibt jegliches Set aus FHEM ohne Reaktion. Es passiert einfach nichts.

Ich nehme alles zurück, es läuft. Der LMS auf meiner Synology lauscht standardmäßig auf Port 9002, und nicht auf 9000. War irritiert dass ich trotzdem Infos vom Radio bekommen habe.

Jetzt wäre es natürlich toll wenn on/off tatsächlich das Radio ein- bzw ausschalten würden. Ich hab ein Squeezbox Radio und das kann definitiv on/off.

Grüße,

Markus
« Letzte Änderung: 20 Dezember 2013, 14:16:45 von Markus Niemann »

Offline UliM

  • Global Moderator
  • Hero Member
  • ****
  • Beiträge: 2707
Antw:Squeezebox Modul - erste Version
« Antwort #10 am: 20 Dezember 2013, 14:56:46 »
Hi,
habe noch keine Squeezebox - aber ein Weckerproblem. Da es danach aussieht, dass ich eine Squeezebox dafür verwenden kann, interessiert mich dies sehr.

Zwei Fragen:
- Logitech UE Home können auf squeezebox-Firmware downgegraded werden und funktionieren dann mit diesem Modul?
- Braucht man nur die Squeezebox, oder muss außerdem noch irgendwo ein squeezebox server laufen? Falls ja, kriegt man den zB auf ner Synology 212+ installiert?

Gruß, Uli
RPi2/Raspbian, CUL V3 (FS20, CUL_WS), HM-CFG-USB (ca. 30 HomeMatic-devices), LAN (HueBridge, iTunes, HarmonyHub etc.). Slave-Installation auf OSX.
Aktives Mitglied des FHEM e.V. (Marketing)

Offline d0np3p3

  • Full Member
  • ***
  • Beiträge: 129
Antw:Squeezebox Modul - erste Version
« Antwort #11 am: 20 Dezember 2013, 15:41:41 »
Hi Uli,
zu 1. ja das geht ohne Probleme, man verbindet die boxen mit einem Wlan (Passwort per Drehrad eingeben) und dann kann man den downgrade durchführen.
zu 2. man brauch noch die Server Komponente den Logitech Media Server (LMS) den kannst du als 3rd Party package auf der Synology installieren.
Bei mir läuft der LMS auf einem Raspberry.
Als Client kann man auch Linux Windows Android usw benutzen.
Bei mir läuft das ganze mit 3 Squeeze Radios, einer Boom und auf meinem XBMC (Linux) als Multiroom System sagar mit Wimp (wie Napster&und co) die haben jetzt sogar ein Flac Streaming Abo

Gruß Mark

FHEM: Raspberry Pi (COC) & Fritz 7270 (freetz FHEM2FHEM)
IT (Elro AB440 AB600D) - Max! (6*regler 1*Thermostat 5*Fenster) Hue Bridge mit Bulbs - 2*Living-white Adapter - Iris
XBMC (Zbox) 4*SqueezeRadios 3*squeezelite dbox
AndFhem (Nexus4)
Informativ Informativ x 1 Liste anzeigen

Offline bugster_de

  • Sr. Member
  • ****
  • Beiträge: 849
Antw:Squeezebox Modul - erste Version
« Antwort #12 am: 20 Dezember 2013, 20:17:04 »
Hi,

oh, das war mir auch neu, dass man das UE Smart radio downgraden kann. das ist ja klasse !

Ob mein Modul auch ohne eigenen Server läuft kann ich Dir nicht sagen, da ich einen Server im Einsatz habe. Probiere es doch bitte mal aus.
define mytest SB_PLAYER <ip-der-box> <mac-der-box> 9000
Ich selbst habe folgendes im Einsatz:
i.) Server auf einem Windows HTPC im Wohnzimmer
ii.) auf dem Server sind vier Instanzen von Squeezeslave installiert. Diese laufen als Service und jeder hat seine eigene Soundkarte
     einmal für die große Wohnzimmer Stereoanlage, einmal für die Deckenlautsprecher im Bad, einma für den Fernseher und einmal für die     
    Kopfhörer
iii.) eine Squeezebox Boom als Küchenradio

Auf dem iPAD nutze ich die App iPeng. Diese kann den Server komplett steuern, hat eine klasse Bedienoberfläche und ist jeden Cent der 5,- € wert. In der App kann man gegen Aufpreis auch einen Player integrieren.

Im Frühjahr kommt noch ein RPi hinzu, auf dem dann auch zwei Clients laufen werden. Diese bedienen dann Aussenlautsprecher im oberen und unteren Teil des Gartens.

Ich hatte bis vor einigen Monaten noch den Server auf einer Linux Maschine. Der Wartungsaufwand bei der Kiste war mir aber zu hoch, da ist Windows für einen HTPC doch besser geeignet ( wegduck :-)
Linux hat aber den Vorteil, dass die Soundausgabe bei Multiroom-Synchro Betrieb tatsächlich Synchron ist. Bei Windows sind da immer irgendwie 2-3 Sekunden versatz zwischen den einzelnen Instanzen.


Offline UliM

  • Global Moderator
  • Hero Member
  • ****
  • Beiträge: 2707
Antw:Squeezebox Modul - erste Version
« Antwort #13 am: 21 Dezember 2013, 16:20:33 »
Hiho,
bisher habe ich noch keine Squeezebox/Smart UE, daher kann ich noch nix testen.
Ich hätte die Möglichkeit, den Squeezeboxserver auf der DS213+ laufen zu lassen, würde das aber am liebsten vermeiden, da ich nur eine box zu verwenden gedenke.
Hab irgendwo gelesen, dass der Squeezebox-Server mit den einzelnen Squeezeboxes in JSON spricht, hab aber bisher noch keine Doku dazu finden können.

Setzen der Weckzeiten soll via Squeezeboxserver-CLI gehen, siehe http://forums.slimdevices.com/archive/index.php/t-83741.html :
  For documentation of the CLI go to the server's web interface:
  Help > Technical Information > The Squeezebox Server Command Line Interface
  Find 'Alarm commands and queries'
  <playerid> alarm <add|update|delete|enableall|disableall|defaultvolu me> <taggedParameters>

Mal testen ob das squeezebox-Modul auch auf der Fritte läuft....  scheint zu gehen. reload 98_SB_PLAYER.pm ohne errors :)


Vielleicht baut ja jemand das alarm-command ein - und ne Einschätzung abgibt, ob man das Direkte Ansprechen einer Suqeezebox hinkriegen kann bzw. Erfahrungswerte dazu existieren.

Gruß, Uli
« Letzte Änderung: 21 Dezember 2013, 16:30:14 von UliM »
RPi2/Raspbian, CUL V3 (FS20, CUL_WS), HM-CFG-USB (ca. 30 HomeMatic-devices), LAN (HueBridge, iTunes, HarmonyHub etc.). Slave-Installation auf OSX.
Aktives Mitglied des FHEM e.V. (Marketing)

Offline bugster_de

  • Sr. Member
  • ****
  • Beiträge: 849
Antw:Squeezebox Modul - erste Version
« Antwort #14 am: 22 Dezember 2013, 21:17:20 »
Sorry, war das Wochenende Familientechnisch eingebunden und kam nicht zum Antworten.

@Markus Niemann: stimmt, das mit dem on / off baue ich noch ein

@UliM: Weckzeit mache ich auch rein.