Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Entwicklung
    4. [Major Update] UniFi Adapter v0.5.0

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [Major Update] UniFi Adapter v0.5.0

    This topic has been deleted. Only users with topic management privileges can see it.
    • braindead
      braindead Developer @Guest last edited by

      Ich habe eine Unifi Dream Machine. Ist es damit kompatible?

      Ja, die Dream Machine sollte funktionieren.

      • Neue Geräte im WLAN
      • Kann ich darüber alle WLan fähigen Geräte in der Umgebung sehen? Auch die, die nicht in meinem Netzwerk sind? Damit meine ich den Postboten.

      Es werden alle Geräte eingelesen, die sich in Deinem Netzwerk befinden. Andere nicht.

      • den Router neustarten?

      Nein.

      • 5 Minuten Verbindung zu einem Gerät im Netzwerk verloren.

      Es gibt für jeden Client den Datenpunkt "is_online". Die 5 Minuten kannst Du über ein Offset konfigurieren.

      RK62 M 2 Replies Last reply Reply Quote 0
      • RK62
        RK62 @braindead last edited by

        Warum legt der Adapter eigentlich eine Einstellung im History-Bereich der Objekte an?
        Ist da noch was geplant?

        fdb759f1-3403-44c2-bdbb-e0f44e489ea5-image.png

        Gruß, Ralf

        braindead 1 Reply Last reply Reply Quote 0
        • braindead
          braindead Developer @RK62 last edited by

          @RK62 said in [Major Update] UniFi Adapter v0.5.0:

          Warum legt der Adapter eigentlich eine Einstellung im History-Bereich der Objekte an?
          Ist da noch was geplant?

          Nein, das ist ein Bug. 😞

          1 Reply Last reply Reply Quote 0
          • M
            mguenther @braindead last edited by mguenther

            @braindead
            wie finde ich denn bitte heraus, wie bei der DM Pro der Controller konfiguriert ist? Muss ich irgendwo den Port noch einstellen? Ich bin zu doof dazu. Ich hatte vorher den Controller auf einem NAS und da konnte ich den Port entsprechend auswählen. Jetzt habe ich heute die UDM Pro eingerichtet und wollte die gerade mit dem ioBroker verknüpfen, doch welchen Port nehme ich bzw. wo aktiviere ich denn bitte das in den Einstellungen? Soweit bin ich da noch nicht...

            Danke
            Marcus

            braindead 1 Reply Last reply Reply Quote 0
            • braindead
              braindead Developer @mguenther last edited by

              @mguenther Bei der UDM Pro wird kein Port angegeben. Außerdem ist es wichtig, dass der Account, den Du für ioBroker nutzt keine 2 Faktor Authorisierung nutzt.

              M 1 Reply Last reply Reply Quote 0
              • M
                mguenther @braindead last edited by

                @braindead
                funktioniert... ich glaube, ich hatte nen Fehler im Passwort...

                M 1 Reply Last reply Reply Quote 1
                • M
                  maniac @mguenther last edited by

                  Moin zusammen.

                  Ich nutze den Adapter schon eine Weile um meine WLANs per VIS ein-/auszuschalten. Das geht ja über den DP:

                  unifi.0.default.wlans.NAMEWLAN.enabled

                  und funktioniert einwandfrei bisher.
                  Vielen Dank auch noch für die bisherige Arbeit.

                  Ich habe mir nun aber Kameras zugelegt, die ich per Vis ein-/ausschalten möchte.
                  Dazu dachte ich mir, ich nutze einfach den/die DPs:

                  unifi.0.default.devices.MAC.port_table.port_20.enable oder
                  unifi.0.default.devices.MAC.port_table.port_20.port_poe

                  um entweder POE oder den ganzen Port abzuschalten.
                  Aber die DPs sind ja gar nicht beschreibbar. Auch wenn ich dies über Objekt bearbeiten händisch auf true setze geht es nicht.

                  Funktioniert dies gar nicht? Kann man sowas implementieren?

                  Gibt es eine andere Möglichkeit Ports ein-/auszuschalten?

                  braindead Samson71 Feuersturm 3 Replies Last reply Reply Quote 0
                  • braindead
                    braindead Developer @maniac last edited by

                    @maniac Stand heute können Ports nicht geschaltet werden. Ich habe momentan relativ wenig Zeit, so dass ich leider erstmal auch nicht dazu komme zu gucken, ob man es implementieren könnte.

                    M 1 Reply Last reply Reply Quote 0
                    • M
                      maniac @braindead last edited by

                      @braindead

                      Ok, danke.

                      Dann muss ich mir da noch mal was anderes überlegen.

                      liv-in-sky 1 Reply Last reply Reply Quote 0
                      • liv-in-sky
                        liv-in-sky @maniac last edited by

                        @maniac

                        habe keinen switch zum testen - aber evtl ist das was für dich

                        https://community.ui.com/questions/Power-Cycle-POE-port-on-UniFi-Switch-remotely-/f14675bd-85ae-41de-a524-5ffdfcdca7bf

                        https://nerdig.es/usw-poe-per-script-steuern/

                        M 1 Reply Last reply Reply Quote 0
                        • Samson71
                          Samson71 Global Moderator @maniac last edited by Samson71

                          @maniac sagte in [Major Update] UniFi Adapter v0.5.0:

                          Moin zusammen.

                          Ich nutze den Adapter schon eine Weile um meine WLANs per VIS ein-/auszuschalten. Das geht ja über den DP:

                          unifi.0.default.wlans.NAMEWLAN.enabled

                          Genau das klappt bei mir nicht. Setze ich den Datenpunkt manuell auf "false", dann sollte das besagte wlan ja nicht mehr aktiv sein. Ist es aber dann immer noch. Eigentlich wollte ich damit quick und dirty das Gäste-wlan bei Bedarf am Tablet ein- und ausschalten.

                          liv-in-sky 1 Reply Last reply Reply Quote 0
                          • liv-in-sky
                            liv-in-sky @Samson71 last edited by liv-in-sky

                            @Samson71

                            du weißt aber, dass dann alle ap's provisioniert werden und das bedeutet, dass alle wlan geräte die verbindung verlieren und sich neu anmelden müssen - dieser vorgang kann gefühlt ewig dauern - bei mir ca. 1 minute, bis alle z.b sonoffs wieder so reagieren, wie sie sollen

                            Samson71 1 Reply Last reply Reply Quote 1
                            • Samson71
                              Samson71 Global Moderator @liv-in-sky last edited by

                              @liv-in-sky
                              Sicher weiß ich das. Bis meine 4 AP's provisioniert sind dauert es auch einen Moment. Das ist mir klar. Es passiert aber gar nichts. Man kann das im Controller ja live verfolgen welche Devices was machen, also ob gerade ein Update erfolgt, sie neu starten oder ob sie eben provisioniert werden.
                              Ich muss aber dazu sagen, dass das Gäste-wlan normalerweise nicht von allen AP's auf 2,4 und 5GHz verteilt wird und ein eigenes vlan hat. Vielleicht liegt es auch daran.

                              1 Reply Last reply Reply Quote 0
                              • M
                                maniac @liv-in-sky last edited by

                                @liv-in-sky sagte in [Major Update] UniFi Adapter v0.5.0:

                                @maniac

                                habe keinen switch zum testen - aber evtl ist das was für dich

                                https://nerdig.es/usw-poe-per-script-steuern/
                                Danke.

                                Ich habe mir das mal angeschaut.
                                Es funktioniert soweit wenn ich per ssh im IOBroker dieses Script

                                #!/bin/bash
                                
                                function usage {
                                        echo
                                        echo $"Usage: $0  <on|off> "
                                        echo
                                        echo "Example: $0 192.168.178.12 on 8"
                                
                                        echo
                                }
                                
                                function is_number {
                                        [[ "$1" =~ ^[0-9]+$ ]] && return 0 || return 1
                                }
                                
                                function is_host {
                                        [[ "$1" =~ ^[0-9a-zA-Z.:-]+$ ]] && return 0 || return 1
                                }
                                
                                function valid_action {
                                        [[ "${1,,}" =~ ^on|off$ ]] && return 0 || return 1
                                }
                                
                                
                                # check if hostname or IP is provided as target switch
                                if ! is_host "$1"; then
                                       usage
                                       echo -e "ERROR: Target switch must be a valid host name or IPv4/v6 address!\n"
                                       exit 2
                                fi
                                
                                # check if on or off is provided as action
                                if ! valid_action "$2"; then
                                       usage
                                       echo -e "ERROR: action must be on or off!\n"
                                       exit 2
                                fi
                                
                                # check if port-parameter is number
                                if ! is_number "$3" ; then
                                        usage
                                        echo -e "ERROR: portnumber contains non-numerical characters!\n"
                                        exit 3
                                fi
                                
                                cmd_pre="enable\n$password\nconfigure\n"
                                
                                cmd_on="interface 0/$3\npoe opmode auto\nexit"
                                cmd_off="interface 0/$3\npoe opmode shutdown\nexit"
                                cmd_status="show poe status 0/$3"
                                
                                cmd_post="\nexit\nexit\n"
                                
                                case "${2,,}" in
                                        on)
                                                ssh admin@$1 '(echo "enable" ; echo "configure" ; echo "interface 0/'$3'" ; echo "poe opmode auto" ; echo "exit" ; echo "exit"; echo "exit"  ) | telnet localhost 23 ; exit;'
                                                ;;
                                        off)
                                                ssh admin@$1 '(echo "enable" ; echo "configure" ; echo "interface 0/'$3'" ; echo "poe opmode shutdown" ; echo "exit" ; echo "exit"; echo "exit"  ) | telnet localhost 23 ; exit;'
                                                ;;
                                        *)
                                                usage
                                                exit 2
                                                ;;
                                esac
                                
                                

                                mit

                                ./cam_aus_an <IP-SWITCH> on 20 oder ./cam_aus_an <IP-SWITCH> off 20
                                

                                starte.

                                Aber wie führe ich diese dann im IOBroker aus? Möchte gerne per VIS die Kameras an-/ausschalten.

                                Ich habe es mit sshexec versucht, da ich damit schon meine Synologys herunter fahre. Das mit den Synologys funktioniert auch soweit.

                                var SSH = require('simple-ssh');
                                 
                                var ssh = new SSH({
                                    host: 'IP Synology',
                                    port: 22,
                                    user: 'synologyuser',
                                    pass: 'synologypass'
                                });
                                
                                setStateDelayed("javascript.0.scriptEnabled.Controlling.An-Aus.NAS1-Shutdown"/*javascript.0.scriptEnabled.Controlling.An-Aus.NAS1-Shutdown*/, false, 5000, false);
                                sendTo("telegram.0", "send", {
                                    text: 'NAS aus',
                                    user: 'Frank'
                                });
                                
                                
                                ssh.exec('echo "synologypass"|sudo -S shutdown -h now').start();
                                

                                Das ganze habe ich nun so mit den Kameras versucht.

                                var SSH = require('simple-ssh');
                                var ssh = new SSH({
                                    host: 'IP IOBroker',
                                    port: 22,
                                    user: 'iobrokeruser',
                                    pass: 'iobrokerpass'
                                });
                                
                                sendTo("telegram.0", "send", {
                                    text: 'Kameras aus',
                                    user: 'Frank'
                                });
                                
                                ssh.exec('echo "iobrokerpass"|sudo ./opt/iobroker/iobroker-data/scripte_ssh/cam_aus_an 192.168.222.2 off 20').start();
                                
                                

                                Die Telegram Meldung kommt auch an, aber der Port wird nicht geschaltet.

                                Ich habe es auch versucht ohne das große Script oben mit

                                 ssh admin@IP-Switch '(echo "enable" ; echo "configure" ; echo "interface 0/8" ; echo "poe opmode auto" ; echo "exit" ; echo "exit"; echo "exit"  ) | telnet localhost 23 ; exit;'
                                

                                Funktioniert direkt per ssh im IOBroker auch. Nur nicht aus Javascript heraus.
                                Jemand eine Idee wo mein Denkfehler ist?

                                liv-in-sky 1 Reply Last reply Reply Quote 0
                                • liv-in-sky
                                  liv-in-sky @maniac last edited by liv-in-sky

                                  @maniac habe dir eine chatnachricht gesendet

                                  was ich noch nicht ganz verstehe : das funktionierende bash script liegt auf dem iobroker server - damit du das aufrufen kannst, braucht es eigentlich nur einen exec() befehl -am besten mal testen ob der exec - allein funktioniert - evtl gibt es da noch rechte themen aber prinzipiell sollte es so laufen - das bashscript baut ja die ssh verbindung auf - daher brauchen wir nur dieses script mit exec() aufrufen

                                  dann legst du dir einen eigenen datenpunkt an - logic - der in der vis zur verfügung gestellt wird

                                  Image 2.png

                                  object id in diesem blockly musst du mit deinem eigenen datenpunkt "füttern"

                                  <block xmlns="https://developers.google.com/blockly/xml" type="on" id="}Y9S}nOO/_cW)`#anT9U" x="37.528259277343636" y="137.415069580078">
                                   <field name="OID">Object ID</field>
                                   <field name="CONDITION">any</field>
                                   <field name="ACK_CONDITION"></field>
                                   <statement name="STATEMENT">
                                     <block type="controls_if" id=";D}D,=~IcSS:bfS@`@Jk">
                                       <mutation else="1"></mutation>
                                       <value name="IF0">
                                         <block type="get_value" id="Ie_H*~n?bGrmq4H-:jGY">
                                           <field name="ATTR">val</field>
                                           <field name="OID">ID auswählen</field>
                                         </block>
                                       </value>
                                       <statement name="DO0">
                                         <block type="exec" id="J8DQN@ppQBzKoU!_g-3f">
                                           <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="false"></mutation>
                                           <field name="WITH_STATEMENT">FALSE</field>
                                           <field name="LOG"></field>
                                           <value name="COMMAND">
                                             <shadow type="text" id="V#OuEg-xaxd+Qmqt3Si*">
                                               <field name="TEXT">sudo bash /opt/iobroker/iobroker-data/scripte_ssh/cam_aus_an 192.168.222.2 on 20</field>
                                             </shadow>
                                           </value>
                                         </block>
                                       </statement>
                                       <statement name="ELSE">
                                         <block type="exec" id="0h6B?B4}#cLZw[,Pt(Xb">
                                           <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="false"></mutation>
                                           <field name="WITH_STATEMENT">FALSE</field>
                                           <field name="LOG"></field>
                                           <value name="COMMAND">
                                             <shadow type="text" id="},j(+b}._Fe*Go/3Ve;9">
                                               <field name="TEXT">sudo bash /opt/iobroker/iobroker-data/scripte_ssh/cam_aus_an 192.168.222.2 off 20</field>
                                             </shadow>
                                           </value>
                                         </block>
                                       </statement>
                                     </block>
                                   </statement>
                                  </block>
                                  

                                  das ganze sollte funktionieren, wenn du eine console auf iobroker öffnest und dort in die console

                                  ./cam_aus_an <IP-SWITCH> on 20 oder ./cam_aus_an <IP-SWITCH> off 20
                                  

                                  einen der beiden befehle ausführen kannst - wenn das funktioniert, sollte der exec befehl im blockly funktionieren

                                  M 2 Replies Last reply Reply Quote 0
                                  • M
                                    maniac @liv-in-sky last edited by maniac

                                    @liv-in-sky

                                    Funktioniert nicht. Bekomme im IOBroker Terminal Adapter den Fehler.

                                    6daa56db-49e5-4d4b-b7af-05949e5cf5ac-grafik.png

                                    liv-in-sky 1 Reply Last reply Reply Quote 0
                                    • liv-in-sky
                                      liv-in-sky @maniac last edited by

                                      @maniac

                                      hast du wie hier beschrieben, https://nerdig.es/usw-poe-per-script-steuern/ , dass mit dem ssh-key gemacht ? irgendwie ist der key nicht bekannt. wir haben kein homeassistant sonder iobroker - sollte aber theoretisch genau so funktionieren

                                      das bashscript muss natürlich in der iobroker console ausführbar sein

                                      Image 3.png

                                      das hier muss als iobroker user im terminal ausgeführt werden - es gibt einen terminal adapter für iobroker- das terminal kannst du dann über den admin aufrufen und darin das beschriebene vorgehen ausprobieren

                                      Image 4.png

                                      M 1 Reply Last reply Reply Quote 0
                                      • Feuersturm
                                        Feuersturm @maniac last edited by

                                        @maniac sagte in [Major Update] UniFi Adapter v0.5.0:

                                        Moin zusammen.

                                        Ich nutze den Adapter schon eine Weile um meine WLANs per VIS ein-/auszuschalten. Das geht ja über den DP:

                                        unifi.0.default.wlans.NAMEWLAN.enabled

                                        und funktioniert einwandfrei bisher.

                                        Ich habe mir gerade ein Gäste WLAN erstellt. Sobald ich dieses deaktiviere wird auch mein normales WLAN abgeschaltet und es dauert etwas bis dieses wieder verfügbar ist.
                                        Hast du auch dieses Verhalten?

                                        liv-in-sky M 2 Replies Last reply Reply Quote 0
                                        • liv-in-sky
                                          liv-in-sky @Feuersturm last edited by liv-in-sky

                                          @Feuersturm

                                          https://forum.iobroker.net/post/493077

                                          ich denke, daher arbeitet man bei unifi mit den vouchers - da muss nix neugestartet werden

                                          Feuersturm 1 Reply Last reply Reply Quote 1
                                          • Feuersturm
                                            Feuersturm @liv-in-sky last edited by

                                            @liv-in-sky Danke für den Link. Da hab ich wohl zu schnell über die nachfolgenden Beiträge drüber gelesen.
                                            Ja das mit den Vouchers ist dann auch mein Plan B.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            591
                                            Online

                                            31.7k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

                                            unifi
                                            54
                                            510
                                            79641
                                            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