Neues Modul - 74_Unifi - Für den Ubiquiti Networks (UBNT) - Unifi Controller

Begonnen von rapster, 23 August 2015, 02:12:04

Vorheriges Thema - Nächstes Thema

Maui

Ne bewusst nicht gemacht
Beim update Check wird mir dein Modul auch noch angezeigt.
Ich lösche die devices nochmal und starte nochmal neu mit 0 Tagen vielleicht hat es irgendwo anders geharkt

Maui

Jetzt weiß ich woran es lag. Hab ein Update vom Controller selbst gemacht.

Wuehler

Moin zusammen,

@Maui: Dann bin ich beruhigt  ;)

@all: Habe den fix zum Update der Readings von disconnected-clients jetzt auch commited. Morgen Vormittag dann im Update.
Wenn ich die Abhängigkeiten richtig sehe hat der Fix nur Auswirkungen auf das Verhalten in FHEM, wenn das Attribut event-on-change-reading nicht genutzt wird. Dann gibt es bei disconnected-clients öfter mal ein Event zum Update des Readings. Denke, das darauf bei disconnected-clients keiner ein notify drauf hat. Und wenn dann auf den state, und der wurde auch bisher schon bei jedem Update-Intervall erneut auf disconnected gesetzt.

VG,
Dirk

Wuehler

Hallo zusammen,

aus den letzten Diskussionen hatte ich noch zwei ToDos mitgenommen. Da ich gerade Zeit und Lust hatte befindet sich im Anhang eine neue Version für interessierte Tester. (Läuft bei mir jetzt 2h stabil  ;) )

Folgende Änderungen haben sich dabei ergeben:

  • Aulesen der Insights: Jeder Client hat immer eine interne Information, ob er geblocked ist (siehe getClientData). Über customClientReadings kann ein Reading dazu erzeugt werden. Wenn ein Client 365 Tage disconnected war, wird die Information nicht weiter aktualisiert.
  • neues Reading "-UC_blockedClients: Eine Liste der geblockten Clients. Der Client muss dem Modul aber mindestens ein mal bekannt (connected) gewesen sein.
  • neuer setter removeClientReadings: Hiermit können die Readings von disconnected Clients entfernt werden.
  • Anpassung Drop-Down-Listen für ...

    • blockClient: nur nicht geblockte Clients
    • unblockClient: nur geblockte Clients
    • disconnectClient: nur connected Clients
    • removeClientReadings: nur disconnected Clients

Falls jemand Zeit und Lust zum Testen hat: gerne Feedback.

Ein schönes Osterfest euch allen,
Dirk

der-Lolo

Guten Morgen Wuehler,
sag mal gibt es eigentlich eine möglichkeit aus FHEM heraus ein Radius Profil zu deaktivieren?
Das wäre eine tolle Anwedung für mich...


Wuehler

Moin,

nein, das ist aktuell nicht möglich, wäre aber möglich. Für das Modul selbst finde ich den UseCase ein wenig speziell  ;)
@Maui: Hattest du nicht auch mal ein script, mit Login im UnifiController und anschließendem Funktionsaufruf? Das könnte man hierfür bestimmt nutzen.

VG,
Dirk

Wuehler

Hallo zusammen,

bei der Beschäftigung mit den Informationen des Unif-Controllers ist mir aufgefallen, dass man soetwas wie Onlinezeit damit tracken kann. Das kann dann dazu verwendet werden wie bei der Fritzbox z.B. 2h Onlinezeit für ein Gerät am Tag zuzulassen. Mittel block-/unblockClient kann man das Geräte dann aus dem WLAN/LAN aussperren und am nächsten Tag wieder zulassen. Ich habe mir die Ansätze dazu aus notifies und dummys zusammengebaut. Scheint grundsätzlich zu funktionieren, ist aber noch deutlich optimierbar.
Wenn ausreichend Interesse besteht könnte ein Modul UnifiClient die nächste Erweiterung sein. Wie ist eure Meinung?

VG,
Dirk

der-Lolo

Na da würde sich ja dann sicher auch ein Radius Switch drin abbilden lassen, oder? ;-)

Wolle02

Moin Dirk,

Zitat von: Wuehler am 20 April 2019, 18:42:04

Wenn ausreichend Interesse besteht könnte ein Modul UnifiClient die nächste Erweiterung sein. Wie ist eure Meinung?


ich bekunde auf jeden Fall Interesse. Mein Sohn wird dich zwar irgendwann mal hassen, aber ich verrate dich nicht.  ;D 8)

Gruß
Wolle

hoppel118

Server: Openmediavault, XEON E3-1240L-v5, Supermicro X11SSH-CTF, 64GB ECC RAM, SSD, RAID-Z2
Homebridge | Alexa | Yowsup
Homematic | HomeConnect | MQTT | Philips Hue | Sonos | Unifi Network & Protect | vbus | Xiaomi

Wuehler

Dann werde ich mal anfangen an einem Modul UnifiClient mit einer solchen Funktionalität zu basteln.

@Lolo: Wenn ich dich richtig verstehe meinst du unter Settings->Profiles->Radius->Edit->"Enable RADIUS assigned VLAN for wired network"
Oder etwas anderes? Das hätte meiner Meinung mit einem Modul UnifiClient nicht o viel zu tun. Aber Diskussion gerne.
Mit PHP-Mittel kann man sich auch recht einfach eine spezielle Funktionalität programmieren. siehe z.B.
https://forum.fhem.de/index.php/topic,78247.30.html
Vielleicht kann diese API auch die Radius-Profile bearbeiten.
PS: Wozu brauchst du das eigentlich genau?

Omega

Hallo,

vor 1 Woche habe ich meinen UniFi-Controller umgezogen auf eine neue VM (jetzt Debian 9.8, vorher 8.x).

Einzige Änderungen sind die IP-Adresse und das Passwort beim Controller. Die APs und mein Switch sind unverändert geblieben.

In FHEM habe ich den vorhandenen UniFi-Controller und –Switch gelöscht und dann wieder mit den geänderten Daten (IP / Passwort) angelegt. Ich bekomme jetzt aber keine Daten vom Controller zu dem Switch und den APs.

Ein List meiner Definition:

Internals:
   CFGFN     
   CHANGED   
   DEF        192.168.0.223 8443 crypt:<xxxx> crypt:<yyyy>
   FUUID      5cb70149-f33f-fba2-a756-8a9334ed298577c7
   NAME       my_unifi_controller
   NOTIFYDEV  global
   NR         24348
   NTFY_ORDER 50-my_unifi_controller
   STATE      connected
   TYPE       Unifi
   UC_VERSION 5.10.20
   VERSION    3.2.6
   READINGS:
     2019-04-22 10:21:07   -UC_events      0 (last 24h)
     2019-04-22 10:21:07   -UC_newClients 
     2019-04-22 10:21:07   -UC_unarchived_alerts 0
     2019-04-22 10:21:07   -UC_wlan_accesspoints 0
     2019-04-22 10:21:07   -UC_wlan_state  unknown
     2019-04-17 12:34:49   state           connected
   accespoints:
   alerts_unarchived:
   clients:
   events:
   helper:
     password   crypt:<yyyy>
     username   crypt:<xxxx>
   hotspot:
     voucherCache:
     vouchers:
   httpParams:
     header     Cookie: unifises=vxzW3yWY5t1HPY8RlLw1y5A0X7DjRNMF;\r\nCookie: csrf_token=X13G5dKrHD5pa6oSZ5fbBzXyek2ZpM6c;
     ignoreredirects 1
     loglevel   5
     method     POST
     noshutdown 0
     timeout    5
     hash:
     sslargs:
       SSL_verify_mode 0
   unifi:
     CONNECTED  connected
     connectedClients
     eventPeriod 24
     interval   30
     updateStartTime 1555921266.35375
     url        https://192.168.0.223:8443/api/s/default/
     customClientReadings:
       attr_value .:^accesspoint|^essid|^hostname|^last_seen|^snr|^uptime
       parts:
         0000000_part:
           ReadingRegEx ^accesspoint|^essid|^hostname|^last_seen|^snr|^uptime
           nameRegEx  .
   updateDispatch:
   wan_health:
     num_adopted 0
     num_disconnected 0
     num_gw     0
     num_pending 0
     status     unknown
     subsystem  wan
   wlan_health:
     num_adopted 0
     num_ap     0
     num_disabled 0
     num_disconnected 0
     num_pending 0
     status     unknown
     subsystem  wlan
   wlans:
   www_health:
     status     unknown
     subsystem  www
Attributes:
   event-on-change-reading .*
   room       Server


Leider keine weiteren Daten seit dem 16.04. Freue mich über Hilfe.
Frohe Restostern
Holger
NUC6i3SYH (FHEM 5.8 in VM)
Homematic: HMLAN, HMUSB, HM-Sec-SD, HM-CC-RT-DN, HM-TC-IT, ... + diverse weitere
LaCrosseGateway, ESPEasy
ZWave

Wuehler

Moin,

Hast du mal ein manuelles Update gemacht?
set my_unifi_controller update
Evtl. ist das Update-Intervall nicht richtig gestartet worden.
Ansonsten sieht es ja so aus, als ob das Modul sich verbinden konnte.

Omega

update hat keine Änderung gebracht - außer das die Timestamps in den Readings aktualisiert wurden.
Nach dem update habe ich mich am Controller angemeldet, um dort auf evtl. Meldungen zu schauen.
Das führte in FHEM beim Reading UC_events zu einer Änderung. Die Verbindung als solche ist also definitiv da.
UC_events          1 (last 24h)            2019-04-22 12:03:41

Holt sich das Modul seine Daten ausschließlich vom Controller oder auch direkt von den APs und dem Switch? Die haben noch mein ursprüngliches Passwort.
NUC6i3SYH (FHEM 5.8 in VM)
Homematic: HMLAN, HMUSB, HM-Sec-SD, HM-CC-RT-DN, HM-TC-IT, ... + diverse weitere
LaCrosseGateway, ESPEasy
ZWave

Wuehler

Hast du das Attribut customClientReadings gesetzt?
Oder hast du einen sitenamen vergeben? (Nicht default)
Hat der user des Moduls evtl. nur eingeschränkte Rechte?
Das Modul fragt nur den Controller ab, nicht die APs usw.

Edit: Mach mal ein Log mit verbose=5. Mal sehen was da an Meldungen kommt.