Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • 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. [gelöst] Adapter: wie TimezoneOffset ermitteln, getForeignState liefert keinen State

NEWS

  • Der neue Monatsrückblick für Mai und Juni 2026 ist online!
    BluefoxB
    Bluefox
    8
    1
    805

  • wichtiges UPDATE für controller 7.2.2 im stable
    HomoranH
    Homoran
    10
    1
    3.4k

  • Neues YouTube-Video: Visualisierung im Devices-Adapter
    BluefoxB
    Bluefox
    16
    1
    5.6k

[gelöst] Adapter: wie TimezoneOffset ermitteln, getForeignState liefert keinen State

Geplant Angeheftet Gesperrt Verschoben Entwicklung
5 Beiträge 3 Kommentatoren 909 Aufrufe
  • Ä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.
  • greyhoundG Offline
    greyhoundG Offline
    greyhound
    schrieb am zuletzt editiert von
    #1

    Nach meinem letzten etwas peinlichen Hilfeersuchen nun ein neues "Problemchen".

    Ich möchte im Adapter die vom Anbieter gelieferten Zeiten lokalisieren. getTimezoneOffset() steht im Adapter nicht zur Verfügung.

    Was wäre der empfohlene Weg, um UTC datetime-Werte in lokale Zeiten umzurechnen?

    Ein 2. Problem habe ich beim Lesen von fremden States. Laut Beschreibung soll dies mit adapter.getForeignState() ohne Probleme möglich sein.

           if(adapter.config.idRainSensor !== '') {        // use only rain sensor if exist
                adapter.getForeignState(adapter.config.idRainSensor, function (err, idState) {
                    if (err) {
                        adapter.log.error(err);
    
                        return;
                    }
    
                    // id rain sensor valid
                    adapter.subscribeForeignStates(adapter.config.idRainSensor);
                });
            }
    
    

    Kann mir jemand einen Adapter empfehlen, der analoges umgesetzt hat?

    Dies ist mir weder mit diesem noch einem anderen Datenpunkt gelungen. Beim Debuggen komme ich nicht in die nachfolgende Zeile "if (err) {", der Code wird ohne Fehlermeldung beim nächsten Codeblock fortgesetzt.

    Muss ich für die Nutzung von getForeignState zusätzlich Requirements erfüllen? Rechte setzen?

    Gibt es einen Adapter der getForeignState nutzt, wo ich mir eine Umsetzung anschauen kann?

    ioBroker auf ODROID-XU4 / Influx u. a. auf FUJITSU D3400-B, Celeron G3900, 16 GB RAM / CCU2 / Nuki

    1 Antwort Letzte Antwort
    0
    • paul53P Offline
      paul53P Offline
      paul53
      schrieb am zuletzt editiert von
      #2

      @greyhound:

      getTimezoneOffset() steht im Adapter nicht zur Verfügung. `
      https://wiki.selfhtml.org/wiki/JavaScript/Objekte/Date/getTimezoneOffset ist eine Javascript-Funktion, die auf Date-Objekte angewendet wird. Sie muss daher auch im Adapter zur Verfügung stehen.

      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
      Produktiv: Asus PN 42 / N100 / 8 GB / 500 GB; Proxmox mit 2 VM (iob / openCCU)

      1 Antwort Letzte Antwort
      0
      • greyhoundG Offline
        greyhoundG Offline
        greyhound
        schrieb am zuletzt editiert von
        #3

        okay, ich hatte angenommen, das die Funktion unabhängig von einem Date-Object die Zeitzone liefert.

                let dD = new Date();
                let dO = dD.getTimezoneOffset();
        
        

        liefert was ich möchte = -120.

        Bleibt noch mein Problem mit adapter.getForeignState()

        ioBroker auf ODROID-XU4 / Influx u. a. auf FUJITSU D3400-B, Celeron G3900, 16 GB RAM / CCU2 / Nuki

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

          @greyhound:

          Bleibt noch mein Problem mit adapter.getForeignState() `

          Du hast aber schon verstanden, dass der zweite Parameter eine Callback-Funktion ist, die zu einem späteren Zeitpunkt (üblicherweise wenige ms) aufgerufen wird?

          D.h. es wird der getForeignState-Befehl abgesetzt, dann geht es sofort untendrunter weiter und später wird der Callback ausgeführt.

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

          1 Antwort Letzte Antwort
          0
          • greyhoundG Offline
            greyhoundG Offline
            greyhound
            schrieb am zuletzt editiert von
            #5

            Ich hatte den BreakPoint auf "if (err) {" gesetzt und gewartet, dass die Ausführung da zum Stehen kommt, klappte aber irgendwie nicht. In einem ähnlichen Bsp. habe ich versucht, einen Wert von einem "externen Datenpunkt" zu lesen und in eine "globale" Skriptvariable zu schreiben, was mir aber nicht gelungen ist, der zu lesende Wert wurde nicht geschrieben.

            Inzwischen habe ich das mit der Variablen anders gelöst und nach einem Neustart des ioBroker-Hosts bleibt die Skriptausführung jetzt auch bei meinem BreakPoint stehen. Waren vielleicht vorher zu viele Fehler.

            Danke

            ioBroker auf ODROID-XU4 / Influx u. a. auf FUJITSU D3400-B, Celeron G3900, 16 GB RAM / CCU2 / Nuki

            1 Antwort Letzte Antwort
            0

            Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

            Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

            Mit deinem Input könnte dieser Beitrag noch besser werden 💗

            Registrieren Anmelden
            Antworten
            • In einem neuen Thema antworten
            Anmelden zum Antworten
            • Älteste zuerst
            • Neuste zuerst
            • Meiste Stimmen


            Support us

            ioBroker
            Community Adapters
            Donate

            431

            Online

            33.0k

            Benutzer

            83.5k

            Themen

            1.3m

            Beiträge
            Community
            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
            ioBroker Community 2014-2026
            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