ScriptEditor: Fehlermeldung HTTP post failed durch is(0 "Jan|Feb|... Dez|")

  • Hallo in die Runde,
    ich nutze als Stromzähler den SmartMeterReader-Air (SMR-Air) von bitShake (ESP32-C3-MINI-1) mit Tasmota v14.1.0 (von bitShake).
    Darauf läuft ein Tasmota Script Google Chart SML von Ottelo (https://ottelo.jimdofree.com/stromz%C3%A4hl…#SkriptDownload).


    Bei der Übertragung vom ScriptEditor auf den SMR-Air erhalte ich immer eine Fehlermeldung. Die Ursache konnte ich durch Löschen von Codezeilen ausfindig machen. Es handelt sich um die is(0... Anweisung.

    Wenn ich zwischen dem is und der Klammer ein Leerzeichen setze, wird das Script einwandfrei übertragen. Wenn ich dann im Browser über Werkzeuge -> Skript konfigurieren das Leerzeichen wieder lösche, funktioniert auch das Script einwandfrei.

    Auf einem ESP8266 mit angepasstem Tasmota v13.4.0 von Ottelo habe ich dagegen keine Probleme.

    Hat einer eine Ahnung, warum dies so ist? Ich bin da ratlos - bin aber auch nicht der Profi in Tasmota Script zu programmieren.

    Einmal editiert, zuletzt von Thomas Fu (16. Februar 2025 um 18:59)

  • Zur hilfreichsten Antwort springen
  • Das Problem konnte ich bisher nicht lösen.

    Ein Update des SmartMeterReader-Air (SMR-Air) von bitShake (ESP32-C3-MINI-1) von Tasmota v14.1.0 auf v14.6.0 (von bitShake angepasste Version) hat leider keinen Erfolg gebracht. Auch ein Update des bitShake SMR von v1.2.2 auf v1.3.3 brachte nichts.

    Der Fehler tritt auch mit der Extension "Tasmota Script Language Support" unter Visual Studio Code auf. Am Script Editor liegt es also nicht.

    Mir ist noch aufgefallen, dass der Übertragungsfehler nicht auftritt, wenn ich das string array kürze. Bis zu

    is(0 "Jan|Feb|Mär|Apr|Mai|Jun|Ju|")

    funktioniert die Übertragung noch. Füge ich noch ein weiteres Zeichen hinzu, kommt es zu diesem Übertragungsfehler. Liegt es vielleicht am ESP32-C3-MINI-1?

    Ich bin für jeden Hinweis zu haben :).

    Einmal editiert, zuletzt von Thomas Fu (3. Juni 2025 um 09:39)

  • Hallo gemu2015,

    vielen Dank für die Lösung. Da wäre ich nie drauf gekommen, dass is(...) einen Wert zurück gibt :S.

    Ich bin immer davon ausgegangen, dass is(...) ein besonderes string array ist. In diesem Fall, durch die 0 nach der öffnenden Klammer, ein nur Lesen string array. In der Dokumentation wird leider auch nichts darüber erwähnt:

    Glück-Auf aus dem Ruhrgebiet

  • Thomas Fu 3. Juni 2025 um 12:36

    Hat einen Beitrag als hilfreichste Antwort ausgewählt.
  • Thomas Fu 3. Juni 2025 um 12:36

    Hat einen Beitrag als hilfreichste Antwort ausgewählt.
  • Thomas Fu 3. Juni 2025 um 16:21

    Hat einen Beitrag als hilfreichste Antwort ausgewählt.
  • Thomas Fu 3. Juni 2025 um 20:02

    Hat einen Beitrag als hilfreichste Antwort ausgewählt.