Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Wie exec Ergebnis mit Blockly nutzen? (gelöst)

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    2.6k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.0k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.3k

Wie exec Ergebnis mit Blockly nutzen? (gelöst)

Scheduled Pinned Locked Moved Skripten / Logik
11 Posts 4 Posters 7.3k Views 2 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • N Offline
    N Offline
    NyanCat
    wrote on last edited by
    #1

    Hallo, ich würde gerne über Telnet abgefragten AVR-Status in Blockly weiterverwenden, also als Objekt speichern:

    #!/bin/sh
    
    host=192.168.0.xxx
    port=xxxx
    cmd1=?P
    
    (echo open ${host} ${port}
      sleep 1
      echo ${cmd1}
      sleep 1
      echo exit ) | telnet
    

    In der Konsole funktioniert die Abfrage auch, wenn ich das obige script ausführe und gibt dann folgendes aus:

    Connected to 192.168.0.xxx.
    Escape character is '^]'.
    PWR0
    Connection closed by foreign host.
    

    Aber wie kann ich die möglichen Ausgaben "PWR0" und "PWR1" als String in einem Objekt speichern, um dies dann in Blockly weiterverwenden zu können? (so dass ich weiß, ob der AVR an ist oder nicht)

    Nutze zur Zeit immer den exec block um kleine sh datein, wie die oben auszuführen und damit den AVR zu bedienen, klappt zwar wunderbar ist aber bestimmt unnötig kompliziert, muss ja für jeden neuen Steuerbefehl eine neue sh datei anlegen …

          POWER_ON="PO"
          POWER_OFF="PF"
       POWER_QUERY="?P"
       POWER_ONSTATE="PWR0"
       POWER_OFFSTATE="PWR1"
    

    ihr merkt schon, ich hab nur bedingt eine Ahnung, was ich da mache … :lol:

    Vielen Dank und Grüße.

    Bitte um Nachsicht: Bin ein hardcore Noob, was Coding angeht. Copy-Paste ist mein Freund.

    1 Reply Last reply
    0
    • M Offline
      M Offline
      mariohbs
      wrote on last edited by
      #2

      Moin,

      relativ einfach. Du machst einen Block "Exec" und aktivierst die Option "mit Ergebnissen". Dann bekommst du nach Ausführung die Variable "error" und "result". Beide Blöcke sind unter den Variablen zu finden. Mit diesen Blöcken kannst du nun das Ergebnis verarbeiten. Der Result Block enthält die Text-Ausgabe der Shell und deinen Wert kannst du dir dann z.B. über die Text-Funktionen raussplitten. Könnte z.B. mit "suche erstes Auftreten von PWR" gehen.

      Ich nutze das z.B. um die Ping Zeit im Netzwerk zu bestimmen und in Blockly weiter zu verarbeiten.

      Ob das mit den SH Dateien sinnvoll ist kann ich nicht sagen, bin weder in Java noch im Raspi so fit, dass ich da andere / schnellere Lösungen kennen würde. Die Befehle für den Exec baue ich mir aber auch im Blockly - sprich habe keine SH Dateien am start.

      Gruß

      Mario

      1 Reply Last reply
      1
      • N Offline
        N Offline
        NyanCat
        wrote on last edited by
        #3

        Ah :o die Variablen sind mir vorher nie aufgefallen. Vielen Dank, war genau das was ich gesucht habe. Meinst ich kann die obige Funktion auch mit blockly nachbauen?

        Grüße

        Bitte um Nachsicht: Bin ein hardcore Noob, was Coding angeht. Copy-Paste ist mein Freund.

        1 Reply Last reply
        0
        • M Offline
          M Offline
          mariohbs
          wrote on last edited by
          #4

          Ich würde es einfach mal probieren. Also ich mache mit Exec befehlen z.B. den Connect zum HM Gateway und rebootet das z.B. bei Bedarf.

          1 Reply Last reply
          0
          • N Offline
            N Offline
            NyanCat
            wrote on last edited by
            #5

            so bin nun zuhause und wollte das mal ausprobieren,

            @mariohbs:

            Du machst einen Block "Exec" und aktivierst die Option "mit Ergebnissen". Dann bekommst du nach Ausführung die Variable "error" und "result". `

            aber leider finde ich keine neuen variablen :-(
            4250_exec_test.jpg

            Bitte um Nachsicht: Bin ein hardcore Noob, was Coding angeht. Copy-Paste ist mein Freund.

            1 Reply Last reply
            0
            • M Offline
              M Offline
              mariohbs
              wrote on last edited by
              #6

              @NyanCat:

              aber leider finde ich keine neuen variablen :-( `

              Mhm…. seltsam. Also bei mir kommt da der Block "error" und "result" zum Vorschein, den mann dann normal verarbeiten kann.
              2093_blockly-netzwerk.jpg

              Hast du mal geschaut, ob in der Java Script Instanz auch der Haken bei "Erlaube das Kommando "exec":" gesetzt ist?

              Gruß

              Mario

              1 Reply Last reply
              0
              • N Offline
                N Offline
                NyanCat
                wrote on last edited by
                #7

                @mariohbs:

                Hast du mal geschaut, ob in der Java Script Instanz auch der Haken bei "Erlaube das Kommando "exec":" gesetzt ist? `

                Hi, sorry für die späte Antwort. War nicht im Lande.

                Ja das hab ich direkt als erstes. Ist natürlich aktiviert.

                Bin daher auch etwas ratlos :-(

                Bitte um Nachsicht: Bin ein hardcore Noob, was Coding angeht. Copy-Paste ist mein Freund.

                1 Reply Last reply
                0
                • M Offline
                  M Offline
                  mariohbs
                  wrote on last edited by
                  #8

                  Dann gehen mir leider auch die Ideen aus :-(

                  Vielleicht versuchst du es mal mit einem direkten Befehl - so wie bei mir mit Ping - ob dann ein Ergebnis kommt?

                  1 Reply Last reply
                  0
                  • BluefoxB Offline
                    BluefoxB Offline
                    Bluefox
                    wrote on last edited by
                    #9

                    @NyanCat:

                    so bin nun zuhause und wollte das mal ausprobieren,

                    @mariohbs:

                    Du machst einen Block "Exec" und aktivierst die Option "mit Ergebnissen". Dann bekommst du nach Ausführung die Variable "error" und "result". `

                    aber leider finde ich keine neuen variablen :-( `
                    Dafür braucht man kleinen Trick.

                    Erst muss die Variable mit dem Namen "result" erzeugt werden und dann kann man die im Ergebnis abfragen:
                    48_2018-03-15_13_58_58-iobroker.admin.png

                    1 Reply Last reply
                    3
                    • wendy2702W Online
                      wendy2702W Online
                      wendy2702
                      wrote on last edited by
                      #10

                      Nur mal so…

                      ist das kein AVR für den es einen fertigen Adapter gibt?

                      Bitte keine Fragen per PN, die gehören ins Forum!

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

                      1 Reply Last reply
                      0
                      • N Offline
                        N Offline
                        NyanCat
                        wrote on last edited by
                        #11

                        @wendy2702:

                        Nur mal so…

                        ist das kein AVR für den es einen fertigen Adapter gibt? `

                        hmm das müsste ich nochmal checken. Ist ein Pioneer VSX921.

                        @Bluefox:

                        Dafür braucht man kleinen Trick.

                        Erst muss die Variable mit dem Namen "result" erzeugt werden und dann kann man die im Ergebnis abfragen: `

                        vielen Dank, das war die Lösung

                        Bitte um Nachsicht: Bin ein hardcore Noob, was Coding angeht. Copy-Paste ist mein Freund.

                        1 Reply Last reply
                        0
                        Reply
                        • Reply as topic
                        Log in to reply
                        • Oldest to Newest
                        • Newest to Oldest
                        • Most Votes


                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        666

                        Online

                        32.6k

                        Users

                        82.3k

                        Topics

                        1.3m

                        Posts
                        Community
                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                        ioBroker Community 2014-2025
                        logo
                        • Login

                        • Don't have an account? Register

                        • Login or register to search.
                        • First post
                          Last post
                        0
                        • Home
                        • Recent
                        • Tags
                        • Unread 0
                        • Categories
                        • Unreplied
                        • Popular
                        • GitHub
                        • Docu
                        • Hilfe