FHEM Forum

FHEM => Automatisierung => Thema gestartet von: Wuehler am 12 Mai 2018, 00:37:44

Titel: Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Wuehler am 12 Mai 2018, 00:37:44
Nabend,

habe ein wenig nachgelesen, wie das mit dem zweistufigen Modulen funktioniert und habe eine erste Beta für den UnifiSwitch gebaut. Als IODev wird ein funktionierende Unifi-Modul verwendet. Um dort die Anzahl Readings nicht explodieren zu lassen ein Kind-Modul -> UnifiSwitch.

Es muss sowohl das Unifi als auch das UnifiSwitch-Modul aus dem Anhang in den FHEM-Ordner kopiert werden. Bis es das per offiziellem Update gibt wird es noch etwas dauern.

Bitte mal ausprobieren und Fehler sowie Wünsche posten.

TODOs:
- state des USW korrekt setzen (aktuell nur connected und provisioning)

V 0.1:
  - Initiale Version mit ein paar Readings zum poe-state je port
V 0.11:
- state des USW wird gesetzt (noch nicht immer korrekt, da ich die state-Nr. für z.B. upgrading noch nicht kenne)
- Port-Nummern < 9 mit führender 0
- Model als Internal
- port-state als reading hinzugefügt
- fixed encode_json-Fehler
V 0.90:
- setter für poe-Mode aus dem Unifi-Modul entfernen und hier einfügen
- commandref

Edit: 10.06.2018:
Modul ist ab 11.06.2018 eingecheckt. Anhänge hier entfernt.
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: roedert am 13 Mai 2018, 12:00:52
...das ging ja schnell mit der Umsetzung :-)
Hab die beiden Module mal in mein Testsystem eingepflegt, bekomme aber leider direkt nen Komplettabsturz:
Undefined subroutine &main::encode_json called at ./FHEM/74_Unifi.pm line 1145.

Kann aber auch sein dass irgendein Paket fehlt, das Unifizierend-Modul hatte ich vorher auf dem Testsystem noch nicht im Einsatz.
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: sledge am 13 Mai 2018, 12:06:13
Hi,

gerade eingespielt, shutdown restart und go. Derzeit betreibe ich 2 * US8 Switche (die via PoE am Hauptswitch hängen) und einen US16P150, der hier alles zentral mit PoE versorgt (4 APs, 2 US8)

Was passiert nach dem restart:


Generell enthalten die Readings die In formationen, die man erwartet, je Switchport gibt es folgende Einträge:


port_8_name
Wohnzimmer
2018-05-13 11:47:27
port_8_poe_current
175.53
2018-05-13 11:47:27
port_8_poe_mode
auto
2018-05-13 11:47:27
port_8_poe_power
9.33
2018-05-13 11:47:27
port_8_poe_voltage
53.14
2018-05-13 11:47:27


Als Reading liest Du das "model" des Switches aus, in diesem Fall usw_model  US16P150. Da es mE unveränderlich (je Device) ist, hätte ich das bei Internals gesehen. Naja - und einen sinnvollen State gibt es noch nicht, aber das wusstest Du vermutlich.

Aber das wichtigste: Das Modul macht was es soll, alle meine Switches wurden angelegt, zu jedem Switchport gibt es die PoE-relevante Info. Alles Switches werden mit dem richtigen Model erkannt - also bestens. Und die Verlagerung der PoE-Infos in die abhängigen Devices gefällt mir gut.

Darüberhinaus stellt sich mir generell die Frage, wie man bei umfangreichen Unifi-Installationen die Explosion von Readings im Hauptdevice verhindern kann... Zu jedem Gerät gibt es ~6 Readings - bei meiner Installation sind das dann schon geschmeidige 60 Geräte * 6 Readings ;-) Tut erstmal nicht weh - nur halt so ein Gedanke.

Also Danke erstmal für die Mühe, jetzt auf ein 2-stufiges Modulkonzept umzusteigen.

Gruß,

Tom
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: sledge am 13 Mai 2018, 12:57:22
Zitat von: roedert am 13 Mai 2018, 12:00:52
...das ging ja schnell mit der Umsetzung :-)
Hab die beiden Module mal in mein Testsystem eingepflegt, bekomme aber leider direkt nen Komplettabsturz:
Undefined subroutine &main::encode_json called at ./FHEM/74_Unifi.pm line 1145.

Kann aber auch sein dass irgendein Paket fehlt, das Unifizierend-Modul hatte ich vorher auf dem Testsystem noch nicht im Einsatz.

Yep, da fehlt mE JSON für perl https://packages.debian.org/de/sid/libjson-perl (https://packages.debian.org/de/sid/libjson-perl). Installieren, ggfs "shutdown restart" und dann sollte es klappen.
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: Wuehler am 14 Mai 2018, 08:59:39
Danke euch für den Test.
Ich habe gesehen, dass es auch eine fhem-Funktion tojson() gibt. Werde die mal verwenden. Vielleicht braucht man dann kein zusätzliches Paket.

Ansonsten fänd ich eure Meinungen interessant, wann man in Zukunft ein Kind-Modul nutzen sollte und wenn nicht.
60 eigene client-Devices sind bestimmt auch keine Lösung.
Rein theoretisch müsste auch ein dreistufiges Modul gehen, so dass z.B. jeder Port des Switch auch ein eigenes Devices sein könnte.

Bin auf eure Meinung gespannt.
VG,
Dirk
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: jochen_f am 14 Mai 2018, 11:07:29
Hi,

Undefined subroutine &main::encode_json called at ./FHEM/74_Unifi.pm line 1145.

Diesen Fehler bekomme ich auch. libjson-perl ist aber installiert (2.90-1). Auch ein Update auf 2.97001-1 brachte keine Änderung.

Gruß, Jochen
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: Christian Uhlmann am 14 Mai 2018, 11:10:34
Hi Wuehler,

dank für die Arbeit, klappt bei mir wunderbar, alle 5 Switch sind angelegt worden und ich kann alle Informationen rauslesen.

Bzgl. Mehrstufigkeit würde ich folgedes Vorschlagen:
Alle Unifi Devices, die im Controller als Unifi Device geführt werden, als Kind-Modul.
In Zukunft also auch die AP's, wenn es Sinn macht.

Damit repräsentiert das Unifi Modul den Controller und das UnifiSwitch Modul die Devices, evtl, sollte das Modul dann auch anders heißen, UnifiDevice.

Pro Port ein weiteres Kinde-Modul halte ich für nicht angebracht, wer das braucht, kann das leicht mit ReadingsProxy bauen.
Wichtiger wäre mir ein
set <UnifiSwitch> port_6_poe_mode off|auto|etc.
am leibsten mit dropDowns :)

ein kleiner Hinweis noch, evtl nennst du die Ports 01, 02 usw. ansonsten sieht das mit den Readings bei einem US8P150 so aus:
   TYPE       UnifiSwitch
   READINGS:
     2018-05-14 11:08:27   port_10_name    SFP 2
     2018-05-14 11:08:27   port_1_name     KG.vr.SW.server.downlink
     2018-05-14 11:08:27   port_1_poe_current 115.23
     2018-05-14 11:08:27   port_1_poe_mode auto
     2018-05-14 11:08:27   port_1_poe_power 6.20
     2018-05-14 11:08:27   port_1_poe_voltage 53.78


nicht sehr schlimm aber evtl. unschön.


Grüße und Danke

Christian
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: jochen_f am 14 Mai 2018, 11:24:43
Ich habe in 74_Unifi.pm folgendes hinzugefügt:

use JSON qw(encode_json);

Damit funktioniert es. Jetzt bekomme ich das Device angelegt:

define UNDEFINED UnifiSwitch UNDEFINED
attr UNDEFINED room UnifiSwitch

Die Readings sind aber korrekt.

usw_model US16P150 etc.

Was meiner Meinung nach aber fehlt, ist der Port Status selbst.
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: sledge am 14 Mai 2018, 17:44:55
Zitat von: Christian Uhlmann am 14 Mai 2018, 11:10:34


Bzgl. Mehrstufigkeit würde ich folgedes Vorschlagen:
Alle Unifi Devices, die im Controller als Unifi Device geführt werden, als Kind-Modul.
In Zukunft also auch die AP's, wenn es Sinn macht.

Damit repräsentiert das Unifi Modul den Controller und das UnifiSwitch Modul die Devices, evtl, sollte das Modul dann auch anders heißen, UnifiDevice.


Um das mal aufzugreifen: Je UNIFI-Gerät ein entsprechendes Device anlegen - sinnvoll und auch handhabbar, denke ich. Insofern +1. Welche Infos dann in dem Device als Reading zur Verfügung gestellt werden - was halt geht und sinnvoll ist.

Entspricht ja auch der Vorgehensweise ähnlicher Module.

Und: Danke!

Gruß und Danke,

Tom
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: Wuehler am 14 Mai 2018, 21:56:03
Hi,

im ersten Post eine neue Version sowie Infos über die Anpassungen. Falls ihr noch ein upgrade auf dem USW machen könnt bitte eine Info, welcher code dabei angezeigt wird, dann baue ich eine Übersetzung ein. (1= connected; 5 = provisioning; 2-4=?; ?=upgrading)

Offen ist noch der Einbau der setter (und Ausbau aus dem Unifi-Modul).

Ich denke, dass es zukünftig bei Bedarf noch folgende Kind-Module geben könnte. Ein allgemeingültiges UnifiDevice halte ich für nicht so sinnvoll, da darin dann auch immer unnötige Funktionen anderer Devices enthalten sein würden:
- 74_UnifiAP.pm: Readings und getter/setter für Access-Points
- 74_UnifiUSG.pm: Readings und getter/setter für USG
- 74_UnifiClients.pm: Alle Clients in einem extra-Device
- 74_UnifiHotspot.pm: Der Hotspot mit z.B. dem VoucherCache
Aber das muss man sich im Detail dann noch ansehen.

@Jochen_f: Hast du deinem switch keinen Alias gegeben? Ich habe jetzt mal die IP des switch als Fallback genommen, dass da kein UNDEFINED kommt. Bitte nochmal den Switch löschen und wenn weiterhin UNDEFINED kommt nochmal löschen und vom Unifi ein log mit verbose=5 anhängen.

VG,
Dirk
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: roedert am 15 Mai 2018, 08:43:27
Zitat von: Wuehler am 14 Mai 2018, 08:59:39
Ansonsten fänd ich eure Meinungen interessant, wann man in Zukunft ein Kind-Modul nutzen sollte und wenn nicht.
60 eigene client-Devices sind bestimmt auch keine Lösung.

Besten Dank erstmal für die schnelle Umsetzung - sieht schonmal prima aus.
Die Idee für jedes Gerät ein UniFi-Gerät (Switch, AP etc) ein eigenes Device zu erstellen klingt eigentlich plausibel. Nochmal ein Device per Switchport halte ich auch für übertrieben.
Konsequenterweise könnte man auch für jeden Netzwerk-Client ein eigenes Device anlegen, dann hat man evtl. zwar deine "60 Client-Devices" - aber momentan hat man "hunderte" Readings im Unifi-Device was ja auch nicht gerade übersichtlicher ist.

Edit: Sorry, ich hatte deinen Beitrag von gestern Abend noch nicht gesehen, da steht's ja ähnlich drin. Diesen Ansatz halte ich für sehr sinnvoll.
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: jochen_f am 15 Mai 2018, 08:52:09
Ja, der Switch hatte in der Tat keinen Alias. Die Unifi Software nimmt als Namen dann standardmäßig die MAC Adresse, daher war mir das noch gar nicht aufgefallen.

Funktioniert jetzt einwandfrei, auch Port Status ist jetzt vorhanden.

Vielen Dank!

Gruß, Jochen
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: Wuehler am 15 Mai 2018, 09:41:24
Danke für euer Feedback.

@roedert: Sicherheitshalber folgende Klarstellung: ich meinte für die Clients genau ein Device in dem dann alle Clients mit ihren Readings sind. Ich meinte nicht ein Device je Client.
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: roedert am 15 Mai 2018, 14:40:43
ok, kann man glaube ich drüber streiten was unübersichtlicher ist:

- ein Device mit "hunderten" unübersichtlichen Readings von allen Clients
oder
- unübersichtliche "60" Devices mit einer Hand voll Readings pro Client

Ich würde Variante 2 bevorzugen, so ist es ja auch in der UniFi-GUI abgebildet.

Evtl. kann man auch dem UniFi-"Elterndevice" auch ein Attribut geben, welche Clients (als Regex) zu ignorieren sind und somit gar nicht erst als Device/Reading erstellt werden.
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: sledge am 15 Mai 2018, 18:19:00
Zitat von: roedert am 15 Mai 2018, 14:40:43
ok, kann man glaube ich drüber streiten was unübersichtlicher ist:

- ein Device mit "hunderten" unübersichtlichen Readings von allen Clients
oder
- unübersichtliche "60" Devices mit einer Hand voll Readings pro Client

Ich würde Variante 2 bevorzugen, so ist es ja auch in der UniFi-GUI abgebildet.

Evtl. kann man auch dem UniFi-"Elterndevice" auch ein Attribut geben, welche Clients (als Regex) zu ignorieren sind und somit gar nicht erst als Device/Reading erstellt werden.

Diesen Ansatz hatte ich auch schon im Kopf "hin und her gewälzt".

Folgender Gedanke:

1. Einschränkung der anzuzeigenden Devices regexp (was ja Deinem Vorschlag entspricht)
2. Einschränkung der anzuzeigenden Readings via Regexp - Raumtemperatur, PH-Wert und aktuelle Beschleunigung (you get the picture) interessieren mich je nach Anwendungsfall nicht - aber An/Abwesenheit schon.

Aber eine Einschränkbarkeit der Netzwerkteilnehmer im Hauptdevice (=Controller) fände ich schon charmant.

Gruß - Test folgt später.

Tom
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: sledge am 15 Mai 2018, 18:26:47
Zitat von: Wuehler am 14 Mai 2018, 21:56:03
Hi,

im ersten Post eine neue Version sowie Infos über die Anpassungen. Falls ihr noch ein upgrade auf dem USW machen könnt bitte eine Info, welcher code dabei angezeigt wird, dann baue ich eine Übersetzung ein. (1= connected; 5 = provisioning; 2-4=?; ?=upgrading)

....

Leider steht bei mir nur ein Update für den USG an - von daher kann ich Dir den Gefallen nicht tun.

Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: Wuehler am 15 Mai 2018, 20:25:24
OK, einigen wir uns auf Unentschieden  ;)
Vorschlag (gilt nur für Clients):
- Modul UnifiClients.pm
- kann mehrere Clients mit den zugehörigen Readings anzeigen
- kann per RegExp eingeschränkt werden
- es kann mehrere Clients-Devices geben mit unterschiedlichen RegExp
  - Problem: Es entsteht ggf. recht viel Overhead in fhem.pl, wenn jeder client einzeln verarbeitet wird (60x Dispatch()-Funktion bei 60 Clients)
  - Man braucht ein zusätzliches Attribut in UnifiClients.pm: UpdateOrder, da eine Nachricht nur genau von einem Clients-Device verarbeitet werden wird (falls ein Client bei mehreren RegExp positiv sein würde und man z.B. eine ClientsRest mit RegExp .* haben möchte (welches vermutlich durch autocreate eh immer wieder angelegt werden wird))

Hört sich nach viel Forschungsarbeit an. Werde daher vielleicht doch erstmal ein Attribut "clientList" im Unifi-Modul einführen, mit der man die Readings auf bestimmte Clients einschränken kann.

Ausserdem muss ich mir einen Weg überlegen, wie man die Änderungen langsam und schadlos ins Update bringt.

VG,
Dirk
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: roedert am 15 Mai 2018, 20:40:00
Ich hatte das irgendwie anders mit dem Regex gemeint.
Das Unifi-Modul erstellt automatisch für jeden einzelnen Client ein Device (genau wie momentan für jeden einzelnen Switch).
Um die Übersicht zu behalten kann man aber zB beim UniFi-Device angeben sowas attr UniFi ignoreclient iPhone.*
Dies verhindert, das für Clients die mit iPhone beginnen kein Device automatisch erstellt wird.
Oder umgekehrt - man muss angeben für welche Clients automatisch ein Device erstellt werden soll.
attr UniFi autocreateclient iPhone.*
In jedem einzelnen Client-Device sind dann die Readings, die es momentan (noch) im UniFi-Device gibt:
state
accesspoint
essid
hostname
last_seen
snr
uptime

Sind natürlich alles nur meine laienhaften Gedanken, inwieweit sich das in der Form technisch umsetzen lassen würde habe ich keine Ahnung.
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: Wuehler am 15 Mai 2018, 23:42:29
Das würde für alle mit Gast-WLAN bedeuten, dass sie die Liste andauernd um den nächsten Besucher oder Paketboten der sein Handy auf ,,nutze jedes WLAN" eingestellt hat erweitern müssen. DA die je nach Handytyp einen Hostname haben kann man nichtmal alle Mac-Adressen wegfiltern.
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: sledge am 16 Mai 2018, 19:55:06
Für jeden "Netzteilnehmer" hier im Haus mehr oder minder automatisch ein Device in FHEM angelegt zu bekommen - eher ungern.

Der UNIFI-Controller bietet sehr viele Informationen - sowohl zu seinen eigenen Devices (Device, Port, Stromverbrauch usw) als auch zu den Netzteilnehmern. Egal wo man diese Informationen jetzt verwaltet - bei größeren Netzwerken wird das schnell unübersichtlich - entweder durch die schiere Anzahl der Readings in einem Device (aktuelle Implementierung) oder durch eine Unmenge von Devices, die automatisch angelegt werden (der Ansatz von roedert).

Unsere beiden Ansätze stimmen insofern überein, als das ein Eindämmen dieser Informationsflut sinnvoll erscheint.

Mein Ansatz beruht auf folgender Annahme:


Getreu des KISS-Prinzips halte ich die bisherige Implementierung (clientbezogene Readings in einem zentralen Device zusammentragen) für vollkommen ausreichend - Performanceaspekte noch nicht betrachtet. Allein aus Gründen der Übersichtlichkeit fände ich es schön, wenn man die Readings je Netzteilnehmer "konfigurieren" könnte, also aus der vollständigen Liste je Device


sind doch idR nur wenige Readings interessant. In meinem Fall vermutlich


zum Zwecke der Anwesenheitserkennung.

Könnte ich jetzt die anderen 5 Readings via regexp ausblenden, hätte ich die Datenmenge im zentralen Device bereits um rund 70% reduziert.

Detaillierte Auswertungen / Informationen kann ich ja nachwievor auch in FHEM extrahieren mit "get <unifi> clientdata <clientname", wenn ich die Info in FHEM weiterverarbeiten möchte.

Just my 2 cts.

Gruß,

Tom

Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: Wuehler am 16 Mai 2018, 20:05:50
Zitat von: sledge am 16 Mai 2018, 19:55:06Readings je Netzteilnehmer "konfigurieren" könnte
Da wird die Konfiguration aber komplex, wenn man je Netzteilnehmer eine eigene config machen möchte. Wenn dann für alle dieselben Readings.

Komme in der nächsten Zeit eh nicht dazu. Erstmal den UnifiSwitch fertig machen. Oder jemand anders schickt nen patch.
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: roedert am 16 Mai 2018, 20:37:49
Zitat von: sledge am 16 Mai 2018, 19:55:06
Unsere beiden Ansätze stimmen insofern überein, als das ein Eindämmen dieser Informationsflut sinnvoll erscheint.

Richtig, und dafür wurden ja schon die beiden Möglichkeiten genannt:
- per Regex ausschliessen was nicht automatisch angelegt werden soll
- per Regex angeben, was automatisch angelegt werden soll

3. Variante wäre Clients gar nicht automatisch anzulegen, sondern nur manuell.

Unabhängig davon, ob nun ein Device pro Netzclient implementiert wird oder nicht, wäre es auch sinnvoll in der jetzigen Implementierung Clients filtern zu können um dort die Anzahl der Readings zu begrenzen.
Bei mir zB sind es so um die 50 Clients, interessant sind jedoch nur die beiden iPhones für die Anwesenheitserkennung.
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: sledge am 16 Mai 2018, 20:40:27
Zitat von: Wuehler am 16 Mai 2018, 20:05:50
Da wird die Konfiguration aber komplex, wenn man je Netzteilnehmer eine eigene config machen möchte. Wenn dann für alle dieselben Readings.

Genau das meinte ich auch - unsaubere Formulierung meinerseits.

Und wie gesagt: Ich bin mehr als zufrieden mit der aktuellen Implementierung - meine Vorschläge sind jammern auf hohem Niveau.
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: roedert am 16 Mai 2018, 20:49:27
Zitat von: sledge am 16 Mai 2018, 20:40:27
Und wie gesagt: Ich bin mehr als zufrieden mit der aktuellen Implementierung - meine Vorschläge sind jammern auf hohem Niveau.

Absolute Zustimmung, das ist schon jetzt ein tolles und nützliches Modul. Ganz großen Dank und Respekt dafür!
Ich oder wir "meckern" hier nicht, sondern wollen unterstützen/diskutieren welche sinnvollen Ideen, Änderungen, Optimierungen oder was auch immer wir noch beisteuern können solange du Zeit, Lust und Spaß daran hast das Modul weiter zu entwickeln und zu pflegen.
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: Wuehler am 16 Mai 2018, 21:38:35
@roedert: Danke, und habe ich auch so verstanden. Auch wenn es vielleicht anders angekommen ist. Der Dank geht übrigens auch an rapster, der den größten Teil entwickelt hat.

Aktuell ist dieser Thread etwas vom Thema UnifiSwitch weggekommen. Vorschlag daher: Erstmal den UnifiSwitch fertigstellen und dann in einem neuen Thread das Thema UnifiClients nochmal neu aufgreifen. Ich habe durch die Diskussion einige Ideen mitbekommen und muss bei manchen erstmal schauen, wie sie umsetzbar sind. Ggf. dann auch erstmal nur mit einem einfachen Readings-Attribut am Controller-Device.
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: der-Lolo am 17 Mai 2018, 06:06:55
Ich bin nicht sicher ob es bei den Switches auch so ist - aber bei den APs gibt es noch den Zustand Isolated, scheint mir der fall zusein wenn ein AP per Kabel nicht erreichbar ist - aber noch eine Funkverbindung zu einem anderen AP hat.
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: Christian Uhlmann am 17 Mai 2018, 07:23:03
Zitat von: der-Lolo am 17 Mai 2018, 06:06:55
Ich bin nicht sicher ob es bei den Switches auch so ist - aber bei den APs gibt es noch den Zustand Isolated, scheint mir der fall zusein wenn ein AP per Kabel nicht erreichbar ist - aber noch eine Funkverbindung zu einem anderen AP hat.
Ja, das sollte im JSON der Status 11 sein
Die anderen habe ich aber bisher noch nicht ermitteln können
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: roedert am 17 Mai 2018, 13:09:58
Dass das generelle Anlegen eines Devices pro Switchport "Unsinn" bzw. Overkill wäre, waren wir uns ja eigentlich ziemlich einig.
Ist aber die Frage ob es nicht optional sinnvoll wäre, ein "(PoE-)Switchport-Device" manuell anlegen zu können, welches dann auf die set-Befehle on und off versteht.
Beispiel: Ein Kamera hängt an Port 7 eines Switches.
So könnte ich ein Device Kamera definieren unter Angabe des Switches und des Ports und dieses dann direkt mit "set Kamera off" ausschalten.
Geht natürlich mit "set Switch 7 poeMode off" genauso - "set Kamera off" ist aber natürlich übersichtlicher. Und wenn sich der Switch/Port an dem die Kamera angeschlossen ist mal ändert muss ich das nur im Kamera-Device anpassen und nicht über all wo evtl "set switchname portnummer....." steht.
Vielleicht geht dies aber auch anders mit bestehenden FHEM-Mitteln umzusetzen, mit struct oder anderen Helferlein - das habe ich mir noch nicht angeschaut.
Ein dummy und dazu passendes notify ginge natürlich, sind aber auch schon wieder 2 Objekte.

Wie gesagt ... nur ein Denkanstoß. Ob und mit wieviel Aufwand dies realisierbar ist, kann ich nicht einschätzen.
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: Wuehler am 17 Mai 2018, 14:02:16
Moin,

Versuch dazu mal einen cmdAlias anzulegen:
https://wiki.fhem.de/wiki/Cmdalias (https://wiki.fhem.de/wiki/Cmdalias)

Ist denke ich eine bessere Lösung als ein eigenes port-device.
Inetwa so:
define setkam cmdalias .* AS set MySwitch 7 $EVTPART1
Müsste dann mit
setkam on
Bzw.
setkam off
bzw.
setkam auto

aufrufbar sein.
Dann musst du beim Umzug der Kamera auch nur den cmdAlias anpassen.

VG,
Dirk
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: Wuehler am 27 Mai 2018, 17:13:37
Hallo zusammen,

Im Anhang des ersten Posts eine neue Version 0.90 des UnifiSwitch-Moduls (und Unifi-Moduls).
Meiner Meinung nach wäre das Modul für den UnifiSwitch jetzt erstmal soweit fertig, dass es offiziell bereitgestellt werden könnte.

Bitte nochmal testen. Da ich immer noch nicht der perl-Experte bin fänd ich es Klasse, wenn jemand mal ein Review des neuen Moduls sowie der Anpassungen im Unifi-Moduls durchführen könnte, bevor es dann offiziell wird.

Aktuell funktioniert das Modul nur für USWs. Für den NanoSwitch weiß ich nicht, ob der als Model ebenfalls usw sendet. Für alle anderen Geräte wäre denke ich ein weiteres Submodul/physisches Device richtig, oder es bleibt im Controller-Device.

Danke und viele Grüße,
Dirk
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: roedert am 29 Mai 2018, 02:14:49
Ich bin diese Woche noch unterwegs, leider hat sich zu Hause irgendwie das Developmentsystem aufgegangen.
Somit komme ich erst nächste Woche zum Testen.
Aber trotzdem schonmal ein großes Danke an dich für die Umsetzung.
Ist die Funktionalität des Unifii-Moduls eigentlich identisch geblieben, so dass man die beiden Files auch offiziell einchecken könnte ohne dass existierende Konfigurationen evtl nicht mehr funktioniere könnten?
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: Wuehler am 29 Mai 2018, 07:07:17
Moin,
Ja, ist erstmal identisch. Gibt nen Logeintrag wenn man Set poeMode verwendet, als Hinweis, dass man das neue Modul nutzen soll. Irgendwann baue ich die doppelten Funktionen dann aus.
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: Wuehler am 10 Juni 2018, 17:43:35
Hallo zusammen,

ich habe das Modul jetzt eingecheckt. Morgen dann im Update.
Inhalte siehe erster Post in diesem Thread.

VG, Dirk
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: roedert am 11 Juni 2018, 11:56:05
Sorry, bin irgendwie nicht zum Testen gekommen .... außerdem hatte sich das Testsystem "verabschiedet".
Da du das Modul aber jetzt ja auch offiziell eingepflegt hast, habe ich es heute gleich produktiv geladen ... und es sieht alles gut aus :-)

Großen Dank nochmal an Dich!
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: Wuehler am 11 Juni 2018, 12:08:22
Danke für das Feedback. Geht mir dann gleich besser, wenn es bei euch läuft und keine Fehler kommen. Ein wenig soannend ist es bei größeren Anpassungen ja immer  ;)
Musste jetzt mal eingecheckt werden, da ich neue kleine Anfirderungen nicht im alten Modul einbauen wollte.
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: roedert am 12 Juni 2018, 00:39:32
Ich wollte gerade meine POEmode-Befehle vom Unifi-Objekt auf das entsprechende UnifiSwitch-Objekt umziehen. Dabei fiel mir auf dass der Syntax 1:1 vom Unifi-Modul übernommen wurde.
set <name> poeMode <name|mac|id> <port> <off|auto|passive|passthrough|restart>
Aber wozu muss ich jetzt nochmal <name|mac|id> für den Switch angeben, das set bezieht sich doch jetzt schon schon durch das neue Objekt auf einen festgelegten Switch?
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: roedert am 12 Juni 2018, 00:49:41
Auch könntest du die Doku evtl. ein wenig aussagekräftiger anpassen, ich war gerade am rätseln was denn poe_current und poe_power sei ..... current ist der Strom in mA, power ist die Leistung in W.

Hab auch gerade nach den richtigen englischen Begriffen gesucht - kann doch nicht sein dass in englisch Strom und Leistung beides "power" heisst?


Readings

Note: All readings generate events. You can control this with these global attributes.
Each port has the readings name and state. POE-ports have more readings.
name - The name of the port as defined in UnifiController.
state - The connection state of the port. Can be disconnected or in Mbps/Gbps.
poe_current - The current power-usage.
poe_mode - The poe-mode of the port.
poe_power - The power of the port.
poe_voltage - The voltage of the port.
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: Wuehler am 12 Juni 2018, 08:07:36
Zitat von: roedert am 12 Juni 2018, 00:39:32
set <name> poeMode <name|mac|id> <port> <off|auto|passive|passthrough|restart>
Das ist auch nur ein Fehler in der Doku. Im code habe ich <name|mac|id> ausgebaut, in der Doku leider übersehen.
Passe die Doku dann zeitnah mal an.
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: Wuehler am 13 Juni 2018, 12:56:01
@roedert: funktioniert die Umstellung des pie-Mode auf den Switch?
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: roedert am 13 Juni 2018, 14:53:16
Ja klar, alles bestens  :D
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: Wuehler am 23 Juni 2018, 13:50:35
Hallo,

morgen im Update die Korrektur der commandref sowie 2 neue states im Mapping: upgrading und managed by other.

Ich hoffe, es hat niemand zwei Unifi-Controller im selben Netz an ein FHEM angebunden. Das "Managed by other" könnte dann interessant werden, da vermutlich beide Unifi-Devices dann dasselbe UnifiSwitch-Device updaten würden. Anpassen werde ich daran aber erst etwas bei Bedarf, da es alternative Lösungsmöglichkeiten gibt.

Schönes Wochenende,
Dirk
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: der-Lolo am 30 Juni 2018, 07:42:53
Guten Morgen Wuehler,
ich habe folgendes im Log:
2018.06.18 19:36:38 3: UnifiController (UnifiSwitch_Parse) - return: UNDEFINED UnifiSwitch_SwitchSchaltschrank UnifiSwitch SwitchSchaltschrank
...
2018.06.30 07:34:31 3: UnifiController (UnifiSwitch_Parse) - return: UNDEFINED UnifiSwitch_SwitchSchaltschrank UnifiSwitch SwitchSchaltschrank


im Abstand von etwa 30sekunden.
FHEM läuft bei mir auf einer Synology DiskStation oft für eine weile nahezu unbeobachtet - die Hardware verträgt also ein bisschen was.

Ich habe zwar einen UnifiSwitch im Netzwerk - aber sehe aktuell keine verwendung für das Switch Modul.
Es kann doch nicht richtig sein das ich den Switch definieren muss nur weil er im Netzwerk ist, oder?

Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: der-Lolo am 30 Juni 2018, 08:15:45
Um nun den Spuk im Log zu beenden habe ich gedacht ich definiere den Switch einfach...
In der ComandRef findet sich aber kein hinweis zu UnifiSwitch - auch auf den ersten Seiten hier im Thread finde ich keine Beispielkonfiguration. Im FHEMwiki gibt es auch nichts über Unifi
Wie lege ich nun also einen Switch an?

Eigentlich müsste ich Laub haken und Rasen mähen ;-)

Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: sledge am 30 Juni 2018, 13:01:09
Zitat von: der-Lolo am 30 Juni 2018, 08:15:45
Um nun den Spuk im Log zu beenden habe ich gedacht ich definiere den Switch einfach...
In der ComandRef findet sich aber kein hinweis zu UnifiSwitch - auch auf den ersten Seiten hier im Thread finde ich keine Beispielkonfiguration. Im FHEMwiki gibt es auch nichts über Unifi
Wie lege ich nun also einen Switch an?

Eigentlich müsste ich Laub haken und Rasen mähen ;-)

Meine drei Switche wurden automatisch angelegt - da musste ich "nichts" machen. Klappt(e) wunderbar. Das ewinzige, was mir bei Dir auffällt, ist ein recht langer Name - meine sind deutlich kürzer.

Und die einzigen Meldungen, die ich dann habe, sind die Update-Meldungen vom Modul:

2018.06.24 10:35:49 1: UPD FHEM/74_UnifiSwitch.pm


Das mit Rasenmähen und Laub harken - guter Hinweis. Ist zwar gerade Mittagsruhe, aber das ist ja egal ;)

Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: der-Lolo am 30 Juni 2018, 16:54:56
Das lag am deaktiviertem autocreate...
Jetzt ist alles gut... Mit dem Namen des Switches hing das also nicht zusammen ;-)
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: der-Lolo am 15 Juli 2018, 18:00:13
Hallo Wuehler,
wenn ich nun einen POE port per

set SwitchBuero poeMode off

ausschalte oder per

set SwitchBuero poeMode auto

einschalte bekomme ich im FHEM-Log folgendes...

2018.07.15 17:30:20 1: UnifiController (Unifi_Write) - executed with Unifi_RestJson_Send
2018.07.15 17:30:05 1: UnifiController (Unifi_Write) - executed with Unifi_RestJson_Send
2018.07.15 17:22:59 1: UnifiController (Unifi_Write) - executed with Unifi_RestJson_Send
2018.07.15 17:22:43 1: UnifiController (Unifi_Write) - executed with Unifi_RestJson_Send


Benutze ich die funktion falsch? Stimmt noch was mit meiner Installation nicht?
Warum bekomme ich diese Log Einträge unter verbose 1? Meiner meinung nach gehören dort nur wirklich kritische vorkomnisse hinein...

der vollständigkeit halber noch ein List vom Switch
Internals:
   CFGFN     
   CODE       SwitchBuero
   DEF        SwitchBuero
   IODev      UnifiController
   LASTInputDev UnifiController
   MODEL      US8P60
   MSGCNT     217
   NAME       SwitchBuero
   NR         1928
   STATE      connected
   TYPE       UnifiSwitch
   UnifiController_MSGCNT 217
   UnifiController_TIME 2018-07-15 17:57:33
   VERSION    0.91
   READINGS:
     2018-07-15 17:57:33   port_01_name    Uplink
     2018-07-15 17:57:33   port_01_state   1000 Mbps
     2018-07-15 17:57:33   port_02_name    Port 2
     2018-07-15 17:57:33   port_02_state   disconnected
     2018-07-15 17:57:33   port_03_name    Port 3
     2018-07-15 17:57:33   port_03_state   disconnected
     2018-07-15 17:57:33   port_04_name    Port 4
     2018-07-15 17:57:33   port_04_state   disconnected
     2018-07-15 17:57:33   port_05_name    GardenDoorESP
     2018-07-15 17:57:33   port_05_poe_current 6.83
     2018-07-15 17:57:33   port_05_poe_mode auto
     2018-07-15 17:57:33   port_05_poe_power 0.33
     2018-07-15 17:57:33   port_05_poe_voltage 48.13
     2018-07-15 17:57:33   port_05_state   100 Mbps
     2018-07-15 17:57:33   port_06_name    Port 6
     2018-07-15 17:57:33   port_06_poe_current 0.00
     2018-07-15 17:57:33   port_06_poe_mode auto
     2018-07-15 17:57:33   port_06_poe_power 0.00
     2018-07-15 17:57:33   port_06_poe_voltage 0.00
     2018-07-15 17:57:33   port_06_state   disconnected
     2018-07-15 17:57:33   port_07_name    Port 7
     2018-07-15 17:57:33   port_07_poe_current 0.00
     2018-07-15 17:57:33   port_07_poe_mode auto
     2018-07-15 17:57:33   port_07_poe_power 0.00
     2018-07-15 17:57:33   port_07_poe_voltage 0.00
     2018-07-15 17:57:33   port_07_state   disconnected
     2018-07-15 17:57:33   port_08_name    Port 8
     2018-07-15 17:57:33   port_08_poe_current 0.00
     2018-07-15 17:57:33   port_08_poe_mode auto
     2018-07-15 17:57:33   port_08_poe_power 0.00
     2018-07-15 17:57:33   port_08_poe_voltage 0.00
     2018-07-15 17:57:33   port_08_state   disconnected
   usw:
     _id        5b4b4fe6e4b0bc41424d8c06
     _uptime    7501
     board_rev  6
     bytes      3262672
     cfgversion 7952747e8842c55a
     connect_request_ip 192.168.1.8
     connect_request_port 42128
     considered_lost_at 1531670368
     device_id  5b4b4fe6e4b0bc41424d8c06
     fw_caps    187941
     general_temperature 0
     guest-num_sta 0
     inform_authkey df79e437fdabcfc176a59090c007c6b8
     inform_ip  192.168.1.3
     inform_url http://unifi:8080/inform
     ip         192.168.1.8
     known_cfgversion 7952747e8842c55a
     last_seen  1531670230
     led_override default
     license_state registered
     mac        78:8a:20:7f:b2:d8
     model      US8P60
     name       SwitchBuero
     next_heartbeat_at 1531670276
     num_sta    0
     outdoor_mode_override default
     rx_bytes   1224602
     serial     788A207FB2D8
     site_id    594e2b79744eee3df4737ed5
     state      1
     stp_priority 32768
     stp_version rstp
     tx_bytes   2038070
     type       usw
     uplink_depth 1
     uptime     7501
     user-num_sta 0
     version    3.9.19.8123
     x_authkey  df79e437fdabcfc176a59090c007c6b8
     x_fingerprint 66:66:a8:8e:a0:7f:dd:da:79:ad:3a:9f:43:b4:7e:d2
     config_network:
       dns1       192.168.1.1
       dns2       8.8.8.8
       gateway    192.168.1.1
       ip         192.168.1.8
       netmask    255.255.255.0
       type       static
     dhcp_server_table:
     downlink_table:
     ethernet_table:
       HASH(0x1da942c8)
       HASH(0x1da8b348)
     last_uplink:
       uplink_mac f0:9f:c2:12:cd:0c
     port_overrides:
       HASH(0x1daf4c68)
       HASH(0x1daeff08)
       HASH(0x1da92e60)
     port_table:
       HASH(0x1daee070)
       HASH(0x1daf0238)
       HASH(0x1da5a510)
       HASH(0x1dae2fd0)
       HASH(0x1db248a0)
       HASH(0x1db24090)
       HASH(0x1db35f98)
       HASH(0x1dadde20)
     ssh_session_table:
     stat:
       bytes      5282713
       datetime   2018-07-15T13:45:00Z
       duration   7814000
       o          sw
       oid        78:8a:20:7f:b2:d8
       port_1-rx_broadcast 2889
       port_1-rx_bytes 2082396
       port_1-rx_multicast 4602
       port_1-rx_packets 11447
       port_1-tx_broadcast 299
       port_1-tx_bytes 1265797
       port_1-tx_multicast 4031
       port_1-tx_packets 7887
       port_5-rx_broadcast 160
       port_5-rx_bytes 79092
       port_5-rx_errors 1
       port_5-rx_packets 666
       port_5-tx_broadcast 2851
       port_5-tx_bytes 1855428
       port_5-tx_multicast 7937
       port_5-tx_packets 11603
       rx_broadcast 3049
       rx_bytes   2161488
       rx_crypts  0
       rx_dropped 0
       rx_errors  1
       rx_frags   0
       rx_multicast 4602
       rx_packets 12113
       site_id    594e2b79744eee3df4737ed5
       sw         78:8a:20:7f:b2:d8
       time       1531662300000
       tx_broadcast 3150
       tx_bytes   3121225
       tx_dropped 0
       tx_errors  0
       tx_multicast 11968
       tx_packets 19490
       tx_retries 0
     sys_stats:
       loadavg_1  1.51
       loadavg_15 1.56
       loadavg_5  1.57
       mem_buffer 0
       mem_total  262516736
       mem_used   157089792
     system-stats:
       cpu        55.9
       mem        59.8
       uptime     7501
     uplink:
       ip         192.168.1.8
       mac        78:8a:20:7f:b2:d8
       max_speed  1000
       media      GE
       name       eth0
       netmask    255.255.255.0
       num_port   8
       port_idx   1
       rx_bytes   2038070
       rx_bytes-r 257
       rx_dropped 0
       rx_errors  0
       rx_multicast 0
       rx_packets 11000
       speed      1000
       tx_bytes   1224602
       tx_bytes-r 235
       tx_dropped 0
       tx_errors  0
       tx_packets 7455
       type       wire
Attributes:
   group      Unifi
   room       99-Controller
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: Wuehler am 16 Juli 2018, 22:21:20
Moin Lolo,

Bin gerade nicht im Lande. Danke für den Hinweis. Schaue ich mir nächste Woche dann an. Ist ja nichts Priomäßiges.

Viele Grüße,
Dirk
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: roedert am 16 Juli 2018, 22:23:18
Zitat von: der-Lolo am 15 Juli 2018, 18:00:13
set SwitchBuero poeMode off

ausschalte oder per

set SwitchBuero poeMode auto

einschalte

...da fehlt doch die Portnummer!
set SwitchBuero poeMode <Port> off
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: der-Lolo am 16 Juli 2018, 22:36:04
Ja, sorry roedert - aber nur hier im post!

Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: Wuehler am 18 Juli 2018, 12:49:56
Morgen im Update ein kleiner BugFix des Unifi-Controller-Moduls mit dem richtigen Loglevel für die von Lolo genannte Meldung.
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: Eisix am 14 Februar 2019, 08:39:18
Hallo,

Ich habe eine Frage


set switch poeMode 6 off
set switch poeMode 6 auto


funktioniert!


set switch poeMode 6 restart


Funktioniert nicht!

Habe ich einen Fehler in der syntax oder ist das Kommando nicht implementiert?

Gruß
Eisix
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: Wuehler am 14 Februar 2019, 22:15:46
Hi,

Habe eben mal in den übernommenen code geschaut:

      } elsif( $setVal2 eq 'restart' ) {#TODO: Was wir hier gemacht? Funktioniert das noch?
        IOWrite($hash, "Unifi_RestJson_Send", {cmd => 'power-cycle', mac => $apRef->{mac}, port_idx => $setVal+0});

;D
Der Kommentar sagt es ja schon fast.
Muss ich mir die Tage dann mal genauer ansehen.

VG,
Dirk
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: Eisix am 15 Februar 2019, 08:52:09
Hallo,

von der App oder GUI aus funktioniert es noch, wenn dir das was hilft. Melde dich wenn ich testen soll!

Gruß
Eisix
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: Wuehler am 15 Februar 2019, 21:30:45
Hi Eisix,

das wird für mich etwas schwieriger nachzustellen. Aktuell nutze ich poe nicht. Power-cycle kann man aber nur auswählen, wenn der Port auch Strom zieht. Kann das also gerade auf der Unifi-UI nicht ausprobieren. Kannst du mal mit den Entwicklertools des Browsers mitschneiden, welche URL beim restart eines ports aufgerufen wird uns welches json gesendet wird.

Danke,
Dirk
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: Eisix am 16 Februar 2019, 16:02:13
Hallo,

Unifi Server Version ist: unifi_5.10.17

Bin kein Experte für die Entwicklertools

Das ist der HTML Code der ausgeführt wird zum restart.

<tr class="clickable" collection-view-repeat="model in switchPropertiesPortListCtrl.view.getModels()" collection-view-repeat-watch-all="switchPropertiesPortListCtrl.columnStore.getColumns()" ng-attr-id="portRow{{switchPropertiesPortListCtrl.model.get('_id')}}-{{::model.get('port_idx')}}" ng-class="{'is-row-selected': highlightedPort === model.get('port_idx')}" ng-click="toggleHighlightedPort(model)" id="portRow5ada26b692e74007bd290ff6-1"><!----><td class="portCheckbox ubntTableCell--checkbox" ng-if="attrs.withBatchEdit" ng-show="(switchPropertiesPortListCtrl.model | canConfigureDevice)"><input class="mr-0" type="checkbox" ng-checked="switchPropertiesPortListCtrl.isBatchEditSelected(model)" ng-click="switchPropertiesPortListCtrl.toggleBatchEdit(model); $event.stopPropagation();" ng-disabled="!isPortSelectable({model: model})"></td><!----><!----><!----><td class="portName type-ellipsis" ng-if="::switchPropertiesPortListCtrl.isColumnVisible('name')" style="max-width: 200px">Port 1</td><!----><!----><td class="portStatus" ng-if="::switchPropertiesPortListCtrl.isColumnVisible('status')"><div class="positionRelative ubntPort unifiPortDiagramPort clickable ubntPort--withBorder ubntPort--1000" ng-class="{    'clickable': !isDisabled &amp;&amp; !!portModel,    'is-selected': isSelected,    'ubntPort--withBorder': withBorder,    'ubntPort--disconnected': portModel.get('enable') &amp;&amp; !portModel.get('up'),    'ubntPort--100': portLedColor === 'amber',    'ubntPort--1000': portLedColor === 'green',    'ubntPort--10000': portLedColor === 'white',    'unifiPortDiagramPort--has2': icons.length === 2,    'unifiPortDiagramPort--has3': icons.length === 3,    'is-spacer': isSpacer  }" ng-mouseenter="isActive = true" ng-mouseleave="isActive = false" unifi-switch-port-diagram-model="switchPropertiesPortListCtrl.model" unifi-switch-port-diagram-port-model="model" unifi-switch-port-diagram-with-border="true"><!----><div class="unifiPortDiagramPort__icon d-flex justify-center align-center" ng-switch="::portDiagramIconCtrl.icon" ng-repeat="icon in icons" unifi-port-diagram-icon="icon" unifi-port-diagram-icon-class="['ubntIcon']"><!----><!----><!----><!----><!----><!----><!----><!----><svg ng-switch-when="uplink" ng-class="{&quot;ubntIcon&quot;:true}" viewBox="0 0 306 306" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" class="ubntIcon"><polygon points="35.7 247.4 153 130.1 270.3 247.4 306 211.7 153 58.7 0 211.7 " fill="currentColor"></polygon></svg><!----><!----></div><!----><!----></div></td><!----><!----><!----><!----><td class="portPoe" ng-if="attrs.isPoeSupported &amp;&amp; switchPropertiesPortListCtrl.isColumnVisible('poe_mode')"></td><!----><!----><td class="portActions ubntTableCell--withActions ubntTableCell--smash"><div class="ubntTableCell__actions ubntTableCell__actions--inline"><div class="ubntButtonGroup ubntButtonGroup--cozy mr-2"><!----><button class="ubntButton ubntButton--link" ng-if="(switchPropertiesPortListCtrl.model | canConfigureDevice) &amp;&amp; !model.get('masked') &amp;&amp; !model.get('attr_no_edit')" ng-click="switchPropertiesPortListCtrl.edit(model)" title="Edit"><span class="button__icon icon ubnt-icon--pencil"></span></button><!----><!----><!----></div></div></td></tr>


Und das wurde dann in der Console angezeigt.

components.v5.10.17.1.js:62 XHR finished loading: POST "https://192.168.1.1:8443/api/s/default/cmd/devmgr".
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
$digest @ components.v5.10.17.1.js:62
$apply @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
dispatch @ components.v5.10.17.1.js:136
d.handle @ components.v5.10.17.1.js:136
18XHR finished loading: GET "<URL>".
components.v5.10.17.1.js:62 XHR finished loading: GET "https://192.168.1.1:8443/api/s/default/stat/device/fc:ec:da:04:28:c3".
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
$digest @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
completeTask @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
setTimeout (async)
p.defer @ components.v5.10.17.1.js:62
$evalAsync @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
c @ components.v5.10.17.1.js:62
e @ components.v5.10.17.1.js:62
z @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
g @ components.v5.10.17.1.js:62
_resolve @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
requestAnimationFrame (async)
p @ components.v5.10.17.1.js:62
n @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
p @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:7
push @ components.v5.10.17.1.js:7
leave @ components.v5.10.17.1.js:62
n.leave @ base.v5.10.17.1.js:1
(anonymous) @ components.v5.10.17.1.js:91
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
$digest @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
completeTask @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
setTimeout (async)
p.defer @ components.v5.10.17.1.js:62
$evalAsync @ components.v5.10.17.1.js:62
i @ components.v5.10.17.1.js:82
dispatch @ components.v5.10.17.1.js:136
d.handle @ components.v5.10.17.1.js:136
components.v5.10.17.1.js:62 XHR finished loading: GET "https://192.168.1.1:8443/api/s/default/stat/sta".
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
$digest @ components.v5.10.17.1.js:62
$apply @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
components.v5.10.17.1.js:62 XHR finished loading: GET "https://192.168.1.1:8443/api/self/sites".
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
$digest @ components.v5.10.17.1.js:62
$apply @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
components.v5.10.17.1.js:62 XHR finished loading: GET "https://192.168.1.1:8443/api/s/default/stat/health".
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
$digest @ components.v5.10.17.1.js:62
$apply @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
components.v5.10.17.1.js:62 XHR finished loading: GET "https://192.168.1.1:8443/api/s/default/get/setting".
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
$digest @ components.v5.10.17.1.js:62
$apply @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
components.v5.10.17.1.js:62 XHR finished loading: GET "https://192.168.1.1:8443/api/s/default/stat/sysinfo".
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
$digest @ components.v5.10.17.1.js:62
$apply @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
components.v5.10.17.1.js:62 XHR finished loading: GET "https://192.168.1.1:8443/api/s/default/stat/widget/warnings".
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
$digest @ components.v5.10.17.1.js:62
$apply @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
components.v5.10.17.1.js:62 XHR finished loading: GET "https://192.168.1.1:8443/api/s/default/cnt/alarm?archived=false".
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
$digest @ components.v5.10.17.1.js:62
$apply @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
components.v5.10.17.1.js:62 XHR finished loading: GET "https://192.168.1.1:8443/api/s/default/stat/current-channel".
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
$digest @ components.v5.10.17.1.js:62
$apply @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
components.v5.10.17.1.js:62 XHR finished loading: GET "https://192.168.1.1:8443/api/s/default/stat/ccode".
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
$digest @ components.v5.10.17.1.js:62
$apply @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
components.v5.10.17.1.js:62 XHR finished loading: GET "https://192.168.1.1:8443/status".
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
$digest @ components.v5.10.17.1.js:62
$apply @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
components.v5.10.17.1.js:62 XHR finished loading: GET "https://192.168.1.1:8443/api/s/default/rest/networkconf".
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
$digest @ components.v5.10.17.1.js:62
$apply @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
components.v5.10.17.1.js:62 XHR finished loading: GET "https://192.168.1.1:8443/api/s/default/rest/wlangroup".
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
$digest @ components.v5.10.17.1.js:62
$apply @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
components.v5.10.17.1.js:62 XHR finished loading: GET "https://192.168.1.1:8443/api/s/default/rest/wlanconf".
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
$digest @ components.v5.10.17.1.js:62
$apply @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
components.v5.10.17.1.js:62 XHR finished loading: GET "https://192.168.1.1:8443/api/s/default/rest/tag".
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
$digest @ components.v5.10.17.1.js:62
$apply @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
components.v5.10.17.1.js:62 XHR finished loading: GET "https://192.168.1.1:8443/api/s/default/rest/portconf".
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
$digest @ components.v5.10.17.1.js:62
$apply @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
components.v5.10.17.1.js:62 XHR finished loading: GET "https://192.168.1.1:8443/api/s/default/rest/radiusprofile".
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
$digest @ components.v5.10.17.1.js:62
$apply @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
components.v5.10.17.1.js:62 XHR finished loading: GET "https://192.168.1.1:8443/api/s/default/stat/device".
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62
$digest @ components.v5.10.17.1.js:62
$apply @ components.v5.10.17.1.js:62
(anonymous) @ components.v5.10.17.1.js:62



Hilft dir das irgendwie weiter? Wenn nicht dann sehe ich zwei Möglichkeiten entweder versuchst du mir es genauer zu erklären oder wir machen eine Teamviewer-session und du machst es selbst.

Gruß
Eisix
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: Wuehler am 16 Februar 2019, 17:22:34
Hi,

nee, reicht leider nicht ;-)
Für Chrome in den Entwicklertools:
- Console auswählen
- Bei den Einstellungen der Console (rechts das Zahnrad) muss ein Haken sein bei "Log XMLHttpRequests"
- Dann klickst du dich bis zur Stelle mit dem restart-Link, aber noch nicht draufdrücken
- In der Console ein clear (Stop-Symbol) ausführen
- Im Reiter Network ebenfalls clear
- zurück zur Console
- Jetzt auf den restart link klicken
- In der console wird es mehrere Einträge geben, der erste ist Interessant, müsste auf /default/rest/device/...ID... enden
- In der console auf diesen Eintrag klicken, du kommst nach Network
- dort rechte Moustaste-> copy -> copy as PowerShell
- Das Ergebnis hier posten.

Viel Erfolg,
Dirk
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: Wuehler am 19 Februar 2019, 08:01:47
Hi Eisix,

versuch mal die Datei im Anhang. Habe mal schnell etwas geändert, bin mir aber nicht wirklich sicher.

Gruß,
Dirk
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: Eisix am 19 Februar 2019, 19:52:02
Hallo,

sehe keine Änderung. Verbose 5 beim Switch und Server bring auch nichts. Wird nur das set Kommando angezeigt aber kein Error.

Gruß
Eisix
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: Wuehler am 20 Februar 2019, 08:33:20
Das wäre ja dann auch zu einfach gewesen.  ;)
Ich werde mal nen AP abbauen und an meinen Switch hängen, geht ja eigentlich schnell. Dann kann ich das Problem nachstellen.
Wenn ich es richtig sehe ist es für dich aber auch nicht super dringend, oder?
Mich würde dein Anwendungsfall interessieren. Wann braucht man einen pie-piwer-cycle?

Viele Grüße,
Dirk
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: Eisix am 20 Februar 2019, 10:06:36
Habe ein Allnet Poe Tablet in die Wand gebaut und da kommt man so schlecht an den Powerbutton  :-\.
Momentan mache ich ein off und auto des Ports wenn ich einen reboot brauche. Ich weiss nicht ob das wirklich das gleiche ist. Gehe mal davon aus das off einfach den Strom wegnimmt, ob der Powercycle vorher noch eine Art shutdown schick??

Da das aber nicht so oft vorkommt ist es nicht dringend, lass dir Zeit.

Gruß
Eisix


Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: TNT0068 am 21 Februar 2019, 12:51:42
also was ich gesehen habe ist.
Bei einem Restart nimmt er den Power weg wartet paar Sekunden und gibt wieder Power.
Ich überlege mirauch  ein Allnet Tablet zuholen, wollte dann die Reboots etc über AMAD lösen.
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: Wuehler am 22 Februar 2019, 17:11:44
Hallo Eisix,

kann es leider hier nicht nachstellen, da mein kleiner switch kein passivePoe kann, mein AP das aber braucht.
Habe daher nochmal tiefer in den code geschaut und noch einen Fehler gefunden. Du musst beide Module (UnifiSwitch und Unifi) runterladen und einspielen.
Falls es nicht funktioniert bitte auch beim Unifi ein verbose=5 machen, und dann den restart-Befehl ausführen.

Viel Erfolg,
Dirk

@TNT0068: Gute Idee und ggf. auch schonender als den Strom einfach wegzunehmen.
Titel: Antw:neues Modul: 74_UnifiSwitch
Beitrag von: Eisix am 22 Februar 2019, 21:52:51
Hallo Dirk,

funktioniert! Danke für die schnelle Umsetzung. 

Die AMAD Variante muss ich mir auch mal anschauen sollte definitiv gesünder sein solange der Service noch läuft.

Gruß
Eisix
Titel: Modul: 74_UnifiSwitch
Beitrag von: Wuehler am 23 Februar 2019, 15:20:32
OK, habe dann auch gleich die Methoden zum Switch aus dem Unifi-Modul ausgebaut. Muss ja nicht doppelt vorhanden sein.
Morgen stelle ich dann beide Module für das Standardupdate bereit.
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Wuehler am 26 Juni 2019, 08:33:03
Moin,

zur Idee, weitere Readings im Modul anzuzeigen (konkret die Temperatur) habe ich erstmal bei den anderen FHEM-Entwicklern nachgefragt (https://forum.fhem.de/index.php/topic,101792.0.html), ob es zu customReadings schon so etwas wie ein Standardattribut vorhanden ist. Mal schauen, was da so kommt.

VG,
Dirk
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Dersch am 26 Juni 2019, 08:59:21
Dann klinke ich mich hier auch mal mit ein :)

Also neben Temp wäre ein TOTAL Power reading noch nützlich. Pro Port hast du ja schon drin.

Allerdings finde ich im JSON nur "total_max_power":140 und der Wert ist bei meinen beiden Switches identisch. Das kann aber nicht sein. Ich frage mich daher was der Wert 140 aussagt. Evtl wird der Gesamtverbrauch gar nicht ausgegeben und nur im Unifi Controller kumuliert angezeigt.

Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Wuehler am 28 Juni 2019, 07:09:01
Moin Dersch,

ich denke es wird noch etwas dauern, da dieses Thema im fhem-Umfeld meiner Meinung nach öfters auftritt und ggf. eine allgemeingültige Lösung sinnvoll ist. Außerdem beginnen bald für mich die Ferien.
Bis dahin könntest du dir ein userreading erstellen oder das Modul lokal editieren.

VG,
Dirk
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Dersch am 28 Juni 2019, 11:21:06
Klar, danke für deine Mühe!
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: PatrickR am 22 Juli 2019, 20:10:26
Hi!

Erstmal danke für das Modul. Ist aktuell geplant, einen Port über das Modul deaktivierbar zu machen, z. B. über das Portprofil? (Gemeint ist nicht die Deaktivierung von PoE).

Patrick
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Wuehler am 23 Juli 2019, 14:22:47
Hallo Patrick,

momentan ist so eine Erweiterung nicht geplant. Ich nehme aber gerne einen Patch entgegen ;)
Welchen Anwendungsfall hast du denn dafür? Evtl. kann man das auch über Funktionen des UnifiClient abbilden.

VG,
Dirk
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: PatrickR am 24 Juli 2019, 08:18:39
Hi!

Ich mache mir gerade Gedanken über frei zugängliche Ethernetports, z. B. Bei Outdoor-APs. Ein subootimaler Workaround wäre, beim Disconnect des APs den Port zu deaktivieren.

Ich hoffe, ich finde noch eine vernünftige (d. h. sichere) Lösung, aber bislang bin ich nicht fündig geworden.

Patrick


Von unterwegs gesendet.
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Wuehler am 26 Juli 2019, 19:36:50
Hi,

ich habs mir mal kurz angesehen und dir einen schnellen "Workaround" implementiert, der alte Funktionen des Moduls wiederverwendet (siehe Anhang).

set <name> disablePort <port>
Only visible when Attr portProfileDisableID is set.
Set the PortProfile from Attr portProfileDisableID for <port>.

attr portProfileDisableID
Quick Workaround for special purposes: Must contain the ID off the disable-PortConfig. Then set disablePort can be used.
The ID can be found with get portOverrides.
To enable the port the UnifiController-Software must be used.

get <name> portOverrides
Show more details about the portOverrides of the switch.


Du musst also manuell einen port disablen und dir die ID dann mit get portOverrides ermitteln und im Attribut portProfileDisableID ablegen.

VG,
Dirk

@all: Ist jemand da mit einem Switch ohne POE. Würde die setter der Version gerne einmal vertesten lassen, ob die richtigen Fehlermeldungen kommen.
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: PatrickR am 26 Juli 2019, 21:08:14
Hi Wuehler,

Zitat von: Wuehler am 26 Juli 2019, 19:36:50
ich habs mir mal kurz angesehen und dir einen schnellen "Workaround" implementiert, der alte Funktionen des Moduls wiederverwendet (siehe Anhang).

besten Dank für den Fix. Leider funktioniert es bei mir irgendwie nicht.

portProfileDisableID habe ich auf 5a11cb96e4b0e1016534f3a6 gesetzt ("LAN" ist 5a11cb96e4b0e1016534f3a7). Bei set SW_Core disablePort 13 sagt das Log:
Zitat
2019.07.26 21:05:41.106 4: UniFi (Unifi_Write) - executed with Unifi_DeviceRestJson_Send
2019.07.26 21:05:41.106 5: UniFi (Unifi_DeviceRestJson_Send) - executed with {"port_overrides":[...{"portconf_id":"5a11cb96e4b0e1016534f3a7","port_idx":"12","poe_mode":"auto","name":"-frei-"},{"name":"-frei-","portconf_id":"5a11cb96e4b0e1016534f3a6","poe_mode":"auto","port_idx":"13"}...]}.
2019.07.26 21:05:41.207 5: UniFi (Unifi_DeviceCmd_Receive) - executed.
2019.07.26 21:05:41.207 5: UniFi (Unifi_DeviceCmd_Receive) - Failed! - state:'403' - msg:'Failed with HTTP Code 403.'

Patrick
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Wuehler am 26 Juli 2019, 21:22:08
Hi,

"Failed with HTTP Code 403" bedeutet "forbidden". Hat dein User Schreibrechte im UnifiController?

VG,
Dirk

Edit: Ich habe im Anhang zwei posts vorher noch kleinere Schönheitsanpassungen vorgenommen.
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: PatrickR am 27 Juli 2019, 00:37:10
Hi!

Zitat von: Wuehler am 26 Juli 2019, 21:22:08
"Failed with HTTP Code 403" bedeutet "forbidden". Hat dein User Schreibrechte im UnifiController?

Sorry. Das wars. Jetzt klappts. Danke!

Patrick
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Wuehler am 31 Juli 2019, 07:55:32
Moin,

habe das feature commited, ist im nächsten Update in der offiziellen Version.

VG,
Dirk
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: SoeK am 01 August 2019, 13:06:27
Hallo,
hab' einen 'UniFi Switch 8 POE-60W' und würde gerne den POE Mode eines Ports schalten, bekomme allerdings folgenden Fehler: 'switch has no poe-ports!'

Hatte jetzt das Unifi device auch extra nochmal neu angelegt. Der Switch wurde auch mittels Autocreate neu angelegt, allerdings mit dem STATE ??? Und auch ein get poeState liefert keine Readings.

Jemand eine Idee was ich falsch mache?
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Wuehler am 01 August 2019, 13:58:19
Hi. Schaue ich mir heute Abend an. Habe da eine Vermutung.
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Wuehler am 01 August 2019, 20:37:15
Ich hatte gerade gestern früh eine neue Version commited und dachte erst, es hängt damit zusammen, da ich evtl. ein reload des Moduls vorm letzten Test vergessen habe. Aber dem ist anscheinend nicht so. Bei mir funktioniert 'set poeMode' (auch mit einem 'UniFi Switch 8 POE-60W').

Evtl. hast du nicht lange genug gewartet. Das Unifi-Modul kommuniziert als einziges mit dem UnifiController, daher muss dieses nach dem autocreate erst noch einen Update-Zyklus durchlaufen, damit das UnifiSwitch-Modul auch Daten bekommt. Darauf weist auch dein fehlender state.
Du kannst ein update erzwingen durch 'set update' im Unifi-Modul.

Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: SoeK am 02 August 2019, 09:47:46
Danke für's nachschauen, hab' jetzt nochmal selber geschaut woran es liegen könnte und es sind wohl wie so häufig die Berechtigungen. Der User war "nur" Administrator, hab' ihn mal zum Superadmin gemacht und nun funktioniert es! Hab' leider nichts dazu gefunden was die minimalen Rechte sind, gibt's noch eine andere Option, ausser den User zum Supeeradmin zu machen?
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: ToKa am 13 April 2020, 10:01:01
Hallo zusammen,

im Unifi Controller wird bei meinem 24 Port Switch auch die Temperatur und der Zustand des Lüfters angezeigt. Ist es möglich die beiden Werte zusätzlich auszulesen und entweder im Switch oder im Controller device anzuzeigen?

Beste Grüße

Torsten
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Wolle02 am 13 April 2020, 17:41:44
Zitat von: ToKa am 13 April 2020, 10:01:01

im Unifi Controller wird bei meinem 24 Port Switch auch die Temperatur und der Zustand des Lüfters angezeigt. Ist es möglich die beiden Werte zusätzlich auszulesen und entweder im Switch oder im Controller device anzuzeigen?


Diesem Wunsch würde ich mich gerne anschließen und wenn es möglich ist, wäre die Gesamtsumme der PoE-Leistung aller Ports als Reading auch schick.

Grüße
Wolle
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: hoppel118 am 13 April 2020, 18:02:06
Zitat von: ToKa am 13 April 2020, 10:01:01
im Unifi Controller wird bei meinem 24 Port Switch auch die Temperatur und der Zustand des Lüfters angezeigt. Ist es möglich die beiden Werte zusätzlich auszulesen und entweder im Switch oder im Controller device anzuzeigen?

Das ist mir bei meinem 16 Port PoE Switch auch schonmal aufgefallen. Das wäre eine tolle Sache.

Gruß Hoppel
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Wuehler am 07 Mai 2020, 21:02:02
Moin,

im Anhang eine Version mit drei neuen Readings:

Ich hoffe alle switches haben wenigstens die Infos has_fan und has_temperature, so dass es bei niemanden zu einem Problem kommt.

          if (defined $apRef->{has_fan} && $apRef->{has_fan}){
            readingsBulkUpdate($hash,"switch_fan_level",$apRef->{fan_level});
          }
          if (defined $apRef->{has_temperature} && $apRef->{has_temperature}){
            readingsBulkUpdate($hash,"switch_general_temperature",$apRef->{general_temperature});
            readingsBulkUpdate($hash,"switch_overheating",$apRef->{overheating});
          }


Bitte Feedback, dann lade ich die Version hoch.

Zum Thema Gesamt-Power gibt es keine Info in den Daten. Das scheint sich die Oberfläche selbst zusammen zu rechnen. Meine Empfehlung daher: userReading für sich erstellen, dass alle einzelnen Ports zusammenrechnet.

Viele Grüße,
Dirk
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Wolle02 am 08 Mai 2020, 06:49:16
Zitat von: Wuehler am 07 Mai 2020, 21:02:02

Zum Thema Gesamt-Power gibt es keine Info in den Daten. Das scheint sich die Oberfläche selbst zusammen zu rechnen. Meine Empfehlung daher: userReading für sich erstellen, dass alle einzelnen Ports zusammenrechnet.


Moin Dirk,

das dachte ich mir schon, dass da keine Info von Unifi-Seite dazu kommt. Meine Anregung/Wunsch ging nur in die Richtung diese Berechnung der Gesamtsumme generell im Modul durchzuführen und als Reading anzubieten, damit nicht jeder, der diesen Bedarf hat sich selber ein Userreading anlegen muss und vorher hier immer wieder das selbe gefragt wird.

Aber ok, wahrscheinlich habe ich die Bedarfsgröße nach einem solchen Reading überschätzt.
Ich mach das mit nem Userreading.

Zunächst mal vielen Dank für deine Änderungen.

Edit: Beim US24P250 funktioniert es. Vielen Dank.

Gruß
Wolle
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Wuehler am 08 Mai 2020, 21:53:36
Was würdest du denn mit dem Reading anstellen?
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Wolle02 am 09 Mai 2020, 06:48:30
ZitatWas würdest du denn mit dem Reading anstellen?

Ich lass das in mein allgemeines Strommonitoring einfließen.
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: ToKa am 09 Mai 2020, 17:46:59
Hallo Dirk,

danke für die Umsetzung, die für den "UniFi Switch 24" prima funktioniert. Zwei Fehlermeldung habe ich noch im Log mit der neuen Version:

PERL WARNING: Argument "readings" isn't numeric in addition (+) at ./FHEM/74_UnifiSwitch.pm line 164.
PERL WARNING: Use of uninitialized value in split at ./FHEM/74_Unifi.pm line 2421.


Ich habe noch 3 Unifi Switche ohne Temperatursensor. Keine Ahnung, ob das die Fehlermeldung provoziert. Bei allen meiner Unifi Switche gibt es noch den Wert für "Memory Usage". Falls Du noch mal an das Modul musst, könntest Du diesen Wert bitte auch noch implementieren?

Beste Grüße
Torsten

Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: ToKa am 12 Mai 2020, 13:00:03
Hallo Dirk,

kannst Du die neue Version des Moduls bitte hochladen.

Gruß
Torsten
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Wuehler am 14 Mai 2020, 10:47:11
Moin,

schaue mir heute die Fehlermeldungen an und lade dann vermutlich auch hoch.
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Wuehler am 14 Mai 2020, 21:31:41
Moin,

Neue Version ist hochgeladen.

Neue Readings:

@Toka: Der Fehler
PERL WARNING: Argument "readings" isn't numeric in addition (+) at ./FHEM/74_UnifiSwitch.pm line 164.
ist darin auch behoben. Vorher ging der Befehl set clear readings nicht.

Viele Grüße,
Dirk
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: ToKa am 15 Mai 2020, 17:39:55
Perfekt und viel Dank

Gruß
Torsten
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: reibuehl am 02 September 2020, 14:53:38
Hallo,

wäre es möglich, die "Power Cycle" Funktion für PoE Ports aus der Unifi GUI in das Modul zu integrieren? Damit könnte man Systeme, die hängen, aus FHEM heraus reseten.

Gruß,
Reiner
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Wuehler am 02 September 2020, 17:40:18
Moin Reiner,
geht das nich mir set poeMode off/on?
Viele Grüße, Dirk
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: reibuehl am 03 September 2020, 07:14:30
Hallo Dirk,

poeMode sehe ich bei mir nicht in den set Befehlen oder der CommandRef. Vielleicht ist meine Version zu alt? Ich verwende die Version 3.4.0 von 74_Unifi. Wurde set poeMode später eingebaut oder muss ich da 74_UnifiSwitch.pm verwenden? Bisher habe ich nur den Kontroller per define ubnt Unifi <IP> <PORT> <USER> <PASS> angebunden.

Gruß,
Reiner
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: OdfFhem am 03 September 2020, 08:08:31
@reibuehl

Wiki sagt:
Zitat
Das Modul UnifiClient ermöglicht die Steuerung eines Unifi-Controllers durch FHEM. Wenn durch den Unifi-Controller auch ein UnifiSwitch verwaltet wird, so legt das Modul bei aktiviertem autocreate UnifiSwitch-Devices an.
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: reibuehl am 03 September 2020, 10:18:04
Oh! Die UnifiSwitch Devices hatte ich übersehen  ???

Ja, da gibt es poeMode... ich hatte das wohl irgendwie beim Controller erwartet - mein Fehler.

Danke für den Hinweis!
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: rubinho am 31 Oktober 2020, 11:55:22
@Wuehler

Ich hätte noch einen Verbesserungsvorschlag für das Modul.

Du kannst ja durch das Attribut portProfileDisableID ein Profil definieren, das man mittels Befehl disablePort aktivieren kann.
Dabei muss man ja nicht zwinged das Profil "disable" angeben. Man kann im Grunde auch den Port damit wieder einschalten.

Mein Vorschlag wäre, dass man mittels Attributen seine bevorzugten Profile anlegen kann, um dann die Möglichkeit zu haben, den Port nicht nur zu deaktivieren, sondern auch in einem Profil seiner Wahl zu aktivieren. (Ohne jedesmal das Attribut ändern zu müssen)

Grund für meine Anfrage... Ich möchte diverse Ports (Die meiner Kinder) am Tag nur für eine gewisse Zeit akivieren.

Vorab danke

Gruß
Rubinho
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Wuehler am 01 November 2020, 12:32:53
Moin,

im Anhang eine Version mit neuem setter "portProfile". Da kannst du eine ID mitgeben. Das Ganze habe ich nicht ausprobiert, da es schon ewig her ist, dass ich mich im UnifiController damit beschäftigt habe und ich gerade die Familie nicht mit Experimenten stören möchte. Also probier mal und berichte. Wenn alles funktioniert schau bitte auch mal auf die Doku und mach einen besseren Formulierungsvorschlag, damit auch Dritte verstehen was geht. Wenn man zu viel schreiben müsste kann ich das auch in einen WIKI-Artikel ablegen.

VG,
Dirk
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Andy89 am 01 November 2020, 12:51:24
Hallo an alle,
ich hätte noch eine Frage. Ich hatte es in letzter Zeit sehr oft, dass sich die externe IP Adresse meiner UDM pro geändert hat und deswegen jedes Mal ein neues UnifiSwitch Device per autocreate angelegt wurde. Habe nur ich das Problem und habe etwas falsch gemacht oder betrifft das mehr Leute?

Beste Grüße
Andy
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Wuehler am 01 November 2020, 13:06:27
Moin,

denke, dass das allen UDM-Besitzern aktuell so geht, wenn sie autocreate auf on haben. Der Code lautet folgendermaßen:

if (defined $h->{type} && (($h->{type} eq "usw") || ($h->{type} eq "udm"))){
   my $usw_name="";
   if (defined $h->{name}){
      $usw_name=makeDeviceName($h->{name});
   }else{
      $usw_name=makeDeviceName($h->{ip});
   }
   Dispatch($hash,"UnifiSwitch_".$usw_name.encode_json($h),undef); # Wenn es "UnifiSwitch_".$usw_name noch nicht gibt wird das Device durch autocreate (wenn on) angelegt
}


Bei einer UDM wird es vermutlich keinen Namen geben, oder kann man irgendwo einen eintragen?
Ansonsten mal verbose auf 5 stellen und mir die Logeinträge sende, die mit "UnifiSwitch_Parse - executed" beginnen und kurz danach die IP der UDM anzeigen.

VG,
Dirk
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Andy89 am 01 November 2020, 14:19:47
Zitat von: Wuehler am 01 November 2020, 13:06:27
Bei einer UDM wird es vermutlich keinen Namen geben, oder kann man irgendwo einen eintragen?
Ansonsten mal verbose auf 5 stellen und mir die Logeinträge sende, die mit "UnifiSwitch_Parse - executed" beginnen und kurz danach die IP der UDM anzeigen.
Hallo und danke für die schnelle Antwort.
Wäre es da nicht sinnvoll einen Namen per Attr zu übergeben oder einfach den Namen des Unifi Gerätes zu übernehmen?

welchen Teil genau brauchst du aus dem verbose 5 log?:

2020.11.01 14:09:02.417 5: unifi: dispatch UnifiSwitch_78.xx.xx.61{"num_sta":38,"syslog_key":"75afdd02bc06c1a7676beb2a72580572e79a7ceeb7c1fcf388f6715feeeb4554",[... viele Zeichen ...]
2020.11.01 14:09:02.418 5: unifi (UnifiSwitch_Parse) - executed. UnifiSwitch: Adress: 78.xx.xx.61
2020.11.01 14:09:02.419 5: unifi (UnifiSwitch_Parse) - executed. UnifiSwitch: message_json: {"num_sta":38,....[hier kommt eine Nachricht mit seeeeehr vielen Zeichen]
2020.11.01 14:09:02.420 4: unifi (UnifiSwitch_Parse) - return: UNDEFINED UnifiSwitch_78.xx.x.61 UnifiSwitch 78.x.x.61


Beste Grüße
Andy
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Wuehler am 01 November 2020, 14:37:11
Alle anderen Geräten kann man im UnifiController einen Namen geben, der UDM anscheinend nicht. Im message_json-Teil des Logs könnte ich sonst mal reinschauen, ob ich etwas passendes finde. Ggf. eine ID. Kannst du mir auch gerne per pm senden.
Man könnte FHEM-Unifi auch für genau eine UDM lauffähig machen, wenn ich bei einer UDM immer udm als Name nehme. Aber irgendwann wird es mal jemanden geben, der zwei UDM in FHEM einbinden möchte. Dann würde es einen Namenskonflikt geben.
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Andy89 am 01 November 2020, 18:58:33
Zitat von: Wuehler am 01 November 2020, 14:37:11
Alle anderen Geräten kann man im UnifiController einen Namen geben, der UDM anscheinend nicht. Im message_json-Teil des Logs könnte ich sonst mal reinschauen, ob ich etwas passendes finde. Ggf. eine ID. Kannst du mir auch gerne per pm senden.
Man könnte FHEM-Unifi auch für genau eine UDM lauffähig machen, wenn ich bei einer UDM immer udm als Name nehme. Aber irgendwann wird es mal jemanden geben, der zwei UDM in FHEM einbinden möchte. Dann würde es einen Namenskonflikt geben.
ich glaube ich hab mich falsch ausgedrückt. Das UDM hat ja im FHEM einen Namen. Un das würde ich als Namen vom UnifiSwitch nehmen (wollen)..
Ich hab dir per PN den Logs geschickt. wenn du das anderes brauchst, sag einfach Bescheid.
Danke!

Beste Grüße
Andy
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Wuehler am 01 November 2020, 19:41:13
Aus Sicht FHEM besteht die UDM aus zwei FHEM-Devices: UnifiController = Unifi und UnifiSwitch = UnifiSwitch
Kann man zwei UDM zusammen verwenden? Und die zweite über den in die erste integrierten Controller steuern? Oder ist soetwas definitiv ausgeschlossen?
Ich denke, dass ich als Namen ,,udm" + id verwenden kann. Das ist dann allerdings eine nicht abwärtskompatibele Änderung. Da die anderen UDM-User aber vermutlich auch das Problem neuer Devices haben wenn es eine neue externe IP gibt sollte das iO sein.
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Andy89 am 01 November 2020, 19:58:12
ich habe mal versucht, das Szenario zu googeln, aber habe nichts dazu gefunden..
Ich persönlich wüsste auch nicht, wieso man so etwas machen sollte.

Ich finde deinen Vorschlaf aus "udm" + id gut! Danke =)
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: kunze am 01 November 2020, 20:45:20
Also ich kann bei der UDM Pro einen Alias für den integrierten Switch im Web UI vergeben. Der wird dann auch in FHEM als Name für das Device hergenommen.

Im Web UI auf Devices, da taucht er Switch unter Wired auf. dann anklicken und rechts auf dem Zahnrad kann ein Alias gesetzt werden.

Wie sieht das bei der UDM (ohne Pro) aus?
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Andy89 am 01 November 2020, 21:07:02
Zitat von: kunze am 01 November 2020, 20:45:20
Wie sieht das bei der UDM (ohne Pro) aus?
ich habe tatsächlich auch die UDM Pro und habe nun auch ein Alias vergeben. Damit ist das Problem dann auf jeden Fall behoben. Danke!
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Wuehler am 01 November 2020, 21:21:06
Sehr gut. Dann nehme ich dazu einen Hinweis in der CommandRef auf. Trotzdem werde ich beim autocreate eine Anpassung vornehmen und udm + mac als Default nehmen sofern kein Alias gesetzt ist. Die IP führt ja zu Fehlverhalten.
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: bogi999 am 11 November 2020, 15:43:25
Zitat von: Wuehler am 01 November 2020, 19:41:13
Kann man zwei UDM zusammen verwenden? Und die zweite über den in die erste integrierten Controller steuern? Oder ist soetwas definitiv ausgeschlossen?

Wenn ich die Politik von Ubiquiti verstehe ist die UDM PRO (ebenso wie die UDM) eine Kombinierte Out Of The Box Version für Endnutzer da wir hier schon eine Firewall, Controller, Protect Videosystem, Switch usw.. auf einer Appliance haben.
Es ist nicht vorgesehen mehrere Sites (wie es der Cloud Key kann) zu verwalten, somit schließe ich die Möglichkeit aus.

Aber die Frage wäre ebenso, wozu auch?
Die UDM PRO hat eigentlich alle Schnittstellen die man für fast alle Spielerein benötigt.

Ich für mich bin zur UDM PRO gewechselt, da die Bandbreite der USG PRO 4 bei aktivem Thread Management nur noch bei 250MBit/s liegt. Und es ist erst jetzt im Early Access von UI
das Unifi Next Generation Gateway Pro in den US-Store aufgetaucht, welche genug Durchsatz bieten würde.
Geärgert hab ich mich, dass ich keine eigene VPN-Config da mehr integrieren konnte. Aber das is n anderes Thema.
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Masterfunk am 21 November 2020, 09:02:10
Mir will es einfach nicht gelingen den POE Modus auf einem Switch zu ändern.
Ich bekomme immer einen 404 (siehe Log).
Controller läuft auf einer UDM-Pro.
2020.11.21 08:43:20 5: Switch_Kueche: set called with poeMode 06 off
2020.11.21 08:43:20 4: Switch_Kueche: set poeMode
2020.11.21 08:43:20 5: Switch_Kueche: get called with ?.
2020.11.21 08:43:21 3: CUL_HM set Waschmaschine_Sw statusRequest noArg
2020.11.21 08:43:21 5: Switch_Kueche: get called with ?.
2020.11.21 08:43:51 5: Switch_Kueche: get called with ?.
2020.11.21 08:43:52 5: Switch_Kueche: get called with ?.
2020.11.21 08:44:03 5: Switch_Kueche: set called with poeMode 6 off
2020.11.21 08:44:03 4: Switch_Kueche: set poeMode
2020.11.21 08:44:03 5: Switch_Kueche: get called with ?.
2020.11.21 08:44:03 5: Switch_Kueche: get called with ?.
2020.11.21 08:45:03 5: Switch_Kueche: get called with ?.
2020.11.21 08:45:04 5: Switch_Kueche: get called with ?.
2020.11.21 08:49:12 5: my_unifi_controller (Unifi_Notify) - executed.
2020.11.21 08:49:12 5: my_unifi_controller: get called with ?.
2020.11.21 08:49:13 5: my_unifi_controller: get called with ?.
2020.11.21 08:49:26 5: my_unifi_controller (Unifi_Notify) - executed.
2020.11.21 08:49:26 5: Switch_Kueche: get called with ?.
2020.11.21 08:49:26 5: Switch_Kueche: get called with ?.
2020.11.21 08:49:39 5: Switch_Kueche: set called with poeMode 06 off
2020.11.21 08:49:39 4: Switch_Kueche: set poeMode
2020.11.21 08:49:39 4: my_unifi_controller (Unifi_Write) - executed with Unifi_DeviceRestJson_Send
2020.11.21 08:49:39 5: my_unifi_controller (Unifi_DeviceRestJson_Send) - executed with {"port_overrides":[{"port_security_mac_address":[],"port_idx":"1","lldpmed_notify_enabled":true,"name":"Downlink","portconf_id":"5c5a764a4c46c513f78472fe"},{"portconf_id":"5c6300569650b8058aaae296","name":"HM-Lan","port_idx":"2"},{"port_idx":"3","port_security_mac_address":[],"portconf_id":"5ed139b9ebb459040e1c3a27"},{"poe_mode":"auto","port_idx":"5","autoneg":true,"name":"AP-Kueche","portconf_id":"5c5a764a4c46c513f78472fe"},{"poe_mode":"auto","port_idx":"6","port_security_mac_address":[],"name":"Cam-Kueche","portconf_id":"5c5a764a4c46c513f7847300"},{"poe_mode":"auto","port_idx":"7","portconf_id":"5c5a764a4c46c513f78472fe"},{"port_idx":"8","poe_mode":"auto","portconf_id":"5c5a764a4c46c513f78472fe"},{"port_idx":6},{"poe_mode":"off"}]}.
2020.11.21 08:49:39 5: Switch_Kueche: get called with ?.
2020.11.21 08:49:39 5: my_unifi_controller (Unifi_DeviceCmd_Receive) - executed.
2020.11.21 08:49:39 5: my_unifi_controller (Unifi_DeviceCmd_Receive) - Failed! - state:'404' - msg:'Failed with HTTP Code 404.'
2020.11.21 08:49:39 5: Switch_Kueche: get called with ?.
2020.11.21 08:49:51 5: Switch_Kueche: set called with poeMode 5 off
2020.11.21 08:49:51 4: Switch_Kueche: set poeMode
2020.11.21 08:49:51 4: my_unifi_controller (Unifi_Write) - executed with Unifi_DeviceRestJson_Send
2020.11.21 08:49:51 5: my_unifi_controller (Unifi_DeviceRestJson_Send) - executed with {"port_overrides":[{"port_security_mac_address":[],"port_idx":"1","lldpmed_notify_enabled":true,"name":"Downlink","portconf_id":"5c5a764a4c46c513f78472fe"},{"portconf_id":"5c6300569650b8058aaae296","name":"HM-Lan","port_idx":"2"},{"port_idx":"3","port_security_mac_address":[],"portconf_id":"5ed139b9ebb459040e1c3a27"},{"poe_mode":"off","port_idx":"5","autoneg":true,"name":"AP-Kueche","portconf_id":"5c5a764a4c46c513f78472fe"},{"poe_mode":"auto","port_idx":"6","port_security_mac_address":[],"name":"Cam-Kueche","portconf_id":"5c5a764a4c46c513f7847300"},{"poe_mode":"auto","port_idx":"7","portconf_id":"5c5a764a4c46c513f78472fe"},{"port_idx":"8","poe_mode":"auto","portconf_id":"5c5a764a4c46c513f78472fe"},{"port_idx":"6"}]}.
2020.11.21 08:49:52 5: Switch_Kueche: get called with ?.
2020.11.21 08:49:52 5: my_unifi_controller (Unifi_DeviceCmd_Receive) - executed.
2020.11.21 08:49:52 5: my_unifi_controller (Unifi_DeviceCmd_Receive) - Failed! - state:'404' - msg:'Failed with HTTP Code 404.'
2020.11.21 08:49:52 5: Switch_Kueche: get called with ?.
2020.11.21 08:50:01 5: Switch_Kueche: set called with poeMode 06 OFF
2020.11.21 08:50:01 4: Switch_Kueche: set poeMode
2020.11.21 08:50:03 5: Switch_Kueche: get called with ?.
2020.11.21 08:50:04 5: Switch_Kueche: get called with ?.
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Wuehler am 06 Dezember 2020, 15:50:26
Hi,
hast das das Attribut isUDM auf 1 gesetzt?
Ansonsten wird der API-Pfad nicht angepasst und man bekommt einen 404.
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Masterfunk am 14 Dezember 2020, 23:05:51
Zitat von: Wuehler am 06 Dezember 2020, 15:50:26
Hi,
hast das das Attribut isUDM auf 1 gesetzt?
Ansonsten wird der API-Pfad nicht angepasst und man bekommt einen 404.

Auf dem Unifi Device, ja. Es wird ja auch alles angezeigt, nur das schalten geht nicht.
Und, der "Switch" auf der UDM zeigt 10 Mbit Verbindung an, auch wenn kein Device conected ist.
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Wuehler am 15 Dezember 2020, 17:14:31
Moin,

dann bin ich (ohne UDM) ratlos. Bei mir funktioniert das Ändern des POE-Modes weiterhin. Können andere UDM-User eine Fehlfunktion bestätigen?
Ansonsten ggf. in FHEM mal das Switch-Device löschen und/oder im Unifi-Device ein clear all. Vielleicht gab es ein Problem beim Speichern der ID des Switches.

VG,
Dirk
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Masterfunk am 15 Dezember 2020, 17:39:59
Zitat von: Wuehler am 15 Dezember 2020, 17:14:31

Ansonsten ggf. in FHEM mal das Switch-Device löschen und/oder im Unifi-Device ein clear all. Vielleicht gab es ein Problem beim Speichern der ID des Switches.


Hat beides nichts geholfen.
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Wolle02 am 16 Dezember 2020, 17:23:38
Zitat von: Wuehler am 15 Dezember 2020, 17:14:31
Können andere UDM-User eine Fehlfunktion bestätigen?


Moin Dirk,

jo, funktioniert bei mir mit UDM auch nicht. Ist mir bisher nicht aufgefallen, weil ich die Funktion bislang nicht gebraucht habe.

Ich bin gerne bereit dich bei deiner tollen Arbeit zu unterstützen. Ich würde auch etwas spenden; wenn das noch ein paar mehr machen, könntest du dir ja eine UDM zulegen.  ;) :D

Gruß
Wolle
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Wuehler am 16 Dezember 2020, 20:31:04
LoL. Ich bin zufrieden mit meiner Installation. Musste im Frühjahr allerdings die alten UAPs austauschen. Die hatten noch kein 5 GHz und konnten vier Videokonferenzen parallel nicht verarbeiten.

Aber wir könnten es über TeamViewer und parallele Telko/ Videokonferenz probieren.
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Wolle02 am 17 Dezember 2020, 13:10:18
Zitat von: Wuehler am 16 Dezember 2020, 20:31:04
Aber wir könnten es über TeamViewer und parallele Telko/ Videokonferenz probieren.

Ich weiß jetzt nicht an wen diese Frage/Anregung gerichtet war. Wenn an mich, dann müssten wir das eventuell auf die Zeit zwischen den Jahren schieben, da ich die nächste Zeit abends nicht viel Zeit habe.
Aber vielleicht kann ja auch Masterfunk hier mitmachen, da er ja das Problem hatte!?
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Masterfunk am 19 Dezember 2020, 18:08:05
Zitat von: Wolle02 am 17 Dezember 2020, 13:10:18
Aber vielleicht kann ja auch Masterfunk hier mitmachen, da er ja das Problem hatte!?

Kann er ;-)

Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: 1of16 am 27 Dezember 2020, 12:14:59
Zitat von: Wuehler am 06 Dezember 2020, 15:50:26
Hi,
hast das das Attribut isUDM auf 1 gesetzt?
Ansonsten wird der API-Pfad nicht angepasst und man bekommt einen 404.
danke für den Tipp!
Beim Update meines CK2-Plus auf die Firmware Version 2 hat sich ja einiges geändert, u.a. hört der Controller nicht mehr auf Port 8443 sondern 443.
Mit isUDM=1 funktioniert das unifi Modul wieder :)
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: andies am 29 Dezember 2020, 14:13:39
Ich scheine dasselbe Problem zu haben. Ich nutze den CloudKey Gen 2 und habe seit einem update keinen Zugriff mehr:
Internals:
   DEF        CloudKey.fritz.box 443 crypt:xxxx crypt:xxxxx 300
   FUUID      5e244be7-f33f-1115-db34-394dc6a8906d8bfd
   FVERSION   74_Unifi.pm:0.229620/2020-10-13
   NAME       Unifi
   NOTIFYDEV  global
   NR         255
   NTFY_ORDER 50-Unifi
   STATE      disconnected
   TYPE       Unifi
   UC_VERSION unknown
   VERSION    3.5.0
   READINGS:
     2020-12-29 13:41:48   -UC_blockedClients
     2020-12-29 13:41:48   -UC_events      392 (last 24h)
     2020-12-29 13:41:48   -UC_newClients 
     2020-12-29 13:41:48   -UC_unarchived_alerts 0
     2020-12-29 14:09:54   state           disconnected
   accespoints:
   alerts_unarchived:
   clients:
   events:
   helper:
     password   crypt:xxxx
     username   crypt:xxxxx
   hotspot:
     vouchers:
   httpParams:
     header     
     ignoreredirects 1
     loglevel   5
     method     POST
     noshutdown 0
     timeout    5
     hash:
     sslargs:
       SSL_verify_mode 0
   unifi:
     CONNECTED  disconnected
     eventPeriod 24
     interval   300
     ucurl      https://CloudKey.fritz.box/api/s/default/
     udmurl     https://CloudKey.fritz.box/proxy/network/api/s/default/
     url        https://CloudKey.fritz.box/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:
   wlans:
Attributes:
   group      intern
   isUDM      1

Sieht jemand, was da fehlt? Ich habe isUDM=1 gesetzt und den Port auf 443 geändert. Außerdem bin ich sehr unsicher, was genau User und Passwort ist - ich habe mehrere Versionen versucht. Kann man das auf der Webseite https://<cloudkey>/users/users/admins explizit irgendwo einstellen (ich habe bisher da den "superuser" genommen, aber auch da gibt es lokale Adressen wie auch Adressen mit Emails, etwas verwirrend, was man wann nehmen kann oder soll). 
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Wuehler am 30 Dezember 2020, 13:48:17
Moin andies,

welche Meldung kommt denn im Log?

Einen eigenen FHEM-User kannst du im Unifi-Controller unter Settings-> Admins anlegen. Je nachdem was du mit FHEM machst, reicht dann auch ein read-only-User. Aus Support-Sicht würde ich das aber nicht empfehlen, da man meistens nicht dran denkt, dass der User keine Rechte hat, wenn man mit dem Unifi-Modul aus FHEM heraus dann doch mal Änderungen in Unifi anstoßen möchte ;).

VG,
Dirk
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: andies am 31 Dezember 2020, 14:41:11
Zitat von: Wuehler am 30 Dezember 2020, 13:48:17
welche Meldung kommt denn im Log?

Danke für die Hilfe! Ich sehe das hier
2020.12.31 14:39:11 5: Unifi (Unifi_Notify) - executed.
2020.12.31 14:39:17 5: Unifi: get called with showAccount.
2020.12.31 14:39:25 5: Unifi: set called with update
2020.12.31 14:39:25 4: Unifi: set update
2020.12.31 14:39:25 5: Unifi (Unifi_DoUpdate) - executed.
2020.12.31 14:39:25 5: Unifi (Unifi_Login_Send) - executed.
2020.12.31 14:39:25 5: Unifi: get called with ?.
2020.12.31 14:39:25 5: Unifi (Unifi_Login_Receive) - executed.
2020.12.31 14:39:25 5: Unifi (Unifi_Login_Receive) - Login Failed! - state:'error.decode_json' - msg:'malformed JSON string, neither tag, array, object, number, string or atom, at character offset 1 (before "<!doctype html>\n<ht...") at ./FHEM/74_Unifi.pm line 917.
'
2020.12.31 14:39:25 5: Unifi (Unifi_Login_Receive) - Connect/Login to Unifi-Controller failed. Will try again after interval...
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Wuehler am 31 Dezember 2020, 15:17:07
Ah, das scheint ein Sonderzeichen im Namen (oder Passwort?) zu sein. Evtl. Klappt es, dies mit einem backslasch (\) zu escapen.
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: andies am 31 Dezember 2020, 16:39:02
Nein, habe ich nicht. Ich habe mal den Code verändert, um mehr Daten auszugeben:
sub Unifi_Login_Receive($) {
    my ($param, $err, $data) = @_;

    my ($name,$self,$hash) = ($param->{hash}->{NAME},Unifi_Whoami(),$param->{hash});
    Log3 $name, 5, "$name ($self) - executed.";
   
# Log3 $name, 5, "param code $param->{code}";
# Log3 $name, 5, "data encoded $data";
# Log3 $name, 5, "data decoded ".decode_json($data);

(jetzt auskommentiert) und dann ausgelesen. Beim reload der Datei gab es anscheinend einen Absturz mit Neustart,
2020.12.31 16:32:38 5: Unifi (Unifi_Notify) - executed.
2020.12.31 16:32:38 5: Unifi (Unifi_Notify) - executed.
2020.12.31 16:32:38 1: sduino: DoInit, ESP-Signalduino.fritz.box:23
2020.12.31 16:32:38 5: Unifi: get called with ?.
2020.12.31 16:32:40 5: Unifi (Unifi_Login_Receive) - executed.
2020.12.31 16:32:40 5: param code 200
2020.12.31 16:32:40 5: data encoded {
  "unique_id": "3d1dad2fxxxxxxxx",
  "first_name": "xx",
  "last_name": " ",
  "full_name": "xx  ",
  "email": "xx@xxx.xx",
  "email_status": "UNVERIFIED",
  "phone": "",
  "avatar_relative_path": "",
  "status": "ACTIVE",
  "employee_number": "",
  "create_time": 1609246116,
  "extras": {},
  "username": "ubnt",
  "local_account_exist": true,
  "password_revision": 1609247936,
  "sso_account": "",
  "sso_uuid": "",
  "sso_username": "",
  "sso_picture": "",
  "uid_sso_id": "",
  "uid_sso_account": "",
  "groups": [
    {
      "unique_id": "03ffcac8-xxxxxxxxxxx",
      "name": "CloudKey",
      "up_id": "",
      "up_ids": [],
      "system_name": "CloudKey",
      "create_time": "2020-12-29T12:52:08+01:00"
    }
  ],
  "roles": [
    {
      "unique_id": "530ee3ee-xxxxxxxx",
      "name": "Super Administrator",
      "system_role": true,
      "system_key": "super_administrator",
      "level": 2
    }
  ],
  "permissions": {
    "access.management": [
      "admin"
    ],
    "connect.management": [
      "admin"
    ],
    "led.management": [
      "admin"
    ],
    "network.management": [
      "admin"
    ],
    "protect.management": [
      "admin"
    ],
    "system.management.location": [
      "admin"
    ],
    "system.management.user": [
      "admin"
    ],
    "talk.management": [
      "admin"
    ]
  },
  "scopes": [
    "write:protect.viewer",
    "write:protect.user",
    "write:protect.sensor",
    "write:protect.recordingSchedule",
    "write:protect.nvr",
    "write:protect.light",
    "write:protect.group",
    "write:protect.camera",
    "write:protect.bridge",
    "view:user_timezone",
    "view:user",
    "view:systemlog",
    "view:settings",
    "view:role",
    "view:permission:viewer",
    "view:permission:admin",
    "view:permission",
    "view:notification",
    "view:location_policy",
    "view:location_device",
    "view:location_activity",
    "view:location",
    "view:holiday_timezone",
    "view:holiday",
    "view:group",
    "view:door_group",
    "view:controller:talk",
    "view:controller:protect",
    "view:controller:network",
    "view:controller:led",
    "view:controller:connect",
    "view:controller:access",
    "view:cloud_access",
    "view:app:users",
    "view:app:settings",
    "view:app:locations",
    "view:access.visitor",
    "view:access.systemlog",
    "view:access.settings",
    "view:access.schedule",
    "view:access.policy",
    "view:access.pin_code",
    "view:access.nfc_card",
    "view:access.face",
    "view:access.device",
    "view:access.dashboard",
    "update:access.device",
    "systemlog:user",
    "systemlog:system",
    "systemlog:location",
    "systemlog:access",
    "readmedia:protect.camera",
    "read:protect.viewer",
    "read:protect.user",
    "read:protect.sensor",
    "read:protect.recordingSchedule",
    "read:protect.nvr",
    "read:protect.light",
    "read:protect.group",
    "read:protect.camera",
    "read:protect.bridge",
    "open:door",
    "notify:user",
    "notify:location",
    "notify:access",
    "manage:controller:talk",
    "manage:controller:network",
    "manage:controller:led",
    "manage:controller:connect",
    "manage:controller:access",
    "edit:user_timezone",
    "edit:user",
    "edit:systemlog",
    "edit:settings",
    "edit:role",
    "edit:permission:viewer",
    "edit:permission:admin",
    "edit:notification",
    "edit:location_policy",
    "edit:location_device",
    "edit:location_activity",
    "edit:location",
    "edit:holiday_timezone",
    "edit:holiday",
    "edit:group",
    "edit:feedback",
    "edit:door_group",
    "edit:access.visitor",
    "edit:access.settings",
    "edit:access.schedule",
    "edit:access.policy",
    "edit:access.pin_code",
    "edit:access.nfc_card",
    "edit:access.face",
    "edit:access.device",
    "deletemedia:protect.camera",
    "delete:protect.viewer",
    "delete:protect.user",
    "delete:protect.sensor",
    "delete:protect.recordingSchedule",
    "delete:protect.nvr",
    "delete:protect.light",
    "delete:protect.group",
    "delete:protect.camera",
    "delete:protect.bridge",
    "delete:access.device",
    "create:protect.viewer",
    "create:protect.user",
    "create:protect.sensor",
    "create:protect.recordingSchedule",
    "create:protect.liveview",
    "create:protect.light",
    "create:protect.group",
    "create:protect.camera",
    "create:protect.bridge",
    "assign:role",
    "adopt:access.device"
  ],
  "cloud_access_granted": false,
  "update_time": 1609247936,
  "avatar": "",
  "nfc_token": "",
  "nfc_display_id": "",
  "nfc_card_type": "",
  "nfc_card_status": "",
  "id": "3d1dad2f-xxxxxxxxxxxxxx",
  "isOwner": false,
  "isSuperAdmin": true
}
2020.12.31 16:32:40 5: data decoded HASH(0x77bb820)
2020.12.31 16:32:40 1: PERL WARNING: Use of uninitialized value in string eq at ./FHEM/74_Unifi.pm line 924.

danach ging es anscheinend durch
2020.12.31 16:32:40 1: PERL WARNING: Use of uninitialized value in string eq at ./FHEM/74_Unifi.pm line 924.
2020.12.31 16:32:40 5: Unifi (Unifi_Login_Receive) - state=ok
2020.12.31 16:32:40 5: Unifi (Unifi_Login_Receive) - Login successfully!  Cookie: TOKEN=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJjc3JmVG9rZW4iOiIwMTlmMDM1OS05ZTJjLTRlOWQtODA3NC1lNTZjOGRkNjEwYzciLCJ1c2VySWQiOiIzZDFkYWQyZi01ODVhLTRiMTAtYjI2Yy1mMjhiMmJiYTc2NDQiLCJyZW1lbWJlck1lIjp0cnVlLCJpc1JlbWVtYmVyZWQiOnRydWUsImlhdCI6MTYwOTQyODc1OSwiZXhwIjoxNjEyMDIwNzU5fQ.WVFVo1EYYr0R0v8iqxAjDkJppHknLAt6GvtZOU2f9cU;
2020.12.31 16:32:40 5: Unifi (Unifi_GetSysinfo_Send) - executed.
2020.12.31 16:32:40 5: Unifi (Unifi_UsergroupRestJson_Send) - executed.
2020.12.31 16:32:41 1: [YAAHM_updater] on device Profil called for this day
2020.12.31 16:32:41 1: PERL WARNING: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 285.
2020.12.31 16:32:41 5: Unifi (Unifi_UsergroupRestJson_Receive) - executed.
2020.12.31 16:32:41 5: Unifi (Unifi_UsergroupRestJson_Receive) - state:'ok'
2020.12.31 16:32:41 5: Unifi (Unifi_GetSysinfo_Receive) - executed.
2020.12.31 16:32:41 5: Unifi (Unifi_GetSysinfo_Receive) - state:'ok'
2020.12.31 16:32:41 5: Unifi (Unifi_GetSysinfo_Receive) - uc_version: 6.0.43
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Roger am 27 Januar 2021, 16:57:19
Hi Wuehler,
danke für das schöne Modul für Unifi-Infrastruktur. Ich habe seit kurzem zwei WLAN-APs von Unifi.
Kannst Du noch ein paar Readings ins Modul bzgl. der Firmware-Versionen einbauen?
Speziell version und upgrade_to_firmware für jeden WLAN-AP?
Dann kann man sehen und triggern, wenn was zu tun ist.
Ich habe das zwar mit get deviceData hinbekommen, aber es ist bestimmt für alle nützlich.

Seit gestern habe ich auch einen Hinweis, das die Version 6.0.45 für den Unifi Network Controller verfügbar ist.
Gibt es diese Info auch in den JSON-Daten? Ich habe nichts gefunden.
Auch hier wäre ein Reading über einen Update nützlich.

//Roger
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Wuehler am 27 Januar 2021, 19:37:39
Hallo Roger,

seit dem letzten Update des Moduls gibt es ein get deviceData. Damit kannst du dir für die APs eigene userreadings anlegen. Ich habe nicht vor, alle möglichen Werte für jeden User als Reading zur Verfügung zu stellen. Das wäre dann eine sehr lange Liste ;)


Müsste ungefähr folgendermaßen aussehen.
am Unifi-Device:

attr Unifi userReadings myUsgMem:-AP-lastUpdate.* {my $json=fhem("get Unifi deviceData usg");;return getUnifiJsonValue($json,"system-stats","mem","");;}

in myUtils:


use JSON qw(decode_json);

...

# Hilfsfunktion für das Anlegen von Userreadings im Unifi-Device
# Nicht vollständig generisch!
# Array-Inhalte können nicht abgefragt werden, dann ggf. spezifische myUtils-Funktion erstellen.
# Oder bei echtem Bedarf so etwas wie Json-Querys nutzen?!
# Beispielaufruf: getUnifiJsonValue($json,"system-stats","mem","")
sub getUnifiJsonValue($$$$){
  my ($json,$a,$b,$c) = @_;
  my $hash=decode_json($json);
  my $obj=$hash->{$a};
  $obj=$obj->{$b} if $b ne "";
  $obj=$obj->{$c} if $c ne "";
  return $obj;
}


Wenn man die echten FHEM- und/oder Perl-Experten fragt bekommt man bestimmt noch eine elegantere Lösung ggf. auch ohne myUtils ;)

Hier gibt es noch das TODO, das Ganze im WIKI zu beschreiben. Das würde ich aber  gerne aus einem echten UseCase und funktionierenden übernehmen. Also gerne die Lösung hier dann posten  :)



Für update_available des Controllers selbst müsste ich eine Anpassung vornehmen. Grundsätzlich kennt das Modul sogar die Information, allerdings wird die Sys-Info-API nur beim Define/FHEM-Neustart einmalig automatisch aufgerufen, kann aber manuell (oder per at) aktualisiert werden. Ich würde dann eine "get SysData" anbieten und du könntest aus dem at (mit etwas Wartezeit)  eine Information senden / Reading updaten).

Viele Grüße,
Dirk
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Roger am 27 Januar 2021, 22:10:33
Guten Abend Dirk,
wie ich sage - mit get deviceData habe ich das hinbekommen, wenn auch nicht so elegant wie Du --> ich werde versuchen Deine Lösung zu verstehen und zu übernehmen. Dachte eben nur Firmewareupdates sind für alle wichtig  :).

"get SysData" für Informationen vom Controller (wenn auch über at getriggert) wäre toll  :D.

//Roger
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Wuehler am 28 Januar 2021, 08:05:51
Guten Morgen,

oh, sorry den einen Satz habe ich überlesen  :-[
Kannst auch gerne deine Lösung posten.
Unifi ist so umfangreich, da kann sehr vieles für alle nützlich sein. Andererseits gibt es auch viele, die nur einen kleinen Teil mit Hilfe von FHEM automatisieren wollen. Die würden dann von der Masse an Readings erschlagen.
Man kann theoretisch alles, was über das Unifi-Controller-Frontend geht, auch in das FHEM-Unifi-Modul übernehmen. Problem dabei ist nur, dass alles gepullt werden muss und das dann schon recht viel Last erzeugt. Daher mache ich die Sys-Info Abfrage nicht im normalen Update-Intervall.

Das get sysData schaue ich mir in einer ruhigen Minute an.

Viele Grüße,
Dirk
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: andasquared am 15 März 2021, 09:22:02
Guten Morgen,

ich bin vor kurzem mit meiner Unifi Umgebung auf eine UDM-Pro umgezogen.
seit dem kann ich auch den PoE Mode meiner Ports über Fhem nicht mehr setzen.

habe gesehen, ihr habt das hier schon angesprochen.
habt ihr dafür schon eine Lösung gefunden?

mein UniFi Device hat das attr isUDM=1 gesetzt.
meine UniFiSwitch Devices habe ich auch schon gelöscht und über Autocreate neu anlegen lassen.
kann alle Readings sehen nur kann ich den PoEMode der Ports nicht ändern.
in den Logs finde ich keine Fehler - auch mit Verbose=5


defmod UniFi Unifi aaa.bbb.ccc.ddd 443 crypt:xxxxxx crypt:xxxxxxxxxxxxxx 60
attr UniFi DbLogExclude .*
attr UniFi disable 0
attr UniFi event-on-change-reading .*
attr UniFi isUDM 1
attr UniFi room UniFi



defmod US_USPRO_48PoE UnifiSwitch US_USPRO_48PoE
attr US_USPRO_48PoE DbLogExclude .*
attr US_USPRO_48PoE room UnifiSwitch
attr US_USPRO_48PoE verbose 5



set US_USPRO_48PoE poeMode 1 off
set US_USPRO_48PoE poeMode 1 auto
set US_USPRO_48PoE poeMode 1 restart


im Log sehe ich das:


2021.03.15 09:18:06 5: US_USPRO_48PoE: set called with poeMode 1 off
2021.03.15 09:18:06 4: US_USPRO_48PoE: set poeMode
2021.03.15 09:18:10 5: US_USPRO_48PoE: set called with poeMode 1 auto
2021.03.15 09:18:10 4: US_USPRO_48PoE: set poeMode
2021.03.15 09:18:14 5: US_USPRO_48PoE: set called with poeMode 1 restart
2021.03.15 09:18:14 4: US_USPRO_48PoE: set poeMode


in UniFi tut sich leider nichts.
der Benutzer ist ein localAdmin User auf der UniFi Seite.
mit diesem Benutzer kann ich dort einsteigen und direkt in UniFi die Ports ändern.

hättet ihr eine Idee?

Lg
AndaSquared
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Mitch am 15 März 2021, 13:01:52
Wie kann man denn den Autocreate der Switche daektivieren?
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: andasquared am 15 März 2021, 14:44:54
ich habe Autocreate normalerweiswe deaktiviert und den UnifiSwitch händisch angelegt.
wollte damit nur sagen, dass ich es gelöscht habe und über Autocreate neu erstellt habe.

wenn hier das attr disable 1 gesetzt ist, dann wird der UnifiSwitch nicht automatisch angelegt:

defmod autocreate autocreate
attr autocreate DbLogExclude .*
attr autocreate disable 1


das hab ich auf 0 gesetzt, meinen händisch angelegten UnifiSwitch gelöscht und er wurde dann über autocreate neu angelegt.
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Mitch am 15 März 2021, 14:50:27
globaler Autocreate ist klar, ich würde es gerne auf Modulebene machen.

Was mir gerade dazu noch aufgefallen ist, man kann nicht bei autocreate ignoreTypes setzten, weil die Namen der Switche "falsch" erzeugt werden.
Wenn schon autocreate, dann bitte so: Switch_xxxx
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: andasquared am 20 März 2021, 10:17:04
läuft das bei irgendjemanden mit UDMPro?
ich habe bei mir an Fhem auch KNX angebunden - und habe früher über einen Taster das Ein-/Ausschalten meiner AccessPoints gesteuert.
vielleicht muss ich ja auf UDMPro Seite noch was anpassen?

ev. hat ja jemand von euch mit UDMPro schon was zusammengebracht.

Danke!
lg
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Freibeuter am 18 August 2021, 15:42:49
Hallo, bei mir klappt es mit dem POE udn der UDM Pro auch leider noch nicht...
Hat noch jemand da sProblem, dass bei mehreren unifi Sites, die UnifiSwitch das falsche IODev haben, wie kann ich das manuell ändern ?
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: rubinho am 21 November 2021, 14:20:46
Zitat von: Wuehler am 01 November 2020, 12:32:53
Moin,

im Anhang eine Version mit neuem setter "portProfile". Da kannst du eine ID mitgeben. Das Ganze habe ich nicht ausprobiert, da es schon ewig her ist, dass ich mich im UnifiController damit beschäftigt habe und ich gerade die Familie nicht mit Experimenten stören möchte. Also probier mal und berichte. Wenn alles funktioniert schau bitte auch mal auf die Doku und mach einen besseren Formulierungsvorschlag, damit auch Dritte verstehen was geht. Wenn man zu viel schreiben müsste kann ich das auch in einen WIKI-Artikel ablegen.

VG,
Dirk

Servus,

irgendwie ist das Thema bei mir untergegangen und muss es wieder aufwärmen.

Ich hatte heute mich mal wieder damit beschäftigt ein Portprofil über Fhem zu ändern, allerdings ist mir das nicht gelungen.
Mit dem Setpoint "Portprofile" sollte das ja funktionieren, allerdings gehts bei mir nicht, oder ich stelle mich mal wieder saublöd an.

In der Hilfestellung fehlt mir auch der Hinweis für die Profil ID. Ich dachte die Syntax müsste wie folgt aussehen... "set Unifiswitch Portprofile <Port> <ProfileID>" allerdings kann ich auch die ProfileID weglassen und es wird auch aktzeptiert.
Unter "get  Portoverrides" Steht dann hinter Port 3 die ProfilID 3 anstatt die angegebene ID.

Hab ich da was falsch verstanden, oder hat das seit November vorigen Jahres noch niemand getestet?

Gruß
Rubinho
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Christian Uhlmann am 02 Februar 2022, 13:56:44
Hi,

mir ist gerade aufgefallen, das mein UAP-IW-HD nicht als Switch angezeigt wird.
Ich würde aber gerne das PoE passthrough über FHEM steuern.
Kennt jemand einen Trick um die UAP-IW-HD als UnifiSwitch anzulegen?


Grüße

Christian
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: michaelw am 05 Februar 2022, 14:49:01
Guten Tag,
ich habe ein kleines Problem bei der Verwendung des Moduls festgestellt. Ich verwende dieses Modul schon seit längerer Zeit und es sieht so aus als, ob es nach Nutzung zumindest bei der Funktion "set <device> poeMode <port> off/auto" zu Darstellungsproblemen und daraus resultierend auch Konfigurationsprobleme in der neuen UI des Controllers kommt. Ich hatte dazu einen Thread (https://community.ui.com/questions/GUI-Problems-New-User-interface-does-not-show-USW-Lite-16-PoE-correctly-was-Aggregating-two-interfa/0a8b5b67-c62c-41eb-a696-4e5ffac5d8e4?page=1) bei Unifi geöffnet, weil ich ursprünglich eigentlich noch auf dem "Legacy UI" war und ich ich hier Probleme mit einer Link Aggregation hatte. Diese konnte man nicht vernünftig über das Legacy GUI einrichten. Nach der Umstellung funktioniert das zwar kurzfristig. Allerdings war das GUI nach einer Zeit für ein einzelnes Gerät nicht mehr nutzbar. Ich habe jetzt festgestellt, dass das neue GUI für ein Gerät nicht mehr nutzbar wird, sobald ich FHEM mittels set einen Port auf einem Gerät habe aus- und einschalten lasse. Das mache ich im Rahmen einiger Automatisierungs-Funktionen, weswegen ich das auch nicht wirklich auf dem Schirm hatte, weil es eigentlich alles immer super funktioniert (und an der Stelle auch ein herzliches Dankeschön für die tolle Arbeit!). Im Legacy UI sieht alles in Ordnung aus. Das spricht eher dafür, dass das Problem eher auf Controller-Seite zu suchen ist. Trotzdem wäre es vielleicht gut, wenn man mal prüfen könnte, ab die API Aufrufe, die hier abgesetzt werden, alles richtig machen.

Gruß
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Masterfunk am 09 Februar 2022, 08:13:13
Zitat von: michaelw am 05 Februar 2022, 14:49:01
Guten Tag,
ich habe ein kleines Problem bei der Verwendung des Moduls festgestellt. Ich verwende dieses Modul schon seit längerer Zeit und es sieht so aus als, ob es nach Nutzung zumindest bei der Funktion "set <device> poeMode <port> off/auto" zu Darstellungsproblemen und daraus resultierend auch Konfigurationsprobleme in der neuen UI des Controllers kommt. Ich hatte dazu einen Thread (https://community.ui.com/questions/GUI-Problems-New-User-interface-does-not-show-USW-Lite-16-PoE-correctly-was-Aggregating-two-interfa/0a8b5b67-c62c-41eb-a696-4e5ffac5d8e4?page=1) bei Unifi geöffnet, weil ich ursprünglich eigentlich noch auf dem "Legacy UI" war und ich ich hier Probleme mit einer Link Aggregation hatte. Diese konnte man nicht vernünftig über das Legacy GUI einrichten. Nach der Umstellung funktioniert das zwar kurzfristig. Allerdings war das GUI nach einer Zeit für ein einzelnes Gerät nicht mehr nutzbar. Ich habe jetzt festgestellt, dass das neue GUI für ein Gerät nicht mehr nutzbar wird, sobald ich FHEM mittels set einen Port auf einem Gerät habe aus- und einschalten lasse. Das mache ich im Rahmen einiger Automatisierungs-Funktionen, weswegen ich das auch nicht wirklich auf dem Schirm hatte, weil es eigentlich alles immer super funktioniert (und an der Stelle auch ein herzliches Dankeschön für die tolle Arbeit!). Im Legacy UI sieht alles in Ordnung aus. Das spricht eher dafür, dass das Problem eher auf Controller-Seite zu suchen ist. Trotzdem wäre es vielleicht gut, wenn man mal prüfen könnte, ab die API Aufrufe, die hier abgesetzt werden, alles richtig machen.

Gruß

Kann das gleiche Verhalten bei mir bestätigen.
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: marvin78 am 09 Februar 2022, 08:15:33
Bei Unifi sind aktuell beide UIs kaputt. Die "alte" hat deutlich weniger Bugs. Man haut immer neue Features rein, ohne Probleme zu fixen.
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Masterfunk am 09 Februar 2022, 09:18:38
Zitat von: michaelw am 05 Februar 2022, 14:49:01
Ich hatte dazu einen Thread (https://community.ui.com/questions/GUI-Problems-New-User-interface-does-not-show-USW-Lite-16-PoE-correctly-was-Aggregating-two-interfa/0a8b5b67-c62c-41eb-a696-4e5ffac5d8e4?page=1) bei Unifi geöffnet...
Hab mich da auch mal "drangehangen"
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: michaelw am 09 Februar 2022, 23:29:13
Ich habe mir mal versucht das anzuschauen. Wenn ich mir über die API die Konfiguration Anfrage, sehe ich beim einem Switch, der mir im neuen GUI noch richtig angezeigt wird, dass die Port IDs in dem port_override, anscheinend als Zahl interpertiert werden:
"port_overrides": [
            {
                "name": "Bla",
                "port_idx": 1,
                "port_security_mac_address": [],
                "portconf_id": "5c7bb2f54e626b1044276488"
            },

Bei einem Gerät, das vom neuen GUI nicht mehr vernünftig angezeigt wird sieht das so aus:

"port_overrides": [
            {
                "name": "Bla",
                "port_idx": "1",
                "port_security_mac_address": [],
                "portconf_id": "5c7bb2f54e626b1044276488"
            },


Das wird dann wohl eher als String interpretiert und könnte dann je nachdem wie sensibel das ganze ist, zu Problemen führen.

Jetzt sieht die JSON-Struktur, die an die API gesendet wird so aus (aus dem Verbose Log von FHEM)


{"portconf_id":"5d61a7093733271d07646090","poe_mode":"auto","port_idx":"7"},

Leider fehlen mir die Fähigkeiten das JSON anzupassen, so dass da statt "port_idx":"7" "port_idx":7 gesendet wird. Könnte das jemand entsprechend modifizieren?
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: michaelw am 10 Februar 2022, 19:40:27
Das ganze Problem scheint beim encode_json liegen und die Werte für port_idx werden als String mit Anführungszeichen kodiert.

Ich habe jetzt für mich in Zeile 2120 der Datei 74_Unifi.pm eine Lösung eingebaut:


$json =~ s/"port_idx":"(\d*)"/"port_idx":$1/g;

Das klappt für mich. Wird aber vermutlich nicht der eleganteste Weg sein. Jedenfalls ist die Anzeige im GUI danach wieder korrekt.
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: DeeSPe am 10 Februar 2022, 19:47:40
Blöde Frage: Ich hatte die Switche mal gelöscht und hätte sie gern wieder.
Wie werden die denn wieder erstellt? In der Cref steht dass das automatisch passiert.

Gruß
Dan
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: der-Lolo am 11 Februar 2022, 07:20:49
Hallo Zusammen,
hin und wieder halte ich ausschau nach Freezes in meiner FHEM Installation.
Man kann ja mittlerweile wenn ein Freeze ausgelöst wird den bereich mit Log5 in einem seperatem File sichern.

Heute nacht hatte ich einen treffer -

2022.02.11 02:20:44.457 5: ModbusTCPServer_Parse: received [FB 78 00 00 00 06] 00 01 03 10 00 00
2022.02.11 02:20:44.486 5: https://192.168.1.3:8443/api/s/default/stat/sta: HTTP response code 200
2022.02.11 02:20:44.487 5: UnifiController (Unifi_GetClients_Receive) - executed.
2022.02.11 02:20:44.578 5: UnifiController (Unifi_GetClients_Receive) - state:'ok'
2022.02.11 02:20:44.580 5: UnifiController (Unifi_GetHealth_Send) - executed.
2022.02.11 02:20:44.580 5: IP: 192.168.1.3 -> 192.168.1.3
--- log skips     2.853 secs.
2022.02.11 02:20:47.434 4: AddRQueue [FF 60 00 00 00 06] 00 03 30 C8 00 2D
2022.02.11 02:20:47.434 5: SimpleWrite [FF 60 00 00 00 06] 00 03 30 C8 00 2D
2022.02.11 02:20:47.441 4: AddRQueue [FB 79 00 00 00 06] 00 01 00 18 00 08
2022.02.11 02:20:47.441 5: adding to RQUEUE - 1


Der Bereich vor dem Log skips gibt einen hinweis auf das was blockiert hat -> in diesem Fall wohl der UnifiController...

Die meisten meiner Freezes beziehen sich auf momente wenn z.b. jemand einen Raum mit SVGs aufruft, oder aufwendige abfragen (Room Everything) ans FhemWeb laufen. In diesem Fall aber schlafen alle Bewohner - es findet nichts statt, ausser dem Freeze.
Im Standard Log wird eigentlich immer der WagoController als verursacher ausgegeben -

2022.02.11 02:20:47 1: [Freezemon] myFreezemon: possible freeze starting at 02:20:45, delay is 2.442 possibly caused by: tmr-ModbusTCPServer_HandleReadQueue(WagoController) tmr-ModbusTCPServer_Poll(WagoController) tmr-HttpUtils_TimeoutErr(N/A)

Hier blockiert aber sicher nichts - der Wago ist in diesem Fall nur "leidtragend" -
Der WagoController (ModbusTCPServer) liefert mir die I/O Verbindung im Haus zu Licht/Schalter/Steckdosen Hardware. Dieser arbeitet dann eigentlich nur den während dem Freeze entstandenen Queue ab...

Hat jemand eine Idee was hier vielleicht ein bisschen unrund laufen könnte?
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: rubinho am 02 Mai 2022, 19:37:33
Hallo Zusammen,

ich muss mal wieder nachhaken.

Hat sich schon jemand mit dem "PortProfile" Parameter beschäftigt ?
Da scheint es wohl noch ein Bug zu geben, jedenfalls wird die ProfileID gnadenlos ignoriert und es passiert nix wenn ich den Befehl absetze.

Ich hab mir mal das Module angeschaut, allerdings bin ich ein DAU was das angeht und ich bin nicht durchgestiegen.

Schön wäre es, wenn man die unterschiedlichen Portprofile in den Attributen hinterlegen kann, analog zum portProfileDisableID.

Gruß
Rubinho
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: rubinho am 13 Mai 2022, 08:14:39
Zitat von: Masterfunk am 09 Februar 2022, 09:18:38
Zitat von: michaelw am 05 Februar 2022, 14:49:01
Ich hatte dazu einen Thread (https://community.ui.com/questions/GUI-Problems-New-User-interface-does-not-show-USW-Lite-16-PoE-correctly-was-Aggregating-two-interfa/0a8b5b67-c62c-41eb-a696-4e5ffac5d8e4?page=1) bei Unifi geöffnet...
Hab mich da auch mal "drangehangen"

Nachdem ich jetzt das Problem auch entdeckt habe, habe ich mich mal beteiligt.

Da anscheinend die Popularität der Unifi Familie in der Smarthome Community unverständlicherweise nicht sonderlich hoch ist, zählt jede Stimme. ;)

lg
rubinho
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Ronn am 12 August 2022, 20:46:28
Zitat von: DeeSPe am 10 Februar 2022, 19:47:40
Blöde Frage: Ich hatte die Switche mal gelöscht und hätte sie gern wieder.
Wie werden die denn wieder erstellt? In der Cref steht dass das automatisch passiert.

Gruß
Dan

ich habe das selbe Problem. Hast du oder jemand anders nen Tipp, wie die Witsche wieder eingebunden bekomme? Autocrat funktioniert irgendwie nicht.

Viele Grüße
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Wolle02 am 13 August 2022, 13:24:54
Ich versteh die Frage irgendwie nicht.
In der CRef steht:
ZitatNormaly this device will be autocreated!

Wenns halt nicht "normaly" funktioniert, dann macht mans halt händisch?
Define steht ja auch in der CRef:
Zitatdefine <name> UnifiSwitch <ip> <nameOfSwitch>

Oder was hab ich jetzt falsch verstanden?
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: reibuehl am 13 August 2022, 13:31:02
Zitat von: Wolle02 am 13 August 2022, 13:24:54
Oder was hab ich jetzt falsch verstanden?

Ich vermute mal, die Fragesteller haben eine Umgebung mit mehreren/vielen Switchen und suchen eine Möglichkeit, die Devices wieder alle auf einmal anlegen zu lassen um sie nicht alle händisch eingeben zu müssen.
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Wolle02 am 13 August 2022, 13:44:04
Naja, was ist schon viel. Ich habe in meiner Umgebung vier Switche, damit kann man schon mal einiges abdecken. Bei mir hat das mit dem automatischen anlegen auch geklappt; erst gestern nach einem UDM Update war plötzlich der UDM Switch neu angelegt vorhanden. Aber wenns halt nicht klappt, dann geht wie gezeigt eben auch händisch. Und da sind jetzt auch mehr als vier Switche nicht das Riesenproblem. Keine Ahnung was für Paläste ihr so mit Netzwerk ausstattet  :D
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: 1of16 am 15 Januar 2023, 13:42:52
eine vielleicht sehr spezielle Frage: ich habe zwei unifi controller bei mir in FHEM angebunden.
Wie bekomme ich UnifiSwitch dazu den richtigen Controller zu nutzen?
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Aeroschmelz am 15 Januar 2023, 19:54:48
Hi
Zitat von: 1of16 am 15 Januar 2023, 13:42:52
eine vielleicht sehr spezielle Frage: ich habe zwei unifi controller bei mir in FHEM angebunden.
Wie bekomme ich UnifiSwitch dazu den richtigen Controller zu nutzen?

Bin mir nicht ganz sicher, ob ich die Frage richtig verstehe, aber möchtest du den Switch an einen von den beiden Controllern binden? Ist das ein Managed Switch? Dann sollte das so funktionieren:

   
Folgenden Befehl eingeben:


set-inform  http://IPdesControllersneu:8080/inform
 

Im Unifi Controller das Gerät einbinden
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Ralli am 15 Januar 2023, 20:25:01
Zitat von: 1of16 am 15 Januar 2023, 13:42:52
eine vielleicht sehr spezielle Frage: ich habe zwei unifi controller bei mir in FHEM angebunden.
Wie bekomme ich UnifiSwitch dazu den richtigen Controller zu nutzen?

Attribut IODev setzen.
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: 1of16 am 16 Januar 2023, 07:43:17
@Aeroschmelz ja, hast mich missverstanden. ging mir um fhem

@Ralli das attribut kenne ich, gibt es aber bei dem modul einfach nicht. irgendwie scheint das IODev automatisch ausgewählt zu werden, ich weiß nur nicht wie.
Titel: Antw:Modul: 74_UnifiSwitch - Auslesen und Steuern von UnifiSwitches (USW)
Beitrag von: Ralli am 16 Januar 2023, 08:56:56
Ok, habe ich nicht bedacht.

Dann könnte es helfen, in der fhem.cfg die Reihenfolge der Definitionen entsprechend zu sortieren. Also erst den einen UnifiController gefolgt von den dazugehörigen Switchen etc. und dann den zweiten UnifiController gefolgt von seinen Switchen zu definieren.