RESULT von WEBSEND auslesen (Webservice nutzen)

  • Es ist mir zwar gelungen für Release 9.4. ein Tasmota-Release zu erzeugen (Andere haben sich verweigert) welches ein RESULT in der Konsole erzeugt, aber einen Trigger oder eine Datenübernahme in eine Variable für die weitere Auswertung der Webservice-Temperatur ist mir bisher nicht gelungen.

    Kann mich jemand bitte auf den richtigen Weg bringen :saint:?

    Aktion: (gekürzt in der APPID und damit nicht lauffähig)

    on POWER1#State do websend [api.openweathermap.org] /data/2.5/weather?q=Cottbus,de&units=metric&appid=ada01f72c79beccce...... endon

    Ergebnis:

    17:27:40.587 RUL: POWER1#STATE performs "websend [api.openweathermap.org] /data/2.5/weather?q=Cottbus,de&units=metric&appid=ada01f72c79beccce...

    17:27:40.729 RSL: RESULT = {"coord":{"lon":14.3333,"lat":51.7667},"weather":[{"id":804,"main":"Clouds","description":"overcast clouds","icon":"04n"}],"base":"stations","main":{"temp":9.07,"feels_like":7.21,"temp_min":8.21,"temp_max":9.36,"pressure":1022,"humidity":77,"sea_level":1022,"grnd_level":1013},"visibility":10000,"wind":{"speed":3.32,"deg":288,"gust":5.69},"clouds":{"all":86},"dt":1634142396,"sys":{"type":2,"id":2035260,"country":"DE","sunrise":1634102607,"sunset":1634141640},"timezone":7200,"id":2939811,"name":"Cottbus","cod":200}

    17:27:40.735 RSL: RESULT = {"WebSend":"Done"}

  • Hi.

    mit #define USE_WEBSEND_RESPONSE in den benutzerdefinierten Parametern, geht das in allen aktuellen Tasmotaversionen. Auch in der 9.5.0.

    JSON wertest du einfach mit dem Parameter aus:

    Bsp:

    {"PARAMETER1":"WERT1"}

    on PARAMETER1 do var1 %value% endon

    Durch die JSON Ebenen hangelst Du dich dann mit # und/oder "?" als Wildcard.

    Bsp:

    {ROOT:{"PARAMETER1":"WERT1"}}

    on ?#PARAMETER1 do var1 %value% endon

    In Deinem Fall:

    on main#temp do var1 %value% endon


    Rule Trigger~

    Rule trigger names are derived from the JSON message displayed in the console. Each JSON level (all values enclosed in {...}) is separated in the trigger with a #.

    A rule trigger can consist of:

    • [TriggerName]#[ValueName]
    • [TriggerName]#[ValueName][comparison][value]
    • [SensorName]#[ValueName]
    • [SensorName]#[ValueName][comparison][value]
    • Tele-[SensorName]#[ValueName]
    • [TriggerName1]#[TriggerName2]#[ValueName]
    • [TriggerName1]#?#[ValueName]

    Use ? as a wildcard for a single trigger level. Rule will trigger on [TriggerName]#?#[Value] where ? is any value.

    EDIT:

    Aber echt interessant das man sich so ne externe Temperatur in's gerät holen kann :thumbup::)

    benzino77 Tasmocompiler

    Gitpod Master Release

    Gitpod Development Release

    Sonoff-Basic / Sonoff-RF / Sonoff-Touch / Sonoff S20 / PowStro Basic / MagicHome / Sonoff-RF-Bridge mit diversen 433MHz RF Sender/Empfänger / Shelly_1 / ESP-WiFi-Dimmer / Gosund SP111 / ESP12E / WEMOS D1 Mini / ESP32Cam

    Sensoren: BME280/BMP280/HC-SR501/HC-SR04/ACS712/INA219/MHZ19B/DS3231

    Alexa Sprachsteuerung

    mosquitto/bash/html/cgi auf Wyse5070

    4 Mal editiert, zuletzt von HoerMirAuf (14. Oktober 2021 um 11:40)

  • Danke für den ersten Hinweis:thumbup:

    - aber ich bekomme keine Daten in die Variable beim folgenden Testskript nach Auslösung ::(

    Ist die Umgebung Tasmota 9.4 richtig übersetzt wenn die Daten wenigstens im RESULT sichtbar werden oder kann ich ein aktuelles 9.5. mit Websend_Response entladen?

    rule2

    on POWER1#State do websend [api.openweathermap.org] /data/2.5/weather?q=Cottbus,de&units=metric&appid=ada01f72c79beccce endon

    on main#temp do var1 %value% endon

    on VAR1#Status do VAR1 endon


    Protokoll:

    21:13:15.205 RUL: POWER1#STATE performs "websend [api.openweathermap.org] /data/2.5/weather?q=Cottbus,de&units=metric&appid=ada01f72c79beccce...

    21:13:15.337 RSL: RESULT = {"coord":{"lon":14.3333,"lat":51.7667},"weather":[{"id":804,"main":"Clouds","description":"overcast clouds","icon":"04n"}],"base":"stations","main":{"temp":11.06,"feels_like":10.65,"temp_min":10.9,"temp_max":11.16,"pressure":1018,"humidity":93},"visibility":10000,"wind":{"speed":2.68,"deg":255,"gust":3.58},"clouds":{"all":100},"dt":1634242320,"sys":{"type":2,"id":2000627,"country":"DE","sunrise":1634189109,"sunset":1634227909},"timezone":7200,"id":2939811,"name":"Cottbus","cod":200}

    21:13:15.379 RSL: RESULT = {"WebSend":"Done"}

  • Hi ....

    Ist die Umgebung Tasmota 9.4 richtig übersetzt wenn die Daten wenigstens im RESULT sichtbar werden oder kann ich ein aktuelles 9.5. mit Websend_Response entladen?

    Zumindest ist USE_WEBSEND_RESPONSE gesetzt wurden, sonst würde der ja nicht aufschlagen.

    Bei mir ergibt:

    rule2 on main#temp do var1 %value% endon

    rule2 1

    und diesem JSON:

    Code
    {"coord":{"lon":14.3333,"lat":51.7667},"weather":[{"id":804,"main":"Clouds","description":"overcast clouds","icon":"04n"}],"base":"stations","main":{"temp":9.07,"feels_like":7.21,"temp_min":8.21,"temp_max":9.36,"pressure":1022,"humidity":77,"sea_level":1022,"grnd_level":1013},"visibility":10000,"wind":{"speed":3.32,"deg":288,"gust":5.69},"clouds":{"all":86},"dt":1634142396,"sys":{"type":2,"id":2035260,"country":"DE","sunrise":1634102607,"sunset":1634141640},"timezone":7200,"id":2939811,"name":"Cottbus","cod":200}

    dieses Ergebnis:

    Code
    09:46:01.065 RSL: RESULT = {"coord":{"lon":14.3333,"lat":51.7667},"weather":[{"id":804,"main":"Clouds","description":"overcast clouds","icon":"04n"}],"base":"stations","main":{"temp":9.07,"feels_like":7.21,"temp_min":8.21,"temp_max":9.36,"pressure":1022,"humidity":77,"sea_level":1022,"grnd_level":1013},"visibility":10000,"wind":{"speed":3.32,"deg":288,"gust":5.69},"clouds":{"all":86},"dt":1634142396,"sys":{"type":2,"id":2035260,"country":"DE","sunrise":1634102607,"sunset":1634141640},"timezone":7200,"id":2939811,"name":"Cottbus","cod":200}
    09:46:01.075 RUL: MAIN#TEMP performs "var1 9.07"
    09:46:01.080 RSL: RESULT = {"Var1":"9.07"}
    09:46:01.085 RSL: RESULT = {"":"Done"}

    Das macht übrigens keinen Sinn.

    on VAR1#Status do VAR1 endon

    Wenn schon dann var1#state als trigger. Und "do var1" ja was soll den mit var1 gemacht werden?

    Möglich das die Rule nicht geht weil der Syntax falsch ist.

    Oder Du hast noch was in der Rule1 stehen, vom experimentieren und die Rule2 gar nicht aktiviert und jetzt performt die experimentelle Rule1 oder so.

    benzino77 Tasmocompiler

    Gitpod Master Release

    Gitpod Development Release

    Sonoff-Basic / Sonoff-RF / Sonoff-Touch / Sonoff S20 / PowStro Basic / MagicHome / Sonoff-RF-Bridge mit diversen 433MHz RF Sender/Empfänger / Shelly_1 / ESP-WiFi-Dimmer / Gosund SP111 / ESP12E / WEMOS D1 Mini / ESP32Cam

    Sensoren: BME280/BMP280/HC-SR501/HC-SR04/ACS712/INA219/MHZ19B/DS3231

    Alexa Sprachsteuerung

    mosquitto/bash/html/cgi auf Wyse5070

    4 Mal editiert, zuletzt von HoerMirAuf (15. Oktober 2021 um 10:25)

  • Ja - die letzte Zeile war mit falscher Syntax, sollte den Inhalt von VAR1 mit Status (State) reflektieren, da sich ja nichts tut !

    Ja - Rule 1 und Rule 3 waren noch belegt aber ausgeschalten. Nach einem Löschen geht es auch nicht besser. :(

    Kann ich ein fertiges Standard-BIN mit WEBSEND_RESPONDSE im Netz finden:?:

  • Ich hab das jetzt nochmal mit meiner eigenen openweather Zugang getestet.

    Geht tadellos:

    Code
    16:59:21.741 CMD: websend [api.openweathermap.org] /data/2.5/weather?q=Cottbus,de&units=metric&appid=<xxx>
    16:59:21.855 RSL: RESULT = {"coord":{"lon":14.3333,"lat":51.7667},"weather":[{"id":500,"main":"Rain","description":"light rain","icon":"10d"}],"base":"stations","main":{"temp":10.68,"feels_like":10.1,"temp_min":9.32,"temp_max":12.74,"pressure":1013,"humidity":88,"sea_level":1013,"grnd_level":1005},"visibility":10000,"wind":{"speed":6.13,"deg":298,"gust":11.16},"rain":{"1h":1},"clouds":{"all":100},"dt":1634309670,"sys":{"type":2,"id":2035260,"country":"DE","sunrise":1634275612,"sunset":1634314179},"timezone":7200,"id":2939811,"name":"Cottbus","cod":200}
    16:59:21.905 RUL: MAIN#TEMP performs "var1 10.68"
    16:59:21.909 RSL: RESULT = {"Var1":"10.68"}
    16:59:21.914 RSL: RESULT = {"��?��?$!�?us":"Done"}

    Das kompilieren geht doch im Online Compiler sehr einfach.

    Hab Dir hier mal ein BIN erstellt. Mit USE_WEBSEND_RESPONSE und USE_EXPRESSION für die erweiterten Rule.

    Zip entpacken. Enthält das bin gezippt, ungezippt und die user_config_override.h

    tasmota_9.5.0_DE.zip

    benzino77 Tasmocompiler

    Gitpod Master Release

    Gitpod Development Release

    Sonoff-Basic / Sonoff-RF / Sonoff-Touch / Sonoff S20 / PowStro Basic / MagicHome / Sonoff-RF-Bridge mit diversen 433MHz RF Sender/Empfänger / Shelly_1 / ESP-WiFi-Dimmer / Gosund SP111 / ESP12E / WEMOS D1 Mini / ESP32Cam

    Sensoren: BME280/BMP280/HC-SR501/HC-SR04/ACS712/INA219/MHZ19B/DS3231

    Alexa Sprachsteuerung

    mosquitto/bash/html/cgi auf Wyse5070

  • Besten Danke für die 9.5.0 BIN - diese läuft aber auch noch nicht wie gewünscht - da habe ich sicherlich noch ein Handlungsproblem:?:;(

    In der Analyse scheint dein WEBSEND aus der Konsol gestartet worden zu sein.  16:59:21.741 CMD: websend [api.openweathermap.org]...

    Mit Konsole - das macht mein Release 9.4 wie deins mit 9.5.0 dann greift die hinterlegter Rule zur Übergabe an VAR1

    Aber ich habe zur Testsimulationsauslösung den Button1 am Shelly - dann kommt nichts mehr am in der Var1 an.

    Evtl. eine RESULT-Überlagerung mit POWER1 Result?

    rule2

    on POWER1#State do websend [api.openweathermap.org] /data/2.5/weather?q=Cottbus,de&units=metric&appid=ada01f72c79beccce endon

    on main#temp do var1 %value% endon

    18:01:07.172 CMD: var1 0

    18:01:07.179 RSL: RESULT = {"Var1":"0"}

    18:01:10.448 RSL: RESULT = {"POWER1":"OFF"}

    18:01:10.451 RSL: POWER1 = OFF

    18:01:10.465 RUL: POWER1#STATE performs "websend [api.openweathermap.org] /data/2.5/weather?q=Cottbus,de&units=metric&appid=ada01f72c79beccce...

    18:01:10.613 RSL: RESULT = {"coord":{"lon":14.3333,"lat":51.7667},"weather":[{"id":804,"main":"Clouds","description":"overcast clouds","icon":"04n"}],"base":"stations","main":{"temp":8.65,"feels_like":5.8,"temp_min":7.66,"temp_max":9.96,"pressure":1016,"humidity":84,"sea_level":1016,"grnd_level":1007},"visibility":10000,"wind":{"speed":5.26,"deg":287,"gust":9.86},"clouds":{"all":100},"dt":1634316590,"sys":{"type":2,"id":2010637,"country":"DE","sunrise":1634275612,"sunset":1634314179},"timezone":7200,"id":2939811,"name":"Cottbus","cod":200}

    18:01:10.622 RSL: RESULT = {"WebSend":"Done"}

    18:01:10.682 RSL: RESULT = {"POWER1":"ON"}

    18:01:10.687 RSL: POWER1 = ON

    18:01:10.703 RUL: POWER1#STATE performs "websend [api.openweathermap.org] /data/2.5/weather?q=Cottbus,de&units=metric&appid=ada01f72c79beccce...

    18:01:10.855 RSL: RESULT = {"coord":{"lon":14.3333,"lat":51.7667},"weather":[{"id":804,"main":"Clouds","description":"overcast clouds","icon":"04n"}],"base":"stations","main":{"temp":8.65,"feels_like":5.8,"temp_min":7.66,"temp_max":9.96,"pressure":1016,"humidity":84,"sea_level":1016,"grnd_level":1007},"visibility":10000,"wind":{"speed":5.26,"deg":287,"gust":9.86},"clouds":{"all":100},"dt":1634316590,"sys":{"type":2,"id":2010637,"country":"DE","sunrise":1634275612,"sunset":1634314179},"timezone":7200,"id":2939811,"name":"Cottbus","cod":200}

    18:01:10.861 RSL: RESULT = {"WebSend":"Done"}

    18:01:51.476 CMD: var1

    18:01:51.482 RSL: RESULT = {"Var1":"0"}

    D

    Einmal editiert, zuletzt von karoCB (15. Oktober 2021 um 21:32)

  • Habe zur Entkopplung von Power1 einen Button4 (Touch TTP223) an den Shelly auf TX (GPIO1) gelegt und

    einen weiteren Testskript erstellt:

    rule2

    on Button4#State do websend [api.openweathermap.org] /data/2.5/weather?q=Cottbus,de&units=metric&appid=ada01f72c79beccce endon

    on main#temp do var1 %value% endon

    # ohne Erfolg, aber mit Erfolg bei :

    rule2

    on Button4#State do Backlog VAR1 -100 websend [api.openweathermap.org] /data/2.5/weather?q=Cottbus,de&units=metric&appid=ada01f72c79beccce endon

    on main#temp do var1 %value% endon


    Fazit: es muss dingend ein Backlog vor dem websend stehen (auch ohne Inhalt) sonst wird nichts übergeben - warum auch immer!

    Danke:<3

    Mit der Sicherheit der BIN 9.5. und dem stimmigen Konsolentest konnte das Zielergebnis erreicht werden. :):):):thumbup:


  • Moin!

    Das ist krass! Stimmt! Das geht zwar wenn man den websend direkt eingibet aber nicht von einem power#state, event command, etc.

    Warum, ist mir echt nicht klar. Aber mit dem backlog davor klappt das. Sehr interessant.

    Danke für die Rückinfo !!!

    benzino77 Tasmocompiler

    Gitpod Master Release

    Gitpod Development Release

    Sonoff-Basic / Sonoff-RF / Sonoff-Touch / Sonoff S20 / PowStro Basic / MagicHome / Sonoff-RF-Bridge mit diversen 433MHz RF Sender/Empfänger / Shelly_1 / ESP-WiFi-Dimmer / Gosund SP111 / ESP12E / WEMOS D1 Mini / ESP32Cam

    Sensoren: BME280/BMP280/HC-SR501/HC-SR04/ACS712/INA219/MHZ19B/DS3231

    Alexa Sprachsteuerung

    mosquitto/bash/html/cgi auf Wyse5070

  • heute mal das Release 12.5. mit USE_WEBSEND_RESPONSE übersetzt dem https://3000-benzino77-tasmocompiler-l

    #ifdef USE_WEBSEND_RESPONSE

    #undef USE_WEBSEND_RESPONSE

    #endif

    #define USE_WEBSEND_RESPONSE


    rule2

    on Power3#State do Backlog VAR1 -100; websend [api.openweathermap.org] /data/2.5/weather?q=Cottbus,de&units=metric&appid=ada01f72c79beccce... endon

    on main#temp do var1 %value% endon

    Aber mehr als ein Done bekomme ich nicht zurück bei dem Release.

    Im Releae 9.5.0 geht der Skript von oben noch - jemand eine Idee?

  • Vollständiges Test-Beispiel Webservice für Tasmota

    ohne nötige Anmeldung am Zielserver (wie oben beim Wetter)

    sollte für Rule laufen wenn tasmota.bin compiliert wurde mit

    #ifdef USE_WEBSEND_RESPONSE

    #undef USE_WEBSEND_RESPONSE

    #endif

    #define USE_WEBSEND_RESPONSE

    Release 9.5 geht mit dem Backlog vor websend - Trick !

    Release 12.5 läuft bei mir nicht

    rule2

    on VAR2#State do backlog VAR1 test; websend [feiertage-api.de] /api/?jahr=%VAR2%&nur_land=BE endon

    on Pfingstmontag#datum do var1 %value% endon

    on VAR1#state do Pfingsten==>> %var1% endon

    Wenn das System ins Internet darf, wird bei Konsolenänderung der VAR2 auf das Zieljahr der Webservice gestartet und das Ergebnis in VAR1 reflektiert.

    Ausgabe-log:

    19:13:12.947 CMD: Grp 0, Cmnd 'WEBSEND', Idx 1, Len 46, Data '[feiertage-api.de] /api/?jahr=2024&nur_land=BE'

    19:13:13.139 RSL: RESULT = {"Neujahrstag":{"datum":"2024-01-01","hinweis":""},"Frauentag":{"datum":"2024-03-08","hinweis":""},"Karfreitag":{"datum":"2024-03-29","hinweis":""},"Ostermontag":{"datum":"2024-04-01","hinweis":""},"Tag der Arbeit":{"datum":"2024-05-01","hinweis":""},"Christi Himmelfahrt":{"datum":"2024-05-09","hinweis":""},"Pfingstmontag":{"datum":"2024-05-20","hinweis":""},"Tag der Deutschen Einheit":{"datum":"2024-10-03","hinweis":""},"1. Weihnachtstag":{"datum":"2024-12-25","hinweis":""},"2. Weihnachtstag":{"datum":"2024-12-26","hinweis":""}}

    19:13:13.152 RUL: PFINGSTMONTAG#DATUM performs "var1 2024-05-20"

    19:13:13.153 SRC: Rule

    19:13:13.156 CMD: Grp 0, Cmnd 'VAR', Idx 1, Len 10, Data '2024-05-20'

    19:13:13.159 RSL: RESULT = {"Var1":"2024-05-20"}

    19:13:13.166 RSL: RESULT = {"�?�?��?":"Done"}

    19:13:13.179 RUL: VAR1#STATE performs "Pfingsten==>>2024 2024-05-20"

  • karoCB 12. Juni 2023 um 21:42

    Hat den Titel des Themas von „RESULT von WEBSEND auslesen“ zu „RESULT von WEBSEND auslesen (Webservice nutzen)“ geändert.
  • Wenn ich das offene Testbeispiel von einer 9.5. auf eine 12.5. Version migriere bekomme ich keine Übergabe in die VAR1 mehr.

    Auch die 9.5. hatte Probleme (die konnte ich aber fixen)

    17:59:21.697 CMD: var2 2023

    17:59:21.699 SRC: WebConsole from 192.168.178.57

    17:59:21.702 CMD: Grp 0, Cmd 'VAR', Idx 2, Len 4, Pld 2023, Data '2023'

    17:59:21.706 RSL: RESULT = {"Var2":"2023"}

    17:59:21.866 RUL: VAR2#STATE performs "websend [feiertage-api.de] /api/?jahr=2023&nur_land=BE"

    17:59:21.868 SRC: Rule

    17:59:21.870 CMD: Grp 0, Cmd 'WEBSEND', Idx 1, Len 46, Pld -99, Data '[feiertage-api.de] /api/?jahr=2023&nur_land=BE'

    17:59:22.018 RSL: RESULT = {"WebQuery":{"Neujahrstag":{"datum":"2023-01-01","hinweis":""},"Frauentag":{"datum":"2023-03-08","hinweis":""},"Karfreitag":{"datum":"2023-04-07","hinweis":""},"Ostermontag":{"datum":"2023-04-10","hinweis":""},"Tag der Arbeit":{"datum":"2023-05-01","hinweis":""},"Christi Himmelfahrt":{"datum":"2023-05-18","hinweis":""},"Pfingstmontag":{"datum":"2023-05-29","hinweis":""},"Tag der Deutschen Einheit":{"datum":"2023-10-03","hinweis":""},"1. Weihnachtstag":{"datum":"2023-12-25","hinweis":""},"2. Weihnachtstag":{"datum":"2023-12-26","hinweis":""}}}

    17:59:22.066 RSL: RESULT = {"WebSend":"Done"}

    da fehlen aber noch Zeilen - sieh oben LOG von 9.5

    (habe ich eine falsche Compilierung?)

  • Funktionierende Lösung mit Berry

    def WebRequest(year)
        var result=""
        var cl = webclient()
    cl.begin("http://feiertage-api.de/api/?jahr="+str(year)+"&nur_land=BE")

        var r = cl.GET()
        if r == 200
    result= cl.get_string()
        end
    cl.close()
        return result
    end

    # define tasmota command 'ftapi'
    tasmota.remove_cmd("ftapi")
    tasmota.add_cmd("ftapi",
    def(cmd, idx, payload, payload_json )
        var result = WebRequest(payload) 
    tasmota.resp_cmnd(result)
    end)

    Eingabe in Console

    # define the rule
    rule2
    on VAR2#State do backlog ftapi %VAR2%; endon
    on Pfingstmontag#datum do var1 %value% endon
    on VAR1#state do Pfingsten==>> %var1% endon

    # trigger rule ==>
    var2 = 2022

    -------------------- Ausgabe

    Code
    22:43:48.238 CMD: var2 2022
    22:43:48.247 MQT: stat/tasmota_AC2638/RESULT = {"Var2":"2022"}
    22:43:48.283 RUL: VAR2#STATE performs "backlog ftapi 2022;"
    22:43:48.367 MQT: stat/tasmota_AC2638/RESULT = {"Neujahrstag":{"datum":"2022-01-01","hinweis":""},"Frauentag":{"datum":"2022-03-08","hinweis":""},"Karfreitag":{"datum":"2022-04-15","hinweis":""},"Ostermontag":{"datum":"2022-04-18","hinweis":""},"Tag der Arbeit":{"datum":"2022-05-01","hinweis":""},"Christi Himmelfahrt":{"datum":"2022-05-26","hinweis":""},"Pfingstmontag":{"datum":"2022-06-06","hinweis":""},"Tag der Deutschen Einheit":{"datum":"2022-10-03","hinweis":""},"1. Weihnachtstag":{"datum":"2022-12-25","hinweis":""},"2. Weihnachtstag":{"datum":"2022-12-26","hinweis":""}}
    22:43:48.381 RUL: PFINGSTMONTAG#DATUM performs "var1 2022-06-06"
    22:43:48.388 MQT: stat/tasmota_AC2638/RESULT = {"Var1":"2022-06-06"}
    22:43:48.401 RUL: VAR1#STATE performs "Pfingsten==>> 2022-06-06"
  • Das gleiche mit script

  • Webservice als Rule unter 12.5

    nötig weiterhin die Compileroption #define USE_WEBSEND_RESPONSE

    Nutzung jetzt mit neuem Kommando (ab 10.0 erforderlich)

    siehe auch Implement WebQuery Command #13209

    rule2

    on VAR2#State do backlog VAR1 test; webquery http://feiertage-api.de/api/?jahr=%VAR2%&nur_land=BE GET endon

    on Webquery#Pfingstmontag#datum do var1 %value% endon

    on VAR1#state do Pfingsten===>> %var1% endon

  • Das gleiche mit script

    mit welchem Release ging der Testswebservice im Skriptumfeld und auf welchem System ?


    Compiler Optionen für ESP32 12.5 so gesetzt - ohne Erfolg das der Testskript läuft !

    #ifdef USE_UFILESYS

    #undef USE_UFILESYS

    #endif

    #define USE_UFILESYS

    #ifdef USE_WEBSEND_RESPONSE

    #undef USE_WEBSEND_RESPONSE

    #endif

    #define USE_WEBSEND_RESPONSE

    ein Result(Done) ist noch zu sehen aber keine Datenübergabe.

    PS: Mein Fehler - lag an meiner Fritz.box-Einstellung die diesen Webzugang nicht als Freigabe hatte

    2 Mal editiert, zuletzt von karoCB (10. Juli 2023 um 20:58)

  • Hiermit die Aufarbeitung vom Webservice-Beispielskripts von gemu2015.

    Eingabe des Jahres auf der Oberfläche lässt Pfingstdatum zum Jahr auf der Oberfläche erwarten.

    >D 40

    SB=8192

    xx=0

    res=0

    sres=""

    var2="2000"

    >S

    if upd[var2]>0

    then

    ; fordere Daten an

    print Datenanforderung

    res=http("feiertage-api.de" "/api/?jahr="+var2+"&nur_land=BE")

    print Result: %res%

    print Pfingsten: %sres%

    endif

    print %var2%


    >E

    ; lese JSON aus

    sres=Pfingstmontag#datum

    print Datum von Pfingsten: %sres%

    >W

    tx(var2 "Jahreszahl")

    Pfingsten: {m} %sres%