Ankündigung
Einklappen
Keine Ankündigung bisher.
Sonos Anbindung
Einklappen
X
-
Habe mir Dein Problem gerade nochmal genauer angeschaut. Der import vom python packet "collections" scheint ab python 3.10 nicht mehr zu funktionieren. Es ist eine Anpassung in der Sonos utils.py nötig. Ich habe eine neue Version ins Develop geschoben -> sonos plugin Version 1.8.7. Damit sollte es bei Dir funktionieren. Bitte einmal testen.
-
Python 3.11 wird für smarthomeNG version 1.10.0 noch nicht vollständig unterstützt. Du kannst mal das Sonos plugin aus dem Develop kopieren und schauen, ob es damit funktioniert.
Einen Kommentar schreiben:
-
Hallo zusammen,
habe einen neuen Raspberry mit aktuellstem smarthomeng (v1.10.0 master) aufgesetzt - funktioniert soweit alles bis auf das sonos-plugin - hier gibt es ein Problem mit collections:
Code:2024-05-22 19:18:25 NOTICE lib.smarthome -------------------- Init SmartHomeNG v1.10.0-master (4b25822a0) -------------------- 2024-05-22 19:18:25 NOTICE lib.smarthome Running in Python interpreter 'v3.11.2 final' in virtual environment, from directory /usr/local/smarthome 2024-05-22 19:18:25 NOTICE lib.smarthome - operating system 'Debian GNU/Linux 12 (bookworm)' (pid=2228) 2024-05-22 19:18:25 NOTICE lib.smarthome - on 'Raspberry Pi (Rev. b03115)' 2024-05-22 19:18:29 ERROR lib.plugin Plugin 'sonos' error importing Python package: cannot import name 'Set' from 'collections' (/usr/lib/python3.11/collections/__init__.py) 2024-05-22 19:18:29 ERROR lib.plugin Plugin 'sonos' initialization failed, plugin not loaded
Vielen Dank schonmal!
Einen Kommentar schreiben:
-
Du bist hier im falschen Thread. Sonos play_tts spielt die Ansage genau einmal ab.
Bei Dir scheint es eher ein prinzipielles Problem beim Verständnis von smarthomeNG Logiken zu geben. Meine Vermutung hier ist, dass deine Logik dauerhaft getriggert wird. Deine weitere Frage, wie man eine Ansage nach 30min erneut triggert, gehört auch nicht in den Sonos plugin support Thread sondern ist wieder ein Logik Them, zu dem Du erst mal die Doku lesen solltest.
Einen Kommentar schreiben:
-
Guten Morgen zusammen
ich nutze die TTS Funktionalität der Sonos Lautsprecher um über eine Sicherheitsabschaltung der KWL zu benachrichtigen.
jedoch wird die Ansage in dauerschleife gespielt, wäre es möglich die Ansage maximal 1-2 mal anzusagen und nach einer Verzögerung von 30min erneut?
PHP-Code:#!/usr/bin/env python3
# kwl.py
# Überwache die Abgastemperatur im Kaminzug und schalte bei einem definierten Wert die Komfortlüftung aus.
# Bei einem Ausfall des Fühlers wird die Lüftungsanlage aus Sicherheitsgründen abgeschaltet.
if sh.EG.Kueche.Fehler() or sh.EG.Kueche.Abgas() >= 30:
sh.HWR.KWL.Notaus(1)
sh.Sonos.Wohnen.play_tts('KWL aus Sicherheitsgründen abgeschaltet')
else:
sh.HWR.KWL.Notaus(0)
Zuletzt geändert von jonny7792; 05.02.2023, 11:01.
Einen Kommentar schreiben:
-
Bekomme jetzt den folgenden Fehler im Log, muss man einen Account angeben?
Code:2023-01-10 18:28:48 ERROR lib.item.item Item MySonos.Esszimmer.play_tunein: problem running <bound method Sonos.update_item of <plugins.sonos.Sonos object at 0x7f96a8fa1280>>: __init__() got an unexpected keyword argument 'account' > Traceback (most recent call last): > File "/usr/local/smarthome/lib/item/item.py", line 1571, in __update > method(self, caller, source, dest) > File "/usr/local/smarthome/plugins/sonos/__init__.py", line 2782, in update_item > sonos_speaker[uid].play_tunein(item(), start) > File "/usr/local/smarthome/plugins/sonos/__init__.py", line 2175, in play_tunein > cls.from_music_service(MusicService(service_name='TuneIn', account=Account()), raw_item)) > TypeError: __init__() got an unexpected keyword argument 'account'
Einen Kommentar schreiben:
-
Mein Beispiel läuft bei mir noch genau so wie in dem Zitat. Habe aber schon ewig nichts mehr aktualisiert. Werde mittelfristig aber wohl zu Home assistant migrieren...
Viele Grüße
Einen Kommentar schreiben:
-
Mir geht es erstmal um Radiosender. Wenn ich einen Sender z.B. Radio Bob über TuneIn höre, ist das Item sonos_playlists leer.
Ich wollte mir jetzt eine einfache Logik bauen, die je nach Wert eines Items einen bestimmten Sender anwählt.
Der Befehl sh.MySonos.essen.play_tunein("WDR2") führt aber zu keiner Änderung. Das ein oder ausschalten über den play Befehl oder das einstellen der Lautstärke über volume funktioniert. Ich bin auf dem aktuellen master branch unterwegs.
Laut:
Zitat von Misanthrop Beitrag anzeigen
Code:if sh.MySonos.Kueche.function() == 3: sh.MySonos.Kueche.unjoin(1) sh.MySonos.Kueche.play(0) sh.MySonos.Kueche.volume(8) sh.MySonos.Kueche.load_sonos_playlist.clear_queue( 1) sh.MySonos.Kueche.play_tunein("RadioStation1") #wenn ich RadioStation2 hören möchte, funktioniert das seltsamerweise nur, wenn ich vorher eine andere Station starte... das macht den Start allerdings auch recht langsam, aber anders funktioniert es seltsamerweise nicht... sh.MySonos.Kueche.play_tunein("RadioStation2")
müsste das ja so funktionieren. Hat jemand den Befehl play_tunein() aktuell im Einsatz und kann mir ein Beispiel geben?
Einen Kommentar schreiben:
-
Hi android,
hast Du Dir schonmal den Befehl load_sonos_playlist angeschaut? Infos findest Du hier: https://github.com/smarthomeNG/plugi...onos/README.md
Die hinterlegten Playlists kannst Du im Item sonos_playlists einsehen.
VG
Alex
Einen Kommentar schreiben:
-
Hallo,
gibt es eine Möglichkeit/Befehl zwischen Stations/Playlists die im Speaker hinterlegt sind zu wechseln bzw. die hinterlegten abzufragen ? Ich habe in der Doku, im Forum und Code nichts gefunden. Wundert mich aber irgendwie, ob ich nicht was übersehen habe, dürfte ja eigentlich ein Standfall sein.
Einen Kommentar schreiben:
-
Hallo jksd, Jörg,
ja, als Stereopaar gekoppelte Speaker werden per Default nicht einzelnd von der SoCo library aufgesetzt, es sei denn du gibst die IPs beider Speaker an.
Zu Deinem zweiten Punkt:
Ich habe bei mir die TTS Sprachdurchsagen getestet. Mit der aktuellen Plugin Version im Master funktioniert das einwandfrei.
Ausgangslage:
Zwei Speaker als Stereopaar gekoppelt
Die Gruppe spielt aktiv einen Radiosender.
Ein Speaker der Gruppe bekommt den TTS Befehl.
Ergebnis:
TTS wird abgespielt.
Anschließend wird das Radioprogramm wieder aufgenommen und aktiv gespielt.
Ich sehe hier kein Problem.
Viele Grüße
Alex
Einen Kommentar schreiben:
Einen Kommentar schreiben: