2
0
mirror of https://github.com/fhem/fhem-mirror.git synced 2025-03-03 16:56:54 +00:00

49_SSCam(STRM): hide buttons in streaming device with new attribute hideFooter, minor code changes

git-svn-id: https://svn.fhem.de/fhem/trunk@20152 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
nasseeder1 2019-09-12 20:37:17 +00:00
parent 7df7131dd7
commit c8ada3f304
3 changed files with 86 additions and 56 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.
- feature: 49_SSCam(STRM): hide buttons in streaming device with new attribute
hideFooter, minor code changes
- feature 73_AutoShuttersControl: add roommate value for ASC_Up/Down for - feature 73_AutoShuttersControl: add roommate value for ASC_Up/Down for
Roommate only shutter drive Roommate only shutter drive
- feature: 70_KODI: Added fetching of channel names and command openchannel to - feature: 70_KODI: Added fetching of channel names and command openchannel to

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.17.0" => "12.09.2019 fix warnings, support hide buttons in streaming device, change handle delete SNAPHASHOLD ",
"8.16.3" => "13.08.2019 commandref revised ", "8.16.3" => "13.08.2019 commandref revised ",
"8.16.2" => "17.07.2019 change function SSCam_ptzpanel using css stylesheet ", "8.16.2" => "17.07.2019 change function SSCam_ptzpanel using css stylesheet ",
"8.16.1" => "16.07.2019 fix warnings ", "8.16.1" => "16.07.2019 fix warnings ",
@ -1950,7 +1951,7 @@ sub SSCam_FWdetailFn ($$$$) {
$ret .= $hash->{".setup"}; $ret .= $hash->{".setup"};
} }
$hash->{".ptzhtml"} = SSCam_ptzpanel($d) if($hash->{".ptzhtml"} eq ""); $hash->{".ptzhtml"} = SSCam_ptzpanel($d,$d) if($hash->{".ptzhtml"} eq "");
if($hash->{".ptzhtml"} ne "" && AttrVal($d,"ptzPanel_use",1)) { if($hash->{".ptzhtml"} ne "" && AttrVal($d,"ptzPanel_use",1)) {
$ret .= $hash->{".ptzhtml"}; $ret .= $hash->{".ptzhtml"};
@ -5487,7 +5488,9 @@ sub SSCam_camop_parse ($) {
my %sendsnaps = (); # Schnappschuss Hash zum Versand wird leer erstellt my %sendsnaps = (); # Schnappschuss Hash zum Versand wird leer erstellt
if($hash->{HELPER}{".SNAPHASH"}) { if($hash->{HELPER}{".SNAPHASH"}) {
$hash->{HELPER}{".SNAPHASHOLD"} = delete($hash->{HELPER}{".SNAPHASH"}); foreach my $key (sort(keys%{$hash->{HELPER}{".SNAPHASH"}})) {
$hash->{HELPER}{".SNAPHASHOLD"}{$key} = delete($hash->{HELPER}{".SNAPHASH"}{$key});
}
} }
while ($data->{'data'}{'data'}[$i]) { while ($data->{'data'}{'data'}[$i]) {
@ -5531,13 +5534,12 @@ sub SSCam_camop_parse ($) {
if($hash->{HELPER}{".SNAPHASHOLD"} && $sgn > $ss) { if($hash->{HELPER}{".SNAPHASHOLD"} && $sgn > $ss) {
for my $kn ($ss..($sgn-1)) { for my $kn ($ss..($sgn-1)) {
$hash->{HELPER}{".SNAPHASH"}{$kn}{snapid} = $hash->{HELPER}{".SNAPHASHOLD"}{$sn}{snapid}; $hash->{HELPER}{".SNAPHASH"}{$kn}{snapid} = delete $hash->{HELPER}{".SNAPHASHOLD"}{$sn}{snapid};
$hash->{HELPER}{".SNAPHASH"}{$kn}{createdTm} = $hash->{HELPER}{".SNAPHASHOLD"}{$sn}{createdTm}; $hash->{HELPER}{".SNAPHASH"}{$kn}{createdTm} = delete $hash->{HELPER}{".SNAPHASHOLD"}{$sn}{createdTm};
$hash->{HELPER}{".SNAPHASH"}{$kn}{fileName} = $hash->{HELPER}{".SNAPHASHOLD"}{$sn}{fileName}; $hash->{HELPER}{".SNAPHASH"}{$kn}{fileName} = delete $hash->{HELPER}{".SNAPHASHOLD"}{$sn}{fileName};
$hash->{HELPER}{".SNAPHASH"}{$kn}{imageData} = $hash->{HELPER}{".SNAPHASHOLD"}{$sn}{imageData}; $hash->{HELPER}{".SNAPHASH"}{$kn}{imageData} = delete $hash->{HELPER}{".SNAPHASHOLD"}{$sn}{imageData};
$sn += 1; $sn += 1;
} }
delete $hash->{HELPER}{".SNAPHASHOLD"};
} }
# prüfen ob Schnappschuß versendet werden soll # prüfen ob Schnappschuß versendet werden soll
@ -5552,7 +5554,9 @@ sub SSCam_camop_parse ($) {
$hash->{HELPER}{TOTALCNT} = $data->{data}{total}; # total Anzahl Schnappschüsse $hash->{HELPER}{TOTALCNT} = $data->{data}{total}; # total Anzahl Schnappschüsse
if($hash->{HELPER}{".SNAPHASH"}) { if($hash->{HELPER}{".SNAPHASH"}) {
$hash->{HELPER}{".SNAPHASHOLD"} = delete($hash->{HELPER}{".SNAPHASH"}); foreach my $key (sort(keys%{$hash->{HELPER}{".SNAPHASH"}})) {
$hash->{HELPER}{".SNAPHASHOLD"}{$key} = delete($hash->{HELPER}{".SNAPHASH"}{$key});
}
} }
while ($data->{'data'}{'data'}[$i]) { while ($data->{'data'}{'data'}[$i]) {
@ -5589,13 +5593,12 @@ sub SSCam_camop_parse ($) {
$sn = 0; $sn = 0;
if($hash->{HELPER}{".SNAPHASHOLD"} && $sgn > $ss) { if($hash->{HELPER}{".SNAPHASHOLD"} && $sgn > $ss) {
for my $kn ($ss..($sgn-1)) { for my $kn ($ss..($sgn-1)) {
$hash->{HELPER}{".SNAPHASH"}{$kn}{snapid} = $hash->{HELPER}{".SNAPHASHOLD"}{$sn}{snapid}; $hash->{HELPER}{".SNAPHASH"}{$kn}{snapid} = delete $hash->{HELPER}{".SNAPHASHOLD"}{$sn}{snapid};
$hash->{HELPER}{".SNAPHASH"}{$kn}{createdTm} = $hash->{HELPER}{".SNAPHASHOLD"}{$sn}{createdTm}; $hash->{HELPER}{".SNAPHASH"}{$kn}{createdTm} = delete $hash->{HELPER}{".SNAPHASHOLD"}{$sn}{createdTm};
$hash->{HELPER}{".SNAPHASH"}{$kn}{fileName} = $hash->{HELPER}{".SNAPHASHOLD"}{$sn}{fileName}; $hash->{HELPER}{".SNAPHASH"}{$kn}{fileName} = delete $hash->{HELPER}{".SNAPHASHOLD"}{$sn}{fileName};
$hash->{HELPER}{".SNAPHASH"}{$kn}{imageData} = $hash->{HELPER}{".SNAPHASHOLD"}{$sn}{imageData}; $hash->{HELPER}{".SNAPHASH"}{$kn}{imageData} = delete $hash->{HELPER}{".SNAPHASHOLD"}{$sn}{imageData};
$sn += 1; $sn += 1;
} }
delete $hash->{HELPER}{".SNAPHASHOLD"};
} }
# Direktausgabe Snaphash wenn nicht gepollt wird # Direktausgabe Snaphash wenn nicht gepollt wird
@ -5618,7 +5621,8 @@ sub SSCam_camop_parse ($) {
SSCam_closeTrans($hash); # Transaktion beenden SSCam_closeTrans($hash); # Transaktion beenden
delete($hash->{HELPER}{GETSNAPGALLERY}); # Steuerbit getsnapgallery statt getsnapinfo delete($hash->{HELPER}{GETSNAPGALLERY}); # Steuerbit getsnapgallery statt getsnapinfo
delete $hash->{HELPER}{".SNAPHASHOLD"};
######## fallabhängige Eventgenerierung ######## ######## fallabhängige Eventgenerierung ########
if ($hash->{HELPER}{INFORM} || $hash->{HELPER}{LSNAPBYSTRMDEV}) { if ($hash->{HELPER}{INFORM} || $hash->{HELPER}{LSNAPBYSTRMDEV}) {
# Snap durch SSCamSTRM-Device ausgelöst # Snap durch SSCamSTRM-Device ausgelöst
@ -6963,8 +6967,8 @@ sub SSCam_ptzpanel(@) {
return "" if(SSCam_myVersion($hash) <= 71); return "" if(SSCam_myVersion($hash) <= 71);
$pbs = AttrVal("$ptzcdev","ptzButtonSize", 100); # Größe der Druckbuttons in % $pbs = AttrVal($ptzcdev,"ptzButtonSize", 100); # Größe der Druckbuttons in %
$pbsf = AttrVal("$ptzcdev","ptzButtonSizeFTUI", 100); # Größe der Druckbuttons im FTUI in % $pbsf = AttrVal($ptzcdev,"ptzButtonSizeFTUI", 100); # Größe der Druckbuttons im FTUI in %
$ptz_ret = ""; $ptz_ret = "";
$ptz_ret .= "<style>TD.ptzcontrol {padding: 5px 7px;}</style>"; $ptz_ret .= "<style>TD.ptzcontrol {padding: 5px 7px;}</style>";
@ -7223,19 +7227,21 @@ sub SSCam_StreamDev($$$;$) {
$cmdrefresh = "ftui.setFhemStatus('set $camname refresh STRM:$uuid')"; $cmdrefresh = "ftui.setFhemStatus('set $camname refresh STRM:$uuid')";
} }
my $ha = AttrVal($camname, "htmlattr", 'width="500" height="325"'); # HTML Attribute der Cam my $ha = AttrVal($camname, "htmlattr", 'width="500" height="325"'); # HTML Attribute der Cam
$ha = AttrVal($strmdev, "htmlattr", $ha); # htmlattr mit htmlattr Streaming-Device übersteuern $ha = AttrVal($strmdev, "htmlattr", $ha); # htmlattr mit htmlattr Streaming-Device übersteuern
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
} }
my $pws = AttrVal($strmdev, "popupWindowSize", ""); # Größe eines Popups my $hf = AttrVal($strmdev, "hideButtons", 0); # Drucktasten im unteren Bereich ausblenden ?
$pws =~ s/"//g if($pws);
my $pws = AttrVal($strmdev, "popupWindowSize", ""); # Größe eines Popups
$pws =~ s/"//g if($pws);
my $show = $defs{$streamHash->{PARENT}}->{HELPER}{ACTSTRM} if($streamHash->{MODEL} =~ /switched/); my $show = $defs{$streamHash->{PARENT}}->{HELPER}{ACTSTRM} if($streamHash->{MODEL} =~ /switched/);
$show = $show?"($show)":""; $show = $show?"($show)":"";
my $alias = AttrVal($strmdev, "alias", $strmdev); # Linktext als Aliasname oder Devicename setzen my $alias = AttrVal($strmdev, "alias", $strmdev); # Linktext als Aliasname oder Devicename setzen
my $dlink = "<a href=\"/fhem?detail=$strmdev\">$alias</a>"; my $dlink = "<a href=\"/fhem?detail=$strmdev\">$alias</a>";
my $StmKey = ReadingsVal($camname,"StmKey",undef); my $StmKey = ReadingsVal($camname,"StmKey",undef);
@ -7316,15 +7322,16 @@ 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(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>";
} else { } else {
# Aufnahmebutton Stop # Aufnahmebutton Stop
$ret .= "<a onClick=\"$cmdrecstop\" onmouseover=\"Tip('$ttrecstop')\" onmouseout=\"UnTip()\">$imgrecstop </a>"; $ret .= "<a onClick=\"$cmdrecstop\" onmouseover=\"Tip('$ttrecstop')\" onmouseout=\"UnTip()\">$imgrecstop </a>";
} }
$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>";
if(AttrVal($camname,"ptzPanel_use",1)) { if(AttrVal($camname,"ptzPanel_use",1)) {
my $ptz_ret = SSCam_ptzpanel($camname,$strmdev,'',$ftui); my $ptz_ret = SSCam_ptzpanel($camname,$strmdev,'',$ftui);
@ -7351,7 +7358,9 @@ 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>";
} }
$ret .= "<a onClick=\"$cmddosnap\" onmouseover=\"Tip('$ttsnap')\" onmouseout=\"UnTip()\">$imgdosnap </a>"; if(!$hf) {
$ret .= "<a onClick=\"$cmddosnap\" onmouseover=\"Tip('$ttsnap')\" onmouseout=\"UnTip()\">$imgdosnap </a>";
}
$ret .= "</td>"; $ret .= "</td>";
$streamHash->{HELPER}{STREAM} = "<img src=data:image/jpeg;base64,$link $pws>"; # Stream für "get <SSCamSTRM-Device> popupStream" speichern $streamHash->{HELPER}{STREAM} = "<img src=data:image/jpeg;base64,$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
@ -7393,16 +7402,18 @@ 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");
$ret .= "<a onClick=\"$cmdrefresh\" onmouseover=\"Tip('$ttrefresh')\" onmouseout=\"UnTip()\">$imgrefresh </a>"; if(!$hf) {
$ret .= $imgblank; $ret .= "<a onClick=\"$cmdrefresh\" onmouseover=\"Tip('$ttrefresh')\" onmouseout=\"UnTip()\">$imgrefresh </a>";
if(ReadingsVal($camname, "Record", "Stop") eq "Stop") { $ret .= $imgblank;
# Aufnahmebutton endlos Start if(ReadingsVal($camname, "Record", "Stop") eq "Stop") {
$ret .= "<a onClick=\"$cmdrecendless\" onmouseover=\"Tip('$ttrecstart')\" onmouseout=\"UnTip()\">$imgrecendless </a>"; # Aufnahmebutton endlos Start
} else { $ret .= "<a onClick=\"$cmdrecendless\" onmouseover=\"Tip('$ttrecstart')\" onmouseout=\"UnTip()\">$imgrecendless </a>";
# Aufnahmebutton Stop } else {
$ret .= "<a onClick=\"$cmdrecstop\" onmouseover=\"Tip('$ttrecstop')\" onmouseout=\"UnTip()\">$imgrecstop </a>"; # Aufnahmebutton Stop
} $ret .= "<a onClick=\"$cmdrecstop\" onmouseover=\"Tip('$ttrecstop')\" onmouseout=\"UnTip()\">$imgrecstop </a>";
$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>";
if(AttrVal($camname,"ptzPanel_use",1)) { if(AttrVal($camname,"ptzPanel_use",1)) {
my $ptz_ret = SSCam_ptzpanel($camname,$strmdev,'',$ftui); my $ptz_ret = SSCam_ptzpanel($camname,$strmdev,'',$ftui);
@ -7438,17 +7449,18 @@ 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) {
$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") {
# 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>";
} else { } else {
# Aufnahmebutton Stop # Aufnahmebutton Stop
$ret .= "<a onClick=\"$cmdrecstop\" onmouseover=\"Tip('$ttrecstop')\" onmouseout=\"UnTip()\">$imgrecstop </a>"; $ret .= "<a onClick=\"$cmdrecstop\" onmouseover=\"Tip('$ttrecstop')\" onmouseout=\"UnTip()\">$imgrecstop </a>";
} }
$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>";
if(AttrVal($camname,"ptzPanel_use",1)) { if(AttrVal($camname,"ptzPanel_use",1)) {
my $ptz_ret = SSCam_ptzpanel($camname,$strmdev,'',$ftui); my $ptz_ret = SSCam_ptzpanel($camname,$strmdev,'',$ftui);
@ -7704,7 +7716,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) = ("",""); my ($alias,$dlink,$hf) = ("","","");
# 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
@ -7735,10 +7747,10 @@ 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 ?
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
} }
} }
# wenn SSCamSTRM-device genutzt wird und attr "snapGalleryBoost" nicht gesetzt ist -> Warnung in Gallerie ausgeben # wenn SSCamSTRM-device genutzt wird und attr "snapGalleryBoost" nicht gesetzt ist -> Warnung in Gallerie ausgeben
@ -7814,7 +7826,9 @@ sub SSCam_composegallery ($;$$$) {
$htmlCode .= "</tbody>"; $htmlCode .= "</tbody>";
$htmlCode .= "</table>"; $htmlCode .= "</table>";
$htmlCode .= "</div>"; $htmlCode .= "</div>";
$htmlCode .= "<a onClick=\"$cmddosnap\" onmouseover=\"Tip('$ttsnap')\" onmouseout=\"UnTip()\">$imgdosnap </a>" if($strmdev); if(!$hf) {
$htmlCode .= "<a onClick=\"$cmddosnap\" onmouseover=\"Tip('$ttsnap')\" onmouseout=\"UnTip()\">$imgdosnap </a>" if($strmdev);
}
$htmlCode .= "</html>"; $htmlCode .= "</html>";
return $htmlCode; return $htmlCode;

View File

@ -35,6 +35,7 @@ eval "use FHEM::Meta;1" or my $modMetaAbsent = 1;
# Versions History intern # Versions History intern
our %SSCamSTRM_vNotesIntern = ( our %SSCamSTRM_vNotesIntern = (
"2.8.0" => "09.09.2019 new attribute hideFooter ",
"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,6 +86,7 @@ sub SSCamSTRM_Initialize($) {
"htmlattrFTUI ". "htmlattrFTUI ".
"hideDisplayName:1,0 ". "hideDisplayName:1,0 ".
"hideDisplayNameFTUI:1,0 ". "hideDisplayNameFTUI:1,0 ".
"hideButtons:1,0 ".
"popupWindowSize ". "popupWindowSize ".
"popupStreamFW:$fwd ". "popupStreamFW:$fwd ".
"popupStreamTo:OK,1,2,3,4,5,6,7,8,9,10,15,20,25,30,40,50,60 ". "popupStreamTo:OK,1,2,3,4,5,6,7,8,9,10,15,20,25,30,40,50,60 ".
@ -527,6 +529,12 @@ attr &lt;name&gt; genericStrmHtmlTag &lt;img $HTMLATTR
<br><br> <br><br>
</li> </li>
<a name="hideButtons"></a>
<li><b>hideButtons</b><br>
Hide the buttons in the footer. It has no impact for streaming devices of type "switched".
</li>
<br>
<a name="hideDisplayName"></a> <a name="hideDisplayName"></a>
<li><b>hideDisplayName</b><br> <li><b>hideDisplayName</b><br>
Hide the device/alias name (link to detail view). Hide the device/alias name (link to detail view).
@ -750,7 +758,13 @@ attr &lt;name&gt; genericStrmHtmlTag &lt;img $HTMLATTR
Devicenamen bzw. das Attribut "popupWindowSize" im Streaming-Device, welches die Größe eines Popup-Windows festlegt. Devicenamen bzw. das Attribut "popupWindowSize" im Streaming-Device, welches die Größe eines Popup-Windows festlegt.
</ul> </ul>
<br><br> <br><br>
</li> </li>
<a name="hideButtons"></a>
<li><b>hideButtons</b><br>
Verbirgt die Drucktasten in der Fußzeile. Dieses Attribut hat keinen Einfluß bei Streaming-Devices vom Typ "switched".
</li>
<br>
<a name="hideDisplayName"></a> <a name="hideDisplayName"></a>
<li><b>hideDisplayName</b><br> <li><b>hideDisplayName</b><br>