MarekG
15. September 2023 um 17:13
1
Schönen guten Abend,
ich habe eine Reolink rlc-520a Kamera, die eine Personen und Fahrzeugerkennung hat.
In der App kann man damit sehen ob eine Person oder ein Fahrzeug erkannt wurde.
Leider kann ich mit dem Onvif Modul nur „Bewegung erkannt“ sehen, sprich, keine Unterscheidung zwischen Auto und Person.
Gibt es doch irgendwie eine Möglichkeit, das herauszufinden?
In der synology surveillance station kann man das auswählen und dort wird auch unterschieden, es muss also irgendwie aus der Kamera herauszubekommen sein.
mfg
Mit ein bisschen suchen im Forum findest du das…
Wenn du das markierte Profil wählst ist es ein h264 Stream. Der reicht absolut von der Auflösung her und funktioniert einwandfrei (vorerst nur in der alten Visu).
[image]
Und richtig, mit JSON Decoder kannst du die erwähnten Events unter diesem Pfad abholen:
http://IP.der.KAMERA/cgi-bin/api.cgi?cmd=GetAiState&rs=&user=admin&password=xxxxxx
So funktioniert die Kamera mit der intelligenten Objekt-Erkennung einwandfrei…
MarekG
17. September 2023 um 08:48
3
Dankeschön, hatte ich gestern gesehen, bin nur noch nicht dazu gekommen, das zu testen.
Ich werden mal gucken, wie weit ich damit komme.
Schönen Sonntag noch.
MarekG
17. September 2023 um 09:50
4
Leider verstehe ich das ganze nicht so wirklich.
Wenn ich mit diesem Scrip die Daten auslesen will:
$content = Sys_GetURLContent(„http://192.168.2.11/cgi-bin/api.cgi?cmd=GetAiState&rs=&user=admin&password= ********“);
//print $content;
$json=json_decode($content);
print_r ($json);
echo „Person=“.$json->people->alarm_state. "
";
Bekomme ich zwar eine Antwort, aber der echo Befehl schlägt irgendwie fehl.
Array
(
[0] => stdClass Object
(
[cmd] => GetAiState
[code] => 0
[value] => stdClass Object
(
[channel] => 0
[dog_cat] => stdClass Object
(
[alarm_state] => 0
[support] => 0
)
[face] => stdClass Object
(
[alarm_state] => 0
[support] => 0
)
[people] => stdClass Object
(
[alarm_state] => 0
[support] => 1
)
[vehicle] => stdClass Object
(
[alarm_state] => 0
[support] => 1
)
)
)
)
Warning: Attempt to read property „people“ on array in /var/lib/symcon/scripts/25268.ips.php on line 10
Warning: Attempt to read property „alarm_state“ on null in /var/lib/symcon/scripts/25268.ips.php on line 10
Person=
Es wird als echo keine 1 oder 0 ausgegeben.
Auch wenn ich eine Variable daraus erzeugen will, passiert nichts.
Kann mir da jemand weiter helfen?
mfg
tobiasr
17. September 2023 um 22:25
5
SetValueInteger (13219, $info->people->alarm_state);
Diese Zeile mal zu>
SetValueInteger (13219, $info[‚people‘]->alarm_state);
umbauen. Denn $info ist ein Array, welches dann in sich Objekte beinhaltet.
MarekG
18. September 2023 um 06:05
6
Moin,
leider will es damit auch nicht.
wenn ich es so schreibe:
$info[‚people‘]->support);
kommt:
Fatal error: Uncaught Error: Undefined constant „‚people‘“ in /var/lib/symcon/scripts/25268.ips.php:9
wenn ich es so schreibe:
SetValueInteger (13219, $info[„people“]->support);
Kommt:
Warning: Undefined array key „people“ in /var/lib/symcon/scripts/25268.ips.php on line 9
Warning: Attempt to read property „support“ on null in /var/lib/symcon/scripts/25268.ips.php on line 9
Irgendwie will das nicht.
tobiasr
18. September 2023 um 08:02
7
Irgendwie sieht das heute anders aus, als gestern.
Das ist, wenn man grob Verstanden hat, wie das funktioniert (Array, Objekt, etc.) in wenigen Minuten durchprobiert.
$beispiel1 = $json[0]->value->people->alarm_state;
$beispiel2 = $json[0]['value']->people->alarm_state;
Erstell doch einfach in Symcon einen neuen JSON-Decoder
Den zugehörigen HTTP Client füllst du mit obigem URL folgendermassen aus, und ‚schwupp‘ sind alles Events da…
MarekG
18. September 2023 um 10:37
9
Dankeschön, dass hat geklappt.
Ich muss mich da eindeutig besser einlesen, verstehe da noch nicht so ganz, was Arrays, Objekt usw. sind,
Aber danke für die Hilfe.
MarekG
18. September 2023 um 10:39
10
Hallo,
ja das hatte ich schon gesehen, wollte aber nicht alle möglichen Variablen haben, sondern das ganze in ein Scrip packen. Finde ich eleganter als zig Variablen, die ich nicht brauche.
Ok, wie du meinst…
Der Baum hält sich allerdings in Grenzen…