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. ioBroker Allgemein
  4. [gelöst] iobroker <command></command>–timeout

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    17
    1
    398

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

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

[gelöst] iobroker <command></command>–timeout

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
9 Beiträge 3 Kommentatoren 571 Aufrufe
  • Ä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.
  • R Offline
    R Offline
    rewenode
    schrieb am zuletzt editiert von
    #1

    Guten Tag allerseits,

    mit iobroker –help taucht u.a. folgende Zeile auf:

    iobroker <command></command> --timeout
    

    In der Doku Console commands for ioBroker auf Github kann ich nichts darüber finden. Kann mir jemand sagen, was das für Commands sind.

    Hintergrund: Ich suche eine Möglichkeit Javascript vom Javascript-Adapter über die Console auszuführen.

    1 Antwort Letzte Antwort
    0
    • AlCalzoneA Offline
      AlCalzoneA Offline
      AlCalzone
      Developer
      schrieb am zuletzt editiert von
      #2

      @rewenode:

      Hintergrund: Ich suche eine Möglichkeit Javascript vom Javascript-Adapter über die Console auszuführen. `
      Die Frage zu den Kommandos kann ich leider nicht beantworten, aber eventuell hier einen Tipp geben:

      1. Du brauchst ein Objekt, in dem das Skript hinterlegt ist. Schau mal im Admin nach wie die aufgebaut sind, müsste unter javascript.X…. liegen, vom Typ "script".

      2. Du brauchst den zugehörigen Datenpunkt javascript.X.scriptEnabled.<skriptname>, der zum Ausführen auf true gesetzt werden muss.

      Die Objekte und Datenpunkte solltest du über die ioBroker-CLI bearbeiten können. Wenn das Skript schon existiert und du es nur ausführen willst, ist das noch einfacher. Source-Code über die Konsole einspeisen ist nicht so einfach, da solltest du vermutlich nen Umweg über socket.io oder simple-api nehmen.</skriptname>

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

      1 Antwort Letzte Antwort
      0
      • R Offline
        R Offline
        rewenode
        schrieb am zuletzt editiert von
        #3

        @ALCalzone: Vielen Dank, das hilft mir schon mal weiter

        Kann ja sein, dass die betreffende Zeile in der Hilfe nur allgemein beschreibt, dass der Parameter –timeout, bei allen Befehlen möglich ist.

        > Die Objekte und Datenpunkte solltest du über die ioBroker-CLI bearbeiten können. Wenn das Skript schon existiert und du es nur ausführen willst, ist das noch einfacher. Source-Code über die Konsole einspeisen ist nicht so einfach, da solltest du vermutlich nen Umweg über socket.io oder simple-api nehmen.

        Ja, das Script existiert. Und dein Tip funktioniert auch. Muss ich es nur noch irgendwie hinbekommen, dass die Ausgabe auf der Konsole erfolgt.

        Ich beschreib am Besten mal, was ich eigentlich erreichen will:

        Also Javascript ist mir nicht fremd :) Und ich hab auch schon einiges mit node-red gemacht.

        Leider kann ich unter node-red nicht auf die iobroker Javascript-Funktionen zugreifen (Jedenfalls weis ich nicht wie). Die iobroker-nodes gestatten den Zugriff auf einzelne Datenpunkte, was schon mal super ist.

        Wenn ich aber z.B. alle STATEs aller Fenster (bei mir function=Verschluss) und dazu noch mit dem Namen haben will, muss ich in node-red alle DP einzeln angeben was sehr aufwendig ist.

        In Javascript ist das ein Einzeiler

        $('channel[state.id=*.STATE](functions=Verschluß)')
        

        Ich müßte also irgendwie entweder die Zeile Javascript in node-red ausführen können, oder die Ausgabe des Scripts in node-red importieren können.

        Mit dem exec node ist es recht einfach iobroker-cli commands auszuführen, aber die eingebauten Filtermöglichkeiten (get state, list) sind da recht unflexibel und deren Textausgabe verkompliziert es weiter.

        1 Antwort Letzte Antwort
        0
        • AlCalzoneA Offline
          AlCalzoneA Offline
          AlCalzone
          Developer
          schrieb am zuletzt editiert von
          #4

          Ohjemine! Du müsstest also irgendwie an den stdout von einem bereits laufenden Prozess kommen (der des JS-Adapters), um die Logausgabe zu bekommen (vorausgesetzt, der wurde mit der Option –logs) gestartet.

          Glaube fast, dass es einfacher und stabiler wäre, das über einen extra Node zu erledigen. Kannst ja mal ein Feature-Request stellen: https://github.com/ioBroker/ioBroker.node-red/issues

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

          1 Antwort Letzte Antwort
          0
          • StabilostickS Offline
            StabilostickS Offline
            Stabilostick
            schrieb am zuletzt editiert von
            #5

            Schreibe die Ausgabe halt in einen State statt in das Log.

            1 Antwort Letzte Antwort
            0
            • R Offline
              R Offline
              rewenode
              schrieb am zuletzt editiert von
              #6

              > Glaube fast, dass es einfacher und stabiler wäre, das über einen extra Node zu erledigen. Kannst ja mal ein Feature-Request stellen: [https://github.com/ioBroker/ioBroker.node-red/issues](https://github.com/ioBroker/ioBroker.node-red/issues)

              Ja, das werde ich machen. So ein (function)node, wo man die zugriff auf alle iobroker Javascript Funktionen hat, wäre klasse.

              Hab mein Problem zwar auf die Schnelle so gelöst:

              Mein javascript Script schreibt die Ausgabe in eine Datei:

              const fs = require('fs');
              const util = require('util');
              var datei = "/opt/iobroker/test.txt";
              
              var dps =   $('channel[state.id=*.STATE](functions=Verschluß)');
              
              fs.writeFile(datei, JSON.stringify(dps), function(err) {
                  if(err) {
                      return console.log(err);
                  }
                  console.log("The file was saved!");
              }); 
              

              Das Script wird per node-red -> exec-node über die iobroker-CLI angestossen.

              Das geschriebene File wird dann in node-red importiert.

              Recht umständlich, tut aber erst einmal :lol:

              1 Antwort Letzte Antwort
              0
              • R Offline
                R Offline
                rewenode
                schrieb am zuletzt editiert von
                #7

                @Stabilostick:

                Schreibe die Ausgabe halt in einen State statt in das Log. `

                Ja, so könnte das viel einfacher gehen :lol:

                Also nach 2 Tagen iobroker bin ich wirklich noch total am Lernen. Also mal sehen, wie ich das hinbekommen.

                1 Antwort Letzte Antwort
                0
                • R Offline
                  R Offline
                  rewenode
                  schrieb am zuletzt editiert von
                  #8

                  Danke nochmal für eure Hilfe,

                  Hab's jetzt so gelöst:

                  • ioBroker-Script schreibt Ergebnis in einen STATE

                  • Node-red triggert das Script mit dem ioBroker-Out-node

                  • Node-red ließt den STATE mit dem ioBroker-Get-node

                  Damit kann ich erst mal gut leben. Was ich noch nicht rausgefunden habe,

                  kann ich irgendwie über node-red rausbekommen, ob das Script korrekt gelaufen ist?

                  Nachtrag:

                  Hab's inzwischen gefunden. Wenn statt dem ioBroker-get-node den ioBroker-in-node verwende, tu er genau was er soll :) Auch mit der Möglichkeit, nur auf ack=true zu reagieren. So langsam wird es.

                  Ach und noch was, wie kennzeichne ich den Beitrag als gelöst? Gibt es da einen Knopf den ich nicht finde?

                  1 Antwort Letzte Antwort
                  0
                  • AlCalzoneA Offline
                    AlCalzoneA Offline
                    AlCalzone
                    Developer
                    schrieb am zuletzt editiert von
                    #9

                    @rewenode:

                    Ach und noch was, wie kennzeichne ich den Beitrag als gelöst? Gibt es da einen Knopf den ich nicht finde? `

                    1. Beitrag bearbeiten und Titel anpassen

                    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
                    FAQ Cloud / IOT
                    HowTo: Node.js-Update
                    HowTo: Backup/Restore
                    Downloads
                    BLOG

                    432

                    Online

                    32.7k

                    Benutzer

                    82.5k

                    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