mirror of
https://github.com/fhem/fhem-mirror.git
synced 2025-05-04 22:19:38 +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",
|
"selectLine06",
|
||||||
"selectLine07",
|
"selectLine07",
|
||||||
"selectLine08",
|
"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 @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",
|
my @setsTuner = ("channelUp",
|
||||||
"channelDown",
|
"channelDown",
|
||||||
@ -1669,15 +1669,9 @@ PIONEERAVR_Set($@)
|
|||||||
} elsif ($cmd ~~ @setsPlayer) {
|
} elsif ($cmd ~~ @setsPlayer) {
|
||||||
Log3 $name, 5, "PIONEERAVR $name: set $cmd for inputNr: $inputNr (player command)";
|
Log3 $name, 5, "PIONEERAVR $name: set $cmd for inputNr: $inputNr (player command)";
|
||||||
if ($inputNr eq "17") {
|
if ($inputNr eq "17") {
|
||||||
if ( $cmd eq "selectScreenPage" ) {
|
|
||||||
my $setCmd = sprintf "%05dGGI", $arg;
|
|
||||||
PIONEERAVR_Write( $hash, $setCmd);
|
|
||||||
return undef;
|
|
||||||
} else {
|
|
||||||
$playerCmd = $cmd."Ipod";
|
$playerCmd = $cmd."Ipod";
|
||||||
}
|
|
||||||
|
|
||||||
} elsif ($inputNr eq "33"
|
} elsif ( $inputNr eq "33"
|
||||||
&& ( $cmd ne "updateScreen" )
|
&& ( $cmd ne "updateScreen" )
|
||||||
&& ( $cmd ne "selectLine01" )
|
&& ( $cmd ne "selectLine01" )
|
||||||
&& ( $cmd ne "selectLine02" )
|
&& ( $cmd ne "selectLine02" )
|
||||||
@ -1686,21 +1680,15 @@ PIONEERAVR_Set($@)
|
|||||||
&& ( $cmd ne "selectLine05" )
|
&& ( $cmd ne "selectLine05" )
|
||||||
&& ( $cmd ne "selectLine06" )
|
&& ( $cmd ne "selectLine06" )
|
||||||
&& ( $cmd ne "selectLine07" )
|
&& ( $cmd ne "selectLine07" )
|
||||||
&& ( $cmd ne "selectLine08" )
|
&& ( $cmd ne "selectLine08" ) )
|
||||||
&& ( $cmd ne "selectScreenPage") ) {
|
{
|
||||||
$playerCmd= $cmd."AdapterPort";
|
$playerCmd= $cmd."AdapterPort";
|
||||||
#### homeMediaGallery, sirius, internetRadio, pandora, mediaServer, favorites, spotify
|
#### 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")) {
|
} 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";
|
$playerCmd= $cmd."Network";
|
||||||
}
|
|
||||||
|
|
||||||
#### 'random' and 'repeat' are not available on input mhl
|
#### 'random' and 'repeat' are not available on input mhl
|
||||||
} elsif (($inputNr eq "48")
|
} elsif (( $inputNr eq "48" )
|
||||||
&& ( $cmd ne "repeat")
|
&& ( $cmd ne "repeat")
|
||||||
&& ( $cmd ne "random")
|
&& ( $cmd ne "random")
|
||||||
&& ( $cmd ne "updateScreen" )
|
&& ( $cmd ne "updateScreen" )
|
||||||
@ -1711,8 +1699,7 @@ PIONEERAVR_Set($@)
|
|||||||
&& ( $cmd ne "selectLine05" )
|
&& ( $cmd ne "selectLine05" )
|
||||||
&& ( $cmd ne "selectLine06" )
|
&& ( $cmd ne "selectLine06" )
|
||||||
&& ( $cmd ne "selectLine07" )
|
&& ( $cmd ne "selectLine07" )
|
||||||
&& ( $cmd ne "selectLine08" )
|
&& ( $cmd ne "selectLine08" ) ) {
|
||||||
&& ( $cmd ne "selectScreenPage" ) ) {
|
|
||||||
$playerCmd= $cmd."Mhl";
|
$playerCmd= $cmd."Mhl";
|
||||||
} else {
|
} else {
|
||||||
my $err= "PIONEERAVR $name: The command $cmd for input nr. $inputNr is not possible!";
|
my $err= "PIONEERAVR $name: The command $cmd for input nr. $inputNr is not possible!";
|
||||||
@ -1976,6 +1963,28 @@ PIONEERAVR_Set($@)
|
|||||||
}
|
}
|
||||||
return undef;
|
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
|
####remoteControl
|
||||||
} elsif ( $cmd eq "remoteControl" ) {
|
} elsif ( $cmd eq "remoteControl" ) {
|
||||||
Log3 $name, 5, "PIONEERAVR $name: set $cmd $arg";
|
Log3 $name, 5, "PIONEERAVR $name: set $cmd $arg";
|
||||||
@ -2753,6 +2762,13 @@ sub PIONEERAVR_Read($)
|
|||||||
readingsBulkUpdate( $hash, "playStatus", "stopped" );
|
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
|
# Source information
|
||||||
} elsif ( $line =~ m/^(GHH)(\d{2})$/ ) {
|
} elsif ( $line =~ m/^(GHH)(\d{2})$/ ) {
|
||||||
my $sourceInfo = $hash->{helper}{SOURCEINFO}{$2};
|
my $sourceInfo = $hash->{helper}{SOURCEINFO}{$2};
|
||||||
@ -2975,6 +2991,7 @@ sub PIONEERAVR_Read($)
|
|||||||
}
|
}
|
||||||
|
|
||||||
readingsEndUpdate( $hash, 1);
|
readingsEndUpdate( $hash, 1);
|
||||||
|
|
||||||
$hash->{PARTIAL} = $buf;
|
$hash->{PARTIAL} = $buf;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -3219,8 +3236,9 @@ sub PIONEERAVR_GetStateAV($) {
|
|||||||
|
|
||||||
} elsif (defined( $hash->{helper}{main}{CURINPUTNR})) {
|
} elsif (defined( $hash->{helper}{main}{CURINPUTNR})) {
|
||||||
my $iNr = $hash->{helper}{main}{CURINPUTNR};
|
my $iNr = $hash->{helper}{main}{CURINPUTNR};
|
||||||
if ( $hash->{helper}{INPUTNAMES}->{$iNr}{playerCommands} eq "1"
|
if ( $hash->{helper}{INPUTNAMES}->{$iNr}{playerCommands} eq "1")
|
||||||
&& ReadingsVal( $name, "playStatus", "stopped" ) ne "stopped" )
|
{
|
||||||
|
if ( ReadingsVal( $name, "playStatus", "" ) ne "" )
|
||||||
{
|
{
|
||||||
return ReadingsVal( $name, "playStatus", "stopped" );
|
return ReadingsVal( $name, "playStatus", "stopped" );
|
||||||
} else {
|
} else {
|
||||||
@ -3229,6 +3247,9 @@ sub PIONEERAVR_GetStateAV($) {
|
|||||||
} else {
|
} else {
|
||||||
return ReadingsVal( $name, "power", "off" );
|
return ReadingsVal( $name, "power", "off" );
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
return ReadingsVal( $name, "power", "off" );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
|
Loading…
x
Reference in New Issue
Block a user