2
0
mirror of https://github.com/fhem/fhem-mirror.git synced 2025-01-31 06:39:11 +00:00

70_Viera: bugfix possible interaction GET status/SET command (non-Blocking)

git-svn-id: https://svn.fhem.de/fhem/trunk@20638 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
mabula 2019-12-01 17:50:40 +00:00
parent 2803d594e8
commit 8d2b289c38
2 changed files with 34 additions and 3 deletions

View File

@ -1,5 +1,7 @@
# Add changes at the top of the list. Keep it in ASCII, and 80-char wide. # Add changes at the top of the list. Keep it in ASCII, and 80-char wide.
# Do not insert empty lines here, update check depends on it. # Do not insert empty lines here, update check depends on it.
- bugfix: 70_VIERA: avoid possible interaction GET status/SET command
see also Forum #99994
- change: 33_readingsGroup: don't use events to update cells - change: 33_readingsGroup: don't use events to update cells
- feature: 98_WeekdayTimer: add support for weekprofile, add nl Forum: #105521 - feature: 98_WeekdayTimer: add support for weekprofile, add nl Forum: #105521
- bugfix: 98_WeekdayTimer: fix last timer of a day Forum: #104167 - bugfix: 98_WeekdayTimer: fix last timer of a day Forum: #104167

View File

@ -9,9 +9,12 @@
# since version 1.25 modified by mabula # since version 1.25 modified by mabula
# #
# #
# Version = 1.25 # Version = 1.26
# #
# Version History: # Version History:
# - 1.26 - 2019-11-24 Dr. H-J Breymayer
# -- problem with unexpected crypted command, correct Session Sequence
#
# - 1.25 - 2019-11-23 Dr. H-J Breymayer # - 1.25 - 2019-11-23 Dr. H-J Breymayer
# -- removed Readings "power". Redefined state -> Initialized/on/off # -- removed Readings "power". Redefined state -> Initialized/on/off
# -- removed spaces at remote control layout, problems with images not appearing # -- removed spaces at remote control layout, problems with images not appearing
@ -824,6 +827,9 @@ sub VIERA_GetAbortFn($) {
sub VIERA_Encrypted_Command($$) { sub VIERA_Encrypted_Command($$) {
my ($hash, $command) = @_; my ($hash, $command) = @_;
my $i = 0;
my $message = "";
if ($hash->{helper}{ENCRYPTION} eq "yes") { if ($hash->{helper}{ENCRYPTION} eq "yes") {
if ($hash->{helper}{pincode} eq "0000") {return VIERA_request_pin_code($hash)}; if ($hash->{helper}{pincode} eq "0000") {return VIERA_request_pin_code($hash)};
@ -834,13 +840,22 @@ sub VIERA_Encrypted_Command($$) {
my $params = "<X_KeyEvent>NRC_$command-ONOFF</X_KeyEvent>"; my $params = "<X_KeyEvent>NRC_$command-ONOFF</X_KeyEvent>";
my $message = VIERA_Build_soap_message_Encrypt($hash, "X_SendKey", $params, "u"); $message = VIERA_Build_soap_message_Encrypt($hash, "X_SendKey", $params, "u");
$hash->{helper}{BUFFER} = ""; $hash->{helper}{BUFFER} = "";
if (exists($hash->{helper}{RUNNING_PID_GET}) and $i < 5) {
sleep (0.1);
$i += 1;
}
VIERA_connection($hash, $message); VIERA_connection($hash, $message);
} }
else { else {
$message = VIERA_BuildXML_NetCtrl($hash, $command);
$hash->{helper}{BUFFER} = ""; $hash->{helper}{BUFFER} = "";
VIERA_connection($hash, VIERA_BuildXML_NetCtrl($hash, $command)); if (exists($hash->{helper}{RUNNING_PID_GET}) and $i < 5) {
sleep (0.1);
$i += 1;
}
VIERA_connection($hash, $message);
} }
return; return;
@ -1305,6 +1320,13 @@ sub VIERA_RClayout_TV_SVG() {
delete the "?" and replace 0000 with the PinCode. Execute the command again while the PinCode is still displayed on TV. delete the "?" and replace 0000 with the PinCode. Execute the command again while the PinCode is still displayed on TV.
You are done. You are done.
<br><br> <br><br>
This module may require further PERL libraries. For raspbian you have to enter the following commands in the terminal:<br>
<b>sudo cpan<br>
install MIME::Base64<br>
install Crypt::Mode::CBC<br>
install Digest::SHA<br>
q </b> for exit.<br>
<br>
<b>Notes:</b><br> <b>Notes:</b><br>
<ul>Activate volume remotecontrol by DLNA: Menu -> Setup -> Network Setup -> Network Link Settings -> DLNA RemoteVolume -> On</ul> <ul>Activate volume remotecontrol by DLNA: Menu -> Setup -> Network Setup -> Network Link Settings -> DLNA RemoteVolume -> On</ul>
<br> <br>
@ -1462,6 +1484,13 @@ sub VIERA_RClayout_TV_SVG() {
ausf&uuml;hren (set myTV1 off), danach wird ein PinCode am TV angezeigt. Die Definition editieren den PinCode eintragen und das ? l&ouml;schen. ausf&uuml;hren (set myTV1 off), danach wird ein PinCode am TV angezeigt. Die Definition editieren den PinCode eintragen und das ? l&ouml;schen.
Das Kommando nochmals ausf&uuml;hren, solange der PinCode angezeigt wird. Das wars. Das Kommando nochmals ausf&uuml;hren, solange der PinCode angezeigt wird. Das wars.
<br><br> <br><br>
Diese Modul ben&ouml;tigt evtl. weitere PERL Bibliotheken. F&uuml;r raspbian bitte folgende Kommandos im Terminmal eingeben:<br>
<b>sudo cpan<br>
install MIME::Base64<br>
install Crypt::Mode::CBC<br>
install Digest::SHA<br>
q </b> f&uuml;r exit.<br>
<br>
<b>Anmerkung:</b><br> <b>Anmerkung:</b><br>
<ul>Aktivieren von Fernbedienung der Lautst&auml;rke per DLNA: Men&uuml; -> Setup -> Netzwerk-Setup -> Netzwerkverbindungsein. -> DLNA-Fernbed. Lautst. -> Ein</ul> <ul>Aktivieren von Fernbedienung der Lautst&auml;rke per DLNA: Men&uuml; -> Setup -> Netzwerk-Setup -> Netzwerkverbindungsein. -> DLNA-Fernbed. Lautst. -> Ein</ul>
<br> <br>