Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Praktische Anwendungen (Showcase)
    4. UniFi Switch POE Ports per VIS / Blockly ein-/ausschalten

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    UniFi Switch POE Ports per VIS / Blockly ein-/ausschalten

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

      Moin zusammen.

      Nachdem ich nun mehrere Kameras in VIS eingefügt habe, wollte ich diese natürlich auch per VIS "steuern". Zumindest schnell und einfach ein-/ausschalten wenn mal Gartenparty ist und sie nicht aktiv sein sollen, oder Anwesenheitsgesteuert oder wie auch immer getriggert.
      Ich möchte das hier, auch für mich, einfach dokumentieren. Evtl. hilft es ja auch dem ein oder anderen.

      Vorab vielen Dank an @braindead für den Adapter und die Inspiration.
      Noch mehr Dank geht an @liv-in-sky für die Hilfe beim Troubleshooting.
      Wer noch weiter nachlesen möchte, kann dies hier tun:
      Major Update UniFi Adapter

      Die Kameras sind alle per POE an UniFi Switches angeshlossen. Die Switche können grundsätzlich auch per SSH gesteuert werden, allerdings hatte ich, out of the Box mit dem UniFi Adapter, keine Möglichkeit gefunden die Switche zu steuern.

      Dazu habe ich von Nerdig poe-per-script-steuern dieses Script genommen und unter /opt/iobroker/cam.sh gespeichert.

      #!/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
      

      Das Problem bei mir an der Sache war eigentlich die Sache mit den RSA Keys für den Benutzer "iobroker"
      Im Terminal Adapter funktionierte die Erstellung der Keys einfach nicht.
      Im Endeffekt war es nach langen Versuchen aber dann nur der Befehl

      sudo -u iobroker ssh-keygen
      

      direkt per Putty auf iobroker.
      Damit wurden dann die Keys unter /home/iobroker/.ssh angelegt.

      Nun den Inhalt der Datei

      /home/iobroker/.ssh/id_rsa.pub
      

      in den Unifi-Controller importieren und die SSH-Authentifizierung aktivieren.

      Unter Einstellungen / Site / Neuen SSH Schlüssel hinzufügen
      61ceec98-b383-4c92-a760-1c1188d2f0e3-grafik.png

      Änderungen übernehmen und evtl. die Switche "Zwangsprovisionieren"

      Laut der Anleitung von Nerdig sollte nun mit

      sudo -u iobroker admin@<switch-ip>
      

      einmalig eine Verbindung zum Switch aufgebaut werden können, um die Keys zu bestätigen.
      Dies funktionierte bei mir aber nicht, ich bekam nur die Meldung "Befehl nicht gefunden".

      Somit wurde die /home/iobroker/known_hosts Datei nicht angelegt und das Script funktionierte natürlich nicht.
      Im Terminal Adapter folgte bei Aufruf von

      /opt/iobroker/cam.sh
      

      nur der Fehler Host Key Verification failed.

      Nach langem Suchen bin ich bei Nerdkrams auf einen Artikel gestoßen, der schließlich die Lösung brachte.

      Hier geht es um das Setzen von StrictHostKeyChecking=no.
      Dazu im Script cam.sh den Parameter -o StrictHostKeyChecking=no einfügen.

      ssh -o StrictHostKeyChecking=no admin@$1 '(echo "enable" ; echo "configure" ; echo "interface 0/'$3'" ; echo "poe opmode auto" ; echo "exit" ; echo "exit"; echo "exit"  ) |
      
      

      Das Script nun über den Terminal Adapter aufrufen. Damit wird die known_hosts im Home/.ssh angelegt.

      Danach kann der Parameter aus dem Script wieder entfernt werden.

      Ab jetzt kann im Terminal Adapter mit

      /opt/iobroker/cam.sh <IP-Switch> on/off <Switchport>
      

      POE an-/ausgeschaltet werden.

      Das Ganze geht dann natürlich auch über Blockly/Vis. Das funktionierte bei mir allerdings auch nicht direkt.

      Ich bekam eine Fehlermeldung nach dem triggern des erstellten Blockly.

      28.9.2020, 10:25:00.126 [error]: javascript.0 (1090) script.js.Kameras.Bewegung: exec: sudo bash /opt/iobroker/cam.sh 192.168.222.2 off 20
      

      Erste Voraussetzung ist im Javascript Adapter das erlauben von Exec Kommandos, das war bei mir schon.

      @liv-in-sky sties mich dann darauf, dass bei mir in der der Datei /etc/sudoers.d/iobroker der Eintrag

      iobroker ALL=(ALL) NOPASSWD: /bin/bash
      

      fehlt. Diesen habe ich in einer neuen Datei unter /etc/sudoers.d/iobroker-own eingetragen.

      Der Rest war relativ einfach.
      Nach einigen Versuchen mit der Syntax im Blockly, funktionierte schließlich auch das Schalten per VIS.

      Dazu noch Datenpunkte für jede Kamera anlegen, Blockly erstellen:
      6fd29724-994c-4c9b-b315-3cd252087858-grafik.png

      VIS Objekte einfügen.

      b36ab40e-3d16-4dac-9af3-d9daee1aceb3-grafik.png

      Freuen... 🙂

      Damit ergeben sich nun auch noch weitere Möglichkeiten um die Switche zu steuern. Habe zwar noch nicht weiter probert, aber theoretisch könnte man ja alles damit schalten.

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

        @maniac Vielen Dank für die Info. Ich warte dann aber lieber auf die Implementierung im Adapter (die hoffentlich irgendwann kommt). Deine Lösung sieht mir doch recht kompliziert aus. Aber für alle die nicht warten können definitiv eine super Sache!

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

          @Markus84
          Ich konnte einfach nicht warten 🙂

          Brain hat ja leider gerade wenig Zeit.

          1 Reply Last reply Reply Quote 0
          • D
            darkiop Most Active last edited by

            Hier noch eine Variante um die POE Ports zu schalten, etwas unschön bzgl. Passwort im Klartext im Skript, aber bei der Variante über einen SSH Key gabs (bei mir) Probleme im Zusammenspiel mit den Unifi Switchen. Das muss ich mir in einer ruhigen Minute nochmal anschauen.

            Ihr benötigt /usr/bin/plink (alternativ würde auch /usr/bin/sshpass gehen):

            sudo apt install putty-tools
            

            Folgende Dateien liegen bei mir unter /opt/iobroker/my-assets/unifi-switch


            /opt/iobroker/my-assets/unifi-switch/unifi-switch-poe-port-8-off
            conf
            interface 0/8
            shutdown
            exit

            /opt/iobroker/my-assets/unifi-switch/unifi-switch-poe-port-8-on
            en
            conf
            interface 0/8
            no shutdown
            exit

            Das Skript dazu - den Trigger DP müsst ihr euch selbst anlegen 🙂

            <xml xmlns="https://developers.google.com/blockly/xml">
             <variables>
               <variable id="%g/ANJxNOs5Cicx-gOSb">log_info_text</variable>
               <variable id="27F.R1Z-z#dt9y!]HCI?">user</variable>
               <variable id="]5sS^f/;5~_X{[qJ(FYE">pass</variable>
               <variable id=",W^G}X63.I8(oB$2R5LN">switch_ip</variable>
               <variable id="~;w%BJ+Dfcj?tZ^fn?j8">switch_port</variable>
               <variable id="Hb~d6EqId4z}cn3|S8;t">switch_poe_status</variable>
               <variable id="VOiR$*N3m0]#z3=8[W.j">exec_cmd</variable>
             </variables>
             <block type="procedures_defnoreturn" id="#Zi/$jvI[?9PNg/b0k:." x="-12" y="138">
               <mutation>
                 <arg name="log_info_text" varid="%g/ANJxNOs5Cicx-gOSb"></arg>
               </mutation>
               <field name="NAME">log_info</field>
               <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
               <statement name="STACK">
                 <block type="debug" id="tv!r|@tv45}[[V$gBHdO" inline="true">
                   <field name="Severity">log</field>
                   <value name="TEXT">
                     <shadow xmlns="http://www.w3.org/1999/xhtml" type="text">
                       <field name="TEXT">test</field>
                     </shadow>
                     <block type="text_join" id="cW6gAbluGo@d)J*#L{wc">
                       <mutation items="4"></mutation>
                       <value name="ADD0">
                         <block type="text" id="k@7d@dQu#zu?^FZ!n=i,">
                           <field name="TEXT">+++ </field>
                         </block>
                       </value>
                       <value name="ADD1">
                         <block type="text" id="CxOUVO`Xtmj1Y:)cwwz!">
                           <field name="TEXT">switch poe: </field>
                         </block>
                       </value>
                       <value name="ADD2">
                         <block type="variables_get" id="tAFuc5MD6IpErxMNOy%!">
                           <field name="VAR" id="%g/ANJxNOs5Cicx-gOSb">log_info_text</field>
                         </block>
                       </value>
                       <value name="ADD3">
                         <block type="text" id="T{W,KRi6k$Se*--LVQNu">
                           <field name="TEXT"> +++</field>
                         </block>
                       </value>
                     </block>
                   </value>
                 </block>
               </statement>
             </block>
             <block type="procedures_defnoreturn" id="+oqtTq6O-;eiS}Sj~6#Q" x="-12" y="363">
               <mutation>
                 <arg name="user" varid="27F.R1Z-z#dt9y!]HCI?"></arg>
                 <arg name="pass" varid="]5sS^f/;5~_X{[qJ(FYE"></arg>
                 <arg name="switch_ip" varid=",W^G}X63.I8(oB$2R5LN"></arg>
                 <arg name="switch_port" varid="~;w%BJ+Dfcj?tZ^fn?j8"></arg>
                 <arg name="switch_poe_status" varid="Hb~d6EqId4z}cn3|S8;t"></arg>
               </mutation>
               <field name="NAME">switch_poe</field>
               <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
               <statement name="STACK">
                 <block type="variables_set" id="IU{JZhU0s#v:256Xp8?n">
                   <field name="VAR" id="VOiR$*N3m0]#z3=8[W.j">exec_cmd</field>
                   <value name="VALUE">
                     <block type="text_join" id="h,%4/10E%,u)yT$%wB-h">
                       <mutation items="7"></mutation>
                       <value name="ADD0">
                         <block type="text" id="sl$c^pl%uv$,DAw1m=j*">
                           <field name="TEXT">/usr/bin/plink</field>
                         </block>
                       </value>
                       <value name="ADD1">
                         <block type="text" id="yCCq#+vAAnKZw$ysJGnq">
                           <field name="TEXT"> </field>
                         </block>
                       </value>
                       <value name="ADD2">
                         <block type="text_join" id="qV,rtBh{N1D/CwzEJT)H" inline="true">
                           <mutation items="3"></mutation>
                           <value name="ADD0">
                             <block type="variables_get" id="v7D^~-q]0+;B;LkOjr`T">
                               <field name="VAR" id="27F.R1Z-z#dt9y!]HCI?">user</field>
                             </block>
                           </value>
                           <value name="ADD1">
                             <block type="text" id="G_)61Rk!)9YAJdO#Cb;g">
                               <field name="TEXT">@</field>
                             </block>
                           </value>
                           <value name="ADD2">
                             <block type="variables_get" id="NQOYYEc,gZhThFshU#dP">
                               <field name="VAR" id=",W^G}X63.I8(oB$2R5LN">switch_ip</field>
                             </block>
                           </value>
                         </block>
                       </value>
                       <value name="ADD3">
                         <block type="text" id="GI%FJFdK6tDwDaAV(GR}">
                           <field name="TEXT"> </field>
                         </block>
                       </value>
                       <value name="ADD4">
                         <block type="text_join" id="w/}+A4)bW`bPU%aLp_s0" inline="true">
                           <mutation items="2"></mutation>
                           <value name="ADD0">
                             <block type="text" id="HFn9=.|LOuW]@EtR~-z!">
                               <field name="TEXT">-pw </field>
                             </block>
                           </value>
                           <value name="ADD1">
                             <block type="variables_get" id="_YE4H@jy@T5PLv#|pZy4">
                               <field name="VAR" id="]5sS^f/;5~_X{[qJ(FYE">pass</field>
                             </block>
                           </value>
                         </block>
                       </value>
                       <value name="ADD5">
                         <block type="text" id="vcngU=$a@sU.KFJV(M]Z">
                           <field name="TEXT"> </field>
                         </block>
                       </value>
                       <value name="ADD6">
                         <block type="text_join" id="8ZVCgZ`49GVa9FTSh+T]" inline="true">
                           <mutation items="6"></mutation>
                           <value name="ADD0">
                             <block type="text" id="@MKQ]pE3nAdKG_!MGHh;">
                               <field name="TEXT">telnet localhost &lt; </field>
                             </block>
                           </value>
                           <value name="ADD1">
                             <block type="text" id="m2dW(p,Jz#rHJUX9qy0O">
                               <field name="TEXT">/opt/iobroker/my-assets/unifi-switch/</field>
                             </block>
                           </value>
                           <value name="ADD2">
                             <block type="text" id="TFd)l7KmteD?MJD9PgP_">
                               <field name="TEXT">unifi-switch-poe-port-</field>
                             </block>
                           </value>
                           <value name="ADD3">
                             <block type="variables_get" id="XHh~`ZL1Cv:-!g]{VC/5">
                               <field name="VAR" id="~;w%BJ+Dfcj?tZ^fn?j8">switch_port</field>
                             </block>
                           </value>
                           <value name="ADD4">
                             <block type="text" id="iyE}^dII0oex`iee`tvv">
                               <field name="TEXT">-</field>
                             </block>
                           </value>
                           <value name="ADD5">
                             <block type="variables_get" id="wFOKk(TAs7wBw].dG^Mf">
                               <field name="VAR" id="Hb~d6EqId4z}cn3|S8;t">switch_poe_status</field>
                             </block>
                           </value>
                         </block>
                       </value>
                     </block>
                   </value>
                   <next>
                     <block type="exec" id="xH1gguE:gcRGt|{B_w:0" inline="true">
                       <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="false"></mutation>
                       <field name="WITH_STATEMENT">FALSE</field>
                       <field name="LOG">log</field>
                       <value name="COMMAND">
                         <shadow type="text" id="6,RZIj1g[D4Zp~@aH@D4">
                           <field name="TEXT"></field>
                         </shadow>
                         <block type="variables_get" id="p%,Qcf1{XBrX0j3bNHll">
                           <field name="VAR" id="VOiR$*N3m0]#z3=8[W.j">exec_cmd</field>
                         </block>
                       </value>
                     </block>
                   </next>
                 </block>
               </statement>
             </block>
             <block type="comment" id="gVr2c[tbzaIXb6rrJX`d" x="-12" y="713">
               <field name="COMMENT">switch-hwr port 8</field>
               <next>
                 <block type="on_ext" id="{]p[ZUC,-3?/wl.J`1iM">
                   <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                   <field name="CONDITION">ne</field>
                   <field name="ACK_CONDITION"></field>
                   <value name="OID0">
                     <shadow type="field_oid" id="FuZ}IorQE69AV.k+tZv^">
                       <field name="oid">default</field>
                     </shadow>
                     <block type="text" id="?*ld,pFs;[m5nq$JravZ">
                       <field name="TEXT">javascript.0.System.Netzwerk.Unifi.switch-hwr-port-8-poe</field>
                     </block>
                   </value>
                   <statement name="STATEMENT">
                     <block type="controls_if" id="K+;IX1I%$L`e}{IxACmT">
                       <mutation else="1"></mutation>
                       <value name="IF0">
                         <block type="on_source" id="O}M+F1+QSKu%T1IZk[u$">
                           <field name="ATTR">state.val</field>
                         </block>
                       </value>
                       <statement name="DO0">
                         <block type="procedures_callnoreturn" id="m(w,O:KnK|H9^V(AEcFZ" inline="false">
                           <mutation name="switch_poe">
                             <arg name="user"></arg>
                             <arg name="pass"></arg>
                             <arg name="switch_ip"></arg>
                             <arg name="switch_port"></arg>
                             <arg name="switch_poe_status"></arg>
                           </mutation>
                           <value name="ARG0">
                             <block type="text" id="R5)H|sVvP?jjgK$a?O?A">
                               <field name="TEXT">darkiop</field>
                             </block>
                           </value>
                           <value name="ARG1">
                             <block type="text" id="+YOA%q^h5,VjLf1*t:UN">
                               <field name="TEXT">xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx</field>
                             </block>
                           </value>
                           <value name="ARG2">
                             <block type="text" id="ZlVqO*HweXQ~4K{UFbSz">
                               <field name="TEXT">192.168.1.11</field>
                             </block>
                           </value>
                           <value name="ARG3">
                             <block type="text" id="yFr8m{Wa1+9|0xh%*Q79">
                               <field name="TEXT">8</field>
                             </block>
                           </value>
                           <value name="ARG4">
                             <block type="text" id="^}2j3D3}UJj9A`#|=|6A">
                               <field name="TEXT">on</field>
                             </block>
                           </value>
                         </block>
                       </statement>
                       <statement name="ELSE">
                         <block type="procedures_callnoreturn" id="Iy.3els1$05vLNCeFA3X" inline="false">
                           <mutation name="switch_poe">
                             <arg name="user"></arg>
                             <arg name="pass"></arg>
                             <arg name="switch_ip"></arg>
                             <arg name="switch_port"></arg>
                             <arg name="switch_poe_status"></arg>
                           </mutation>
                           <value name="ARG0">
                             <block type="text" id="OewgXnT!x39J{zO)[I2t">
                               <field name="TEXT">darkiop</field>
                             </block>
                           </value>
                           <value name="ARG1">
                             <block type="text" id="EQ]gZb/KoY.N)8wq4oMZ">
                               <field name="TEXT">xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx</field>
                             </block>
                           </value>
                           <value name="ARG2">
                             <block type="text" id="~LC?zr-S*MYc}u_b5x/1">
                               <field name="TEXT">192.168.1.11</field>
                             </block>
                           </value>
                           <value name="ARG3">
                             <block type="text" id="nUY}q7tE#-y:W8ezciJo">
                               <field name="TEXT">8</field>
                             </block>
                           </value>
                           <value name="ARG4">
                             <block type="text" id="a8BT{4w8nB:FQ{2:nI8J">
                               <field name="TEXT">off</field>
                             </block>
                           </value>
                         </block>
                       </statement>
                     </block>
                   </statement>
                   <next>
                     <block type="comment" id="LcN$z9lIebQ7u3f+1G4D">
                       <field name="COMMENT">switch-hwr port 9</field>
                       <next>
                         <block type="on_ext" id="P*l;u,Kzo;n6/Q!!*Dz8">
                           <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                           <field name="CONDITION">ne</field>
                           <field name="ACK_CONDITION"></field>
                           <value name="OID0">
                             <shadow type="field_oid">
                               <field name="oid">default</field>
                             </shadow>
                             <block type="text" id="b$$l4RLR|UyfY5w*TCAc">
                               <field name="TEXT">javascript.0.System.Netzwerk.Unifi.switch-hwr-port-9-poe</field>
                             </block>
                           </value>
                           <statement name="STATEMENT">
                             <block type="controls_if" id="-[qKVSc@_x.Y6cPIo7d1">
                               <mutation else="1"></mutation>
                               <value name="IF0">
                                 <block type="on_source" id="-eQMowHnRf1]kVF2ulLF">
                                   <field name="ATTR">state.val</field>
                                 </block>
                               </value>
                               <statement name="DO0">
                                 <block type="procedures_callnoreturn" id="EXdmTEZnYp`t!(^+[MA(" inline="false">
                                   <mutation name="switch_poe">
                                     <arg name="user"></arg>
                                     <arg name="pass"></arg>
                                     <arg name="switch_ip"></arg>
                                     <arg name="switch_port"></arg>
                                     <arg name="switch_poe_status"></arg>
                                   </mutation>
                                   <value name="ARG0">
                                     <block type="text" id="-e:oK]omzxrhADb)BTF#">
                                       <field name="TEXT">darkiop</field>
                                     </block>
                                   </value>
                                   <value name="ARG1">
                                     <block type="text" id="-y7cg!7v1KXp9((_%M]8">
                                       <field name="TEXT">xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx</field>
                                     </block>
                                   </value>
                                   <value name="ARG2">
                                     <block type="text" id="wk52#7}JF2THaDz8%goR">
                                       <field name="TEXT">192.168.1.11</field>
                                     </block>
                                   </value>
                                   <value name="ARG3">
                                     <block type="text" id="2Ue582hF|[$ePC}/p1,A">
                                       <field name="TEXT">9</field>
                                     </block>
                                   </value>
                                   <value name="ARG4">
                                     <block type="text" id="[b^.Q5~{(OnymKrC^1^d">
                                       <field name="TEXT">on</field>
                                     </block>
                                   </value>
                                 </block>
                               </statement>
                               <statement name="ELSE">
                                 <block type="procedures_callnoreturn" id="9)%]}jS~Da3#_p@P,+!_" inline="false">
                                   <mutation name="switch_poe">
                                     <arg name="user"></arg>
                                     <arg name="pass"></arg>
                                     <arg name="switch_ip"></arg>
                                     <arg name="switch_port"></arg>
                                     <arg name="switch_poe_status"></arg>
                                   </mutation>
                                   <value name="ARG0">
                                     <block type="text" id="sL]%7XUzgon_$*nxmZYD">
                                       <field name="TEXT">darkiop</field>
                                     </block>
                                   </value>
                                   <value name="ARG1">
                                     <block type="text" id="c*D@Lj0QgRC$Lv9Cc]?X">
                                       <field name="TEXT">xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx</field>
                                     </block>
                                   </value>
                                   <value name="ARG2">
                                     <block type="text" id="Ai+8%6Kz6`550V,]dr5r">
                                       <field name="TEXT">192.168.1.11</field>
                                     </block>
                                   </value>
                                   <value name="ARG3">
                                     <block type="text" id=".4YmA-LT^#EcOTjdr$F1">
                                       <field name="TEXT">9</field>
                                     </block>
                                   </value>
                                   <value name="ARG4">
                                     <block type="text" id="F:`=IVts7P_$97jlabb(">
                                       <field name="TEXT">off</field>
                                     </block>
                                   </value>
                                 </block>
                               </statement>
                             </block>
                           </statement>
                         </block>
                       </next>
                     </block>
                   </next>
                 </block>
               </next>
             </block>
            </xml>
            

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

            Support us

            ioBroker
            Community Adapters
            Donate

            884
            Online

            31.9k
            Users

            80.1k
            Topics

            1.3m
            Posts

            unifi ssh steuern
            3
            4
            2180
            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