Sonos Modul

Sorry, das ging an mir vorbei.

<displayName>One</displayName>

Das kommt im Modul wenn ich auslesen drücke:

Besten Dank und lg

Hallo,

Ist jetzt drin.
Aber eigentlich dacht ich, ich wäre so tolerant, dass ich ein nicht bekanntes Modell dynamisch hinzufüge…

Da muss ich wohl noch mal schauen.

Gruß,
Thorsten

Danke ! Kommt dann im nächsten Update?

Hallo,

und ich war der festen Überzeugung, dass ich es direkt online gestellt hatte…
Jetzt aber.

Gruß,
Thorsten

Mit dem neuesten Update von heute ist der „One“ drin.
One.png

Hallo,
ich habe entweder etwas falsch verstanden oder einen Fehler.
Ich wollte den Sender Rock Antenne, der sich nicht in der Liste befindet, mit diesem Script aufrufen.


SNS_SetRadio(29427,'ROCK ANTENNE');
SNS_PLAY(29427);  

Leider bekomme ich einen Fatal error „Radiostation is unknown“.

Ich dachte, wenn der Sender nicht in der Liste ist, wird er in den Tunnel Favoriten gesucht und da ist er in meinem Sonos System.

Ralph

Das alte Modul hab ich nicht installiert.
Merkwürdigerweise ist der Fehler jetzt auch nicht mehr aufgetreten.
Sollte das Modul fehlerhaft sein, kann ich dieses dann löschen und neu installieren, ohne dass ich irgendwelche Daten verliere oder sich ID’s ändern?

Peter

Der Sonos ONE SL fehlt noch :smiley:

Gruß: Swen

Ich bekomme nach wie vor:

22.04.2020, 12:33:10 | TimerPool | Schlafzimmer (Sonos Update Status): <br />
<b>Warning</b>:  InstanceInterface is not available in <b>/var/lib/symcon/modules/.store/de.kugelberg.sonos/SonosPlayer/module.php</b> on line <b>2485</b><br />

Das kommt, wenn ein SONOS Player keinen Strom hat. Lässt sich das abstellen?

Hallo,

ich wage daran zu zweifeln, dass dies kommt wenn der Player keinen Strom hat.
Dies kommt, wenn z.B. während das Modul upgedatet wird auf einen Player zugegriffen wird.
Hat also nichts mit der Physik (also dem Player an sich) sondern mit der Instanz im IPS zu tun.

Best Practice zur PHP-Modul Erstellung · GitHub Kapitel 1.8 erklärt dies ein wenig.

In Zeil 2485 steht:

$this->SendDebug(__FUNCTION__, 'First connect not possible', 0);

da wird also wirklich kein Kontakt zu Sonos aufgebaut.

Gruß,
Thorsten

Hallo,

als was identifiziert der sich denn genau? --> https://www.symcon.de/forum/threads/27500-Sonos-Modul/page148?p=423469#post423469

Danke,
Thorsten

Danke für die Info.

Heute hatte ich die Meldung z.B. nach dem IPS Neustart im Log und der besagte Player war der Einzige, der keinen Strom hatte.

Ich beobachte das mal weiter.

Grüße,
Christoph

Reicht dir das?

<displayName>One SL</displayName>

Swen

Ich vermute, er benötigt die Ausgabe des Skriptes wie in #1433 dargestellt.

OK hab hier mal die Ausgabe, habe aber einiges entfernt.


<root xmlns="urn:schemas-upnp-org:device-1-0">
<specVersion>
<major>1</major>
<minor>0</minor>
</specVersion>
<device>
<deviceType>urn:schemas-upnp-org:device:ZonePlayer:1</deviceType>
<friendlyName>###.###.###.### - Sonos One SL</friendlyName>
<manufacturer>Sonos, Inc.</manufacturer>
<manufacturerURL>http://www.sonos.com</manufacturerURL>
<modelNumber>S22</modelNumber>
<modelDescription>Sonos One SL</modelDescription>
<modelName>Sonos One SL</modelName>
<modelURL>http://www.sonos.com/products/zoneplayers/S22</modelURL>
<softwareVersion>55.1-74250</softwareVersion>
<swGen>1</swGen>
<hardwareVersion>1.28.1.6-2</hardwareVersion>
<serialNum>##-##-##-##-##-##:##</serialNum>
<MACAddress>##:##:##:##:##:##</MACAddress>
<UDN>uuid:RINCON_##################</UDN>
<iconList>
<icon>
<id>0</id>
<mimetype>image/png</mimetype>
<width>48</width>
<height>48</height>
<depth>24</depth>
<url>/img/icon-S22.png</url>
</icon>
</iconList>
<minCompatibleVersion>54.0-00000</minCompatibleVersion>
<legacyCompatibleVersion>36.0-00000</legacyCompatibleVersion>
<apiVersion>1.17.1</apiVersion>
<minApiVersion>1.1.0</minApiVersion>
<displayVersion>11.0</displayVersion>
<extraVersion/>
<roomName>###############</roomName>
<displayName>One SL</displayName>
<zoneType>24</zoneType>
<feature1>0x00000000</feature1>
<feature2>0x01418332</feature2>
<feature3>0x0001100e</feature3>
<seriesid>A100</seriesid>
<variant>1</variant>
<internalSpeakerSize>5</internalSpeakerSize>
<bassExtension>75.000</bassExtension>
<satGainOffset>6.000</satGainOffset>
<memory>512</memory>
<flash>512</flash>
<ampOnTime>10</ampOnTime>
<retailMode>0</retailMode>
<serviceList>
<service>
<serviceType>urn:schemas-upnp-org:service:AlarmClock:1</serviceType>
<serviceId>urn:upnp-org:serviceId:AlarmClock</serviceId>
<controlURL>/AlarmClock/Control</controlURL>
<eventSubURL>/AlarmClock/Event</eventSubURL>
<SCPDURL>/xml/AlarmClock1.xml</SCPDURL>
</service>
<service>
<serviceType>urn:schemas-upnp-org:service:MusicServices:1</serviceType>
<serviceId>urn:upnp-org:serviceId:MusicServices</serviceId>
<controlURL>/MusicServices/Control</controlURL>
<eventSubURL>/MusicServices/Event</eventSubURL>
<SCPDURL>/xml/MusicServices1.xml</SCPDURL>
</service>
<service>
<serviceType>urn:schemas-upnp-org:service:DeviceProperties:1</serviceType>
<serviceId>urn:upnp-org:serviceId:DeviceProperties</serviceId>
<controlURL>/DeviceProperties/Control</controlURL>
<eventSubURL>/DeviceProperties/Event</eventSubURL>
<SCPDURL>/xml/DeviceProperties1.xml</SCPDURL>
</service>
<service>
<serviceType>urn:schemas-upnp-org:service:SystemProperties:1</serviceType>
<serviceId>urn:upnp-org:serviceId:SystemProperties</serviceId>
<controlURL>/SystemProperties/Control</controlURL>
<eventSubURL>/SystemProperties/Event</eventSubURL>
<SCPDURL>/xml/SystemProperties1.xml</SCPDURL>
</service>
<service>
<serviceType>urn:schemas-upnp-org:service:ZoneGroupTopology:1</serviceType>
<serviceId>urn:upnp-org:serviceId:ZoneGroupTopology</serviceId>
<controlURL>/ZoneGroupTopology/Control</controlURL>
<eventSubURL>/ZoneGroupTopology/Event</eventSubURL>
<SCPDURL>/xml/ZoneGroupTopology1.xml</SCPDURL>
</service>
<service>
<serviceType>urn:schemas-upnp-org:service:GroupManagement:1</serviceType>
<serviceId>urn:upnp-org:serviceId:GroupManagement</serviceId>
<controlURL>/GroupManagement/Control</controlURL>
<eventSubURL>/GroupManagement/Event</eventSubURL>
<SCPDURL>/xml/GroupManagement1.xml</SCPDURL>
</service>
<service>
<serviceType>urn:schemas-tencent-com:service:QPlay:1</serviceType>
<serviceId>urn:tencent-com:serviceId:QPlay</serviceId>
<controlURL>/QPlay/Control</controlURL>
<eventSubURL>/QPlay/Event</eventSubURL>
<SCPDURL>/xml/QPlay1.xml</SCPDURL>
</service>
</serviceList>
<deviceList>
<device>
<deviceType>urn:schemas-upnp-org:device:MediaServer:1</deviceType>
<friendlyName>############### - Sonos One SL Media Server</friendlyName>
<manufacturer>Sonos, Inc.</manufacturer>
<manufacturerURL>http://www.sonos.com</manufacturerURL>
<modelNumber>S22</modelNumber>
<modelDescription>Sonos One SL Media Server</modelDescription>
<modelName>Sonos One SL</modelName>
<modelURL>http://www.sonos.com/products/zoneplayers/S22</modelURL>
<UDN>uuid:RINCON_###################_MS</UDN>
<serviceList>
<service>
<serviceType>urn:schemas-upnp-org:service:ContentDirectory:1</serviceType>
<serviceId>urn:upnp-org:serviceId:ContentDirectory</serviceId>
<controlURL>/MediaServer/ContentDirectory/Control</controlURL>
<eventSubURL>/MediaServer/ContentDirectory/Event</eventSubURL>
<SCPDURL>/xml/ContentDirectory1.xml</SCPDURL>
</service>
<service>
<serviceType>urn:schemas-upnp-org:service:ConnectionManager:1</serviceType>
<serviceId>urn:upnp-org:serviceId:ConnectionManager</serviceId>
<controlURL>/MediaServer/ConnectionManager/Control</controlURL>
<eventSubURL>/MediaServer/ConnectionManager/Event</eventSubURL>
<SCPDURL>/xml/ConnectionManager1.xml</SCPDURL>
</service>
</serviceList>
</device>
<device>
<deviceType>urn:schemas-upnp-org:device:MediaRenderer:1</deviceType>
<friendlyName>################ - Sonos One SL Media Renderer</friendlyName>
<manufacturer>Sonos, Inc.</manufacturer>
<manufacturerURL>http://www.sonos.com</manufacturerURL>
<modelNumber>S22</modelNumber>
<modelDescription>Sonos One SL Media Renderer</modelDescription>
<modelName>Sonos One SL</modelName>
<modelURL>http://www.sonos.com/products/zoneplayers/S22</modelURL>
<UDN>uuid:RINCON_#############################</UDN>
<serviceList>
<service>
<serviceType>urn:schemas-upnp-org:service:RenderingControl:1</serviceType>
<serviceId>urn:upnp-org:serviceId:RenderingControl</serviceId>
<controlURL>/MediaRenderer/RenderingControl/Control</controlURL>
<eventSubURL>/MediaRenderer/RenderingControl/Event</eventSubURL>
<SCPDURL>/xml/RenderingControl1.xml</SCPDURL>
</service>
<service>
<serviceType>urn:schemas-upnp-org:service:ConnectionManager:1</serviceType>
<serviceId>urn:upnp-org:serviceId:ConnectionManager</serviceId>
<controlURL>/MediaRenderer/ConnectionManager/Control</controlURL>
<eventSubURL>/MediaRenderer/ConnectionManager/Event</eventSubURL>
<SCPDURL>/xml/ConnectionManager1.xml</SCPDURL>
</service>
<service>
<serviceType>urn:schemas-upnp-org:service:AVTransport:1</serviceType>
<serviceId>urn:upnp-org:serviceId:AVTransport</serviceId>
<controlURL>/MediaRenderer/AVTransport/Control</controlURL>
<eventSubURL>/MediaRenderer/AVTransport/Event</eventSubURL>
<SCPDURL>/xml/AVTransport1.xml</SCPDURL>
</service>
<service>
<serviceType>urn:schemas-sonos-com:service:Queue:1</serviceType>
<serviceId>urn:sonos-com:serviceId:Queue</serviceId>
<controlURL>/MediaRenderer/Queue/Control</controlURL>
<eventSubURL>/MediaRenderer/Queue/Event</eventSubURL>
<SCPDURL>/xml/Queue1.xml</SCPDURL>
</service>
<service>
<serviceType>
urn:schemas-upnp-org:service:GroupRenderingControl:1
</serviceType>
<serviceId>urn:upnp-org:serviceId:GroupRenderingControl</serviceId>
<controlURL>/MediaRenderer/GroupRenderingControl/Control</controlURL>
<eventSubURL>/MediaRenderer/GroupRenderingControl/Event</eventSubURL>
<SCPDURL>/xml/GroupRenderingControl1.xml</SCPDURL>
</service>
<service>
<serviceType>urn:schemas-upnp-org:service:VirtualLineIn:1</serviceType>
<serviceId>urn:upnp-org:serviceId:VirtualLineIn</serviceId>
<controlURL>/MediaRenderer/VirtualLineIn/Control</controlURL>
<eventSubURL>/MediaRenderer/VirtualLineIn/Event</eventSubURL>
<SCPDURL>/xml/VirtualLineIn1.xml</SCPDURL>
</service>
</serviceList>
<X_Rhapsody-Extension xmlns="http://www.real.com/rhapsody/xmlns/upnp-1-0">
<deviceID>
urn:rhapsody-real-com:device-id-1-0:sonos_1:RINCON_#########################
</deviceID>
<deviceCapabilities>
<interactionPattern type="real-rhapsody-upnp-1-0"/>
</deviceCapabilities>
</X_Rhapsody-Extension>
<qq:X_QPlay_SoftwareCapability xmlns:qq="http://www.tencent.com">QPlay:2</qq:X_QPlay_SoftwareCapability>
<iconList>
<icon>
<mimetype>image/png</mimetype>
<width>48</width>
<height>48</height>
<depth>24</depth>
<url>/img/icon-S22.png</url>
</icon>
</iconList>
</device>
</deviceList>
</device>
</root>

ich habe seit gestern eine Sonos Beam.
Diese konnte ich problemlos einbinden und die Steuerung klappt auch famos.
Jetzt wird allerdings mein Message Log geflutet:


23.04.2020, 13:23:45 | TimerPool | Sonos-Florian (Sonos Update Status): <br />
<b>Fatal error</b>:  Uncaught Exception: Error during Soap Call: Internal Server Error HTTP in /mnt/data/symcon/modules/.store/de.kugelberg.sonos/libs/sonosAccess.php:760
Stack trace:
#0 /mnt/data/symcon/modules/.store/de.kugelberg.sonos/libs/sonosAccess.php(303): SonosAccess->processSoapCall('/MediaRenderer/...', 'urn:schemas-upn...', 'GetTransportInf...', Array)
#1 /mnt/data/symcon/modules/.store/de.kugelberg.sonos/SonosPlayer/module.php(1918): SonosAccess->GetTransportInfo()
#2 /mnt/data/symcon/scripts/__generated.inc.php(43): SonosPlayer->updateStatus()
#3 /-(1): SNS_updateStatus(24366)
#4 {main}
  thrown in <b>/mnt/data/symcon/modules/.store/de.kugelberg.sonos/libs/sonosAccess.php</b> on line <b>760</b><br />

Ich habe mal die Debug Ausgaben der einzelnen Instanzen geschaut, dort sind keine Auffälligkeiten, diese werden alle 5 Minuten abgefragt:


23.04.2020, 13:01:00 |       getSonosAccess | IPAddress=192.168.29.73 ; TimeOut=1000
23.04.2020, 13:01:00 |       getSonosAccess | Resolved to "192.168.29.73"
23.04.2020, 13:01:05 |       getSonosAccess | IPAddress=192.168.29.73 ; TimeOut=1000
23.04.2020, 13:01:05 |       getSonosAccess | Resolved to "192.168.29.73"

Was mag das sein?

Danke,
Loerdy

Hallo,

hab mein Modul mal komplett deinstalliert und alle Speaker gelöscht. Hab es aus dem Store inkl. Discovery neu installiert und erhalte folgende Fehler:

Konnte Instanz nicht erstellen
<br />
<b>Notice</b>: Undefined offset: 0 in <b>/var/lib/symcon/modules/.store/de.kugelberg.sonos/SonosDiscovery/module.php</b> on line <b>127</b><br />
<br />
<b>Warning</b>: Instanz #0 existiert nicht in <b>/var/lib/symcon/modules/.store/de.kugelberg.sonos/SonosDiscovery/module.php</b> on line <b>129</b><br />
<br />
<b>Warning</b>: Invalid argument supplied for foreach() in <b>/var/lib/symcon/modules/.store/de.kugelberg.sonos/SonosDiscovery/module.php</b> on line <b>131</b><br />
(Code: -32603)

Würde jetzt ungern weiter machen um weitere Fehler zu vermeiden.
(5.3, Rasperry)

Gruß oekomat

Hallo,

ja, ist drin.

Gruß,
Thorsten

Hallo,

GetTransportInfo() liest aus, ob der Player gerade Play, Pause oder was auch immer macht.
Ist „Sonos-Florian“ der Beam?
Ich fände es komisch, wenn diese Funktion nicht zur Verfügung stünde.

Diese Fehler habe ich sonst nur gesehen, wenn man ein Stereopaar hat, und die Abfrage auf den „falschen“ (inaktiven) Teil des Stereo Paars geht…

Ist so etwas der Fall?

Gruß,
Thorsten

Hallo,

Zeile 127 liest die SSDP Instanz aus.


$SSDPInstance = IPS_GetInstanceListByModuleID('{FFFFA648-B296-E785-96ED-065F7CEE6F29}')[0];

Die steht erst ab einer bestimmten IPS Version zur Verfügung.
Welche hast Du denn?

Danke,
Thorsten