mirror of
https://github.com/fhem/fhem-mirror.git
synced 2025-03-10 03:06:37 +00:00
70_PIONEERAVR: some readings fixed, stateAV and playStatus fixes
git-svn-id: https://svn.fhem.de/fhem/trunk@14598 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
parent
348e947924
commit
ec420c2a10
@ -1529,7 +1529,7 @@ PIONEERAVR_Set($@)
|
||||
"selectLine06",
|
||||
"selectLine07",
|
||||
"selectLine08",
|
||||
"selectScreenPage"); # available commands for certain inputs (@playerInputNr)
|
||||
"selectScreenPage" ); # available commands for certain inputs (@playerInputNr)
|
||||
my @playerInputNr = ("13","17","18","26","27","33","38","41","44","45","48","53"); # Input number for usbDac, ipodUsb, xmRadio, homeMediaGallery, sirius, adapterPort, internetRadio, pandora, mediaServer, Favorites, mhl, spotify
|
||||
my @setsTuner = ("channelUp",
|
||||
"channelDown",
|
||||
@ -1669,15 +1669,9 @@ PIONEERAVR_Set($@)
|
||||
} elsif ($cmd ~~ @setsPlayer) {
|
||||
Log3 $name, 5, "PIONEERAVR $name: set $cmd for inputNr: $inputNr (player command)";
|
||||
if ($inputNr eq "17") {
|
||||
if ( $cmd eq "selectScreenPage" ) {
|
||||
my $setCmd = sprintf "%05dGGI", $arg;
|
||||
PIONEERAVR_Write( $hash, $setCmd);
|
||||
return undef;
|
||||
} else {
|
||||
$playerCmd = $cmd."Ipod";
|
||||
}
|
||||
|
||||
} elsif ($inputNr eq "33"
|
||||
} elsif ( $inputNr eq "33"
|
||||
&& ( $cmd ne "updateScreen" )
|
||||
&& ( $cmd ne "selectLine01" )
|
||||
&& ( $cmd ne "selectLine02" )
|
||||
@ -1686,21 +1680,15 @@ PIONEERAVR_Set($@)
|
||||
&& ( $cmd ne "selectLine05" )
|
||||
&& ( $cmd ne "selectLine06" )
|
||||
&& ( $cmd ne "selectLine07" )
|
||||
&& ( $cmd ne "selectLine08" )
|
||||
&& ( $cmd ne "selectScreenPage") ) {
|
||||
&& ( $cmd ne "selectLine08" ) )
|
||||
{
|
||||
$playerCmd= $cmd."AdapterPort";
|
||||
#### homeMediaGallery, sirius, internetRadio, pandora, mediaServer, favorites, spotify
|
||||
} elsif (($inputNr eq "26") ||($inputNr eq "27") || ($inputNr eq "38") || ($inputNr eq "41") || ($inputNr eq "44") || ($inputNr eq "45") || ($inputNr eq "53")) {
|
||||
if ( $cmd eq "selectScreenPage" ) {
|
||||
my $setCmd = sprintf "%05dGGH", $arg;
|
||||
PIONEERAVR_Write( $hash, $setCmd);
|
||||
return undef;
|
||||
} else {
|
||||
$playerCmd= $cmd."Network";
|
||||
}
|
||||
|
||||
#### 'random' and 'repeat' are not available on input mhl
|
||||
} elsif (($inputNr eq "48")
|
||||
} elsif (( $inputNr eq "48" )
|
||||
&& ( $cmd ne "repeat")
|
||||
&& ( $cmd ne "random")
|
||||
&& ( $cmd ne "updateScreen" )
|
||||
@ -1711,8 +1699,7 @@ PIONEERAVR_Set($@)
|
||||
&& ( $cmd ne "selectLine05" )
|
||||
&& ( $cmd ne "selectLine06" )
|
||||
&& ( $cmd ne "selectLine07" )
|
||||
&& ( $cmd ne "selectLine08" )
|
||||
&& ( $cmd ne "selectScreenPage" ) ) {
|
||||
&& ( $cmd ne "selectLine08" ) ) {
|
||||
$playerCmd= $cmd."Mhl";
|
||||
} else {
|
||||
my $err= "PIONEERAVR $name: The command $cmd for input nr. $inputNr is not possible!";
|
||||
@ -1976,6 +1963,28 @@ PIONEERAVR_Set($@)
|
||||
}
|
||||
return undef;
|
||||
|
||||
# selectScreenPage (player command)
|
||||
} elsif ($cmd eq "selectScreenPage") {
|
||||
Log3 $name, 5, "PIONEERAVR $name: set $cmd for inputNr: $inputNr (player command) argument: $arg !";
|
||||
if ($inputNr eq "17") {
|
||||
my $setCmd = sprintf "%05dGGI", $arg;
|
||||
PIONEERAVR_Write( $hash, $setCmd);
|
||||
return undef;
|
||||
|
||||
#### homeMediaGallery, sirius, internetRadio, pandora, mediaServer, favorites, spotify
|
||||
} elsif ( ( $inputNr eq "26")
|
||||
|| ( $inputNr eq "27" )
|
||||
|| ( $inputNr eq "38" )
|
||||
|| ( $inputNr eq "41" )
|
||||
|| ( $inputNr eq "44" )
|
||||
|| ( $inputNr eq "45" )
|
||||
|| ( $inputNr eq "53" ) )
|
||||
{
|
||||
my $setCmd = sprintf "%05dGGH", $arg;
|
||||
PIONEERAVR_Write( $hash, $setCmd);
|
||||
return undef;
|
||||
}
|
||||
|
||||
####remoteControl
|
||||
} elsif ( $cmd eq "remoteControl" ) {
|
||||
Log3 $name, 5, "PIONEERAVR $name: set $cmd $arg";
|
||||
@ -2753,6 +2762,13 @@ sub PIONEERAVR_Read($)
|
||||
readingsBulkUpdate( $hash, "playStatus", "stopped" );
|
||||
}
|
||||
|
||||
# stateAV
|
||||
if ( $2 eq "02" || $2 eq "03" || $2 eq "04" || $2 eq "05" || $2 eq "06" ) {
|
||||
|
||||
my $stateAV = PIONEERAVR_GetStateAV($hash);
|
||||
readingsBulkUpdate( $hash, "stateAV", $stateAV )
|
||||
if ( ReadingsVal( $name, "stateAV", "-" ) ne $stateAV );
|
||||
}
|
||||
# Source information
|
||||
} elsif ( $line =~ m/^(GHH)(\d{2})$/ ) {
|
||||
my $sourceInfo = $hash->{helper}{SOURCEINFO}{$2};
|
||||
@ -2975,6 +2991,7 @@ sub PIONEERAVR_Read($)
|
||||
}
|
||||
|
||||
readingsEndUpdate( $hash, 1);
|
||||
|
||||
$hash->{PARTIAL} = $buf;
|
||||
}
|
||||
|
||||
@ -3219,8 +3236,9 @@ sub PIONEERAVR_GetStateAV($) {
|
||||
|
||||
} elsif (defined( $hash->{helper}{main}{CURINPUTNR})) {
|
||||
my $iNr = $hash->{helper}{main}{CURINPUTNR};
|
||||
if ( $hash->{helper}{INPUTNAMES}->{$iNr}{playerCommands} eq "1"
|
||||
&& ReadingsVal( $name, "playStatus", "stopped" ) ne "stopped" )
|
||||
if ( $hash->{helper}{INPUTNAMES}->{$iNr}{playerCommands} eq "1")
|
||||
{
|
||||
if ( ReadingsVal( $name, "playStatus", "" ) ne "" )
|
||||
{
|
||||
return ReadingsVal( $name, "playStatus", "stopped" );
|
||||
} else {
|
||||
@ -3229,6 +3247,9 @@ sub PIONEERAVR_GetStateAV($) {
|
||||
} else {
|
||||
return ReadingsVal( $name, "power", "off" );
|
||||
}
|
||||
} else {
|
||||
return ReadingsVal( $name, "power", "off" );
|
||||
}
|
||||
}
|
||||
|
||||
#####################################
|
||||
|
Loading…
x
Reference in New Issue
Block a user