Ich habe eine seltsame Situation. Bei einigen Usern der gibt es im Denon Modul Fehlermeldungen der Art:
Hier wird versucht, mit SetValue eine Variable zu schreiben, die nicht existiert.
Ursache ist, dass in der vorhergehenden Abfrage $this->GetIDForIdent($Ident) nicht mit false zurückkommt.
Seltsamerweise tritt es nicht auf allen Systemen auf. Aber bei @DerGolo konnten wir es schließlich nachvollziehen indem ich zum Test die kritische Stelle etwas erweitert habe
$VarID = @$this->GetIDForIdent($Ident);
if ($VarID === false) {
$this->Logger_Dbg(__FUNCTION__, sprintf('%s: Info: Keine Variable mit dem Ident %s gefunden (GetIDForIdent === false).', $this->InstanceID, $Ident));
continue;
}
if ($VarID === 0) {
$this->Logger_Dbg(__FUNCTION__, sprintf('%s: Info: Keine Variable mit dem Ident %s gefunden (GetIDForIdent === 0).', $this->InstanceID, $Ident));
continue;
}
if ($VarID === NULL) {
$this->Logger_Dbg(__FUNCTION__, sprintf('%s: Info: Keine Variable mit dem Ident %s gefunden (GetIDForIdent === NULL).', $this->InstanceID, $Ident));
continue;
}
$VarID = @IPS_GetObjectIDByIdent($Ident, $this->InstanceID);
if ($VarID === false) {
$this->Logger_Dbg(__FUNCTION__, sprintf('%s: Info: Keine Variable mit dem Ident %s gefunden (IPS_GetObjectIDByIdent === false).', $this->InstanceID, $Ident));
continue;
}
if ($VarID === 0) {
$this->Logger_Dbg(__FUNCTION__, sprintf('%s: Info: Keine Variable mit dem Ident %s gefunden (IPS_GetObjectIDByIdent === 0).', $this->InstanceID, $Ident));
continue;
}
Auf Golos System kommt als Debugausgabe
TXT: 25.04.2026, 13:42:11 | UpdateVariable | Data Telnet: {"PW":{"VarType":0,"Value":true,"Subcommand":"ON"}}
TXT: 25.04.2026, 13:42:11 | UpdateVariable | 46314: Info: Keine Variable mit dem Ident PW gefunden (IPS_GetObjectIDByIdent === false).
Wie kann das sein? Das Beispiel zeigt, dass hier GetIDForIdent weder false, noch 0 oder NULL liefert.
Erst IPS_GetObjectIDByIdent liefert schließlich ‚false‘.
Auf dem betroffenen System läuft
Version 9.0 (Wed, 15 Apr 2026 14:57:46 +0200), Plattform: Ubuntu, Revision: ac13fd5faf313d929fb28b8bd9c8f519c9578ad0
Auf meinem eigenen System (gleiche Version unter Windows) liefert GetIDForIdent korrekterweise false.