Skip to content
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Entwicklung
  4. [Major Update] UniFi Adapter v0.5.0

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.1k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.9k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.1k

[Major Update] UniFi Adapter v0.5.0

Geplant Angeheftet Gesperrt Verschoben Entwicklung
unifi
510 Beiträge 54 Kommentatoren 115.5k Aufrufe 51 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • NashraN Offline
    NashraN Offline
    Nashra
    Most Active Forum Testing
    schrieb am zuletzt editiert von
    #438

    Entweder ich sehe den Wald vor lauter Bäumen nicht oder die DP's gibt es nicht.
    Ich suche jeweils den DP von den AP's ob sie online sind. Hintergrund, wenn einer
    ausfällt hätte ich gerne eine Info darüber.

    Gruß Ralf
    Mir egal, wer Dein Vater ist! Wenn ich hier angel, wird nicht übers Wasser gelaufen!!

    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

    Tom SonT 1 Antwort Letzte Antwort
    0
    • NashraN Nashra

      Entweder ich sehe den Wald vor lauter Bäumen nicht oder die DP's gibt es nicht.
      Ich suche jeweils den DP von den AP's ob sie online sind. Hintergrund, wenn einer
      ausfällt hätte ich gerne eine Info darüber.

      Tom SonT Offline
      Tom SonT Offline
      Tom Son
      schrieb am zuletzt editiert von
      #439

      @Nashra Könntest recht haben, aber vielleicht kann man das mit dem Uptime realisieren, oder unter health->wlan->status ?
      Sonst bleibt nur noch auf Github was schreiben, vielleicht erbarmt sich ein Entwickler und bauts ein... 🙂


      TI Board CC2652R1 / latest / js-Controler 3.3.18 / NodeJS 12.22.7

      1 Antwort Letzte Antwort
      0
      • ? Offline
        ? Offline
        Ein ehemaliger Benutzer
        schrieb am zuletzt editiert von
        #440

        Hallo,

        ich bin an deinem Adapter interessiert.

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

        Ich möchte folgende Dinge wissen.

        • Neue Geräte im WLAN
        • 5 Minuten Verbindung zu einem Gerät im Netzwerk verloren.
        • 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.
        • den Router neustarten?

        Habe ich es richtig erkannt, dass dein Adapter der ausgereifteste und einzige hier ist?
        Das ehrt dich. 😃

        braindeadB S 2 Antworten Letzte Antwort
        0
        • ? Ein ehemaliger Benutzer

          Hallo,

          ich bin an deinem Adapter interessiert.

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

          Ich möchte folgende Dinge wissen.

          • Neue Geräte im WLAN
          • 5 Minuten Verbindung zu einem Gerät im Netzwerk verloren.
          • 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.
          • den Router neustarten?

          Habe ich es richtig erkannt, dass dein Adapter der ausgereifteste und einzige hier ist?
          Das ehrt dich. 😃

          braindeadB Offline
          braindeadB Offline
          braindead
          Developer
          schrieb am zuletzt editiert von
          #441

          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.

          RK62R M 2 Antworten Letzte Antwort
          0
          • braindeadB braindead

            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.

            RK62R Offline
            RK62R Offline
            RK62
            schrieb am zuletzt editiert von
            #442

            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

            braindeadB 1 Antwort Letzte Antwort
            0
            • RK62R RK62

              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

              braindeadB Offline
              braindeadB Offline
              braindead
              Developer
              schrieb am zuletzt editiert von
              #443

              @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 Antwort Letzte Antwort
              0
              • braindeadB braindead

                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.

                M Offline
                M Offline
                mguenther
                schrieb am zuletzt editiert von mguenther
                #444

                @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

                braindeadB 1 Antwort Letzte Antwort
                0
                • M 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

                  braindeadB Offline
                  braindeadB Offline
                  braindead
                  Developer
                  schrieb am zuletzt editiert von
                  #445

                  @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 Antwort Letzte Antwort
                  0
                  • braindeadB braindead

                    @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 Offline
                    M Offline
                    mguenther
                    schrieb am zuletzt editiert von
                    #446

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

                    M 1 Antwort Letzte Antwort
                    1
                    • M mguenther

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

                      M Offline
                      M Offline
                      maniac
                      schrieb am zuletzt editiert von
                      #447

                      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?

                      Gruß Frank…

                      braindeadB Samson71S FeuersturmF 3 Antworten Letzte Antwort
                      0
                      • M maniac

                        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?

                        braindeadB Offline
                        braindeadB Offline
                        braindead
                        Developer
                        schrieb am zuletzt editiert von
                        #448

                        @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 Antwort Letzte Antwort
                        0
                        • braindeadB braindead

                          @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 Offline
                          M Offline
                          maniac
                          schrieb am zuletzt editiert von
                          #449

                          @braindead

                          Ok, danke.

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

                          Gruß Frank…

                          liv-in-skyL 1 Antwort Letzte Antwort
                          0
                          • M maniac

                            @braindead

                            Ok, danke.

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

                            liv-in-skyL Offline
                            liv-in-skyL Offline
                            liv-in-sky
                            schrieb am zuletzt editiert von
                            #450

                            @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/

                            nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                            M 1 Antwort Letzte Antwort
                            0
                            • M maniac

                              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?

                              Samson71S Offline
                              Samson71S Offline
                              Samson71
                              Global Moderator
                              schrieb am zuletzt editiert von Samson71
                              #451

                              @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-skyL 1 Antwort Letzte Antwort
                              0
                              • Samson71S 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-skyL Offline
                                liv-in-skyL Offline
                                liv-in-sky
                                schrieb am zuletzt editiert von liv-in-sky
                                #452

                                @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

                                nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                                Samson71S 1 Antwort Letzte Antwort
                                1
                                • liv-in-skyL 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

                                  Samson71S Offline
                                  Samson71S Offline
                                  Samson71
                                  Global Moderator
                                  schrieb am zuletzt editiert von
                                  #453

                                  @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 Antwort Letzte Antwort
                                  0
                                  • liv-in-skyL liv-in-sky

                                    @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 Offline
                                    M Offline
                                    maniac
                                    schrieb am zuletzt editiert von
                                    #454

                                    @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?

                                    Gruß Frank…

                                    liv-in-skyL 1 Antwort Letzte Antwort
                                    0
                                    • M maniac

                                      @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-skyL Offline
                                      liv-in-skyL Offline
                                      liv-in-sky
                                      schrieb am zuletzt editiert von liv-in-sky
                                      #455

                                      @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

                                      nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                                      M 2 Antworten Letzte Antwort
                                      0
                                      • liv-in-skyL 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 Offline
                                        M Offline
                                        maniac
                                        schrieb am zuletzt editiert von maniac
                                        #456

                                        @liv-in-sky

                                        Funktioniert nicht. Bekomme im IOBroker Terminal Adapter den Fehler.

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

                                        Gruß Frank…

                                        liv-in-skyL 1 Antwort Letzte Antwort
                                        0
                                        • M maniac

                                          @liv-in-sky

                                          Funktioniert nicht. Bekomme im IOBroker Terminal Adapter den Fehler.

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

                                          liv-in-skyL Offline
                                          liv-in-skyL Offline
                                          liv-in-sky
                                          schrieb am zuletzt editiert von
                                          #457

                                          @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

                                          nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                                          M 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          773

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe