Ankündigung

Einklappen
Keine Ankündigung bisher.

HS Webabfrage

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

    HS Webabfrage

    Könnte mir auch mal jemand behilflich sein bei einer Webabfrage?
    Ich möchte gerne die Werte von meinem Buderus EMS Modul direkt am HS abfragen.
    Eine API gibt es bei dem Modul, aber ich verstehe nicht ganz wie ich dies mit der Abfrage realisieren soll!
    My KNX Shop hat ja alles schön aufgelistet.
    Ich verstehe noch nicht ganz wo die ausgewerteten Werte dann hin gehen bzw. wie ich sie weiter verarbeiten soll.
    Ich möchte eigentlich gerne für alles interne GA verwenden, hab aber noch nie mit einer Webabfrage gearbeitet.
    Könnte mir evtl. jemand ein Beispiel nur für einen einzigen Wert nennen?

    Hier mal der Status der API Abfrage:

    PHP-Code:
    "wwsettemp"57"wwseltemp"57"wwtype""buffer""wwcomfort""hot""wwflowtempoffset"25"wwcircpump""off""wwchargetype""3-way valve""wwhyston": -5"wwhystoff"0"wwdisinfectiontemp"70"wwcircmode""2x3min""wwcirc""off""wwcurtemp"65.2"wwcurtemp2"65.2"wwcurflow"0"wwstoragetemp2"65.2"wwactivated""on""wwonetime""off""wwdisinfecting""off""wwcharging""off""wwrecharging""off""wwtempok""on""wwactive""off""ww3wayvalve""off""wwsetpumppower"0"wwstarts"7886"wwworkm"90592"heatingactive""off""tapwateractive""off""selflowtemp"7"selburnpow"0"heatingpumpmod"0"outdoortemp"21.6"curflowtemp"24.7"rettemp"24.8"switchtemp"0"syspress"1.4"boiltemp"25.2"burngas""off""burngas2""off""flamecurr"0"heatingpump""off""fanwork""off""ignwork""off""oilpreheat""off""heatingactivated""on""heatingtemp"90"pumpmodmax"91"pumpmodmin"30"pumpdelay"5"burnminperiod"10"burnminpower"0"burnmaxpower"99"boilhyston": -6"boilhystoff"6"setflowtemp"0"setburnpow"0"curburnpow"0"burnstarts"161626"burnworkmin"2331779"burn2workmin"0"heatworkmin"2241187"ubauptime"6112702"lastcode""6A(227) 03.05.2020 21:11 (0 min)""servicecode""0H""servicecodenumber"203"maintenancemessage""H00""maintenance""off""maintenancetime"6000"maintenancedate""01.01.2004" 
    Was müsste ich in die Abfrage schreiben, um z.B. die eingestellt Warmwassertemp (wwsettemp) abzufragen und auf eine interne GA zu schreiben?

    Vielen lieben Dank!!!!

    #2
    Ich bin leider noch nicht weiter gekommen.
    Momentan versuche ich es so, aber leider kommt nix an Daten rein:
    Abfrage.png

    Unter Debug wird dieses angezeigt:

    Code:
    13.06.2022 14:00:29 (IP: 192.168.178.52) (Port: 80)
    [B](Send: 70) 0x47 0x45 0x54 0x20 0x2f 0x61 0x70 0x69 0x2f 0x62 0x6f 0x69 0x6c 0x65 0x72 0x2f 0x20 0x48 0x54 0x54 0x50 0x2f 0x31 0x2e 0x30 0xd 0xa 0x48 0x6f 0x73 0x74 0x3a 0x20 0x31 0x39 0x32 0x2e 0x31 0x36 0x38 0x2e 0x31 0x37 0x38 0x2e 0x35 0x32 0xd 0xa 0x43 0x6f 0x6e 0x6e 0x65 0x63 0x74 0x69 0x6f 0x6e 0x3a 0x20 0x43 0x6c 0x6f 0x73 0x65 0xd 0xa 0xd 0xa[/B]
    GET /api/boiler/ HTTP/1.0
    Host: 192.168.178.52
    Connection: Close

    Kommentar


      #3
      Also zunächst ist es schlecht, einen Thread zu "kapern", weshalb ich das mal verschoben habe..

      Im Ursprungthread wird auch auf einen Logikbaustein zu JSON verwiesen. Das ist was anderes als es mit einer "simplen" Webabfrage.

      Der Ansatz hier ist schon richtig. Die Ausführung passt noch nicht.

      Versuche es doch zunächst mit einem Objekt.

      Beliebige Daten
      Text wwcurrent":
      Wert als Klartext
      Text ,
      Beliebige Daten

      Im Debug ist entscheidend der Bereich Event-BiDir und dort müsste nach dem Send ein (Recv) kommen, das ist wichtig. Wenn da nix steht, wird auch nicht geantwortet...

      Kommentar


        #4
        Ich habe es jetzt mal nur mit einem Objekt getestet, aber auch hier kommt leider nichts bei (Receive) rein.
        Noch irgendwelche Ideen, was ich für die Abfrage machen könnte?

        Kommentar


          #5
          Dann antwortet wohl keiner...

          Was ist denn die URL?

          Was kommt, wenn Du die im Browser benutzt?

          Kommentar


            #6
            Die URL ist einfach nur die /api/boiler/

            Wenn ich im Browser die IP mit URL eingebe (http://192.168.178.52/api/boiler/) bekomme ich dies als Antwort:

            Code:
            { "wwsettemp": 57, "wwseltemp": 57, "wwtype": "buffer", "wwcomfort": "hot", "wwflowtempoffset": 25, "wwcircpump": "off", "wwchargetype": "3-way valve", "wwhyston": -5, "wwhystoff": 0, "wwdisinfectiontemp": 70, "wwcircmode": "2x3min", "wwcirc": "off", "[B]wwcurtemp": 61.4[/B], "wwcurtemp2": 61.4, "wwcurflow": 0, "wwstoragetemp2": 61.4, "wwactivated": "on", "wwonetime": "off", "wwdisinfecting": "off", "wwcharging": "off", "wwrecharging": "off", "wwtempok": "on", "wwactive": "off", "ww3wayvalve": "off", "wwsetpumppower": 0, "wwstarts": 7888, "wwworkm": 90552, "heatingactive": "off", "tapwateractive": "off", "selflowtemp": 7, "selburnpow": 0, "heatingpumpmod": 0, "outdoortemp": 20.5, "curflowtemp": 23.5, "rettemp": 23.9, "switchtemp": 0, "syspress": 1.4, "boiltemp": 23.9, "burngas": "off", "burngas2": "off", "flamecurr": 0, "heatingpump": "off", "fanwork": "off", "ignwork": "off", "oilpreheat": "off", "heatingactivated": "on", "heatingtemp": 90, "pumpmodmax": 91, "pumpmodmin": 30, "pumpdelay": 5, "burnminperiod": 10, "burnminpower": 0, "burnmaxpower": 99, "boilhyston": -6, "boilhystoff": 6, "setflowtemp": 0, "setburnpow": 0, "curburnpow": 0, "burnstarts": 161706, "burnworkmin": 2331755, "burn2workmin": 0, "heatworkmin": 2241203, "ubauptime": 6115798, "lastcode": "6A(227) 03.05.2020 21:11 (0 min)", "servicecode": "0H", "servicecodenumber": 203, "maintenancemessage": "H00", "maintenance": "off", "maintenancetime": 6000, "maintenancedate": "01.01.2004" }
            Und ich versuche erst mal nur den Wert von "wwcurtemp"
            Zuletzt geändert von Opelpower; 14.06.2022, 14:05.

            Kommentar


              #7
              Kann zumindest auf den screenshots nichts erkennen, was nicht stimmen könnte...

              Lass mal testweise in der Abfrage den letzten slash beim Pfad weg: /api/boiler

              Kommentar


                #8
                Habs mit dem Slash getestet, leider unverändert.

                Kommentar


                  #9
                  wie oben im "debug" zu sehen ist, sendet der HS ja:

                  GET /api/boiler/ HTTP/1.0
                  Host: 192.168.178.52
                  Connection: Close

                  Die "API" antwortet jedoch nicht...


                  Kann ja sein, das die "API" weiter Header Daten erwartet (warum auch immer)...

                  Dann müsstest Du das manuell senden ... etwa so:

                  Screenshot 2022-06-14 153349.jpg


                  Kommentar


                    #10
                    Vielen Dank für deine Mühe, aber leider funktioniert auch dieses nicht, vorausgesetzt ich hab alles richtig abgeschrieben
                    Es folgt leider immer noch keine Antwort
                    Siehe:

                    Code:
                    15.06.2022 08:42:48 (IP: 192.168.178.52) (Port: 80)
                    [B](Send: 373) 0x47 0x45 0x54 0x20 0x2f 0x61 0x70 0x69 0x2f 0x62 0x6f 0x69 0x6c 0x65 0x72 0x2f 0xd 0xa 0x48 0x6f 0x73 0x74 0x3a 0x20 0x31 0x39 0x32 0x2e 0x31 0x36 0x38 0x2e 0x31 0x37 0x38 0x2e 0x35 0x32 0xd 0xa 0x55 0x73 0x65 0x72 0x2d 0x41 0x67 0x65 0x6e 0x74 0x3a 0x20 0x4d 0x6f 0x7a 0x69 0x6c 0x6c 0x61 0x2f 0x35 0x2e 0x30 0x20 0x28 0x57 0x69 0x6e 0x64 0x6f 0x77 0x73 0x20 0x4e 0x54 0x20 0x36 0x2e 0x31 0x3b 0x57 0x4f 0x57 0x36 0x34 0x3b 0x72 0x76 0x3a 0x38 0x2e 0x30 0x29 0x20 0x47 0x65 0x63 0x6b 0x6f 0x2f 0x32 0x30 0x31 0x30 0x30 0x31 0x30 0x31 0x20 0x46 0x69 0x72 0x65 0x66 0x6f 0x78 0x2f 0x38 0x2e 0x30 0xd 0xa 0x41 0x63 0x63 0x65 0x70 0x74 0x3a 0x20 0x74 0x65 0x78 0x74 0x2f 0x68 0x74 0x6d 0x6c 0x3b 0x71 0x3d 0x30 0x2e 0x39 0x2c 0x2a 0x2f 0x2a 0x2c 0x71 0x3d 0x30 0x2e 0x38 0xd 0xa 0x41 0x63 0x63 0x65 0x70 0x74 0x2d 0x4c 0x61 0x6e 0x67 0x75 0x61 0x67 0x65 0x3a 0x20 0x64 0x65 0x2d 0x64 0x65 0x2c 0x64 0x65 0x3b 0x71 0x3d 0x30 0x2e 0x38 0x3b 0x65 0x6e 0x2d 0x75 0x73 0x3b 0x71 0x3d 0x30 0x2e 0x35[/B]
                    GET /api/boiler/
                    Host: 192.168.178.52
                    User-Agent: Mozilla/5.0 (Windows NT 6.1;WOW64;rv:8.0) Gecko/20100101 Firefox/8.0
                    Accept: text/html;q=0.9,*/*,q=0.8
                    Accept-Language: de-de,de;q=0.8;en-us;q=0.5

                    Kommentar


                      #11
                      AScherff
                      Da ich hier leider nur Bahnhof verstehe.....
                      Würde dieses evtl. weiterhelfen?
                      https://bbqkees-electronics.nl/wiki/...stful-api.html oder
                      https://emsesp.github.io/docs/#/Command?id=http-api

                      Kommentar


                        #12
                        hilft (mir) nicht wirklich....

                        da stehen nur die API Aufrufe.

                        Die Frage ist ja, ob und warum die API nicht antwortet. Da kann es nur (1. Vermutung) am header liegen. Was Du machen kannst, ist den HS dazu zu bringen, die Anfrage exakt wie ein Browser zu tätigen.

                        Dazu könntest Du die vom Browser gesendeten header Daten (kann man z. Bsp. in Firefox in den Entwicklertools/Konsole/Kopfzeilen sehen) in die Anfrage kopieren.

                        Was mir oben auffällt, ist das in dr GET die HTTP Version fehlt...

                        Versuche mal "GET /api/boiler/ HTTP/1.1"

                        Kommentar

                        Lädt...
                        X