NEWS
[Major Update] UniFi Adapter v0.5.0
-
funktioniert bei EUCH die Blacklist noch ? Ich habe die ID/Mac Adresse oder den Namen versucht, ging beides nicht.
Muß ich das anders machen ?
Welchen Wert nehmt ihr für die Anwesenheit ? Diesen ?
Wie schnell wird bei Euch erkannt, das ein Gerät im WLAN ist oder eben nicht mehr ?
-
@bigd-73 said in [Major Update] UniFi Adapter v0.5.0:
Gibt es eine Möglichkeit den täglichen Traffic (in/out) zum Internet, also die WAN Schnittstelle, zu loggen?
Wenn Du herausfindest, welche Datenpunkte ich in den ioBroker übernehmen muss, kann ich die gerne einbauen. Im ersten Schritt würde es mir schon helfen, wenn Du mir im Controller zeigst, wo ich diese Informationen sehen kann.
@dslraser said in [Major Update] UniFi Adapter v0.5.0:
funktioniert bei EUCH die Blacklist noch ? Ich habe die ID/Mac Adresse oder den Namen versucht, ging beides nicht.
Ich habe es gerade nochmal getestet. Bei mir funktioniert es wie es soll. Nicht, dass es hier ein Missverständnis gibt: Der Adapter löscht absichtlich keine Objekte, wenn Du sie auf die Blacklists setzt. Evtl. kommt das in einer nächsten Version.
Welchen Wert nehmt ihr für die Anwesenheit ? Diesen ?
Das ist eine sehr gute Frage. In einer nächsten Version soll der Adapter automatisch berechnen, ob ein Client/Gerät online ist.
Wie schnell wird bei Euch erkannt, das ein Gerät im WLAN ist oder eben nicht mehr ?
In meinen Tests war mein Handy bei der nächsten Abfrage online, also praktisch sofort. Offline war auch fix. Ich habe beobachtet, dass de DP "satisfaction" auf null (leer) gesetzt wird. Aber ich weiß nicht, ob das immer so ist.
-
@braindead
Ich habe mal einen Cron von einer Minute auf Last seen by UAP auf mein Handy gesetzt.20:48:00.005 info javascript.0 (1805) script.js.09_Unifi.Unifi-Anwesenheit: 20:46:35 20:49:00.002 info javascript.0 (1805) script.js.09_Unifi.Unifi-Anwesenheit: 20:47:37 20:50:00.004 info javascript.0 (1805) script.js.09_Unifi.Unifi-Anwesenheit: 20:49:22 20:51:00.002 info javascript.0 (1805) script.js.09_Unifi.Unifi-Anwesenheit: 20:50:12 20:52:00.004 info javascript.0 (1805) script.js.09_Unifi.Unifi-Anwesenheit: 20:51:07 20:53:00.003 info javascript.0 (1805) script.js.09_Unifi.Unifi-Anwesenheit: 20:52:09 20:54:00.004 info javascript.0 (1805) script.js.09_Unifi.Unifi-Anwesenheit: 20:53:06 20:55:00.004 info javascript.0 (1805) script.js.09_Unifi.Unifi-Anwesenheit: 20:53:06 20:56:00.003 info javascript.0 (1805) script.js.09_Unifi.Unifi-Anwesenheit: 20:53:06 20:57:00.002 info javascript.0 (1805) script.js.09_Unifi.Unifi-Anwesenheit: 20:53:06 20:58:00.002 info javascript.0 (1805) script.js.09_Unifi.Unifi-Anwesenheit: 20:56:51
Wenn sich der Wert jede Minute ändert, dann ist das Handy im WLAN, wenn der Wert gleich bleibt ist es nicht mehr im WLAN. Online geht quasi sofort beim nächsten Zyklus. Offline mit max einem Zyklus Versatz, je nach dem wann man das WLAN am Handy ausschaltet.
Komisch ist nur der leichte Versatz der Werte, obwohl der Cron immer genau bei einer Minute auslöst. -
@dslraser der unifi adapter hat doch selbst einen cron... sieht nach alle 60s bei dir aus!?
-
@lobomau sagte in [Major Update] UniFi Adapter v0.5.0:
@dslraser der unifi adapter hat doch selbst einen cron... sieht nach alle 60s bei dir aus!?
Ja, ich habe alle 60 Sekunden im Adapter. Nur aktualisiert sich bei mir der Wert nur, wenn das Handy im WLAN ist. Ich habe auf wurde aktualisiert getriggert. Wenn das Handy nicht im WLAN ist, dann wird zwar der Wert in den Objekten "augenscheinlich kurz grün/aktualisiert", aber der Trigger hat dann nicht reagiert, deshalb habe ich es mit Cron probiert.
-
@braindead sagte in [Major Update] UniFi Adapter v0.5.0:
Welchen Wert nehmt ihr für die Anwesenheit ? Diesen ?
Das ist eine sehr gute Frage. In einer nächsten Version soll der Adapter automatisch berechnen, ob ein Client/Gerät online ist.
Ich mach das auch wie @dslraser über den
last_seen
datenpunkt.
Wenn das Adapterinterval 1min beträgt, muss sich bei jedem aktualiseren des last_seen dieser Wert auch entsprechn um das Update interval erhöht habenHier mal ein snipset wie du es im Adapter auch intergieren könntest:
function checkAnwesenheit() { try { for (const device of devices) { // Differenz zwischen lastSeen und Now berechnen let lastSeen = getState("unifi.0.default.clients." + device.MacAdresse.getState().val + "._last_seen_by_uap").val; let diff = new Date().getTime() - lastSeen * 1000; // letzte Anwesenheit holen -> wird zum loggen verwendet let lastAnwesendVal = device.Anwesend.getState().val; let anwesend = false; if (diff < timeDiff * 60000) { // Differenz ist kleiner anwesend = true; } else { // Differenz ist größer anwesend = false; device.Anwesenheitszeit.setState("0m", true); } if (lastAnwesendVal != anwesend) { // nur wenn sich Anwesenheit geändert hat Wert schreiben let id = `${myDevices.Netzwerk.Devices.getId()}.${device.Name.getState().val}.Anwesend`; setState(id, anwesend, true); let idLastSeenDiff = `${myDevices.Netzwerk.Devices.getId()}.${device.Name.getState().val}.lastSeenDiff`; setState(idLastSeenDiff, 'seit 0 Minuten', true); log(`'${device.Name.getState().val}' Anwesenheit changed to '${anwesend}'`) } } } catch (err) { console.error(`[checkAnwesenheit] error: ${err.message}`); console.error(`[checkAnwesenheit] stack: ${err.stack}`); } }
@bigd-73 sagte in [Major Update] UniFi Adapter v0.5.0:
Gibt es eine Möglichkeit den täglichen Traffic (in/out) zum Internet, also die WAN Schnittstelle, zu loggen?
Unter devices gibts die Datenpunkte
tx_bytes
undrx_bytes
. Habe keinen UGS, aber für meinen Switch und AP wird hier die Datenmenge Up / down angezeigt. -
Laut der Statistik auf https://www.iobroker.net/#de/adapters gibt es außer mir gibt es mittlerweile 10 andere User, die mit v0.5.0-beta.2 unterwegs sind.
Ich möchte v0.5.0 heute oder morgen ins latest Repository schieben. Könnt Ihr mir bitte einmal explizit bestätigen, dass bei Euch folgendes funktioniert:
- Sowohl Blacklists, als auch die Whitelists der zu übernehmenden Objekte lassen sich konfigurieren.
- Blacklists und Whitelists funktionieren, wie beschrieben.
- Der Adapter läuft auch nach einer längeren Zeit noch stabil und Daten werden aktualisiert.
-
nur 10 User? Also ich bin auch einer davon
Bin total begeistert... erst Recht seit beta2.0.Bis 21:30 Uhr hatte ich noch beta1.0 mit ca. 1000 DP und Aktualisierung von 120s.
Dann kam Update auf beta2.0. mit 220 DP. Ich habe dann auf Aktualierung 60s runtergestellt. Kaum Prozessorbelastung. Ich teste jetzt gleich mal 30s... -
@braindead
Bei mir funktionier alles.
Ich habe lediglich die Blacklist nicht ausprobiert. Wie funktioniert die?
Kann ich damit einzelne Geräte ausblenden von denen ich keine Daten möchte?
Dann würden alle Sonoff bei mir rausfallen. -
@Chaot ja, einfach die IP eintragen (falls fix) oder den Namen nehmen.
-
Moin, gerade mal installiert...läuft.
Mac in die Blacklist funktioniert auch.
Super Arbeit, DankeHardware: 1 USG, 1 POE-Switch, 2 AP LR/Light, 1 Mesh, Cloud Key
-
@braindead sagte in [Major Update] UniFi Adapter v0.5.0:
Wenn Du herausfindest, welche Datenpunkte ich in den ioBroker übernehmen muss, kann ich die gerne einbauen. Im ersten Schritt würde es mir schon helfen, wenn Du mir im Controller zeigst, wo ich diese Informationen sehen kann.
Unter Statistik - Performance -> Filter: WAN1, (5 Minuten, stündlich oder täglich)
SG
Mario -
@lobomau Danke schön. Gefunden.
@braindead Läuft alles wie gewünscht. Blacklist habe ich jetzt gemischt angelegt (IP oder MAC) und funktioniert einwandfrei. Jetzt habe ich alles bis auf die 10 Devices die mich wirklich interessieren draußen.Kleiner (aber unwichtiger) Verbesserungsvorschlag:
Ist es möglich bei der Blacklist per IP eine Wildcard zu nutzen?
Ich habe beispielsweie bei mir den Bereich 192.168.8.14* bis 192.168.8.18* für Geräte zur Hausautomation vorgesehen.
Wenn ich als den Bereich 192.168.8.4* per Blacklist sperren könnte hätte ich 10 Geräte gleichzeitig weg.Super Arbeit!
-
@lobomau said in [Major Update] UniFi Adapter v0.5.0:
@Chaot ja, einfach die IP eintragen (falls fix) oder den Namen nehmen.
Oder MAC oder Hostname
@bigd-73 said in [Major Update] UniFi Adapter v0.5.0:
Unter Statistik - Performance -> Filter: WAN1, (5 Minuten, stündlich oder täglich)
Danke, ich gucke mal, ob ich DP finden kann.
@lobomau said in [Major Update] UniFi Adapter v0.5.0:
Bis 21:30 Uhr hatte ich noch beta1.0 mit ca. 1000 DP und Aktualisierung von 120s.
Dann kam Update auf beta2.0. mit 220 DP. Ich habe dann auf Aktualierung 60s runtergestellt. Kaum Prozessorbelastung. Ich teste jetzt gleich mal 30s...Das ist insofern interessant, weil @Dutchman mich darauf hingewiesen hat, dass der Code nicht optimal war, weil alle Objekte (nicht wie Werte von States) jedesmal aktualisiert wurden, auch wenn es keine Änderung gab. Meine Änderung hat also etwas gebracht.
-
@braindead sagte in [Major Update] UniFi Adapter v0.5.0:
Sowohl Blacklists, als auch die Whitelists der zu übernehmenden Objekte lassen sich konfigurieren.
Blacklists und Whitelists funktionieren, wie beschrieben.
Der Adapter läuft auch nach einer längeren Zeit noch stabil und Daten werden aktualisiert.Ich habe die Blacklist nochmal probiert und es funktioniert nun bei mir. Keine Ahnung warum es neulich nicht ging. Ich habe nichts anderes gemacht als bei meinem ersten Versuch. Bei meinem ersten Versuch mit der Blacklist wurde das Gerät immer wieder neu geholt.
Heute hat es aber funktioniert.
Der Rest funktioniert bei mir ebenfalls. Ich bin aktuell noch bei 60 Sekunden im Adapter, andere Intervalle habe ich nicht probiert. -
Bei mir funktioniert jetzt auch alles wie es soll, Arbeit
Bei der 5.0er Version hatte ich noch Problem mit dem Arbeitsspeicher (bei 800mb hab ich den Adapter deaktiviert)
Verbunden wird der Adapter mit der UDM, und er läuft auf einem Pi 4B mit 4GB Ram. -
v0.5.0 ist seit heute im latest Repository. Vielen Dank an alle, die hier fleißig getestet haben.
-
mit dem neuesten JS Controller (latest) läuft bei mit der Adapter nicht mehr (ein downgrade des adapters allerdings auch nicht)
Der Adapter bleibt gelb , Meldung im LOG :
(3030) Error: api.err.Invalid
-
@Holger76
ich weiß das hilft dir nichts, aber ich kann das hier nicht bestätigen, alles im grünen bereich -
@braindead
Läuft bei mir bis auf eine Meldung fehlerfrei mit JS 3,1,3ubuntu.0 2020-05-10 07:43:46.832 warn (15832) adapter.objects.getObjectList is deprecated, and will be removed in the future. Please use adapter.getObjectList/Async. Report this to Developer!