Suner
19. April 2017 um 11:30
1
Ich fühle mich doof und meine Frage ist mir peinlich…
Ich möchte einfach den Wert einer HM Variable auslesen (Boolean)(Batteriestatus)
GetValue(43400); --> geht nicht
HM_RequestStatus(53106, „LOWBAT“); --> liefert zurück „1“.
Ich bin mir nicht sicher, ob das so richtig ist… wieso kriege ich kein „TRUE“ oder „FALSE“ zurück??
bin irgendwie unzufrieden…
Gruß
Suner:banghead:
Fonzo
19. April 2017 um 11:52
2
Warum soll das nicht gehen?
$batterylevel = GetValue(43400);
var_dump($batterylevel);
Suner
19. April 2017 um 11:54
3
hmm hatte echo genommen, das ging nicht…
danke
Fonzo
19. April 2017 um 11:57
4
echo geht nicht entweder mit var_dump schauen oder print_r nutzen.
Suner
19. April 2017 um 12:18
5
könnte ich auch direkt folgendes sagen? (funktioniert nämlich leider nicht, also ist die Antwort vermutlich nein)
print_r (GetValue(43400))
EDIT: geht doch, aber der Wert ist immer „1“, egal ob der Wert FALSE oder TRUE ist
dfhome
19. April 2017 um 12:25
6
print_r oder echo liefern nur bei TRUE eine „1“, bei FALSE geben sie nichts zurück. Vorher noch nach (int) casten, dann geht es auch mit echo oder print_r.
Suner
19. April 2017 um 12:31
7
hmm nee also das ist definitiv bei mir nicht so…
print_r gibt immer eine 1 zurück.
reproduzierbar…
Suner
19. April 2017 um 12:34
8
Wir machen das mal anders…
Ich habe vor, eine Tabelle zu erstellen, in der mir die BAtteriestati angezeigt werden…
Da möchte ich in einer Zelle den aktuellen Status angezeigt bekommen… Falls möglich am besten ohne vorher eine Variable zu definieren.
Aktuell habe
<?
$muh = GetValue(22828);
$html = '
<html>
<head>
<meta charset="utf-8">
<style> table, td, th { border: 1px solid white; }
</style>
</head>
<body> <h1>Batteriestatus</h1>
<table>
<tr>
<th>Aktor</th>
<th>Hersteller</th>
<th>ID</th>
<th>Batterie</th>
<th>letztes Var-Update</th>
</tr>
<tr>
<td>Bewegungsmelder Flur </td>
<td>111</td>
<td>Homematic123</td>
<td>'.print_r ($muh).'</td>
<td>'.date("d.m.Y H.m",IPS_GetVariable(43400)['VariableUpdated']).' Uhr'.'</td>
</tr>
<tr>
<td>111</td>
<td>111</td>
<td>111</td>
<td>1111</td>
<td>111111111</td>
</tr>
</table>
</body>
</html>
';
SetValue(28644,$html);
?>
Also hier soll der Wert rein…
<td>'.print_r ($muh).'</td>
tommi
19. April 2017 um 12:43
10
'<td>'. ($muh?'TRUE':'FALSE').'</td>'
oder ausgeschrieben
$txt='<td>';
if ($muh) {
$txt=$txt.'TRUE';
}else{
$txt=$txt.'FALSE';
}
$txt=$txt.'</td>';
print $txt;
Fonzo
19. April 2017 um 12:46
11
Das kannst Du machen man muss das Rad aber nicht unbedingt neu erfinden wenn es schon eine Lösung gibt BatterieMonitor . Ansonsten kannst Du das Layout der Tabelle natürlich an deine Ansprüche anpassen.
Suner
19. April 2017 um 13:45
13
Hatte grad irgendwie Lust selber was zu basteln…