49_SSCam: contrib 9.5.0
git-svn-id: https://svn.fhem.de/fhem/trunk@22423 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
@@ -7477,12 +7477,12 @@ sub roomRefresh {
|
|||||||
my @spgs = devspec2array("TYPE=SSCamSTRM");
|
my @spgs = devspec2array("TYPE=SSCamSTRM");
|
||||||
my $room = "";
|
my $room = "";
|
||||||
|
|
||||||
for(@spgs) {
|
for my $sd (@spgs) {
|
||||||
if($defs{$_}{PARENT} eq $name) {
|
if($defs{$sd}{LINKPARENT} eq $name) {
|
||||||
next if(IsDisabled($defs{$_}{NAME}) || !$hash->{HELPER}{INFORM} || $hash->{HELPER}{INFORM} ne $defs{$_}{FUUID});
|
next if(IsDisabled($defs{$sd}{NAME}) || !$hash->{HELPER}{INFORM} || $hash->{HELPER}{INFORM} ne $defs{$sd}{FUUID});
|
||||||
$fpr = AttrVal($defs{$_}{NAME},"forcePageRefresh",0);
|
$fpr = AttrVal($defs{$sd}{NAME},"forcePageRefresh",0);
|
||||||
$room = AttrVal($defs{$_}{NAME},"room","");
|
$room = AttrVal($defs{$sd}{NAME},"room","");
|
||||||
Log3($name, 4, "$name - roomRefresh - pagerefresh: $defs{$_}{NAME}") if($fpr);
|
Log3($name, 4, "$name - roomRefresh - pagerefresh: $defs{$sd}{NAME}") if($fpr);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -7491,8 +7491,7 @@ sub roomRefresh {
|
|||||||
if(!$fpr) {
|
if(!$fpr) {
|
||||||
# nur Räume mit dem SSCamSTRM-Device reloaden
|
# nur Räume mit dem SSCamSTRM-Device reloaden
|
||||||
my @rooms = split(",",$room);
|
my @rooms = split(",",$room);
|
||||||
for (@rooms) {
|
for my $r (@rooms) {
|
||||||
my $r = $_;
|
|
||||||
{ map { FW_directNotify("FILTER=room=$r", "#FHEMWEB:$_", "location.reload('true')", "") } devspec2array("TYPE=FHEMWEB") }
|
{ map { FW_directNotify("FILTER=room=$r", "#FHEMWEB:$_", "location.reload('true')", "") } devspec2array("TYPE=FHEMWEB") }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -7511,19 +7510,19 @@ sub roomRefresh {
|
|||||||
readingsSingleUpdate($hash,"state", $st, 0);
|
readingsSingleUpdate($hash,"state", $st, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
# parentState des SSCamSTRM-Device updaten
|
# parentState des SSCamSTRM-Device updaten ($hash->{HELPER}{INFORM} des LINKPARENT Devices muss FUUID des Streaming Devices haben)
|
||||||
if($lpoll_strm) {
|
if($lpoll_strm) {
|
||||||
$st = ReadingsVal($name, "state", "initialized");
|
$st = ReadingsVal($name, "state", "initialized");
|
||||||
for(@spgs) {
|
for my $sp (@spgs) {
|
||||||
if($defs{$_}{PARENT} eq $name) {
|
if($defs{$sp}{LINKPARENT} eq $name) {
|
||||||
next if(IsDisabled($defs{$_}{NAME}) || !$hash->{HELPER}{INFORM} || $hash->{HELPER}{INFORM} ne $defs{$_}{FUUID});
|
next if(IsDisabled($defs{$sp}{NAME}) || !$hash->{HELPER}{INFORM} || $hash->{HELPER}{INFORM} ne $defs{$sp}{FUUID});
|
||||||
|
|
||||||
readingsBeginUpdate($defs{$_});
|
readingsBeginUpdate($defs{$sp});
|
||||||
readingsBulkUpdate ($defs{$_},"parentState", $st);
|
readingsBulkUpdate ($defs{$sp},"parentState", $st);
|
||||||
readingsBulkUpdate ($defs{$_},"state", "updated");
|
readingsBulkUpdate ($defs{$sp},"state", "updated");
|
||||||
readingsEndUpdate ($defs{$_}, 1);
|
readingsEndUpdate ($defs{$sp}, 1);
|
||||||
|
|
||||||
Log3($name, 4, "$name - roomRefresh - caller: $_, FUUID: $hash->{HELPER}{INFORM}");
|
Log3($name, 4, "$name - roomRefresh - caller: $sp, FUUID: $hash->{HELPER}{INFORM}");
|
||||||
delete $hash->{HELPER}{INFORM};
|
delete $hash->{HELPER}{INFORM};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -314,7 +314,6 @@ sub Set {
|
|||||||
|
|
||||||
return qq{The command "$opt" needs a valid SSCamSTRM device as argument} if(!$valid);
|
return qq{The command "$opt" needs a valid SSCamSTRM device as argument} if(!$valid);
|
||||||
|
|
||||||
|
|
||||||
# Übernahme der Readings
|
# Übernahme der Readings
|
||||||
my @r;
|
my @r;
|
||||||
delReadings($hash);
|
delReadings($hash);
|
||||||
@@ -326,14 +325,16 @@ sub Set {
|
|||||||
|
|
||||||
# Übernahme Link-Parameter
|
# Übernahme Link-Parameter
|
||||||
my $link = "{$defs{$strmd}{LINKFN}('$defs{$strmd}{LINKPARENT}','$defs{$strmd}{LINKNAME}','$defs{$strmd}{LINKMODEL}')}";
|
my $link = "{$defs{$strmd}{LINKFN}('$defs{$strmd}{LINKPARENT}','$defs{$strmd}{LINKNAME}','$defs{$strmd}{LINKMODEL}')}";
|
||||||
# readingsSingleUpdate($hash,"clientLink", $link, 0);
|
explodeLinkData ($hash, $link, 0);
|
||||||
push @r, "clientLink:$link";
|
push @r, "clientLink:$link";
|
||||||
|
|
||||||
if(@r) {
|
if(@r) {
|
||||||
setReadings($hash, \@r, 0);
|
setReadings($hash, \@r, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
webRefresh($hash);
|
my $camname = $hash->{LINKPARENT};
|
||||||
|
$defs{$camname}{HELPER}{INFORM} = $hash->{FUUID};
|
||||||
|
FHEM::SSCam::roomRefresh ("$camname,1,0,0");
|
||||||
|
|
||||||
} elsif ($opt eq "reset") {
|
} elsif ($opt eq "reset") {
|
||||||
delReadings($hash);
|
delReadings($hash);
|
||||||
@@ -345,7 +346,9 @@ sub Set {
|
|||||||
|
|
||||||
setReadings($hash, \@r, 0);
|
setReadings($hash, \@r, 0);
|
||||||
|
|
||||||
webRefresh($hash);
|
my $camname = $hash->{LINKPARENT};
|
||||||
|
$defs{$camname}{HELPER}{INFORM} = $hash->{FUUID};
|
||||||
|
FHEM::SSCam::roomRefresh ("$camname,1,0,0");
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
return "$setlist";
|
return "$setlist";
|
||||||
|
|||||||
Reference in New Issue
Block a user