mirror of
https://github.com/fhem/fhem-mirror.git
synced 2025-03-10 03:06:37 +00:00
49_SSCam: contrib 9.2.2
git-svn-id: https://svn.fhem.de/fhem/trunk@21675 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
parent
f07d775af9
commit
bcb62a7c4a
@ -1,9 +1,9 @@
|
||||
########################################################################################################################
|
||||
# $Id: 49_SSCam.pm 20559 2019-11-22 14:19:34Z DS_Starter $
|
||||
# $Id: 49_SSCam.pm 21273 2020-02-24 22:04:43Z DS_Starter $
|
||||
#########################################################################################################################
|
||||
# 49_SSCam.pm
|
||||
#
|
||||
# (c) 2015-2019 by Heiko Maaz
|
||||
# (c) 2015-2020 by Heiko Maaz
|
||||
# e-mail: Heiko dot Maaz at t-online dot de
|
||||
#
|
||||
# This Module can be used to operate Cameras defined in Synology Surveillance Station 7.0 or higher.
|
||||
@ -54,6 +54,8 @@ eval "use Cache::Cache;1;" or my $SScamMMCacheCache = "Cache::Cache";
|
||||
|
||||
# Versions History intern
|
||||
our %SSCam_vNotesIntern = (
|
||||
"9.2.2" => "14.04.2020 increase read timeout of Redis server cache, fix autocreate bug with https ",
|
||||
"9.2.1" => "24.02.2020 set compatibility to SVS version 8.2.7 ",
|
||||
"9.2.0" => "10.12.2019 attribute \"recChatTxt\" for sending recordings by SSChatBot ",
|
||||
"9.1.0" => "08.12.2019 attribute \"snapChatTxt\" for sending snapshots by SSChatBot ",
|
||||
"9.0.6" => "26.11.2019 minor code change ",
|
||||
@ -317,7 +319,7 @@ our %SSCam_vNotesExtern = (
|
||||
);
|
||||
|
||||
# getestete SVS-Version
|
||||
my $compstat = "8.2.6";
|
||||
my $compstat = "8.2.7";
|
||||
|
||||
# Aufbau Errorcode-Hashes (siehe Surveillance Station Web API)
|
||||
my %SSCam_errauthlist = (
|
||||
@ -5887,7 +5889,6 @@ sub SSCam_camop_parse ($) {
|
||||
}
|
||||
} else {
|
||||
for my $kn ($ss..($sgn-1)) {
|
||||
# next if $kn >= $hash->{HELPER}{SNAPLIMIT};
|
||||
$g = SSCam_cache($name, "c_read", "{SNAPOLDHASH}{$sn}{snapid}");
|
||||
SSCam_cache($name, "c_write", "{SNAPHASH}{$kn}{snapid}", $g) if(defined $g);
|
||||
SSCam_cache($name, "c_remove", "{SNAPOLDHASH}{$sn}{snapid}");
|
||||
@ -6962,7 +6963,7 @@ sub SSCam_Autocreate ($$) {
|
||||
|
||||
if(!$camhash) {
|
||||
$camname = "SSCam.".makeDeviceName($sn); # erlaubten Kameranamen für FHEM erzeugen
|
||||
my $arg = $hash->{SERVERADDR}." ".$hash->{SERVERPORT};
|
||||
my $arg = $hash->{SERVERADDR}." ".$hash->{SERVERPORT}." ".$hash->{PROTOCOL};
|
||||
$cmd = "$camname $type $sn $arg";
|
||||
Log3($name, 2, "$name - Autocreate camera: define $cmd");
|
||||
$err = CommandDefine(undef, $cmd);
|
||||
@ -10148,8 +10149,8 @@ sub SSCam_cache ($$;$$) {
|
||||
return 0;
|
||||
}
|
||||
my $cto = 0.5;
|
||||
my $rto = 0.5;
|
||||
my $wto = 0.5;
|
||||
my $rto = 2.0;
|
||||
my $wto = 1.0;
|
||||
my %Redispars = ( cnx_timeout => $cto,
|
||||
read_timeout => $rto,
|
||||
write_timeout => $wto
|
||||
@ -10175,6 +10176,7 @@ sub SSCam_cache ($$;$$) {
|
||||
$cache = CHI->new( driver => 'Redis',
|
||||
namespace => $fuuid,
|
||||
server => "$server:$port",
|
||||
reconnect => 1,
|
||||
on_set_error => 'warn',
|
||||
on_get_error => 'warn',
|
||||
redis_options => \%Redispars,
|
||||
@ -10278,8 +10280,12 @@ sub SSCam_cache ($$;$$) {
|
||||
my $g = $cache->get($key);
|
||||
$brt = tv_interval($bst);
|
||||
Log3($name, 1, "$name - Cache time read key \"$key\": ".$brt) if(AttrVal($name,"debugCachetime",0));
|
||||
if(!$g) {
|
||||
return "";
|
||||
} else {
|
||||
return $g;
|
||||
}
|
||||
}
|
||||
|
||||
# einen Key entfernen
|
||||
if($op eq "c_remove") {
|
||||
@ -10334,12 +10340,12 @@ sub SSCam_setVersionInfo($) {
|
||||
if($modules{$type}{META}{x_prereqs_src} && !$hash->{HELPER}{MODMETAABSENT}) {
|
||||
# META-Daten sind vorhanden
|
||||
$modules{$type}{META}{version} = "v".$v; # Version aus META.json überschreiben, Anzeige mit {Dumper $modules{SMAPortal}{META}}
|
||||
if($modules{$type}{META}{x_version}) { # {x_version} ( nur gesetzt wenn $Id: 49_SSCam.pm 20559 2019-11-22 14:19:34Z DS_Starter $ im Kopf komplett! vorhanden )
|
||||
if($modules{$type}{META}{x_version}) { # {x_version} ( nur gesetzt wenn $Id: 49_SSCam.pm 21273 2020-02-24 22:04:43Z DS_Starter $ im Kopf komplett! vorhanden )
|
||||
$modules{$type}{META}{x_version} =~ s/1.1.1/$v/g;
|
||||
} else {
|
||||
$modules{$type}{META}{x_version} = $v;
|
||||
}
|
||||
return $@ unless (FHEM::Meta::SetInternals($hash)); # FVERSION wird gesetzt ( nur gesetzt wenn $Id: 49_SSCam.pm 20559 2019-11-22 14:19:34Z DS_Starter $ im Kopf komplett! vorhanden )
|
||||
return $@ unless (FHEM::Meta::SetInternals($hash)); # FVERSION wird gesetzt ( nur gesetzt wenn $Id: 49_SSCam.pm 21273 2020-02-24 22:04:43Z DS_Starter $ im Kopf komplett! vorhanden )
|
||||
if(__PACKAGE__ eq "FHEM::$type" || __PACKAGE__ eq $type) {
|
||||
# es wird mit Packages gearbeitet -> Perl übliche Modulversion setzen
|
||||
# mit {<Modul>->VERSION()} im FHEMWEB kann Modulversion abgefragt werden
|
||||
|
Loading…
x
Reference in New Issue
Block a user