mirror of
https://github.com/fhem/fhem-mirror.git
synced 2025-04-17 11:26:03 +00:00
FHEMWEB: longpoll for all & unsorted, dont call FW_devState for atEnd devices
git-svn-id: https://svn.fhem.de/fhem/trunk@4605 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
parent
d53ab4dd8d
commit
d8fcd70284
fhem
@ -481,7 +481,11 @@ FW_answerCall($)
|
||||
$me->{inform}{type} = ($FW_room ? "status" : "raw");
|
||||
$me->{inform}{filter} = ($FW_room ? $FW_room : ".*");
|
||||
}
|
||||
my %h = map { $_ => 1 } devspec2array($me->{inform}{filter});
|
||||
my $filter = $me->{inform}{filter};
|
||||
$filter = "NAME=.*" if($filter eq "room=all");
|
||||
$filter = "room!=.*" if($filter eq "room=Unsorted");
|
||||
|
||||
my %h = map { $_ => 1 } devspec2array($filter);
|
||||
$me->{inform}{devices} = \%h;
|
||||
|
||||
# NTFY_ORDER is larger than the normal order (50-)
|
||||
@ -704,7 +708,6 @@ FW_digestCgi($)
|
||||
$cmd.=" $arg{$c}" if(defined($arg{$c}) &&
|
||||
($arg{$c} ne "state" || $cmd !~ m/^set/));
|
||||
$cmd.=" $val{$c}" if(defined($val{$c}));
|
||||
#Log3 $FW_wname, 1, "GOT:$arg -> CMD:$cmd";
|
||||
return ($cmd, $c);
|
||||
}
|
||||
|
||||
@ -860,7 +863,6 @@ FW_doDetail($)
|
||||
{
|
||||
my ($d) = @_;
|
||||
|
||||
|
||||
my $h = $defs{$d};
|
||||
my $t = $h->{TYPE};
|
||||
$t = "MISSING" if(!defined($t));
|
||||
@ -1989,6 +1991,8 @@ FW_roomStatesForInform($)
|
||||
my @data;
|
||||
foreach my $dn (keys %{$me->{inform}{devices}}) {
|
||||
next if(!defined($defs{$dn}));
|
||||
my $t = $defs{$dn}{TYPE};
|
||||
next if(!$t || $modules{$t}{FW_atPageEnd});
|
||||
my ($allSet, $cmdlist, $txt) = FW_devState($dn, "", \%extPage);
|
||||
if($defs{$dn} && $defs{$dn}{STATE} && $defs{$dn}{TYPE} ne "weblink") {
|
||||
push @data, "$dn<<$defs{$dn}{STATE}<<$txt";
|
||||
|
@ -87,7 +87,10 @@ FW_longpoll()
|
||||
var filter="", embArr = document.getElementsByTagName("embed");
|
||||
for(var i = 0; i < embArr.length; i++) {
|
||||
var svg = embArr[i].getSVGDocument();
|
||||
if(svg != null && svg.firstChild.nextSibling.getAttribute("flog"))
|
||||
if(svg &&
|
||||
svg.firstChild &&
|
||||
svg.firstChild.nextSibling &&
|
||||
svg.firstChild.nextSibling.getAttribute("flog"))
|
||||
filter=".*";
|
||||
}
|
||||
if(filter == "") {
|
||||
|
@ -5,10 +5,9 @@ FW_svgUpdateDevs(devs)
|
||||
var embArr = document.getElementsByTagName("embed");
|
||||
for(var i = 0; i < embArr.length; i++) {
|
||||
var svg = embArr[i].getSVGDocument();
|
||||
if(svg == null) // too many events sometimes.
|
||||
if(!svg || !svg.firstChild || !svg.firstChild.nextSibling)
|
||||
continue;
|
||||
svg = svg.firstChild.nextSibling;
|
||||
var flog = svg.getAttribute("flog");
|
||||
var flog = svg.firstChild.nextSibling.getAttribute("flog");
|
||||
for(var j=0; j < devs.length; j++) {
|
||||
if(flog !== null && flog.match(" "+devs[j]+" ")) {
|
||||
var e = embArr[i];
|
||||
|
Loading…
x
Reference in New Issue
Block a user