2
0
mirror of https://github.com/fhem/fhem-mirror.git synced 2025-03-10 09:16:53 +00:00

49_SSCamSTRM: new attribute "hideAudio"

git-svn-id: https://svn.fhem.de/fhem/trunk@20227 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
nasseeder1 2019-09-22 13:19:39 +00:00
parent ceba4f6f80
commit facb3d41a7
3 changed files with 31 additions and 14 deletions

View File

@ -1,5 +1,6 @@
# 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.
- feature: 49_SSCamSTRM: new attribute "hideAudio"
- bugfix: 73_AutoShuttersControl: change code in ShuttersCommandSet - bugfix: 73_AutoShuttersControl: change code in ShuttersCommandSet
- bugfix: 88_Timer: fix sort function - bugfix: 88_Timer: fix sort function
- feature: 70_SolarEdgeAPI: start using "overview" API, new attributes - feature: 70_SolarEdgeAPI: start using "overview" API, new attributes

View File

@ -48,6 +48,7 @@ eval "use FHEM::Meta;1" or my $modMetaAbsent = 1;
# Versions History intern # Versions History intern
our %SSCam_vNotesIntern = ( our %SSCam_vNotesIntern = (
"8.19.0" => "21.09.2019 support attr \"hideAudio\" SSCamSTRM-device ",
"8.18.2" => "19.09.2019 sample streams changed in comref, support of attr noLink in Streaming-Device ", "8.18.2" => "19.09.2019 sample streams changed in comref, support of attr noLink in Streaming-Device ",
"8.18.1" => "18.09.2019 fix warnings, Forum: https://forum.fhem.de/index.php/topic,45671.msg975610.html#msg975610 ", "8.18.1" => "18.09.2019 fix warnings, Forum: https://forum.fhem.de/index.php/topic,45671.msg975610.html#msg975610 ",
"8.18.0" => "13.09.2019 change usage of own hashes to central %data hash, release unnecessary allocated memory ", "8.18.0" => "13.09.2019 change usage of own hashes to central %data hash, release unnecessary allocated memory ",
@ -7242,7 +7243,8 @@ sub SSCam_StreamDev($$$;$) {
$ha = AttrVal($strmdev, "htmlattrFTUI", $ha); # wenn aus FTUI aufgerufen divers setzen $ha = AttrVal($strmdev, "htmlattrFTUI", $ha); # wenn aus FTUI aufgerufen divers setzen
} }
my $hf = AttrVal($strmdev, "hideButtons", 0); # Drucktasten im unteren Bereich ausblenden ? my $hb = AttrVal($strmdev, "hideButtons", 0); # Drucktasten im Footer ausblenden ?
my $hau = AttrVal($strmdev, "hideAudio", 0); # Audio Steuerblock im Footer ausblenden ?
my $pws = AttrVal($strmdev, "popupWindowSize", ""); # Größe eines Popups my $pws = AttrVal($strmdev, "popupWindowSize", ""); # Größe eines Popups
$pws =~ s/"//g if($pws); $pws =~ s/"//g if($pws);
@ -7332,7 +7334,7 @@ sub SSCam_StreamDev($$$;$) {
$streamHash->{HELPER}{STREAM} = "<img src=$link $pws>"; # Stream für "get <SSCamSTRM-Device> popupStream" speichern $streamHash->{HELPER}{STREAM} = "<img src=$link $pws>"; # Stream für "get <SSCamSTRM-Device> popupStream" speichern
$streamHash->{HELPER}{STREAMACTIVE} = 1 if($link); # Statusbit wenn ein Stream aktiviert ist $streamHash->{HELPER}{STREAMACTIVE} = 1 if($link); # Statusbit wenn ein Stream aktiviert ist
} }
if(!$hf) { if(!$hb) {
if(ReadingsVal($camname, "Record", "Stop") eq "Stop") { if(ReadingsVal($camname, "Record", "Stop") eq "Stop") {
# Aufnahmebutton endlos Start # Aufnahmebutton endlos Start
$ret .= "<a onClick=\"$cmdrecendless\" onmouseover=\"Tip('$ttrecstart')\" onmouseout=\"UnTip()\">$imgrecendless </a>"; $ret .= "<a onClick=\"$cmdrecendless\" onmouseover=\"Tip('$ttrecstart')\" onmouseout=\"UnTip()\">$imgrecendless </a>";
@ -7349,7 +7351,7 @@ sub SSCam_StreamDev($$$;$) {
$ret .= "<td>$ptz_ret</td>"; $ret .= "<td>$ptz_ret</td>";
} }
} }
if($audiolink && ReadingsVal($camname, "CamAudioType", "Unknown") !~ /Unknown/) { if($audiolink && ReadingsVal($camname, "CamAudioType", "Unknown") !~ /Unknown/ && !$hau) {
$ret .= '</tr>'; $ret .= '</tr>';
$ret .= '<tr class="odd">'; $ret .= '<tr class="odd">';
$ret .= "<td><audio src=$audiolink preload='none' volume='0.5' controls> $ret .= "<td><audio src=$audiolink preload='none' volume='0.5' controls>
@ -7368,7 +7370,7 @@ sub SSCam_StreamDev($$$;$) {
} else { } else {
$ret .= "<td><img src='data:image/jpeg;base64,$link' $gattr><br>"; $ret .= "<td><img src='data:image/jpeg;base64,$link' $gattr><br>";
} }
if(!$hf) { if(!$hb) {
$ret .= "<a onClick=\"$cmddosnap\" onmouseover=\"Tip('$ttsnap')\" onmouseout=\"UnTip()\">$imgdosnap </a>"; $ret .= "<a onClick=\"$cmddosnap\" onmouseover=\"Tip('$ttsnap')\" onmouseout=\"UnTip()\">$imgdosnap </a>";
} }
$ret .= "</td>"; $ret .= "</td>";
@ -7412,7 +7414,7 @@ sub SSCam_StreamDev($$$;$) {
} }
$ret .= "<br>"; $ret .= "<br>";
Log3($strmdev, 4, "$strmdev - generic Stream params:\n$htag"); Log3($strmdev, 4, "$strmdev - generic Stream params:\n$htag");
if(!$hf) { if(!$hb) {
$ret .= "<a onClick=\"$cmdrefresh\" onmouseover=\"Tip('$ttrefresh')\" onmouseout=\"UnTip()\">$imgrefresh </a>"; $ret .= "<a onClick=\"$cmdrefresh\" onmouseover=\"Tip('$ttrefresh')\" onmouseout=\"UnTip()\">$imgrefresh </a>";
$ret .= $imgblank; $ret .= $imgblank;
if(ReadingsVal($camname, "Record", "Stop") eq "Stop") { if(ReadingsVal($camname, "Record", "Stop") eq "Stop") {
@ -7459,7 +7461,7 @@ sub SSCam_StreamDev($$$;$) {
$streamHash->{HELPER}{STREAM} = "<video $pws id=video_$d></video>"; # Stream für "set <SSCamSTRM-Device> popupStream" speichern $streamHash->{HELPER}{STREAM} = "<video $pws id=video_$d></video>"; # Stream für "set <SSCamSTRM-Device> popupStream" speichern
$streamHash->{HELPER}{STREAMACTIVE} = 1; # Statusbit wenn ein Stream aktiviert ist $streamHash->{HELPER}{STREAMACTIVE} = 1; # Statusbit wenn ein Stream aktiviert ist
if(!$hf) { if(!$hb) {
$ret .= "<a onClick=\"$cmdrefresh\" onmouseover=\"Tip('$ttrefresh')\" onmouseout=\"UnTip()\">$imgrefresh </a>"; $ret .= "<a onClick=\"$cmdrefresh\" onmouseover=\"Tip('$ttrefresh')\" onmouseout=\"UnTip()\">$imgrefresh </a>";
$ret .= $imgblank; $ret .= $imgblank;
if(ReadingsVal($camname, "Record", "Stop") eq "Stop") { if(ReadingsVal($camname, "Record", "Stop") eq "Stop") {
@ -7515,7 +7517,7 @@ sub SSCam_StreamDev($$$;$) {
$ret .= "<td>$ptz_ret</td>"; $ret .= "<td>$ptz_ret</td>";
} }
} }
if($hash->{HELPER}{AUDIOLINK} && ReadingsVal($camname, "CamAudioType", "Unknown") !~ /Unknown/) { if($hash->{HELPER}{AUDIOLINK} && ReadingsVal($camname, "CamAudioType", "Unknown") !~ /Unknown/ && !$hau) {
$ret .= "</tr>"; $ret .= "</tr>";
$ret .= '<tr class="odd">'; $ret .= '<tr class="odd">';
$ret .= "<td><audio src=$hash->{HELPER}{AUDIOLINK} preload='none' volume='0.5' controls> $ret .= "<td><audio src=$hash->{HELPER}{AUDIOLINK} preload='none' volume='0.5' controls>
@ -7542,7 +7544,7 @@ sub SSCam_StreamDev($$$;$) {
$ret .= "<a onClick=\"$cmdstop\" onmouseover=\"Tip('$ttcmdstop')\" onmouseout=\"UnTip()\">$imgstop </a>"; $ret .= "<a onClick=\"$cmdstop\" onmouseover=\"Tip('$ttcmdstop')\" onmouseout=\"UnTip()\">$imgstop </a>";
$ret .= "<a onClick=\"$cmdrefresh\" onmouseover=\"Tip('$ttrefresh')\" onmouseout=\"UnTip()\">$imgrefresh </a>"; $ret .= "<a onClick=\"$cmdrefresh\" onmouseover=\"Tip('$ttrefresh')\" onmouseout=\"UnTip()\">$imgrefresh </a>";
$ret .= "</td>"; $ret .= "</td>";
if($hash->{HELPER}{AUDIOLINK} && ReadingsVal($camname, "CamAudioType", "Unknown") !~ /Unknown/) { if($hash->{HELPER}{AUDIOLINK} && ReadingsVal($camname, "CamAudioType", "Unknown") !~ /Unknown/ && !$hau) {
$ret .= '</tr>'; $ret .= '</tr>';
$ret .= '<tr class="odd">'; $ret .= '<tr class="odd">';
$ret .= "<td><audio src=$hash->{HELPER}{AUDIOLINK} preload='none' volume='0.5' controls> $ret .= "<td><audio src=$hash->{HELPER}{AUDIOLINK} preload='none' volume='0.5' controls>
@ -7568,7 +7570,7 @@ sub SSCam_StreamDev($$$;$) {
$streamHash->{HELPER}{STREAMACTIVE} = 1 if($link); # Statusbit wenn ein Stream aktiviert ist $streamHash->{HELPER}{STREAMACTIVE} = 1 if($link); # Statusbit wenn ein Stream aktiviert ist
$ret .= "<a onClick=\"$cmdstop\" onmouseover=\"Tip('$ttcmdstop')\" onmouseout=\"UnTip()\">$imgstop </a>"; $ret .= "<a onClick=\"$cmdstop\" onmouseover=\"Tip('$ttcmdstop')\" onmouseout=\"UnTip()\">$imgstop </a>";
$ret .= "</td>"; $ret .= "</td>";
if($hash->{HELPER}{AUDIOLINK} && ReadingsVal($camname, "CamAudioType", "Unknown") !~ /Unknown/) { if($hash->{HELPER}{AUDIOLINK} && ReadingsVal($camname, "CamAudioType", "Unknown") !~ /Unknown/ && !$hau) {
$ret .= '</tr>'; $ret .= '</tr>';
$ret .= '<tr class="odd">'; $ret .= '<tr class="odd">';
$ret .= "<td><audio src=$hash->{HELPER}{AUDIOLINK} preload='none' volume='0.5' controls> $ret .= "<td><audio src=$hash->{HELPER}{AUDIOLINK} preload='none' volume='0.5' controls>
@ -7726,7 +7728,7 @@ sub SSCam_composegallery ($;$$$) {
? ReadingsTimestamp($name,"LastSnapTime"," ") ? ReadingsTimestamp($name,"LastSnapTime"," ")
: ReadingsTimestamp($name,"LastUpdateTime"," ")); # letzte Aktualisierung : ReadingsTimestamp($name,"LastUpdateTime"," ")); # letzte Aktualisierung
$lupt =~ s/ / \/ /; $lupt =~ s/ / \/ /;
my ($alias,$dlink,$hf) = ("","",""); my ($alias,$dlink,$hb) = ("","","");
# Kontext des SSCamSTRM-Devices speichern für SSCam_refresh # Kontext des SSCamSTRM-Devices speichern für SSCam_refresh
$hash->{HELPER}{STRMDEV} = $strmdev; # Name des aufrufenden SSCamSTRM-Devices $hash->{HELPER}{STRMDEV} = $strmdev; # Name des aufrufenden SSCamSTRM-Devices
@ -7761,7 +7763,7 @@ sub SSCam_composegallery ($;$$$) {
$pws = AttrVal($strmdev, "popupWindowSize", ""); # Größe eines Popups (umgelegt: Forum:https://forum.fhem.de/index.php/topic,45671.msg927912.html#msg927912) $pws = AttrVal($strmdev, "popupWindowSize", ""); # Größe eines Popups (umgelegt: Forum:https://forum.fhem.de/index.php/topic,45671.msg927912.html#msg927912)
$pws =~ s/"//g if($pws); $pws =~ s/"//g if($pws);
$ha = AttrVal($strmdev, "htmlattr", $ha); # htmlattr vom SSCamSTRM-Device übernehmen falls von SSCamSTRM-Device aufgerufen und gesetzt $ha = AttrVal($strmdev, "htmlattr", $ha); # htmlattr vom SSCamSTRM-Device übernehmen falls von SSCamSTRM-Device aufgerufen und gesetzt
$hf = AttrVal($strmdev, "hideButtons", 0); # Drucktasten im unteren Bereich ausblenden ? $hb = AttrVal($strmdev, "hideButtons", 0); # Drucktasten im unteren Bereich ausblenden ?
if($ftui) { if($ftui) {
$ha = AttrVal($strmdev, "htmlattrFTUI", $ha); # wenn aus FTUI aufgerufen divers setzen $ha = AttrVal($strmdev, "htmlattrFTUI", $ha); # wenn aus FTUI aufgerufen divers setzen
} }
@ -7843,7 +7845,7 @@ sub SSCam_composegallery ($;$$$) {
$htmlCode .= "</tbody>"; $htmlCode .= "</tbody>";
$htmlCode .= "</table>"; $htmlCode .= "</table>";
$htmlCode .= "</div>"; $htmlCode .= "</div>";
if(!$hf) { if(!$hb) {
$htmlCode .= "<a onClick=\"$cmddosnap\" onmouseover=\"Tip('$ttsnap')\" onmouseout=\"UnTip()\">$imgdosnap </a>" if($strmdev); $htmlCode .= "<a onClick=\"$cmddosnap\" onmouseover=\"Tip('$ttsnap')\" onmouseout=\"UnTip()\">$imgdosnap </a>" if($strmdev);
} }
$htmlCode .= "</html>"; $htmlCode .= "</html>";

View File

@ -35,8 +35,9 @@ eval "use FHEM::Meta;1" or my $modMetaAbsent = 1;
# Versions History intern # Versions History intern
our %SSCamSTRM_vNotesIntern = ( our %SSCamSTRM_vNotesIntern = (
"2.10.0" => "21.09.2019 new attribute hideAudio ",
"2.9.0" => "19.09.2019 new attribute noLink ", "2.9.0" => "19.09.2019 new attribute noLink ",
"2.8.0" => "09.09.2019 new attribute hideFooter ", "2.8.0" => "09.09.2019 new attribute hideButtons ",
"2.7.0" => "15.07.2019 FTUI support, new attributes htmlattrFTUI, hideDisplayNameFTUI, ptzButtonSize, ptzButtonSizeFTUI ", "2.7.0" => "15.07.2019 FTUI support, new attributes htmlattrFTUI, hideDisplayNameFTUI, ptzButtonSize, ptzButtonSizeFTUI ",
"2.6.0" => "21.06.2019 GetFn -> get <name> html ", "2.6.0" => "21.06.2019 GetFn -> get <name> html ",
"2.5.0" => "27.03.2019 add Meta.pm support ", "2.5.0" => "27.03.2019 add Meta.pm support ",
@ -85,9 +86,10 @@ sub SSCamSTRM_Initialize($) {
"genericStrmHtmlTag ". "genericStrmHtmlTag ".
"htmlattr ". "htmlattr ".
"htmlattrFTUI ". "htmlattrFTUI ".
"hideAudio:1,0 ".
"hideButtons:1,0 ".
"hideDisplayName:1,0 ". "hideDisplayName:1,0 ".
"hideDisplayNameFTUI:1,0 ". "hideDisplayNameFTUI:1,0 ".
"hideButtons:1,0 ".
"noLink:1,0 ". "noLink:1,0 ".
"popupWindowSize ". "popupWindowSize ".
"popupStreamFW:$fwd ". "popupStreamFW:$fwd ".
@ -531,6 +533,12 @@ attr &lt;name&gt; genericStrmHtmlTag &lt;img $HTMLATTR
<br><br> <br><br>
</li> </li>
<a name="hideAudio"></a>
<li><b>hideAudio</b><br>
Hide the control block for audio playback in the footer.
</li>
<br>
<a name="hideButtons"></a> <a name="hideButtons"></a>
<li><b>hideButtons</b><br> <li><b>hideButtons</b><br>
Hide the buttons in the footer. It has no impact for streaming devices of type "switched". Hide the buttons in the footer. It has no impact for streaming devices of type "switched".
@ -768,6 +776,12 @@ attr &lt;name&gt; genericStrmHtmlTag &lt;img $HTMLATTR
<br><br> <br><br>
</li> </li>
<a name="hideAudio"></a>
<li><b>hideAudio</b><br>
Verbirgt die Steuerungsbereich für die Audiowiedergabe in der Fußzeile.
</li>
<br>
<a name="hideButtons"></a> <a name="hideButtons"></a>
<li><b>hideButtons</b><br> <li><b>hideButtons</b><br>
Verbirgt die Drucktasten in der Fußzeile. Dieses Attribut hat keinen Einfluß bei Streaming-Devices vom Typ "switched". Verbirgt die Drucktasten in der Fußzeile. Dieses Attribut hat keinen Einfluß bei Streaming-Devices vom Typ "switched".