Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Adapter: ioBroker.unifi

    NEWS

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    • Save The Date: ioBroker@Smart Living Forum Solingen, 14.06.

    Adapter: ioBroker.unifi

    This topic has been deleted. Only users with topic management privileges can see it.
    • jens.maus
      jens.maus last edited by

      @looxer01:

      @eric2905:

      wenn Du den AP „manuell“ konfiguriert hast, ist er beim Controller unbekannt und kann daher auch vom Adapter nicht ausgelesen werden, usw. `

      wenn ich das richtig verstehe, dann muss der controller staendig laufen. Das ist bei meinem Win PC nicht der Fall.

      Dann kommt nur meine debian installation in Frage.

      Ich müsste also alles zurücksetzen und mit der DEBIAN Installation neu beginnen. `

      Für die die nicht extra ein neues Debian aufsetzen wollen oder auf Unabhängigkeit des Unifi-Controllers setzen möchte kann auch einfach auf den "Unifi-CloudKey" setzen (https://www.ubnt.com/unifi/unifi-cloud-key/). Das ist im Grunde ein kleines Embedded Device auf dem ein minimaoistisches Linux drauf läuft und dann eben die Controller Firmware. Das hat zwar "Cloud" im Namen, aber die Cloud-Funktion muss man ja nicht einsetzen. Ich habe selbst den Unifi-CloudKey und bin da sehr mit zufrieden (zumal er einfach via PoE an einen UniFi-Switch angeschlossen werden kann).

      1 Reply Last reply Reply Quote 0
      • H
        Hagiman2000 last edited by

        Ich habe aktuell 2 Pis im Einsatz. Einen für Raspberrymatic und einen für IoBroker. Könnte ich den Unifi Adapter jetzt noch zusätzlich auf den Pi mit Iobroker installieren (habe hier ein fertiges Image genommen) oder benötige ich einen dritten Pi?

        Da hier viel anwesend sind die mit Wlan / Internet sich aus kennen, ich konnte über die Suche keinen Adapter für Telekom Router finden sondern nur einen Fritzbox Adapter. Dabei würde ich behaupten, dass die Speedport Router auch sehr weit verbreitet sind. Gibt es hier eine Lösung Daten aus zu lesen?

        Aktuell sieht meine Konfig so aus. Unifi AP im Erdgeschoss, Speedport Smart im Obergeschoss und Unifi AP im Dachgeschoss.

        1 Reply Last reply Reply Quote 0
        • eric2905
          eric2905 last edited by

          Ob der Pi für iobroker und UniFi-Controller ausreicht, wage ich zu bezweifeln. Er hat ganz schön was zu tun (Statistiken, usw.).

          Wenn ich am Sonntag aus dem Urlaub zurück bin, schaue ich mir die Systemlast meines Controllers mal an.

          Gruß,

          Eric

          Von unterwegs getippert

          1 Reply Last reply Reply Quote 0
          • lobomau
            lobomau last edited by

            @Hagiman2000:

            Da hier viel anwesend sind die mit Wlan / Internet sich aus kennen, ich konnte über die Suche keinen Adapter für Telekom Router finden sondern nur einen Fritzbox Adapter. Dabei würde ich behaupten, dass die Speedport Router auch sehr weit verbreitet sind. Gibt es hier eine Lösung Daten aus zu lesen? `
            Es gibt ein Script dazu. Die Suche sollte was dazu liefern.

            1 Reply Last reply Reply Quote 0
            • J
              jensus11 last edited by

              Hallo Jens,

              kannst du mir nochmal helfen?

              Ich komme nicht richtig klar mit dm Script.

              /* define actual user devices here */
              var user_devices = [];
              user_devices['98:10:E8:BE:DE:A7'] = 'Klaus';
              user_devices['B8:53:AC:14:A1:B4'] = 'Hans;
              user_devices['B6:53:AC:18:A4:B4'] = 'Peter;
              
              /* define here devices that you 'know', thus should
               * be ignored
               */
              var known_devices=[ "AA:BB:CC:DD:EE:FF",
                                  "AA:BB:CC:DD:EE:FF",
                                  "AA:BB:CC:DD:EE:FF"];
              
              /* Enum list of all combinations of users+guest */
              var enum_list = [];
              enum_list[0] = "Nobody";
              enum_list[1] = "Klaus";
              enum_list[2] = "Hans";
              enum_list[3] = "Peter";
              enum_list[4] = "Klaus,Hans,Peter";
              enum_list[5] = "Guest";
              enum_list[6] = "Klaus,Hans,Peter,Guest";
              enum_list[7] = "Hans,Guest";
              enum_list[8] = "Klaus,Hans,Peter,Guest";
              enum_list[9] = "Peter,Guest";
              enum_list[10] = "Klaus,Hans,Peter,Guest";
              
              /* Path to system variables on CCU */
              var sysvar_prefix= "Anwesenheit";
              var sysvar_user  = "hm-rega.0.14029"/*Anwesenheit.Nutzer*/;
              var sysvar_guest = "hm-rega.0.14030"/*Anwesenheit.Gast*/;
              var sysvar_str   = "hm-rega.0.14032"/*Anwesenheit.string*/;
              var sysvar_list  = "hm-rega.0.20454"/*Anwesenheit.list*/;
              

              Wie muss die list Variable auf der CCu aussehen?

              Dann wird mir immer der Gast mit angezeigt obwohl ich kein Gastnetzwerk eingerichtet habe.

              Was mache ich denn verkehrt?

              1 Reply Last reply Reply Quote 0
              • eric2905
                eric2905 last edited by

                Kann es sein, das Dir die beiden Zeilen

                enum_list[3] = "Peter";
                enum_list[3] = "Klaus,Hans,Peter";
                

                in die Quere kommen?

                Du hast erst nur „Peter“ an die 4. Stelle der Liste und dann nochmal „Klaus,Hans,Peter“.

                Somit müsste dann immer „Klaus,Hans,Peter“ kommen, auch wenn nur Peter da ist.

                Gruß,

                Eric

                Von unterwegs getippert

                1 Reply Last reply Reply Quote 0
                • J
                  jensus11 last edited by

                  Ups da hatte ich einen Fehler. Habe noch eine dritte Person hinzugefügt für diese Frage.

                  Hatte nur zwei angelegt mit denen es aber nicht wie gewünscht funktioniert.

                  dachte mir lieber gleich 3 machen bevor wir das hier mit zwei klären und ich dann die nächste Frage stellen muss.

                  1 Reply Last reply Reply Quote 0
                  • eric2905
                    eric2905 last edited by

                    Klappt es denn jetzt wie gewünscht?

                    Gruß,

                    Eric

                    Von unterwegs getippert

                    1 Reply Last reply Reply Quote 0
                    • J
                      jensus11 last edited by

                      Nein. Mir wird immer der Gast mit angezeigt.

                      Und in der Wertevariable list auf der CCu, da weiss ich nicht was ich da bei der Wertebezeichnung eintragen soll?

                      1 Reply Last reply Reply Quote 0
                      • eric2905
                        eric2905 last edited by

                        Da bin ich erst mal raus, da ich das Script nicht einsetzte für die Anwesenheitserkennung.

                        Gruß,

                        Eric

                        Von unterwegs getippert

                        1 Reply Last reply Reply Quote 0
                        • R
                          Rolf_A last edited by

                          Hallo,

                          ich bekam immer einen oder mehrere Gast/Gäste angezeigt, solange ich nicht alle Geräte (Mac-Adressen) unter "Knowing device" eingetragen hatte.

                          Gruß

                          Rolf

                          1 Reply Last reply Reply Quote 0
                          • J
                            jensus11 last edited by

                            Ja das war ein super Tipp. Damit konnte ich meinen Gast schon eliminieren.

                            Ich habe bei mir die Variable Anwesenheit_Wlan (global presence @ home) auf der CCU angelegt.

                            Ist es möglich das ich die schalten kann?

                            /* Path to system variables on CCU */
                            var sysvar_prefix= "Anwesenheit_Wlan";
                            

                            Ich habe die anderen Variablen der prefix Bezeichnung angepasst und da funktioniert das gut.

                            also Anwesenheit_Nutzer usw.

                            1 Reply Last reply Reply Quote 0
                            • lobomau
                              lobomau last edited by

                              @eric2905:

                              Ob der Pi für iobroker und UniFi-Controller ausreicht, wage ich zu bezweifeln. Er hat ganz schön was zu tun (Statistiken, usw.).

                              Wenn ich am Sonntag aus dem Urlaub zurück bin, schaue ich mir die Systemlast meines Controllers mal an.

                              Gruß,

                              Eric

                              Von unterwegs getippert `
                              Hast du mal getestet was der unifi controller so an Systemlast macht?

                              Habe mir dazu gar keine Gedanken gemacht und erstmal nichts festgestellt, außer RAM-Verbrauch.

                              Bei mir läuft der unifi-controller mit auf dem brix wo auch ioBroker läuft.

                              1 Reply Last reply Reply Quote 0
                              • P
                                pix last edited by

                                Hallo,

                                ich nutze den Controller auf einem separaten Server. Keine Probleme mit der Last.

                                Das Skript funktioniert und liefert die richtigen Namen. Nutze nur keine CCU, sondern ioBroker als Ziel.

                                Allerdings bekomme ich täglich um 0200 eine Fehlermeldung und die jS-Adapterinstanz startet neu. Habt ihr das auch?

                                Kann leider das log nicht hier posten, da von unterwegs in Tapatalk getippt.

                                Pix

                                1 Reply Last reply Reply Quote 0
                                • N
                                  nibblerrick last edited by

                                  Ich habe mich mal an einer Anwesenheitsmeldung/Erkennung mit Blockly probiert und dafuer den last_seen state genommen. Allerdings nicht die Unixzeit daraus sondern nur als Trigger.

                                  Ist das so in Ordnung oder ist der Ansatz aus irgendwelchen Gruenden sch…? Es scheint soweit zu funktionieren.
                                  3803_chrome_2017-10-18_15-09-59.png

                                  1 Reply Last reply Reply Quote 0
                                  • K
                                    Koelner last edited by

                                    Weil ich selber APs von Unifi einsetze interessiert mich der Adapter sehr. Erst einmal ein großes Lob für die Arbeit. Gibte es auch einen Screen wo man eine Visualisierung im VIS sehen kann?

                                    Ich stelle mir eine Übersicht aller SSID inklusive der gerade angemeldeten Geräte vor. Wäre so etwas umsetzbar?

                                    1 Reply Last reply Reply Quote 0
                                    • P
                                      pix last edited by

                                      Hallo,

                                      @pix:

                                      Hallo,

                                      Allerdings bekomme ich täglich um 0200 eine Fehlermeldung und die jS-Adapterinstanz startet neu. Habt ihr das auch?

                                      Kann leider das log nicht hier posten, da von unterwegs in Tapatalk getippt.

                                      Pix `

                                      ich zitiere mich selbst und hole das Thema erneut hoch:

                                      Habe Punkt 0200 jede Nacht diesen Fehler im Log:

                                      `2017-10-30 02:00:03.774  - [31merror[39m: unifi.0 uncaught exception: Cannot read property 'map' of undefined
                                      2017-10-30 02:00:03.782  - [31merror[39m: unifi.0 TypeError: Cannot read property 'map' of undefined
                                      2017-10-30 02:00:03.855  - [31merror[39m: Caught by controller[0]: [TypeError: Cannot read property 'map' of undefined]
                                      2017-10-30 02:00:03.856  - [31merror[39m: Caught by controller[1]: 2017-10-30 02:00:03.775  -  unifi.0 uncaught exception: Cannot read property 'map' of undefined
                                      2017-10-30 02:00:03.856  - [31merror[39m: Caught by controller[2]: 2017-10-30 02:00:03.782  -  unifi.0 TypeError: Cannot read property 'map' of undefined
                                      2017-10-30 02:00:03.856  - [31merror[39m: Caught by controller[2]:     at /Users/pix/Documents/iobroker/node_modules/iobroker.unifi/main.js:471:28
                                      2017-10-30 02:00:03.856  - [31merror[39m: Caught by controller[2]:     at /Users/pix/Documents/iobroker/node_modules/node-unifi/unifi.js:1411:13
                                      2017-10-30 02:00:03.856  - [31merror[39m: Caught by controller[2]:     at /Users/pix/Documents/iobroker/node_modules/node-unifi/node_modules/async/dist/async.js:906:16
                                      2017-10-30 02:00:03.856  - [31merror[39m: Caught by controller[2]:     at next (/Users/pix/Documents/iobroker/node_modules/node-unifi/node_modules/async/dist/async.js:5198:18)
                                      2017-10-30 02:00:03.856  - [31merror[39m: Caught by controller[2]:     at Request._callback (/Users/pix/Documents/iobroker/node_modules/node-unifi/unifi.js:1399:27)
                                      2017-10-30 02:00:03.856  - [31merror[39m: Caught by controller[2]:     at Request.self.callback (/Users/pix/Documents/iobroker/node_modules/request/request.js:188:22)
                                      2017-10-30 02:00:03.856  - [31merror[39m: Caught by controller[2]:     at emitTwo (events.js:87:13)
                                      2017-10-30 02:00:03.856  - [31merror[39m: Caught by controller[2]:     at Request.emit (events.js:172:7)
                                      2017-10-30 02:00:03.856  - [31merror[39m: Caught by controller[2]:     at Request. <anonymous>(/Users/pix/Documents/iobroker/node_modules/request/request.js:1171:10)
                                      2017-10-30 02:00:03.857  - [31merror[39m: Caught by controller[2]:     at emitOne (events.js:77:13)
                                      2017-10-30 02:00:03.857  - [31merror[39m: Caught by controller[2]:     at Request.emit (events.js:169:7)
                                      2017-10-30 02:00:03.857  - [31merror[39m: host.MacMini.local instance system.adapter.unifi.0 terminated with code 0 (OK)[/code]</anonymous>`
                                      Woher kann das kommen? Der Controller wird doch standardmäßig nicht neugestartet. Ebenso nicht die Hotspots, oder?
                                      
                                      Gruß
                                      
                                      Pix
                                      
                                      1 Reply Last reply Reply Quote 0
                                      • A
                                        andyb last edited by

                                        Ich hab ähnliches Problem.

                                        host.orangepiplus2e	2017-11-03 07:53:54.537	error	instance system.adapter.unifi.0 terminated with code 0 (OK)
                                        Caught	2017-11-03 07:53:54.537	error	by controller[1]: at emitOne (events.js:101:20)
                                        Caught	2017-11-03 07:53:54.536	error	by controller[1]: at TLSSocket.socketCloseListener (_http_client.js:286:9)
                                        Caught	2017-11-03 07:53:54.536	error	by controller[1]: at ClientRequest.emit (events.js:188:7)
                                        Caught	2017-11-03 07:53:54.536	error	by controller[1]: at emitOne (events.js:96:13)
                                        Caught	2017-11-03 07:53:54.535	error	by controller[1]: at Request.onRequestError (/opt/iobroker/node_modules/request/request.js:884:8)
                                        Caught	2017-11-03 07:53:54.535	error	by controller[1]: at Request.emit (events.js:188:7)
                                        Caught	2017-11-03 07:53:54.535	error	by controller[1]: at emitOne (events.js:101:20)
                                        Caught	2017-11-03 07:53:54.534	error	by controller[1]: at Request. (/opt/iobroker/node_modules/iobroker.unifi/node_modules/node-unifi/unifi.js:1099:11)
                                        Caught	2017-11-03 07:53:54.534	error	by controller[1]: at next (/opt/iobroker/node_modules/iobroker.unifi/node_modules/node-unifi/node_modules/async/dist/async.js:5171:25)
                                        Caught	2017-11-03 07:53:54.534	error	by controller[1]: at /opt/iobroker/node_modules/iobroker.unifi/node_modules/node-unifi/node_modules/async/dist/async.js:903:32
                                        Caught	2017-11-03 07:53:54.533	error	by controller[1]: Error: Callback was already called.
                                        Caught	2017-11-03 07:53:54.533	error	by controller[0]: at emitOne (events.js:96:13)
                                        Caught	2017-11-03 07:53:54.533	error	by controller[0]: at TLSSocket.socketErrorListener (_http_client.js:310:9)
                                        Caught	2017-11-03 07:53:54.532	error	by controller[0]: at ClientRequest.emit (events.js:188:7)
                                        Caught	2017-11-03 07:53:54.532	error	by controller[0]: at emitOne (events.js:96:13)
                                        Caught	2017-11-03 07:53:54.532	error	by controller[0]: at Request.onRequestError (/opt/iobroker/node_modules/request/request.js:884:8)
                                        Caught	2017-11-03 07:53:54.531	error	by controller[0]: at Request.emit (events.js:188:7)
                                        Caught	2017-11-03 07:53:54.531	error	by controller[0]: at emitOne (events.js:101:20)
                                        Caught	2017-11-03 07:53:54.531	error	by controller[0]: at Request. (/opt/iobroker/node_modules/iobroker.unifi/node_modules/node-unifi/unifi.js:1099:11)
                                        Caught	2017-11-03 07:53:54.530	error	by controller[0]: at next (/opt/iobroker/node_modules/iobroker.unifi/node_modules/node-unifi/node_modules/async/dist/async.js:5171:25)
                                        Caught	2017-11-03 07:53:54.527	error	by controller[0]: at /opt/iobroker/node_modules/iobroker.unifi/node_modules/node-unifi/node_modules/async/dist/async.js:903:32
                                        Caught	2017-11-03 07:53:54.512	error	by controller[0]: Error: Callback was already called.
                                        
                                        1 Reply Last reply Reply Quote 0
                                        • M
                                          Markus76 last edited by

                                          Hi,

                                          ich möchte auch gerne die An-Abwesenheits steuerung über den Unifi Adapter machen.

                                          Installiert ist alles und die Daten kommen beim IOBroker an.

                                          Nun möchte ich den last_seen Zeitstempel nutzen und wenn dieser upgedatet wird, dann bin ich anwesend und wenn nicht, dann abwesend.

                                          Variable auf der CCU2 ist angelegt, wir aber leider nicht gefüllt

                                          Ich bekomme das in Blockly irgendwie nicht hin…

                                          Kann mir da bitte jemand unter die Arme greifen..
                                          4009_bildschirmfoto_2017-11-10_um_13.21.16.png

                                          1 Reply Last reply Reply Quote 0
                                          • lobomau
                                            lobomau last edited by

                                            @Markus76:

                                            Hi,

                                            ich möchte auch gerne die An-Abwesenheits steuerung über den Unifi Adapter machen.

                                            Installiert ist alles und die Daten kommen beim IOBroker an.

                                            Nun möchte ich den last_seen Zeitstempel nutzen und wenn dieser upgedatet wird, dann bin ich anwesend und wenn nicht, dann abwesend.

                                            Variable auf der CCU2 ist angelegt, wir aber leider nicht gefüllt

                                            Ich bekomme das in Blockly irgendwie nicht hin…

                                            Kann mir da bitte jemand unter die Arme greifen.. `
                                            Folgendes Blockly Script läuft bei mir sehr gut mit Unifi für die Anwesenheit. Anstatt last_seen habe ich uptime_by_uap. Musst nur den client anpassen, hier wird alle 2 Minuten getriggert:
                                            1146_unbenannt.jpg
                                            Blockly Import:

                                            ! <xml 1999/xmlns="<URL url=" http:/www.w3.org/xhtml"="">http://www.w3.org/1999/xhtml">
                                            ! <block type="create" id="LcnDrYS;;Bc/!E+1GuwZ" x="-837" y="13"><field name="NAME">Variablen.ICH_UAP</field></block>
                                            ! <block type="schedule" id="{@eI25!GvKfragf.dsL" x="-837" y="113"><field name="SCHEDULE">*/2 * * * *</field> ! <statement name="STATEMENT"><block type="controls_if" id="B+@.|[Ga9L/N^}7kRBv,"><mutation else="1"></mutation> ! <value name="IF0"><block type="logic_compare" id="CniS*}L/,0cF#N|nCepx"><field name="OP">EQ</field> ! <value name="A"><block type="logic_compare" id="T_r[9FxM%kil?c^0EZ:J"><field name="OP">LT</field> ! <value name="A"><block type="math_arithmetic" id="B%^IgKuzuM5{246Y!m,(" inline="false"><field name="OP">MINUS</field> ! <value name="A"><shadow type="math_number" id="G5:q#-9.sd2K90TfdAJ"><field name="NUM">1</field></shadow>
                                            ! <block type="get_value" id="gC-urCBA/^%84(j=^i*"><field name="ATTR">lc</field> ! <field name="OID">unifi.0.default.clients.++MAC-Adresse._uptime_by_uap</field></block></value> ! <value name="B"><shadow type="math_number" id="zYRKTi[[k_,%fr.8Vy7M"><field name="NUM">1</field></shadow> ! <block type="math_arithmetic" id="]J~)QBR4cH/jiG*lz?UL"><field name="OP">MINUS</field> ! <value name="A"><shadow type="math_number" id="XX}xF%B/_0,1}l~SgW-"><field name="NUM">1</field></shadow>
                                            ! <block type="time_get" id="-4r2Is(JCg_?:Ms_v+Y"><mutation format="false" language="false"></mutation> ! <field name="OPTION">object</field></block></value> ! <value name="B"><shadow type="math_number" id="rCdNrAEh^-FoWAxGU~G"><field name="NUM">120000</field></shadow></value></block></value></block></value>
                                            ! <value name="B"><block type="math_number" id="DLCYi/V][Pj-{RpP]JE{"><field name="NUM">0</field></block></value></block></value>
                                            ! <value name="B"><block type="logic_boolean" id="]F~s0eAM%+j//mq0GH"><field name="BOOL">TRUE</field></block></value></block></value>
                                            ! <statement name="DO0"><block type="control" id="o;yBJXcmet8(TwXWJlMf"><mutation delay_input="false"></mutation>
                                            ! <field name="OID">javascript.0.Variablen.ICH_UAP</field>
                                            ! <field name="WITH_DELAY">FALSE</field>
                                            ! <value name="VALUE"><block type="logic_boolean" id="JD=F=FX|FbaZIy,OPphL"><field name="BOOL">FALSE</field></block></value></block></statement>
                                            ! <statement name="ELSE"><block type="control" id="GrHf7?!*t8yz{3P2n=w="><mutation delay_input="false"></mutation>
                                            ! <field name="OID">javascript.0.Variablen.ICH_UAP</field>
                                            ! <field name="WITH_DELAY">FALSE</field>
                                            ! <value name="VALUE"><block type="logic_boolean" id="zTf,][x}2(Hs!fMBWgz:"><field name="BOOL">TRUE</field></block></value></block></statement></block></statement></block></xml>

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            1.0k
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            unifi
                                            170
                                            991
                                            271469
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo