Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. [gelöst] JSON korrekt auslesen (AHOY Api)

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    [gelöst] JSON korrekt auslesen (AHOY Api)

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

      @haselchen

      2325728b-c5f5-4f4b-9a69-55d2bd5a1e88-image.png

      Also wenn da kein Objekt zurückkommt, dann kannst auch kein Attribut auslesen. Dann musst halt erst mal mit Browser etc. versuchen zu schauen, was da zurückkommt.

      Kann es ggf. sein, dass noch eine Anmeldung erforderlich ist?

      haselchen 1 Reply Last reply Reply Quote 0
      • Homoran
        Homoran Global Moderator Administrators @haselchen last edited by

        @haselchen sagte in JSON korrekt auslesen (AHOY Api):

        Wie bekomme ich das ganze JSON in einen Datenpunkt?

        debug result
        bringt es zum Anzeigen

        aktualisiere DP1 mit result
        bringt es in einen Datenpunkt.
        den kannst du sogar loggen

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

          @mickym

          script.js.Photovoltaikanlage.HM-600_Statistik: null
          

          Das ist das Ergebnis.
          Was ist nicht kapiere.
          Exakt die gleichen Blocklys und Einstellungen funktionieren beim anderen Wechselrichter.

          Edit: nach dem 3.Abruf kommt das

          	script.js.Photovoltaikanlage.HM-600_Statistik: {"generic":{"wifi_rssi":-69,"ts_uptime":5777,"menu_prot":false,"menu_mask":61,"menu_protEn":false,"esp_type":"ESP8266"},"ts_now":1689944699,"ts_sunrise":1689909623,"ts_sunset":1689967802,"ts_offset":0,"disNightComm":true,"inverter":[{"enabled":true,"id":0,"name":"HM-600","version":"10010","is_avail":true,"is_producing":true,"ts_last_success":1689944693}],"warnings":[],"infos":["MQTT is connected, 5728 packets sent, 0 packets received"]}
          
          mickym paul53 2 Replies Last reply Reply Quote 0
          • mickym
            mickym Most Active @haselchen last edited by mickym

            @haselchen sagte in JSON korrekt auslesen (AHOY Api):

            @mickym

            script.js.Photovoltaikanlage.HM-600_Statistik: null
            

            Das ist das Ergebnis.
            Was ist nicht kapiere.
            Exakt die gleichen Blocklys und Einstellungen funktionieren beim anderen Wechselrichter.

            Edit: nach dem 3.Abruf kommt das

            	script.js.Photovoltaikanlage.HM-600_Statistik: {"generic":{"wifi_rssi":-69,"ts_uptime":5777,"menu_prot":false,"menu_mask":61,"menu_protEn":false,"esp_type":"ESP8266"},"ts_now":1689944699,"ts_sunrise":1689909623,"ts_sunset":1689967802,"ts_offset":0,"disNightComm":true,"inverter":[{"enabled":true,"id":0,"name":"HM-600","version":"10010","is_avail":true,"is_producing":true,"ts_last_success":1689944693}],"warnings":[],"infos":["MQTT is connected, 5728 packets sent, 0 packets received"]}
            

            Na das ist doch das was ich gemeint habe. Vielleicht ist das Ding einfach nicht so schnell und gibt nicht immer was zurück mach einfach noch eine Abfrage rein, dass es nicht null sein darf.

            0a6ddf21-a1c3-44c1-9401-9e618d4150d2-image.png

            Wenn das dann hinhaut, dann bist auf der sicheren Seite, dass dann nur dann was in den DP geschrieben wird, wenn der URL Aufruf ein Ergebnis liefert. Wäre im Prinzip halt generell eine grundsätzliche Möglichkeit um abzufangen, wenn mal nichts zurück kommt.

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

              @mickym

              Mega.
              Da versuche ich was draus zu basteln.
              Halber Tag schon wieder weg grmpf

              Danke @Homoran + @OliverIO
              für den Denkanstoss.

              Gebe Feedback....

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

                @haselchen Wenn was zurückkommt, dann passt Dein Aufruf jedenfalls:
                57643dde-d2a8-4d13-97be-996ae1e4c714-image.png

                1 Reply Last reply Reply Quote 0
                • Homoran
                  Homoran Global Moderator Administrators last edited by

                  ich glaube immer noch, dass man auf die Konvertierung verzichten können sollte.

                  mickym paul53 2 Replies Last reply Reply Quote 0
                  • mickym
                    mickym Most Active @Homoran last edited by

                    @homoran Ja - kann schon sein. Wichtig ist aber doch in erster Linie abzufangen, wenn nichts zurück kommt.

                    1 Reply Last reply Reply Quote 0
                    • paul53
                      paul53 @haselchen last edited by

                      @haselchen sagte: Das ist das Ergebnis.

                      Was wird in diesen Fällen in der Variablen error geliefert?

                      haselchen 1 Reply Last reply Reply Quote 0
                      • paul53
                        paul53 @Homoran last edited by paul53

                        @homoran sagte: ich glaube immer noch, dass man auf die Konvertierung verzichten können sollte.

                        Ja, getAttr() nimmt die Konvertierung selbst vor, wenn erforderlich.

                        1 Reply Last reply Reply Quote 0
                        • haselchen
                          haselchen Most Active @paul53 last edited by

                          @paul53

                          javascript.0	2023-07-21 15:20:00.088	error	script.js.Photovoltaikanlage.HM-600_Statistik: Cannot get inverter of null
                          

                          Das kommt, wenn ich nach 1min "Last Success" aus der API lesen und schreiben möchte.
                          War die Frage , ob ich das richtig überhaupt ins Blockly gepackt hatte.

                          293fa6db-77c5-459e-8c3f-c1dc8ceb0e27-grafik.png

                          paul53 1 Reply Last reply Reply Quote 0
                          • paul53
                            paul53 @haselchen last edited by

                            @haselchen sagte: Das kommt, wenn ich nach 1min "Last Success" aus der API lesen und schreiben möchte.

                            Logge mal die Variable error, die neben result ebenfalls von request() geliefert wird.

                            haselchen 1 Reply Last reply Reply Quote 0
                            • haselchen
                              haselchen Most Active @paul53 last edited by

                              @paul53
                              @Homoran
                              @mickym
                              @OliverIO

                              Leute, dass ist wie immer grosses Kino mit euch!!!
                              Alle Ideen zusammen haben den Erfolg gebracht.
                              f3a58252-92dc-4b57-87b2-95a9821ec6f0-grafik.png

                              Mit dem Blockly wird die null übersprungen und nur reale Werte in den DP geschrieben.
                              Dauert manchmal 3-4min. aber ich bin schon froh, keine rote Farbe mehr im Log zu haben 😝

                              paul53 1 Reply Last reply Reply Quote 1
                              • paul53
                                paul53 @haselchen last edited by

                                @haselchen
                                Funktioniert es nicht auch so?

                                Blockly_temp.JPG

                                haselchen 1 Reply Last reply Reply Quote 2
                                • haselchen
                                  haselchen Most Active @paul53 last edited by

                                  @paul53

                                  Gerade getestet, natürlich funktioniert es so auch 🙂
                                  Nichts anderes habe ich erwartet 😂
                                  Skripttechnisch biste sowieso nicht von dieser Welt....

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

                                  Support us

                                  ioBroker
                                  Community Adapters
                                  Donate

                                  822
                                  Online

                                  32.0k
                                  Users

                                  80.4k
                                  Topics

                                  1.3m
                                  Posts

                                  5
                                  25
                                  528
                                  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