Hatte die Instanz neu gespeichert, aber die Meldung ist nicht weg gegangen.
Mach mal beim vor dem Speichern der Instanz, das debug vom gateway auf, dort sollte er dann die Version ausgeben.
Die Version steht richtig drin in der Instanz und im Debug
Danke für dieses Modul. Funktioniert bisher sehr gut.
Ich habe eine UDM-Pro. Aktuell müsste hier ein Update in der DeviceInstanz angezeigt werden, tut es aber offenbar nicht. Die entsprechende Variable wurde bisher auch nicht (nie) verändert. Hat es hier ev. noch einen kleinen Fehler?
![]()

Bei anderen Devices (Switch, APs, etc.) klappt es und die Variable wird korrekt angezeigt, wenn eine neue Firmware vorhanden ist.
Danke schon mal
Martin
Update: zudem stelle ich gerade fest, dass die IP-Adresse, welches es erkennt, falsch ist.
![]()
Korrekt wäre 192.168.1.1

Die anderen Variabeln werden jeweils korrekt aktualisiert, nur die “Firmware-Update”-Variable nicht. Hängt das irgendwie mit auch damit zusammen?
Ist mir auch schon mal aufgefallen, das ist aber leider das, was die API liefert.
Kannst mal im Debug nach dem Feld “firmwareUpdatable” suchen, das wird da genutzt.
Bzgl. der IP Adresse, da wird auch leider eine der WAN Adresse angezeigt. Kommt leider auch so aus der API: “ipAddress”.
Ich habe im UDM-Pro-Device versucht zu debugen. Jedoch erhalte ich nur den Heartbeat… (da sind nur wenige Informationen aufgeführt). Muss ich etwas bestimmtes tun, damit ich mehr Informationen erhalte?
UPDATE: Ich habe im Modul-Code noch zusätzliche Debug-Ausgaben eingefügt und ja, es sieht tatsächlich so aus, dass bei der API-Rückgabe vom Gerät wohl ein falscher Wert zurück geliefert wird…
@bgersmann danke für das Modul! Ich nutze es u.a. für die Anwesenheitserkennung. Dabei habe ich eine kleine Herausforderung. Ich habe mehrere Bereiche (Controller) und eine größere Anzahl von Personen. Nun ist es sehr schwierig genau die Zeit abzupassen, wann sich eine bestimmte Person in einem bestimmten Bereich befindet um diese Person dann im Konfigurator anzulegen. Denn das geht nur, wenn das Gerät online ist. Hast Du da eventuell eine Idee wie man das anders lösen kann, eventuell mit einer Vorauswahl per MAC, diese ist mir von jedem Gerät bekannt?
Tom
Leider nicht, die Zuordnung läuft über eine Interne ID. Die API gibt auch nur Geräte zurück die Online sind. Offline wird auch nur gesetzt indem ein Fehler abgefangen wird, wenn die ID in Unifi nicht gefunden wird.
Ich wüsste auch nicht wie ich nachträgliche die ID über die MAC Zuordnen könnte.
Du könntest dir per Script regelmäßig die Ausgabe von „UNIFIGW_getClients“ ausgeben und abspeichern, dann eine „UnifiClient“ Instanz anlegen und per Script die „ID“ („Value“ aus der Ausgabe) setzen, das sollte dann auch klappen wenn das Gerät offline ist.
<?php
//Verbundene Geräte auslesen
$tmp=UNIFIGW_getClients(17250);
//Ausgeben
var_dump($tmp);
//UnifiClient per Script ID mitgeben
IPS_SetProperty(13903,"ID","524998ec-904f-361e-85ec-55c2a68exxxx");
IPS_ApplyChanges(13903);
Lieben Dank für die schnelle Antwort. Ich versuche mir damit etwas zu basteln.
Wäre es möglich in UNIFIGW_getClients noch das WLAN mitzugeben? Ich habe eine große Anzahl von Geräten, etwa 80% sind im LAN. So könnte ich die zu prüfende Übersicht etwas kleiner machen.
Leider auch nicht, die Ausgabe ist für die anzeige in der Client Instanz aufbereitet.
Du könntest aber per script die Ausgabe auf den Gerätenamen filtern und nur in eine String variable speichern die du benötigst.
Also einfach das Array $tmp durchlaufen, nach deinem Gerätename in der „caption“ suchen und die Caption + ID in eine String variable schreiben oder einfach ins Log ausgeben oder theoretisch sogar direkt in die UnifiClient Instanz schreiben…
Wenn es so einfach wäre ;-)… Wer pflegt sein Smartphone schon richtig und setzt einen Namen. Mal sehen, wie ich das etwas eindampfe.
Die Namen findest doch in unifi über die mac?
Ja, der händische Aufwand ist aber immer noch hoch. Ich lasse mir jetzt eine Mail schicken sobald sich Geräte mit nicht bekannter ID anmelden.
Sonst kannst auch per Script mit der ID das Gerät auslesen, darfst nur nicht 100 Geräte gleichzeitig auslesen, sonst macht die API dicht.
$tmp=UNIFIGW_getClientData(17250,"5f527187-f028-357b-805f-2bd8064xxxx");
var_dump($tmp);
Hi, ich möchte mal nachfragen ob es noch möglich wäre die verbunden Clients als Variable zu bekommen?
Danke
Hi,
leider nicht, theoretisch könnte man dies über die clients machen, da diese angeben womit sie verbunden sind.
Würde dann bedeuten man müsste alle Clients einmal abfragen. Je nach Anzahl der Clients würde das dann auch etwas länger dauern und die API solang blockieren.
Glaube also nicht das dies sinnvoll wäre.
Falls du alle Clients in Symcon angelegt hast, könntest du über ein PHP Script das „Übergeordnetes Gerät“ auswerten und zusammen zählen…
OK. Schade.
Bei mir ändern sich die Clients ständig, dann hab ich also keine Möglichkeit. ![]()
Herzlichen Dank.
Muss mich korrigieren, geht doch.
Sollte in der neuen Beta jetzt aktivierbar sein.
Wow… cool… Herzlichen Dank. Genau was ich brauche!
