Hey ich steuer meine Sonos Lautsprecher mit dem soco modul was soweit auch funktioniert. Allerdings bekomme ich eine Sache nicht hin...
und zwar diesen Befehl:
GetAutoplayRoomUUID
Hier bekomme ich folgendermaßen eine Antwort:
device.deviceProperties.GetAutoplayRoomUUID ([('InstanceID', 0)])
SetAutoplayRoomUUID
Ich weiß einfach nicht wie ich den Befehl für Set zusammensetzen muss.. vielleicht kann mir ja jemand helfen.
Sonos Steuerung
Das habe ich noch gefunden. Leider bin ich nicht so begabt im programmieren...
SetFormat [Argument(name='DesiredTimeFormat', vartype='string'), Argument(
name='DesiredDateFormat', vartype='string')] []
GetFormat [] [Argument(name='CurrentTimeFormat', vartype='string'),
Argument(name='CurrentDateFormat', vartype='string')] ...
http://docs.python-soco.com/en/latest/a ... vices.html
SetFormat [Argument(name='DesiredTimeFormat', vartype='string'), Argument(
name='DesiredDateFormat', vartype='string')] []
GetFormat [] [Argument(name='CurrentTimeFormat', vartype='string'),
Argument(name='CurrentDateFormat', vartype='string')] ...
http://docs.python-soco.com/en/latest/a ... vices.html
- sls
- User
- Beiträge: 480
- Registriert: Mittwoch 13. Mai 2015, 23:52
- Wohnort: Country country = new Zealand();
Ich denke du musst noch etwas genauer beschreiben was du bisher versucht hast (deinen Code hier in Code-Tags pasten), was du erwartest zu erhalten und was exakt du nicht verstehst.
When we say computer, we mean the electronic computer.
Also ich möchte mit dem Befehl SetAutoplayRoomUUID den Autoplay Raum von dem Sonos player im Wohnzimmer ändern.
Mit diesem Befehl kann ich den aktuellen Raum abfragen:
Wohnzimmer.deviceProperties.GetAutoplayRoomUUID ([('InstanceID', 0)])
diese Antwort kommt:
{'RoomUUID': 'RINCON_B8E9379AD78201400', 'Source': u''}
Jetzt möchte ich mit dem Befehl SetAutoplayRoomUUID den Raum ändern. Nur ich weiß nicht wo ich die Raum UUID eingeben muss. So geht es zB nicht..
Mit diesem Befehl kann ich den aktuellen Raum abfragen:
Wohnzimmer.deviceProperties.GetAutoplayRoomUUID ([('InstanceID', 0)])
diese Antwort kommt:
{'RoomUUID': 'RINCON_B8E9379AD78201400', 'Source': u''}
Code: Alles auswählen
>>> Wohnzimmer.deviceProperties.GetAutoplayRoomUUID ([('InstanceID', 0)])
{'RoomUUID': 'RINCON_B8E9379AD78201400', 'Source': u''}
Code: Alles auswählen
>>> Wohnzimmer.deviceProperties.SetAutoplayRoomUUID ([('RINCON_B8E9379AD78201400', 0)])
Traceback (most recent call last):
File "<pyshell#8>", line 1, in <module>
Wohnzimmer.deviceProperties.SetAutoplayRoomUUID ([('RINCON_B8E9379AD78201400', 0)])
File "/home/pi/.local/lib/python2.7/site-packages/soco/services.py", line 213, in _dispatcher
return self.send_command(action, *args, **kwargs)
File "/home/pi/.local/lib/python2.7/site-packages/soco/services.py", line 498, in send_command
self.handle_upnp_error(response.text)
File "/home/pi/.local/lib/python2.7/site-packages/soco/services.py", line 560, in handle_upnp_error
error_xml=xml_error
SoCoUPnPException: UPnP Error 402 received: Invalid Args from 192.168.83.40
wie denn genau? also habe folgendes probiert
wenn ich die klammer hinter dem Befehl aufmache kommt da eine Info (*args, **kwargs) Dispatch to send_command.
Code: Alles auswählen
>>> Arbeitszimmer.deviceProperties.SetAutoplayRoomUUID 'RINCON_B8E9379AD78201400'
SyntaxError: invalid syntax
>>> Arbeitszimmer.deviceProperties.SetAutoplayRoomUUID "RINCON_B8E9379AD78201400"
SyntaxError: invalid syntax
>>> Arbeitszimmer.deviceProperties.SetAutoplayRoomUUID RINCON_B8E9379AD78201400
SyntaxError: invalid syntax
>>> Arbeitszimmer.deviceProperties.SetAutoplayRoomUUID (RINCON_B8E9379AD78201400)
Traceback (most recent call last):
File "<pyshell#6>", line 1, in <module>
Arbeitszimmer.deviceProperties.SetAutoplayRoomUUID (RINCON_B8E9379AD78201400)
NameError: name 'RINCON_B8E9379AD78201400' is not defined
Die ersten drei Versuche sind offenbar kein Python. Und die einzige Variante, die etwas bringen wuerde hast du NICHT versucht.
Ohne wenigstens ein paar Grundlagen zu beherrschen wirst du nicht wirklich irgendwo hin kommen. Das offizielle Python-Tutorial ist ein guter Start, und snafu oder ein anderer der regulars hat eine deutsche Uebersetzung davon verlinkt, falls dir das Englisch Probleme macht.
Ohne wenigstens ein paar Grundlagen zu beherrschen wirst du nicht wirklich irgendwo hin kommen. Das offizielle Python-Tutorial ist ein guter Start, und snafu oder ein anderer der regulars hat eine deutsche Uebersetzung davon verlinkt, falls dir das Englisch Probleme macht.
Seufz.
funktion("stringparameter")
ist dein Freund.
Und ganz ehrlich - wenn du nicht programmieren lernen willst, sondern nur etwas programmiert haben moechtest, dann bezahl wen dafuer. Mit Geld, Bier oder Gegenleistungen anderer Art. Ich zumindest bin es ziemlich leid, das die ganzen PI-Bastler denken, wir waeren hier ihre persoenlichen Programmier-Dienstleister, die schnell und kostenlos Code abliefern.
funktion("stringparameter")
ist dein Freund.
Und ganz ehrlich - wenn du nicht programmieren lernen willst, sondern nur etwas programmiert haben moechtest, dann bezahl wen dafuer. Mit Geld, Bier oder Gegenleistungen anderer Art. Ich zumindest bin es ziemlich leid, das die ganzen PI-Bastler denken, wir waeren hier ihre persoenlichen Programmier-Dienstleister, die schnell und kostenlos Code abliefern.