Ankündigung

Einklappen
Keine Ankündigung bisher.

Sonos Anbindung

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

  • Mobby2304
    antwortet
    Zitat von dafra Beitrag anzeigen
    das kannst du auch via CLI machen: [CODE]
    Servus Daniel,

    hab ich das richtig verstanden habe, kann ich da meine Logik programmieren und über CLI die Logik antriggern, richtig?

    Zuletzt geändert von Mobby2304; 10.02.2017, 21:34.

    Einen Kommentar schreiben:


  • dafra
    antwortet
    das kannst du auch via CLI machen:
    Code:
    telnet 127.0.0.1 2323
    Gruß, Daniel

    Einen Kommentar schreiben:


  • Mobby2304
    antwortet
    OK. Vielen Dank.

    Genau genommen möchte ich das Widget gar nicht verwenden. Ich möchte damit nur schauen, ob die Konfig für den Sonos Lautsprecher passt, damit ich ihn über Logiken vom Glastaster Smart 2 aus ansteuern kann.

    Einen Kommentar schreiben:


  • pfischi
    antwortet
    Bitte gedulde dich noch bis zum Sonntag. Dann ist die angepasste Version des Widgets fertig. Die alte ist nicht wirklich lauffähig.

    Gruss,

    Stefan

    Einen Kommentar schreiben:


  • Mobby2304
    antwortet
    Guten Abend zusammen,

    ich hab jetzt ein paar Tage lang versucht das Widget zum laufen zu bringen. Ich glaube, ich habe irgendwo einen Denkfehler drin. Der Broker läuft und darüber kann ich meinen Lautsprecher auch ansprechen.

    Der Aufruf:
    HTML-Code:
    <div class="block">
    <div class="set-2" data-role="collapsible-set" data-theme="c" data-content-theme="a" data-mini="true">
    
    <div data-role="collapsible" data-collapsed="false">
    <h3>Music </h3>
    {% import "sonos.html" as sonos %}
    {{ sonos.music('sonos', 'Esszimmer.play', 'Esszimmer.stop', 'Esszimmer.prev', 'Esszimmer.next', 'Esszimmer.vol_up',
    'Esszimmer.vol_down', 'Esszimmer.volume', 'Esszimmer.mute', 'Esszimmer.album_art', 'Esszimmer.artist', 'Esszimmer.title') }}
    </div>
    
    <div data-role="collapsible">
    <h3>&nbsp;</h3>
    <p></p>
    </div>
    </div>
    </div>

    In der Sonos.conf - Datei /unter Smarthome/Items/sonos.conf

    Code:
    # sonos.conf
    #
    # This is an example for two sonos items
    # Place this file in '/etc/smarthome/items'
    
    [Esszimmer]
    sonos_uid = rincon_5caafdc03b3201400
    [[mute]]
    type = bool
    enforce_updates = True
    visu_acl = rw
    sonos_recv = mute
    sonos_send = mute
    
    [[[group_command]]]
    type = bool
    value = 0
    
    [[led]]
    type = bool
    enforce_updates = True
    visu_acl = rw
    sonos_recv = led
    sonos_send = led
    
    [[[group_command]]]
    type = bool
    value = 0
    
    .
    .
    .
    .

    Und im plugin.conf
    Code:
    [sonos]
    class_name = Sonos
    class_path = plugins.sonos
    #broker_url = 192.168.178.31:12900 #optional
    #refresh = 120 #optional


    Ein Foto vom Sonos_Broker mit dem Gerätename und der UID ist im Anhang.

    Das Widget wird angezeigt, jedoch mit einem Fragezeichen für das Album, und die Buttons sind ohne Funktion.
    Könnt Ihr mir evtl. einen Tipp geben, wo ich weitersuchen kann?
    Angehängte Dateien
    Zuletzt geändert von Mobby2304; 10.02.2017, 04:36.

    Einen Kommentar schreiben:


  • pfischi
    antwortet
    Abend zusammen,

    ich habe noch eine Version Beta-Version vor dem Release zusammengestellt. Ich habe noch ein wenig am TTS optimiert, obwohl ich den bei ein, zwei Nutzer sporadisch auftretenden Loop beim Abspielen eines solchen Google TTS Snippet bei mir noch nicht nachstellen konnte.

    Hinzugefügt hab ich das "nightmode"-Kommando. Leider kann ich es nicht testen, das bisher nur die Playbar diesen unterstützt und ich diese nicht besitze.Wer es einsetzen möchte, muss auch die Vorab-Version des SmarthomeNG-Plugin von hier installieren. Die Item-Beispiele sind entsprechenden angepasst (nightmode-Item hinzugefügt).

    Sonos Broker v1.0b6


    Edit: Jetzt mache ich michs ans Widget.

    Gruss,


    Stefan
    Zuletzt geändert von pfischi; 05.02.2017, 20:15.

    Einen Kommentar schreiben:


  • dafra
    antwortet
    Ok, verstehe: Die Änderung bzgl. des UTF8 Problems aus Post #580 betraf nur den Broker. Ich dachte, im Plugin gibts noch nen Fehler...

    Ich habe auf meinem Test System das Image von Onkelandy. Da läuft im Moment noch der Master 1.2. Dev habe ich noch nicht probiert.

    Gruß, Daniel

    Edit: Ich habe gerade gesehen, dass das Image den Develop branch vom 15.10.2016 nutzt.
    Zuletzt geändert von dafra; 27.01.2017, 21:08.

    Einen Kommentar schreiben:


  • pfischi
    antwortet
    Wollte ich auch gerade schreiben. Eigentlich ist es eher ein Bug in smarthomeNG da dieser die locale Einstellung des System benutzt. Ist da kein UTF8 eingestellt, crasht die Logging-Komponente bei nicht ASCII-Zeichen. Benutzt du die aktuelle Dev-Version von SmarthomeNG? Wenn ja, mache ich mal ein Bug-Report.

    Gruss,

    Stefan

    Einen Kommentar schreiben:


  • Max2612
    antwortet
    Zitat von dafra Beitrag anzeigen
    So, aber einen habe ich noch:
    Code:
    --- Logging error ---
    Traceback (most recent call last):
    File "/usr/local/lib/python3.5/logging/__init__.py", line 982, in emit
    stream.write(msg)
    UnicodeEncodeError: 'ascii' codec can't encode character '\xfc' in position 68: ordinal not in range(128)
    Call stack:
    File "./smarthome.py", line 604, in <module>
    sh.start()
    File "./smarthome.py", line 330, in start
    self.connections.poll()
    File "/usr/local/smarthome/lib/connection.py", line 104, in poll
    server.handle_connection()
    File "/usr/local/smarthome/plugins/sonos/__init__.py", line 71, in handle_connection
    item(value, 'Sonos', '')
    File "/usr/local/smarthome/lib/item.py", line 383, in __call__
    self.__update(value, caller, source, dest)
    File "/usr/local/smarthome/lib/item.py", line 470, in __update
    self._change_logger("Item {} = {} via {} {} {}".format(self._path, value, caller, source, dest))
    Message: 'Item Kueche.zone_name = K\xfcche via Sonos None'
    Arguments: ()
    --- Logging error ---
    Traceback (most recent call last):
    File "/usr/local/lib/python3.5/logging/__init__.py", line 982, in emit
    stream.write(msg)
    UnicodeEncodeError: 'ascii' codec can't encode character '\xfc' in position 80: ordinal not in range(128)
    Call stack:
    File "./smarthome.py", line 604, in <module>
    sh.start()
    File "./smarthome.py", line 330, in start
    self.connections.poll()
    File "/usr/local/smarthome/lib/connection.py", line 104, in poll
    server.handle_connection()
    File "/usr/local/smarthome/plugins/sonos/__init__.py", line 71, in handle_connection
    item(value, 'Sonos', '')
    File "/usr/local/smarthome/lib/item.py", line 383, in __call__
    self.__update(value, caller, source, dest)
    File "/usr/local/smarthome/lib/item.py", line 470, in __update
    self._change_logger("Item {} = {} via {} {} {}".format(self._path, value, caller, source, dest))
    Message: 'Item Kueche.zone_name = K\xfcche via Sonos None'
    Arguments: ()
    Wenn ich Küche (in der Sonos-App) in Kueche umbenenne, ist alles i.O.

    Gruß, Daniel
    Hallo!

    Wenn du das Image von Onkelandy verwendest, musst du noch
    Code:
    export LC_ALL=de_DE.utf8
    export LANGUAGE=de_DE.utf8
    ausführen. Dann sollte das Problem mit den Umlauten weg sein.

    Gruß, Max

    Einen Kommentar schreiben:


  • dafra
    antwortet
    So, aber einen habe ich noch:
    Code:
    --- Logging error ---
    Traceback (most recent call last):
      File "/usr/local/lib/python3.5/logging/__init__.py", line 982, in emit
        stream.write(msg)
    UnicodeEncodeError: 'ascii' codec can't encode character '\xfc' in position 68: ordinal not in range(128)
    Call stack:
      File "./smarthome.py", line 604, in <module>
        sh.start()
      File "./smarthome.py", line 330, in start
        self.connections.poll()
      File "/usr/local/smarthome/lib/connection.py", line 104, in poll
        server.handle_connection()
      File "/usr/local/smarthome/plugins/sonos/__init__.py", line 71, in handle_connection
        item(value, 'Sonos', '')
      File "/usr/local/smarthome/lib/item.py", line 383, in __call__
        self.__update(value, caller, source, dest)
      File "/usr/local/smarthome/lib/item.py", line 470, in __update
        self._change_logger("Item {} = {} via {} {} {}".format(self._path, value, caller, source, dest))
    Message: 'Item Kueche.zone_name = K\xfcche via Sonos  None'
    Arguments: ()
    --- Logging error ---
    Traceback (most recent call last):
      File "/usr/local/lib/python3.5/logging/__init__.py", line 982, in emit
        stream.write(msg)
    UnicodeEncodeError: 'ascii' codec can't encode character '\xfc' in position 80: ordinal not in range(128)
    Call stack:
      File "./smarthome.py", line 604, in <module>
        sh.start()
      File "./smarthome.py", line 330, in start
        self.connections.poll()
      File "/usr/local/smarthome/lib/connection.py", line 104, in poll
        server.handle_connection()
      File "/usr/local/smarthome/plugins/sonos/__init__.py", line 71, in handle_connection
        item(value, 'Sonos', '')
      File "/usr/local/smarthome/lib/item.py", line 383, in __call__
        self.__update(value, caller, source, dest)
      File "/usr/local/smarthome/lib/item.py", line 470, in __update
        self._change_logger("Item {} = {} via {} {} {}".format(self._path, value, caller, source, dest))
    Message: 'Item Kueche.zone_name = K\xfcche via Sonos  None'
    Arguments: ()
    Wenn ich Küche (in der Sonos-App) in Kueche umbenenne, ist alles i.O.

    Gruß, Daniel

    Einen Kommentar schreiben:


  • dafra
    antwortet
    Danke, das Problem war vor dem Bildschirm...

    Einen Kommentar schreiben:


  • pfischi
    antwortet
    Die Versions-Warnung kannst du ignorieren, aber der Broker scheint nicht erreichbar zu sein oder läuft nicht.

    Gruss,

    Stefan

    Einen Kommentar schreiben:


  • dafra
    antwortet
    Ich habe gerade zu Testzwecken ein neues System auf dem smartomeNG Image (v1.3 vom 31.10 / smarthomeNG1.2) aufgesetzt. Wieder den Broker aus dem Dev-Zweig (1.05b) und das Plugin aus dem Dev-Zweig installiert. Beim Start von smarthomeNG kommt:
    Code:
    WARNING  __init__     Main         Could not send sonos notification: {'command': 'sonos_broker_version'}. Error: HTTPConnectionPool(host='192.168.33.37', port=12900): Max retries exceeded with url: / (Caused by NewConnectionError('<requests.packages.urllib3.connection.HTTPConnection object at 0x723f7210>: Failed to establish a new connection: [Errno 111] Connection refused',)) -- __init__.py:_send_cmd:47                             8
    2017-01-26 21:57:41 DEBUG    __init__     Main         Sonos broker version: None -- __init__.py:__init__:108
    2017-01-26 21:57:41 WARNING  __init__     Main         This plugin is desgined to work with Sonos Broker version 1.0b5. Your plugin version is probably out-of-date or too new. Please update your plugin and/or the Sonos Broker Server -- __init__.py:__init__:114
    Gruß, Daniel

    PS: Ich probier noch das System auf den aktuellsten Stand zu bringen, mal schaun ob das was bringt...

    Einen Kommentar schreiben:


  • dafra
    antwortet
    Nein, der Stream der voher lief (also z.B. die Playlist).

    Einen Kommentar schreiben:


  • pfischi
    antwortet
    Zitat von dafra Beitrag anzeigen
    ... was mir auch noch aufgefallen ist: Wenn die Verbindung zum Sonos mal unterbrochen war (Sonos stromlos oder Netzwerkverbindung gekappt), bekommt man den Stream nicht mehr über "Play" ans laufen.

    Ich kann allerdings nicht beurteilen ob das ein Bug im Broker ist oder ob das das normale Sonos Verhalten ist.

    Gruß, Daniel
    Meinst du den TTS Stream ?

    Einen Kommentar schreiben:

Lädt...
X