Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Entwicklung
  4. State ... has to be type "string" but received type "object"

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    16
    1
    969

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    693

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.0k

State ... has to be type "string" but received type "object"

Geplant Angeheftet Gesperrt Verschoben Entwicklung
13 Beiträge 4 Kommentatoren 1.5k Aufrufe 3 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • dslraserD dslraser

    @sneak-l8 sagte in State ... has to be type "string" but received type "object":

    Oder sollte ich den State anders definieren?

    Vielleicht hilft Dir das weiter.
    https://www.iobroker.net/#de/documentation/dev/stateroles.md

    S Offline
    S Offline
    Sneak-L8
    schrieb am zuletzt editiert von
    #3

    @dslraser Danke für den Hinweis.
    Musste erst auch Chrome wechseln, mit Firefox blieb die Seite leider bis auf den Balken oben leer...

    Role = date ist wohl das richtige. datetime finde ich nicht, ist doch aber auch sehr üblich gewesen. Wird auch nicht als Fehler gemeldet.
    Leider steht auf der Seite nicht, wie ein Datum korrekt als String übergeben wird (also welches Format). Aber da der state als Datum mit new Date(state) ausgelesen wird und dort das ISO-Format erwartet wird, ist wohl toISOString() ie Antwort ...

    dslraserD 1 Antwort Letzte Antwort
    0
    • S Sneak-L8

      @dslraser Danke für den Hinweis.
      Musste erst auch Chrome wechseln, mit Firefox blieb die Seite leider bis auf den Balken oben leer...

      Role = date ist wohl das richtige. datetime finde ich nicht, ist doch aber auch sehr üblich gewesen. Wird auch nicht als Fehler gemeldet.
      Leider steht auf der Seite nicht, wie ein Datum korrekt als String übergeben wird (also welches Format). Aber da der state als Datum mit new Date(state) ausgelesen wird und dort das ISO-Format erwartet wird, ist wohl toISOString() ie Antwort ...

      dslraserD Offline
      dslraserD Offline
      dslraser
      Forum Testing Most Active
      schrieb am zuletzt editiert von
      #4

      @sneak-l8 sagte in State ... has to be type "string" but received type "object":

      datetime finde ich nicht,

      Es gibt z.B. auch value.datetime
      Ob das hilft oder wie man es übergibt weiß ich nicht.

      Auf der Seite suchen.

      Screenshot_20210921-115805_Chrome.jpg

      paul53P 1 Antwort Letzte Antwort
      0
      • dslraserD dslraser

        @sneak-l8 sagte in State ... has to be type "string" but received type "object":

        datetime finde ich nicht,

        Es gibt z.B. auch value.datetime
        Ob das hilft oder wie man es übergibt weiß ich nicht.

        Auf der Seite suchen.

        Screenshot_20210921-115805_Chrome.jpg

        paul53P Offline
        paul53P Offline
        paul53
        schrieb am zuletzt editiert von paul53
        #5

        @dslraser sagte: Es gibt z.B. auch value.time

        Das sind die ms seit 1.1.1970 0:00 Uhr UTC, also eine Zahl.

        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

        1 Antwort Letzte Antwort
        0
        • S Sneak-L8

          Hallo zusammen,

          ich weiß, es gab da eine Änderng/verschärfung der Prüfungen. Aber wie mache ich es richtig?

          Ich habe einen Statem it Zeitstempel als type = string, role = datetime. Diesem weise ich bisher einen aktuellen Zeitstempel mit new date() zu.

          Wie erflgt die Zuweisung richtig? Mit .toISOString()? Oder sollte ich den State anders definieren?

          Viele Grüße
          Sneak-L8

          paul53P Offline
          paul53P Offline
          paul53
          schrieb am zuletzt editiert von paul53
          #6

          gelöscht.

          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

          S 1 Antwort Letzte Antwort
          0
          • paul53P paul53

            gelöscht.

            S Offline
            S Offline
            Sneak-L8
            schrieb am zuletzt editiert von
            #7

            @dslraser Danke für den Hinweis. Hatte datetime selbst nicht gesehen, mit Textsuche klappt's dann auch :) Und damit ist datetime ja auch nicht falsch, nur meine Zuweisung mit dem Date-Objekt.

            @paul53 formatDate() führt hier m.E. nicht zum Ziel, da datetime ja gerade nicht nach jedes Gusto formatiert werden soll sondern nach einem festen Format. Leider steht da nur Systemformat und nicht eine konkrete Funktion. Aber da new Date(xxx) mit xxx = ISOString funktioniert, halte ich asISOString() für sehr wahrscheinlich.

            paul53P 1 Antwort Letzte Antwort
            0
            • S Sneak-L8

              @dslraser Danke für den Hinweis. Hatte datetime selbst nicht gesehen, mit Textsuche klappt's dann auch :) Und damit ist datetime ja auch nicht falsch, nur meine Zuweisung mit dem Date-Objekt.

              @paul53 formatDate() führt hier m.E. nicht zum Ziel, da datetime ja gerade nicht nach jedes Gusto formatiert werden soll sondern nach einem festen Format. Leider steht da nur Systemformat und nicht eine konkrete Funktion. Aber da new Date(xxx) mit xxx = ISOString funktioniert, halte ich asISOString() für sehr wahrscheinlich.

              paul53P Offline
              paul53P Offline
              paul53
              schrieb am zuletzt editiert von paul53
              #8

              @sneak-l8 sagte: new Date(xxx) mit xxx = ISOString funktioniert

              Ja, wenn Du mit dem Anzeigeformat leben kannst.

              Bild_2021-09-21_132252.png

              Sonst verwende besser .toLocaleString()

              Bild_2021-09-21_132606.png

              Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
              Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

              S 1 Antwort Letzte Antwort
              0
              • paul53P paul53

                @sneak-l8 sagte: new Date(xxx) mit xxx = ISOString funktioniert

                Ja, wenn Du mit dem Anzeigeformat leben kannst.

                Bild_2021-09-21_132252.png

                Sonst verwende besser .toLocaleString()

                Bild_2021-09-21_132606.png

                S Offline
                S Offline
                Sneak-L8
                schrieb am zuletzt editiert von
                #9

                @paul53 Hm, dann hat ioBroker bisher (es funktioniert ja "noch" mit Objekt) den toString() gemnommen. Denn so standen sie bisher drin.
                Dann wäre aber schön, das würde so in der Doku stehen. Ist der vis-Adapter da flexibel und nimmt sowohl das Format aus toSting() als auch toISOString()?

                1 Antwort Letzte Antwort
                0
                • AlCalzoneA Offline
                  AlCalzoneA Offline
                  AlCalzone
                  Developer
                  schrieb am zuletzt editiert von
                  #10

                  Um noch zur Verwirrung beizutragen: In der englischen (Originalvariante) stehen date und datetime als deprecated (durchgestrichen).
                  https://www.iobroker.net/#en/documentation/dev/stateroles.md

                  Diese sollten nicht mehr verwendet werden und stattdessen nur value.time. Dort new Date().getTime() reinschreiben, dann gibts auch keine Format-Verwirrungen.

                  Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                  S 1 Antwort Letzte Antwort
                  0
                  • AlCalzoneA AlCalzone

                    Um noch zur Verwirrung beizutragen: In der englischen (Originalvariante) stehen date und datetime als deprecated (durchgestrichen).
                    https://www.iobroker.net/#en/documentation/dev/stateroles.md

                    Diese sollten nicht mehr verwendet werden und stattdessen nur value.time. Dort new Date().getTime() reinschreiben, dann gibts auch keine Format-Verwirrungen.

                    S Offline
                    S Offline
                    Sneak-L8
                    schrieb am zuletzt editiert von
                    #11

                    @alcalzone Danke, das ist eine klare Aussage.
                    Wie mache ich das aber mit bestehenden Adaptern? Den bestehenden State ändern? Das ist wohl auch deshalb schwierig, weil dann von string auf number gewechselt wird und die in der Datenbank (SQL.0) in unterschiedlichen Tabellen stehen ...

                    AlCalzoneA paul53P 2 Antworten Letzte Antwort
                    0
                    • S Sneak-L8

                      @alcalzone Danke, das ist eine klare Aussage.
                      Wie mache ich das aber mit bestehenden Adaptern? Den bestehenden State ändern? Das ist wohl auch deshalb schwierig, weil dann von string auf number gewechselt wird und die in der Datenbank (SQL.0) in unterschiedlichen Tabellen stehen ...

                      AlCalzoneA Offline
                      AlCalzoneA Offline
                      AlCalzone
                      Developer
                      schrieb am zuletzt editiert von
                      #12

                      @sneak-l8 Das macht's wohl schwieriger. Meine Meinung: Lass es so wie es ist und plane für neue Entwicklungen damit, nur noch value.time zu nutzen.

                      Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                      1 Antwort Letzte Antwort
                      1
                      • S Sneak-L8

                        @alcalzone Danke, das ist eine klare Aussage.
                        Wie mache ich das aber mit bestehenden Adaptern? Den bestehenden State ändern? Das ist wohl auch deshalb schwierig, weil dann von string auf number gewechselt wird und die in der Datenbank (SQL.0) in unterschiedlichen Tabellen stehen ...

                        paul53P Offline
                        paul53P Offline
                        paul53
                        schrieb am zuletzt editiert von
                        #13

                        @sneak-l8
                        Verwende Rolle "date", da laut Doku

                        date common.type = string - parsable by new Date(ddd) string

                        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                        1 Antwort Letzte Antwort
                        0
                        Antworten
                        • In einem neuen Thema antworten
                        Anmelden zum Antworten
                        • Älteste zuerst
                        • Neuste zuerst
                        • Meiste Stimmen


                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        876

                        Online

                        32.6k

                        Benutzer

                        82.0k

                        Themen

                        1.3m

                        Beiträge
                        Community
                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                        ioBroker Community 2014-2025
                        logo
                        • Anmelden

                        • Du hast noch kein Konto? Registrieren

                        • Anmelden oder registrieren, um zu suchen
                        • Erster Beitrag
                          Letzter Beitrag
                        0
                        • Home
                        • Aktuell
                        • Tags
                        • Ungelesen 0
                        • Kategorien
                        • Unreplied
                        • Beliebt
                        • GitHub
                        • Docu
                        • Hilfe