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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    22
    1
    1.1k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.1k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    14
    1
    2.4k

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

Geplant Angeheftet Gesperrt Verschoben Entwicklung
13 Beiträge 4 Kommentatoren 1.4k 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.
  • S Offline
    S Offline
    Sneak-L8
    schrieb am zuletzt editiert von
    #1

    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

    dslraserD paul53P 2 Antworten 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

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

      @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 1 Antwort Letzte Antwort
      0
      • 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

                            810

                            Online

                            32.5k

                            Benutzer

                            81.6k

                            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