Ankündigung

Einklappen
Keine Ankündigung bisher.

- √ - Neues Plugin: Logitech Squeezebox - Anregungen?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Onkelandy
    antwortet
    Probier mal ohne Pfad und eventuell ohne Suffix

    Einen Kommentar schreiben:


  • Hochpass
    antwortet
    Hi,

    ich stelle gerade auf 1.6 um und da wollte ich auch gleich die Squeezebox integrieren.

    Code:
        Volume:
            type: num
            visu_acl: rw
            squeezebox_send: '<playerid> mixer volume {}'
            squeezebox_recv: '<playerid> prefset server volume'
            squeezebox_init: '<playerid> mixer volume'
            enforce_updates: true
    
        Playlist_Load_FFN:
            type: bool
            enforce_updates: true
            visu_acl: rw
            squeezebox_send: '<playerid> playlist play file:///homes/guest/Radio_FFN.m3u'
    Ich blick es noch nicht ganz. Lautstärke funktioniert schon mal.
    Jetzt wollte ich noch Radiosender aufrufen, das geht scheinbar nur über die Playlisten. Ich habe LMS auf einer Synology NAS laufen und dort eine Playlist gespeichert. Über die LMS GUI funktioniert die Playlist. Über das Plugin leider noch nicht.

    Kann mir wer einen Tip geben?

    Einen Kommentar schreiben:


  • Onkelandy
    antwortet
    Marcov Möchtest du mal mein Update testen? https://github.com/onkelandy/plugins...box/squeezebox
    Das Umlautproblem sollte behoben sein. Die Log-Einträge bei entsprechenden Files sind weiterhin unschön, da hab ich aufgegeben. Aber Speichern und Laden funzt wohl.

    Einen Kommentar schreiben:


  • Onkelandy
    antwortet
    Ich hatte deinen Post 146 so interpretiert, dass du im Backendplugin durch ein Item-Update zwar Änderungen senden kannst, aber dort keine Updates seitens des Players empfangen kannst. Aber gut, jetzt ist es ja geklärt. Das visu: yes ist imho obsolet.

    Werde demnächst ein Update des Plugins pushen. Hier kannst du unter "struct_items" ein funktionierendes Template finden:
    https://github.com/onkelandy/plugins...ox/plugin.yaml

    Ich habe gesehen, dass das Plugin beim "init" automatisch ein "?" anhängt. Insofern ist das Fragezeichen zwar beim Testen via Telnet nötig, aber nicht beim squeezebox_init Befehl.

    Einen Kommentar schreiben:


  • Gue0411
    antwortet
    Mittlerweile habe ich es zum laufen gebracht.

    Zur Dokumentaion der Lösung, falls mal wieder jemand dieses Problem haben sollte.
    Ich hatte mir die Items aus der ReadMe des Plugins kopiert.
    Hier ist aber nicht nur der "?"-Fehler enthalten, wie in Post #149 richtig erkannt wurde.
    Es fehlt bei den einzelnen Items leider auch ein "visu_acl: rw", weswegen mit die Items zwar korrekt angezeigt wurden ("visu: yes"), aber nicht geändert werden konnten.

    Hier im Vergleich am Beispiel vom Item 'play':
    Original aus README.md:
    Code:
        Play:
            type: bool
            visu: 'yes'
            squeezebox_send: '<playerid> play'
            squeezebox_recv: '<playerid> play'
            squeezebox_init: '<playerid> mode'
    Hier mein funktionierender Stand:
    Code:
        Play:
            type: bool
            squeezebox_send: '<playerid> play'
            squeezebox_recv: '<playerid> play'
            squeezebox_init: '<playerid> mode ?'
            visu: yes
            visu_acl: rw

    Einen Kommentar schreiben:


  • Gue0411
    antwortet
    Hat keiner eine Idee, an was das liegen könnte?

    Ich hab mittlerweile beobachtet, dass die Titel/Interpret aktuell in der Visu angezeigt werden.
    Aber die ganzen Buttons/Volume funktionieren einfach nicht.
    Ich bekomme aber der Status des Players in der Visu angezeigt.
    Und Änderungen im Backend werden mir auch an den Player übertragen und in der Visu richtig angezeigt.

    Einen Kommentar schreiben:


  • Gue0411
    antwortet
    Komisch, hatte die Vorlage eigentlich aus'm Netz... aber naja...
    Ich hab mich nun mal mit der CLI des Squeeze auseinander gesetzt und die Items etwas angepasst.
    Das '?' habe ich drin, ebenso die 'enforce_updates'.
    Leider keine Veränderung.
    Ich bekomme die Items erstbefüllt, allerdings bleiben die Updates aus.

    Hier die Items eines Players:
    Code:
    # RadioEssen.yaml
    
    SqueezeboxEssen:
        squeezebox_playerid: xx:xx:xx:xx:xx:xx
        visu: yes
        
        Name:
            type: str
            squeezebox_send: '<playerid> name {}'
            squeezebox_recv: '<playerid> name'
            cache: yes
            visu: yes
            
        IP:
            type: str
            squeezebox_recv: player ip <playerid>
            visu: yes
    
        Power:
            type: bool
            squeezebox_send: '<playerid> power {}'
            squeezebox_recv: '<playerid> prefset server power'
            squeezebox_init: '<playerid> power ?'
            visu: yes
            enforce_updates: true
    
        Mute:
            type: bool
            squeezebox_send: '<playerid> mixer muting {}'
            squeezebox_recv: '<playerid> prefset server mute'
            squeezebox_init: '<playerid> mixer muting ?'
            visu: yes
            enforce_updates: true
    
        Volume:
            type: num
            squeezebox_send: '<playerid> mixer volume {}'
            squeezebox_recv: '<playerid> prefset server volume'
            squeezebox_init: '<playerid> mixer volume ?'
            visu: yes
            enforce_updates: true
    
        Volume_Up:
            type: bool
            squeezebox_send: '<playerid> button volup'
            visu: yes
            enforce_updates: true
    
        Volume_Down:
            type: bool
            squeezebox_send: '<playerid> button voldown'
            visu: yes
            enforce_updates: true
    
        Play:
            type: bool
            enforce_updates: true
            squeezebox_send: '<playerid> play'
            squeezebox_recv: '<playerid> play'
            squeezebox_init: '<playerid> mode ?'
            visu: yes
            enforce_updates: true
    
        Stop:
            type: bool
            squeezebox_send: '<playerid> stop'
            squeezebox_recv: '<playerid> stop'
            squeezebox_init: '<playerid> mode ?'
            visu: yes
            enforce_updates: true
    
        Pause:
            type: bool
            squeezebox_send: '<playerid> pause'
            squeezebox_recv: '<playerid> pause'
            squeezebox_init: '<playerid> mode ?'
            visu: yes
            enforce_updates: true
    
        Current_Title:
            type: str
            squeezebox_recv: '<playerid> playlist newsong'
            squeezebox_init: '<playerid> current_title ?'
            visu: yes
    
        Genre:
            type: str
            squeezebox_recv: '<playerid> genre'
            visu: yes
    
        Artist:
            type: str
            squeezebox_recv: '<playerid> artist'
            visu: yes
    
        Album:
            type: str
            squeezebox_recv: '<playerid> album'
            visu: yes
    
        Title:
            type: str
            squeezebox_recv: '<playerid> title'
            visu: yes

    Einen Kommentar schreiben:


  • Onkelandy
    antwortet
    Das ? Wär für init wichtig. Enforce_update bei play, pause, stop

    gehts dann?

    Einen Kommentar schreiben:


  • Gue0411
    antwortet
    das hier ist mein Stop-Item:

    Stop:
    type: bool
    visu: 'yes'
    squeezebox_send: '<playerid> stop'
    squeezebox_recv: '<playerid> stop'
    squeezebox_init: '<playerid> mode'

    Einen Kommentar schreiben:


  • Onkelandy
    antwortet
    Dann wäre die Frage, wie dein Item aussieht.. Also mein Stop Item sieht zB so aus:
    Code:
    stop:
            type: bool
            visu_acl: rw
            enforce_updates: 'True'
            squeezebox_send: <playerid> stop
            squeezebox_recv: <playerid> stop
            squeezebox_init: <playerid> mode ?
    Das könnte man zukünftig durch die struct items auch generell vereinfachen und einfach schon ein komplett fertiges Set an Befehlen zur Verfügung stellen.

    Einen Kommentar schreiben:


  • Gue0411
    antwortet
    Ja, es passiert dann auch etwas.
    Also die Kommunikation Backend zu Player funktioniert.
    Nur nicht das Aktualisieren von Player zu Smarthome quasi.

    Einen Kommentar schreiben:


  • Onkelandy
    antwortet
    Ich meine ob dann was passiert. Also zb play/stop.

    Einen Kommentar schreiben:


  • Gue0411
    antwortet
    das manuelle Ändern der Item per Backend funktioniert ohne Probleme

    Einen Kommentar schreiben:


  • Onkelandy
    antwortet
    Kannst du durch Aktualisieren der Items den Server steuern? Stimmt die MAC Adresse?

    Einen Kommentar schreiben:


  • Gue0411
    antwortet
    Hallo zusammen,

    nun stehe ich leider vor dem nächsten Problem.
    Die Item's werden nicht aktualisiert.
    Sie werden einmalig geladen und mehr nicht.
    An was kann das liegen?

    Einen Kommentar schreiben:

Lädt...
X