Ankündigung

Einklappen
Keine Ankündigung bisher.

Webservices mit dem Gira X1 oder L1 abfragen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Zitat von oesi Beitrag anzeigen
    Kann man eigentlich die Grundrechenarten gruppieren, also statt drei Bausteine "Division / 10", "Addition + 12,675" und "Multiplikation * 1,19" in einem Baustein.
    Zitat von knxPaul Beitrag anzeigen
    Nicht mit Giras LBS, aber mit der Formelberechnung
    ... und die verwendest Du doch ohnehin schon. Da finde ich diese Frage etwas ... unerwartet.
    Zuletzt geändert von hyman; 26.11.2022, 08:21.

    Kommentar


      ja, entschuldige, Thema ist gelöst:

      Kommentar


        Gibt es denn die Möglichkeit, im Body Eingangsvariablen zu nutzen oder zumindest den ganzen Body als Eingangsvariable zu übergeben?

        image.png

        Würde gerne den Value unterschiedlich setzen (Mal 0, Mal 1, Mal 2, ...). Aktuell sehe ich nur die Möglichkeit mehrere Bausteine zu erstellen und mittels Ausgangswahlschalter zu arbeiten.

        Auf einer der ersten Seite des Threads wurden Variabeln in den Parametern definiert und die auch im Body übergeben. Ist das die einzige Möglichkeit?
        Ich würde ungern etwas als Parameter übergeben, was gar nicht übergeben werden soll. Ich würde gerne nur den Body nutzen, das ist sauberer.

        image.png​​


        EDIT:
        Ich habe einfach zu kompliziert gedacht bzw. der Screenshot von Seite 1 ist Quatsch. Im Body kann man auch ganz normal Parameter nutzen, man muss sie nur ebenfalls in geschweifte Klammern setzen. Dann müssen sie auch nicht als Args in der URL übergeben werden...
        image.png
        Zuletzt geändert von informant; 26.01.2023, 20:01.

        Kommentar


          Hallo zusammen,

          die Abfrage meiner Enthärtungsanlage liefert folgendes .json:
          Code:
          {
          "Month 1 [m³]" : "4.1",
          "Month 10 [m³]" : "0.0",
          "Month 11 [m³]" : "0.0",
          "Month 12 [m³]" : "0.0",
          "Month 2 [m³]" : "0.0",
          "Month 3 [m³]" : "0.0",
          "Month 4 [m³]" : "0.0",
          "Month 5 [m³]" : "0.0",
          "Month 6 [m³]" : "0.0",
          "Month 7 [m³]" : "0.0",
          "Month 8 [m³]" : "0.0",
          "Month 9 [m³]" : "0.0"
          }​
          Leider werden hier im Schlüsselobjekt Leerzeichen und Klammern verwendet.

          Man kann wohl den gesamten String abfragen mit der Bracket-Notation.
          Code:
          $['store']['book'][0]['title']​
          .

          Leider scheint diese Formatierung im XML/JSON-Parser nicht zu funktionieren.
          der Pfaf
          Code:
          /root/['Month 1 [m³]']
          führt nicht auf einen Knotensatz.

          Weiß jemand eine Lösung?

          Kommentar


            Textersetzung (in den Schlüsseln) mittels Formelberechnung lautet die Standardantwort.

            Kommentar


              Danke. Hatte gehofft es geht direkt im Parser. Dann halt mit Zwischenschritt😃

              Kommentar


                Zitat von oesi Beitrag anzeigen
                Strompreisminimum.jpg

                Es funktioniert! Danke für die Hilfe...

                Kann man eigentlich die Grundrechenarten gruppieren, also statt drei Bausteine "Division / 10", "Addition + 12,675" und "Multiplikation * 1,19" in einem Baustein.

                Und mit dem gleitendem MIttelwert finde ich auch gut.

                Problematisch ist noch, dass ich mir den aktuellen Strompreis anzeigen lassen möchte. Aber der erste Zeitstempel, den ich über die API erhalte, ist der, der kommende Stunde. Da habe ich noch keine Idee, wie ich den relevanten Strompreis abbilde:

                bspw.: Es sind jetzt 8:40 Uhr: Wenn ich nun die API aufrufe, erhalte ich als ersten Wert, der Wert der zwischen 9-10 Uhr gilt.

                Eine "Bastellösung" sieht wie folgt aus:
                Ich rufe immer zur Stunde xx:59 Uhr das Webrequest auf. Dann ist automatisch die kommende Stunde der richtige Wert gesetzt (also der aktuelle).

                Viele Grüße und danke

                Hallo zusammen,

                für meinen Abruf des aktuellen Strompreises will ich gerne die Daten täglich um 14:05 Uhr abrufen. Also wie kann ich einen Trigger erstellen, der täglich einmal ein Aktion auslöst.

                Eine "gebastelte" Aktion kann ich über einen Taster und Gira APP Zeitschaltuhr erstellen, aber das finde ich nicht elegant.

                Viele Grüße

                Kommentar


                  Für "täglich um 14:05 Uhr" sollte es reichen, mit dem GPA die Zeit in eine Zeitschaltuhr des X1 zu programmieren und über einen Datenpunkt in die Logik zu bringen.

                  Kommentar


                    Werden Zeitschaltuhren nicht in der Logiksimulation simuliert?

                    Denn da passiert mit dem Datenpunkt gar nichts

                    https://knx-user-forum.de/forum/öffe...98#post1599398

                    Antwort gefunden, also nein.
                    Zuletzt geändert von oesi; 13.01.2023, 17:25.

                    Kommentar



                      Zuletzt geändert von oesi; 14.01.2023, 13:05.

                      Kommentar


                        Moin,

                        könnte mir jemand einen Schups geben, wie ich aus diesem String die Position "pos": und gemessene Temperatur "tmp":{"value": vom Shelly TRV bekomme? Bekomme den Fehler "Der Ausdruck muss in einem Knotensatz resultieren." nicht weg.

                        Die Antwort des Shelly TRV sieht so aus:
                        {"pos":0.0,"target_t":{"enabled":true,"value":1 6.0 ,"value_op":8.0,"units":"C"},"tmp":{"value":21. 4," units":"C","is_valid":true},"schedule":true,"sched ule_profile":3,"boost_minutes":0,"window_open":fal se}

                        Ich danke euch....
                        Martin

                        Kommentar


                          Übersichtlicher sieht das so aus:
                          Code:
                          {
                          "pos": 0.0,
                          "target_t": {
                             "enabled": true,
                             "value": 16.0,
                             "value_op": 8.0,
                             "units": "C"
                             },
                          "tmp": {
                             "value": 21.4,
                             " units": "C",
                             "is_valid": true
                             },
                          "schedule": true,
                          "sched ule_profile": 3,
                          "boost_minutes": 0,
                          "window_open": false
                          }​
                          Ich würde mit pos anfangen.

                          Kommentar


                            Zitat von knxPaul Beitrag anzeigen
                            Übersichtlicher sieht das so aus:
                            Code:
                            {
                            "pos": 0.0,
                            "target_t": {
                            "enabled": true,
                            "value": 16.0,
                            "value_op": 8.0,
                            "units": "C"
                            },
                            "tmp": {
                            "value": 21.4,
                            " units": "C",
                            "is_valid": true
                            },
                            "schedule": true,
                            "sched ule_profile": 3,
                            "boost_minutes": 0,
                            "window_open": false
                            }​
                            Ich würde mit pos anfangen.
                            Dankeschön! Hatte es wie empfangen kopiert. Problem ist gelöst, hatte ein "/" vor dem Root und das funktionierte nicht.

                            Kommentar


                              Hallo,

                              lese mit dem Baustein HTTP GET Request einen Shelly 1 mit Temperaturerweiterung aus. dann geht es in den Formelberechner udn dann landet es im Jason Baustein.
                              Siehe Bild.
                              In der Simulation funktioniert es perfekt, leider aber nicht auf dem KNX Bus und in der GIRA X1 App, da kommt nichts im Liveberieb an.
                              Hat da jemand eien Lösung für mich?
                              Danke !
                              VG
                              Thomas
                              20230204 Shelly Jason.jpg

                              Kommentar


                                Herzlich Willkommen bei den Aktiven im Forum!

                                Der wesentliche Unterschied zwischen Simulation und Liveberieb ist der host, also der "Rechner", auf dem der http Request ausgeführt wird:
                                • einmal der PC, auf dem der GPA läuft, der kann offensichtlich auf die URL zugreifen
                                • im andern Fall der X1, der in seinem logfile eine Fehlermeldung ausgeben sollte, wenn er nicht auf die URL zugreifen kann

                                Kommentar

                                Lädt...
                                X