Ankündigung

Einklappen
Keine Ankündigung bisher.

UniFi Controller API WLAN

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    UniFi Controller API WLAN

    Hallo Kollegen,

    was müßte ich den machen, um einen UniFi Accesspoint ein- bzw. auschalten zu können.

    Es gibt div. Quellen von anderen Projekten
    https://github.com/frehov/Unifi-Python-API
    https://community.ubnt.com/t5/UniFi-...512870#M151374


    In Edomi / FHEM / openHap usw. geht das
    http://fhem.de/commandref.html#Unifi
    https://community.home-assistant.io/...ssistant/61787
    Gruß, JG

    #2
    Eventuell via REST api? Dann waere es ziemlich easy

    Kommentar


      #3
      Hi! Hat hier jemand eine Lösung für gefunden?
      Meine Anforderung ist einen Unifi Switch-Port zu deaktivieren, wenn die Haustür abgeschlossen ist.
      Wenn jemand was hat wärs super, sonst mach ich mich selbst dran, sobald ich das ArtNet erledigt habe...

      Kommentar


        #4
        Servus Jens, für SHNG gib's - offensichtlich - leider noch keine Lösung.....

        Mir fehlt der Ansatz um da etwas selbst zu machen....

        Aber, wenn Du Ahnung davon hast und was machst, wäre ich sehr interessiert.

        Gruß, JG

        Kommentar


          #5
          Wenn man diesen Code hier einfach in eine Logik packt oder ein Plugin draus macht, sollte das recht fix gehen.

          Kommentar


            #6
            Hätte auch Interesse. Muss zuerst noch 1, 2 andere Plugins tweaken und angehen, kann dann aber gerne nach dem ersten Wurf was beitragen und testen,.

            Kommentar


              #7
              Ich habe einen Fork von bmx‘s Vorschlag genommen, der ein wenig mehr implementiert hat. Wie ist das mit der Lizenz (MIT): reicht es, wenn ich die in das „Bibliotheks“ Verzeichnis lege?

              Was wird an Features gebraucht?
              Zuletzt geändert von jentz1986; 22.05.2019, 10:01.

              Kommentar


                #8
                Ich habe den Code soweit, dass man mittels der beiden folgenden Kommandos einen Switch-Port an- bzw. abschalten kann. Dazu werden die Portprofile verwendet. Unifi schaltet mit dem Standard "Disabled" den PoE nicht ab, daher mein eigenes "Fully Off".
                Code:
                api.set_port_profile_for("ff:ff:af:fe:da:00", 7, 'WLAN AP')
                api.set_port_profile_for("ff:ff:af:fe:da:00", 7, 'Fully Off')
                Wenn man keinen UniFi-Switch hat, sondern direkt den AP schalten will, ist folgendes schnell gemacht.
                Code:
                api.switch_ap("ff:ff:af:fe:da:01", False)
                api.switch_ap("ff:ff:af:fe:da:01", True)
                Frage:
                Soll die Steuerung über Logiken laufen, dann wäre ich jetzt fast fertig, oder soll ein Item-Mapping aufgebaut werden? Das wird dann natürlich beliebig komplex, siehe AVM-Plugin.

                Fantasie für Items:
                Code:
                presenceJentz1986:
                        type: bool
                        unifi_type: client_presence
                        unifi_client_presence_of: "19:86:af:fe:da:00"
                switchportSchalten:
                        type: bool
                        unifi_type: switch_port
                        unifi_switch_mac: "ff:ff:af:fe:da:00"
                        unifi_switch_port: 7
                        unifi_switch_port_profile_on: "WLAN AP"
                        unifi_switch_port_profile_off: "Fully Off"
                apSchalten:
                        type: bool
                        unifi_type: wifi_ap_enabling
                        unifi_wifi_mac: "ff:ff:af:fe:da:01"
                Frage hierbei wäre, welche anderen Daten relevant sind bei einem AP oder Switch(-Port), mancher will ja evtl nicht nur schalten...
                Zuletzt geändert von jentz1986; 22.05.2019, 13:24. Grund: unifi_type ergänzt

                Kommentar


                  #9
                  Servus Jens,

                  danke für die Frage ....

                  Mir geht es nur um Ein / Aus eines oder mehrerer AP.

                  Ausschalten würde ich per per "UZSU plugin"
                  Einschalten z.B über Präsenzmelder

                  Frage aus Interesse:
                  Welches Unifi Switch verwendest Du ??
                  Kannst Du den Port am Switch kompl. deaktivieren, oder nur das POE vom Port ??
                  Zuletzt geändert von Haiphong; 22.05.2019, 12:19.
                  Gruß, JG

                  Kommentar


                    #10
                    Hallo,
                    ich nutze (leider) kein SmartHomeNG finde die Idee hier aber genial.

                    Wenn man die einzelnen POE Ports schalten kann, hat man natürlich maximale Flexibilität.

                    So könnte man zB auch super POE-Kameras schalten.

                    Kommentar


                      #11
                      Gibt es auch die Möglichkeit, Rückmeldungen zu erhalten? zB ob der Befehl angekommen ist. Oder Abfragen, welche Devices aktuell mit welchem AP verbunden sind..? Wenn so was ginge, wäre ein Plugin natürlich top, das man dann einfach sukzessive ausbaut.

                      Kommentar


                        #12
                        Rückmeldungen auf Anfragen sind bereits in der API enthalten. REST = HTTP Statuscode und im Body ist die neue Config nochmal enthalten. Also, alles was mit dem Unifi Controller geht, geht auch per Python-Aufruf. Das ist bei Unifi super umgesetzt. Man spricht mit dem Controller, als wäre man das HTTP Frontend. Paralleler Zugriff funktioniert. Hier wäre daher die Frage, was aus dem Controller wird als Funktionalität wirklich gebraucht. Ein zweites Controllerfrontend macht IMHO keinen Sinn.

                        Rückmeldungen im Sinne von aktivem Push vom Unifi Controller zu SHNG gibt es IMHO nicht, aber ein pollen geht. Umgesetzt habe ich bereits
                        Code:
                        api.get_presence_of(client_mac)
                        damit wird geschaut, ob der Controller (damit einer der AP) das Gerät mit der MAC in den letzten 5min gesehen hat.
                        Das könnte man, analog des AVM-PlugIns, alle paar Minuten abfragen und daraus die Präsenz einer bestimmten MAC ableiten.
                        Ich habe ein paar Optimierungen eingebaut, so dass man sich keine Gedanken um zu häufige Abfragen machen muss.

                        Ich habe einen Unifi US-8-60W und zwei UAP AC Lite und einen UAP AC Mesh, der in den Garten soll, vorher muss da aber der Port deaktivierbar sein. Ein USG habe ich (noch?) nicht. Der Controller läuft auf einem Synology NAS im Docker Container.

                        Über die Port-Profile kann man folgendes tun: Beteiligung an VLANs steuern, Port (de)aktivieren, Port-Isolation an/aus, PoE-Modus (nicht ändern, 24V passiv, 802.11af/at, aus). Es geht noch mehr, aber das ist aus meiner Sicht das Wichtigste. Ich habe jeweils ein Profil für jedes VLAN, eines für alle VLANs und ein Setting für meine WLAN APs. Bei den APs ist PoE an, bei den anderen auf "nicht ändern".

                        Kommentar


                          #13
                          OFFTOPIC

                          Vlans kann man doch nur mit einem USG realisieren dachte ich!?

                          Kommentar


                            #14
                            Danke für die Info.....
                            Port kompl. deaktivieren macht die Unifi Switche - für mich - dann richtig interessant. ( Werkstatt / Garten )
                            Hab bisher nur Cisco Switche und da kenne ich keinen Weg zum deaktivieren

                            Mein Unifi Controller läuft auf einem QNAP. USG hab ich nicht.
                            Gruß, JG

                            Kommentar


                              #15
                              Zitat von theinrich Beitrag anzeigen
                              OFFTOPIC

                              Vlans kann man doch nur mit einem USG realisieren dachte ich!?
                              Dazu müsstest Du definieren, was realisieren heißt. Du hast halt kein DNS oder DHCP, wenn du keinen entsprechenden Lieferanten (Fritzbox, Pi, NAS,...) in dem jeweiligen VLAN hast. Aber für VLANs reichen switche alleine..

                              Kommentar

                              Lädt...
                              X