mirror of
https://github.com/fhem/fhem-mirror.git
synced 2025-04-10 08:04:00 +00:00
Sonos: The PlayURI-command doesn't work properly
git-svn-id: https://svn.fhem.de/fhem/trunk@7476 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
parent
6d788109f8
commit
09fdf07f12
@ -32,6 +32,8 @@
|
||||
# Changelog
|
||||
#
|
||||
# SVN-History:
|
||||
# 08.01.2015
|
||||
# Bei der Wiedergabeanweisung "PlayURI" gab es einen Fehler
|
||||
# 05.01.2105
|
||||
# Die Cover beim Abspielen "von diesem Gerät" (also iPad, oder Android-Tablet) wurden nicht angezeigt.
|
||||
# 04.01.2015
|
||||
@ -5793,6 +5795,7 @@ sub SONOS_getDeviceDefHash($) {
|
||||
}
|
||||
|
||||
SONOS_Log undef, 1, "The Method 'SONOS_getDeviceDefHash' cannot find the FHEM-Device according to '$devicename'. This should not happen!";
|
||||
return undef;
|
||||
}
|
||||
|
||||
########################################################################################
|
||||
|
@ -600,27 +600,29 @@ sub SONOSPLAYER_Set($@) {
|
||||
$udn = $hash->{UDN};
|
||||
|
||||
# Prüfen, ob ein Sonosplayer-Device angegeben wurde, dann diesen AV Eingang als Quelle wählen
|
||||
my $dHash = SONOS_getDeviceDefHash($value);
|
||||
if (defined($dHash)) {
|
||||
my $udnShort = $1 if ($dHash->{UDN} =~ m/(.*)_MR/);
|
||||
|
||||
# Wenn dieses Quell-Device eine Playbar ist, dann den optischen Eingang als Quelle wählen...
|
||||
if (ReadingsVal($dHash->{NAME}, 'playerType', '') eq 'S9') {
|
||||
# Das ganze geht nur bei dem eigenen Eingang, ansonsten eine Gruppenwiedergabe starten
|
||||
if ($dHash->{NAME} eq $hash->{NAME}) {
|
||||
$value = 'x-sonos-htastream:'.$udnShort.':spdif';
|
||||
if (defined($defs{$value})) {
|
||||
my $dHash = SONOS_getDeviceDefHash($value);
|
||||
if (defined($dHash)) {
|
||||
my $udnShort = $1 if ($dHash->{UDN} =~ m/(.*)_MR/);
|
||||
|
||||
# Wenn dieses Quell-Device eine Playbar ist, dann den optischen Eingang als Quelle wählen...
|
||||
if (ReadingsVal($dHash->{NAME}, 'playerType', '') eq 'S9') {
|
||||
# Das ganze geht nur bei dem eigenen Eingang, ansonsten eine Gruppenwiedergabe starten
|
||||
if ($dHash->{NAME} eq $hash->{NAME}) {
|
||||
$value = 'x-sonos-htastream:'.$udnShort.':spdif';
|
||||
} else {
|
||||
# Auf dem anderen Player den TV-Eingang wählen
|
||||
SONOS_DoWork($dHash->{UDN}, 'playURI', 'x-sonos-htastream:'.$udnShort.':spdif', undef);
|
||||
|
||||
# Gruppe bilden
|
||||
SONOS_DoWork($hash->{UDN}, 'playURI', 'x-rincon:'.$udnShort, $value2);
|
||||
|
||||
# Wir sind hier fertig
|
||||
return undef;
|
||||
}
|
||||
} else {
|
||||
# Auf dem anderen Player den TV-Eingang wählen
|
||||
SONOS_DoWork($dHash->{UDN}, 'playURI', 'x-sonos-htastream:'.$udnShort.':spdif', undef);
|
||||
|
||||
# Gruppe bilden
|
||||
SONOS_DoWork($hash->{UDN}, 'playURI', 'x-rincon:'.$udnShort, $value2);
|
||||
|
||||
# Wir sind hier fertig
|
||||
return undef;
|
||||
$value = 'x-rincon-stream:'.$udnShort;
|
||||
}
|
||||
} else {
|
||||
$value = 'x-rincon-stream:'.$udnShort;
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user