Skip to content
  • Home
  • 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

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. Blockly und exec

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    21
    1
    945

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    14
    1
    2.4k

Blockly und exec

Geplant Angeheftet Gesperrt Verschoben Blockly
18 Beiträge 7 Kommentatoren 3.1k Aufrufe 4 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.
  • A Offline
    A Offline
    AndreB
    schrieb am zuletzt editiert von
    #7

    Macht er nicht, wenn ich es auf der Console aufrufe das schaltet er die USBPower aus macht er über exec aber nicht und ich bekomme ja auch keine rückgabewerte

    HomoranH paul53P 2 Antworten Letzte Antwort
    0
    • A AndreB

      Macht er nicht, wenn ich es auf der Console aufrufe das schaltet er die USBPower aus macht er über exec aber nicht und ich bekomme ja auch keine rückgabewerte

      HomoranH Nicht stören
      HomoranH Nicht stören
      Homoran
      Global Moderator Administrators
      schrieb am zuletzt editiert von Homoran
      #8

      @andreb sagte in Blockly und exec:

      ch bekomme ja auch keine rückgabewerte

      die forderst du ja auch nicht an.

      Variable 'result' anlegen, dann mit dieser weiterarbeiten.
      zb. erst einmal debug-Baustein zum anzeigen von result

      @andreb sagte in Blockly und exec:

      Macht er nicht, wenn ich es auf der Console aufrufe das schaltet er die USBPower aus macht er über exec aber nicht

      wahrscheinlich darf der User ioBroker das nicht

      kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

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

      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

      1 Antwort Letzte Antwort
      0
      • A AndreB

        Macht er nicht, wenn ich es auf der Console aufrufe das schaltet er die USBPower aus macht er über exec aber nicht und ich bekomme ja auch keine rückgabewerte

        paul53P Offline
        paul53P Offline
        paul53
        schrieb am zuletzt editiert von
        #9

        @andreb sagte: bekomme ja auch keine rückgabewerte

        exec() funktioniert und gibt auch das Ergebnis in der lokalen Variablen result zurück.

        Bild_2021-03-02_212405.png

        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

        1 Antwort Letzte Antwort
        0
        • A Offline
          A Offline
          AndreB
          schrieb am zuletzt editiert von
          #10

          probiere ich mal, den gedanken mit den berechtigungen hatte ich auch schon ging aber davon aus das der iobroker sudo kann.

          A 1 Antwort Letzte Antwort
          0
          • A AndreB

            probiere ich mal, den gedanken mit den berechtigungen hatte ich auch schon ging aber davon aus das der iobroker sudo kann.

            A Offline
            A Offline
            aleks-83
            schrieb am zuletzt editiert von aleks-83
            #11

            Ich klinke mich mal ein da ich ein ähnliches Problem habe.

            Und zwar möchte ich bei einer Störung, per exec einen Adapter neu starten.

            Wenn ich "iobroker restart sonos.0" in der Konsole direkt unter Windows eingebe, funktioniert der Befehl.
            Wie kann ich den auch durch JavaScript ausführen lassen?

            9353d1f6-23e1-4310-ab43-4cfc6a2dc42f-image.png

            javascript.0	2021-03-04 11:05:34.367	warn	(6216) script.js.Xiaomi.SonosDurchBWMschalten: exec: iobroker restart sonos.0
            javascript.0	2021-03-04 11:05:34.416	warn	(6216) script.js.Xiaomi.SonosDurchBWMschalten: *** Error. Please start the ioBroker commandline with the correct Windows startmenu shortcut. Aborting...
            

            b8508f92-aead-412e-9f81-131b76bea734-image.png

            = Dell Optiplex Micro - 10GB RAM - 200GB SSD - Debian VM =
            = Node.js v20.18.3 = NPM 10.2.3 = JS Controller 7.0.6 =

            Ubiquiti UAP-AC-LR - UAP-AC-Lite - Synology DS716+II - Fritz!Box 7490
            Glasfaser 400

            A O 2 Antworten Letzte Antwort
            0
            • A aleks-83

              Ich klinke mich mal ein da ich ein ähnliches Problem habe.

              Und zwar möchte ich bei einer Störung, per exec einen Adapter neu starten.

              Wenn ich "iobroker restart sonos.0" in der Konsole direkt unter Windows eingebe, funktioniert der Befehl.
              Wie kann ich den auch durch JavaScript ausführen lassen?

              9353d1f6-23e1-4310-ab43-4cfc6a2dc42f-image.png

              javascript.0	2021-03-04 11:05:34.367	warn	(6216) script.js.Xiaomi.SonosDurchBWMschalten: exec: iobroker restart sonos.0
              javascript.0	2021-03-04 11:05:34.416	warn	(6216) script.js.Xiaomi.SonosDurchBWMschalten: *** Error. Please start the ioBroker commandline with the correct Windows startmenu shortcut. Aborting...
              

              b8508f92-aead-412e-9f81-131b76bea734-image.png

              A Offline
              A Offline
              aleks-83
              schrieb am zuletzt editiert von aleks-83
              #12

              Ich habe einen Blog-Eintrag gefunden in dem jemand dem iobroker user sudo Rechte verleiht.
              Mit dem Hinweis dass dies nicht der sicherste Weg sei.

              Was spricht denn dagegen, dem iobroker sudo zu verleihen?
              Würde das hier bei meiner Fehlermeldung überhaupt helfen?

              = Dell Optiplex Micro - 10GB RAM - 200GB SSD - Debian VM =
              = Node.js v20.18.3 = NPM 10.2.3 = JS Controller 7.0.6 =

              Ubiquiti UAP-AC-LR - UAP-AC-Lite - Synology DS716+II - Fritz!Box 7490
              Glasfaser 400

              1 Antwort Letzte Antwort
              0
              • E Offline
                E Offline
                ente34
                schrieb am zuletzt editiert von
                #13

                @aleks-83
                Ich würde das zuerst über /etc/sudoers versuchen. Dort eine neue Datei anlegen (nicht iobroker benutzen!) und in dieser neuen Datei dem User iobroker die Rechte für das spezielle Kommando geben (vgl auch hier)

                A 1 Antwort Letzte Antwort
                1
                • E ente34

                  @aleks-83
                  Ich würde das zuerst über /etc/sudoers versuchen. Dort eine neue Datei anlegen (nicht iobroker benutzen!) und in dieser neuen Datei dem User iobroker die Rechte für das spezielle Kommando geben (vgl auch hier)

                  A Offline
                  A Offline
                  aleks-83
                  schrieb am zuletzt editiert von aleks-83
                  #14

                  @ente34
                  Den Post habe ich mir angesehen.
                  Leider läuft ioBroker bei mir unter Windows, sodass ich hier andere Befehle und Verzeichnisse nutzen muss.
                  (Which scp funktioniert z.b. nicht)
                  Diese kenn ich aber nicht.

                  = Dell Optiplex Micro - 10GB RAM - 200GB SSD - Debian VM =
                  = Node.js v20.18.3 = NPM 10.2.3 = JS Controller 7.0.6 =

                  Ubiquiti UAP-AC-LR - UAP-AC-Lite - Synology DS716+II - Fritz!Box 7490
                  Glasfaser 400

                  AlCalzoneA 1 Antwort Letzte Antwort
                  0
                  • A aleks-83

                    @ente34
                    Den Post habe ich mir angesehen.
                    Leider läuft ioBroker bei mir unter Windows, sodass ich hier andere Befehle und Verzeichnisse nutzen muss.
                    (Which scp funktioniert z.b. nicht)
                    Diese kenn ich aber nicht.

                    AlCalzoneA Offline
                    AlCalzoneA Offline
                    AlCalzone
                    Developer
                    schrieb am zuletzt editiert von
                    #15

                    @aleks-83 Du meinstest nicht zufällig where scp? which ist ein Linux-Befehl.

                    Bei mir geht's einwandfrei unter Windows:

                    exec("ping 127.0.0.1", (err, stdout, stderr) => {
                        log(`err: ${err}`);
                        log(`stdout: ${stdout}`);
                        log(`stderr: ${stderr}`);
                    })
                    

                    Log:

                    javascript.0	2021-03-15 16:06:52.603	info	Minimum = 0ms, Maximum = 0ms, Mittelwert = 0ms
                    javascript.0	2021-03-15 16:06:52.603	info	Ca. Zeitangaben in Millisek.:
                    javascript.0	2021-03-15 16:06:52.603	info	(0% Verlust),
                    javascript.0	2021-03-15 16:06:52.603	info	Pakete: Gesendet = 4, Empfangen = 4, Verloren = 0
                    javascript.0	2021-03-15 16:06:52.603	info	Ping-Statistik f�r 127.0.0.1:
                    javascript.0	2021-03-15 16:06:52.603	info	
                    javascript.0	2021-03-15 16:06:52.603	info	Antwort von 127.0.0.1: Bytes=32 Zeit<1ms TTL=128
                    javascript.0	2021-03-15 16:06:52.603	info	Antwort von 127.0.0.1: Bytes=32 Zeit<1ms TTL=128
                    javascript.0	2021-03-15 16:06:52.603	info	Antwort von 127.0.0.1: Bytes=32 Zeit<1ms TTL=128
                    javascript.0	2021-03-15 16:06:52.603	info	Antwort von 127.0.0.1: Bytes=32 Zeit<1ms TTL=128
                    javascript.0	2021-03-15 16:06:52.603	info	Ping wird ausgef�hrt f�r 127.0.0.1 mit 32 Bytes Daten: 
                    

                    Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                    1 Antwort Letzte Antwort
                    0
                    • A aleks-83

                      Ich klinke mich mal ein da ich ein ähnliches Problem habe.

                      Und zwar möchte ich bei einer Störung, per exec einen Adapter neu starten.

                      Wenn ich "iobroker restart sonos.0" in der Konsole direkt unter Windows eingebe, funktioniert der Befehl.
                      Wie kann ich den auch durch JavaScript ausführen lassen?

                      9353d1f6-23e1-4310-ab43-4cfc6a2dc42f-image.png

                      javascript.0	2021-03-04 11:05:34.367	warn	(6216) script.js.Xiaomi.SonosDurchBWMschalten: exec: iobroker restart sonos.0
                      javascript.0	2021-03-04 11:05:34.416	warn	(6216) script.js.Xiaomi.SonosDurchBWMschalten: *** Error. Please start the ioBroker commandline with the correct Windows startmenu shortcut. Aborting...
                      

                      b8508f92-aead-412e-9f81-131b76bea734-image.png

                      O Abwesend
                      O Abwesend
                      oFbEQnpoLKKl6mbY5e13
                      schrieb am zuletzt editiert von
                      #16

                      @aleks-83 sagte in Blockly und exec:

                      Und zwar möchte ich bei einer Störung, per exec einen Adapter neu starten.

                      Das geht doch mit dem Datenpunkt system.adapter.sonos.0.alive. Wozu da ein exec benutzen?

                      A 1 Antwort Letzte Antwort
                      1
                      • O oFbEQnpoLKKl6mbY5e13

                        @aleks-83 sagte in Blockly und exec:

                        Und zwar möchte ich bei einer Störung, per exec einen Adapter neu starten.

                        Das geht doch mit dem Datenpunkt system.adapter.sonos.0.alive. Wozu da ein exec benutzen?

                        A Offline
                        A Offline
                        aleks-83
                        schrieb am zuletzt editiert von
                        #17

                        Oh cool. Das wusste ich gar nicht.
                        Wieder was gelernt. Danke.

                        Das löst zwar mein aktuelles Problem, aber wenn ich irgendwann mal wieder exec() ausführen will, habe ich das eigentliche Problem immer noch.
                        Obwohl @AlCalzone mir ja schon einen anderen Tipp gegeben hat um exec() mit ioBroker Befehlen auszuführen.

                        Danke euch.

                        = Dell Optiplex Micro - 10GB RAM - 200GB SSD - Debian VM =
                        = Node.js v20.18.3 = NPM 10.2.3 = JS Controller 7.0.6 =

                        Ubiquiti UAP-AC-LR - UAP-AC-Lite - Synology DS716+II - Fritz!Box 7490
                        Glasfaser 400

                        AlCalzoneA 1 Antwort Letzte Antwort
                        0
                        • A aleks-83

                          Oh cool. Das wusste ich gar nicht.
                          Wieder was gelernt. Danke.

                          Das löst zwar mein aktuelles Problem, aber wenn ich irgendwann mal wieder exec() ausführen will, habe ich das eigentliche Problem immer noch.
                          Obwohl @AlCalzone mir ja schon einen anderen Tipp gegeben hat um exec() mit ioBroker Befehlen auszuführen.

                          Danke euch.

                          AlCalzoneA Offline
                          AlCalzoneA Offline
                          AlCalzone
                          Developer
                          schrieb am zuletzt editiert von
                          #18

                          @aleks-83 sagte in Blockly und exec:

                          aber wenn ich irgendwann mal wieder exec() ausführen will, habe ich das eigentliche Problem immer noch.

                          Nein, nur wenn du iobroker-Befehle ausführen willst (was eigentlich nicht nötig sein dürfte).

                          Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                          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

                          426

                          Online

                          32.5k

                          Benutzer

                          81.6k

                          Themen

                          1.3m

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

                          • Du hast noch kein Konto? Registrieren

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