Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. Datenpunkte eines anderen IoBrokers anzeigen

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Datenpunkte eines anderen IoBrokers anzeigen

    This topic has been deleted. Only users with topic management privileges can see it.
    • mickym
      mickym Most Active last edited by

      @jojo58 json werden immer als JSON Strings transportiert. Eine Spezialität von MQTT

      1 Reply Last reply Reply Quote 0
      • A
        Ahnungsbefreit @JoJo58 last edited by

        @jojo58 Nur der Vollständigkeit halber: Wenn es nur um einige wenige Werte gibt, die Du übertragen möchtest, kannst Du das auch per Script auf dem ioBroker mit den Werten machen und die Daten per SimpleAPI in Datenpunkte unter 0_userdata auf dem "Haupt" ioBroker schreiben

        1 Reply Last reply Reply Quote 0
        • bahnuhr
          bahnuhr Forum Testing Most Active last edited by

          @ahnungsbefreit sagte in Datenpunkte eines anderen IoBrokers anzeigen:

          0_userdata

          oder
          javascript.0

          A 1 Reply Last reply Reply Quote 0
          • A
            Ahnungsbefreit @bahnuhr last edited by

            @bahnuhr Das habe ich bewusst nicht erwähnt, weil man das ja nicht mehr machen sollte.

            bahnuhr 1 Reply Last reply Reply Quote 0
            • bahnuhr
              bahnuhr Forum Testing Most Active @Ahnungsbefreit last edited by

              @ahnungsbefreit sagte in Datenpunkte eines anderen IoBrokers anzeigen:

              weil man das ja nicht mehr machen sollte.

              Und diese Aussage ist falsch.

              Es gilt auch hier weiterhin:
              userdata geht
              javascript geht auch

              Ich habe noch nirgends gelesen, dass man auf userdata gehen soll !

              JoJo58 A 2 Replies Last reply Reply Quote 0
              • JoJo58
                JoJo58 @bahnuhr last edited by

                @bahnuhr @Ahnungsbefreit
                Es sind nur 3 oder 4 Datenpunkte (sitze gerade nicht am Rechner) und da wäre es mit Script wahrscheinlich einfacher, wenn man es denn könnte. Ich habe von scripten absolut keinen Plan.
                Wenn mir jemand so ein Script zur Verfügung stellen kann, wäre das natürlich okay, ansonsten werde ich es über mqtt machen.
                Wahrscheinlich ist mqtt für mich sinnvoller, kann es dann bei Bedarf erweitern und zusätzliche Daten übertragen, ohne jedesmal um Hilfe zu bitten. Hoffe ich zumindest.
                Schweeere Entscheidung… 😦

                bahnuhr 1 Reply Last reply Reply Quote 0
                • A
                  Ahnungsbefreit @bahnuhr last edited by

                  @bahnuhr said in Datenpunkte eines anderen IoBrokers anzeigen:

                  Ich habe noch nirgends gelesen, dass man auf userdata gehen soll

                  Ich schon, finde aber gerade die Quelle nicht.

                  1 Reply Last reply Reply Quote 0
                  • bahnuhr
                    bahnuhr Forum Testing Most Active @JoJo58 last edited by

                    @jojo58
                    Adapter installieren:
                    da5e5c8d-1026-47ab-bd8c-006eff649d25-image.png

                    Doku lesen:
                    https://github.com/ioBroker/ioBroker.simple-api/blob/master/README.md

                    DP schreibst du z.B. mit:
                    http://ipaddress:8087/set/javascript.0.test?value=1

                    oder als js so:

                    var request = require ('request');
                    request('http://ipaddress:8087/set/javascript.0.test?value=1"}');
                    

                    (nicht getestet, müsste aber so funktionieren)
                    Wenn nicht; dann nochmal melden.

                    JoJo58 1 Reply Last reply Reply Quote 0
                    • mickym
                      mickym Most Active last edited by

                      mqtt ist am Einfachsten - ansonsten ist NodeRed noch eine einfachere Alternative als simpleApi

                      1 Reply Last reply Reply Quote 0
                      • JoJo58
                        JoJo58 @bahnuhr last edited by

                        @bahnuhr Ich hab mir jetzt die README durchgelesen und es verwirrt mich alles. Ich werde es morgen installieren und ausprobieren. Sage dann Bescheid wie es klappt.

                        bahnuhr 1 Reply Last reply Reply Quote 0
                        • bahnuhr
                          bahnuhr Forum Testing Most Active @JoJo58 last edited by

                          @jojo58
                          Eigentlich ist es ganz einfach.

                          Beispiel:
                          du hast 2 x iob
                          primär: IP ...10
                          test: IP ..20

                          Jetzt willst du ja Daten senden von dem test iob zum primär iob
                          Also muss auf dem primär simpli api installiert sein; denn dort willst du ja empfangen.
                          Und das script muss laufen auf dem test iob denn der sendet ja an die IP des primär.

                          JoJo58 1 Reply Last reply Reply Quote 0
                          • JoJo58
                            JoJo58 @bahnuhr last edited by

                            @bahnuhr
                            Moin, mit dem übertragen der Daten das funktioniert soweit schon mal. In deiner Scriptzeile ist wohl eine geschweifte Klammer und einmal Anführungszeichen zuviel oder zuwenig drin.

                            Ich habe in Blockly eine Funktion erstellt und die Zeilen eingetragen.

                            var request = require ('request');
                            request('http://192.168.1.14:8087/set/0_userdata.0.BackItUp_4GB.iobrokerSuccess?value=test');
                            
                            

                            Wie du siehst habe ich mir einen Ordner unter Userdata und den Datenpunkt angelegt. Was im Script hinter Value steht, wird auch übertragen und gesetzt.
                            Wie kriege ich es jetzt hin, das der Wert aus einem bestehenden Datenpunkt genommen wird? Wie beispielsweise:

                            backitup.0.history.iobrokerLastTime (ist String)
                            backitup.0.history.iobrokerSuccess (ist boolean)
                            backitup.0.history.json (ist json)

                            Bin etwas ratlos...

                            bahnuhr 1 Reply Last reply Reply Quote 0
                            • bahnuhr
                              bahnuhr Forum Testing Most Active @JoJo58 last edited by

                              @jojo58

                              var request = require ('request');
                              
                                  on({id: "DP der sich ändert"}, function (obj) {
                                      request("http://ipaddress:8087/set/javascript.0.test?value=" + obj.state.val);
                                  }); 
                              
                              JoJo58 1 Reply Last reply Reply Quote 0
                              • JoJo58
                                JoJo58 @bahnuhr last edited by

                                @bahnuhr
                                Ich habs so gemacht:

                                var request = require ('request');
                                    on({id: "backitup.0.info.ccuNextTime"}, function (obj) {
                                        request("http://192.168.1.14:8087/set/0_userdata.0.BackItUp_4GB.ccuNextTime?value=" + obj.state.val);
                                    }); 
                                

                                Da passiert nichts, es gibt auch keine Fehlermeldung. Hatte heute morgen schon eine andere Variante getestet.

                                var request = require ('request');
                                let iobrokerSuccess = getState("backitup.0.history.iobrokerSuccess").val;
                                request('http://192.168.1.14:8087/set/0_userdata.0.BackItUp_4GB.iobrokerSuccess?value=' +iobrokerSuccess);
                                

                                und

                                var request = require ('request');
                                let iobrokerLastTime = getState("backitup.0.history.iobrokerLastTime").val;
                                request('http://192.168.1.14:8087/set/0_userdata.0.BackItUp_4GB.iobrokerLastTime?value=' +iobrokerLastTime);
                                

                                funktioniert
                                Die nächsten beiden funktionieren nicht, egal wie ich es anstelle.

                                var request = require ('request');
                                let iobrokerNextTime = getstate("backitup.0.info.iobrokerNextTime").val;
                                let History_json = getstate("backitup.0.history.json").val;
                                
                                request('http://192.168.1.14:8087/set/0_userdata.0.BackItUp_4GB.iobrokerNextTime?value=' +iobrokerNextTime);
                                request('http://192.168.1.14:8087/set/0_userdata.0.BackItUp_4GB.History_json?value=' +History_json);
                                

                                Es ist egal ob ich sie einzeln ausführe. oder zusammen. Es kommt folgende Fehlermeldung:

                                09:45:10.007	error	javascript.0 (17928) script.js.Daten_senden.BackItUp_iobrokerNextTime: ReferenceError: getstate is not defined
                                09:45:10.008	error	javascript.0 (17928) at iobrokerLastTime (script.js.Daten_senden.BackItUp_iobrokerNextTime:9:24)
                                09:45:10.008	error	javascript.0 (17928) at Object.<anonymous> (script.js.Daten_senden.BackItUp_iobrokerNextTime:21:9)
                                

                                Keine Ahnung was dieser ReferenzError zu bedeuten hat. Der angegebene Pfad ist richtig und bei den anderen Beiden funktioniert das ja auch.

                                bahnuhr 1 Reply Last reply Reply Quote 0
                                • bahnuhr
                                  bahnuhr Forum Testing Most Active @JoJo58 last edited by

                                  @jojo58 sagte in Datenpunkte eines anderen IoBrokers anzeigen:

                                  getstate

                                  das gibt es nicht.
                                  richtig ist: getState

                                  Und der on reagiert ja nur, wenn sich der DP ändert.

                                  Bist schon auf dem richtigen Weg.

                                  JoJo58 2 Replies Last reply Reply Quote 1
                                  • JoJo58
                                    JoJo58 @bahnuhr last edited by

                                    @bahnuhr
                                    Ich krieg die Krise. Das getState mit dem kleinen s war das Problem. Es läuft und die Daten werden übertragen.

                                    1 Reply Last reply Reply Quote 0
                                    • JoJo58
                                      JoJo58 @bahnuhr last edited by

                                      @bahnuhr
                                      Moin, ich habe jetzt alle benötigten Daten in der View und habe es sogar hinbekommen, das ich von der View ein Backup auf dem Testsystem starten kann.

                                      Vielen Dank für deine Hilfe 👍

                                      Gruß, Johannes

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

                                      Support us

                                      ioBroker
                                      Community Adapters
                                      Donate

                                      436
                                      Online

                                      32.0k
                                      Users

                                      80.4k
                                      Topics

                                      1.3m
                                      Posts

                                      4
                                      24
                                      807
                                      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