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. Skripten / Logik
  4. Blockly
  5. webseite auslesen und in Datenpunkte darstellen json

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.1k

webseite auslesen und in Datenpunkte darstellen json

Geplant Angeheftet Gesperrt Verschoben Blockly
17 Beiträge 5 Kommentatoren 1.6k 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.
  • LukyLukeL LukyLuke

    @Homoran
    ich würde ja auch ein javascript erstellen. Nur fehlt mir sämtliches Wissen dazu. Leider.

    var Tor =JSON.parse(getState('https://svr39.supla.org/direct/**************/read?format=json').val);
    
    log (Tor.connected);
    log (Tor.hi);
    
    setState('TorConnected',Tor.connected);
    setState('TorHi',Tor.hi);
    

    Das klappt noch nicht so richtig.

    5.1.2021, 11:08:00.710	[error]: javascript.0 (3658) script.js.common.Tor_neu: TypeError: Cannot read property 'connected' of null
    5.1.2021, 11:08:00.712	[error]: javascript.0 (3658)     at script.js.common.Tor_neu:3:10
    5.1.2021, 11:08:00.712	[error]: javascript.0 (3658)     at script.js.common.Tor_neu:8:3
    
    HomoranH Nicht stören
    HomoranH Nicht stören
    Homoran
    Global Moderator Administrators
    schrieb am zuletzt editiert von
    #7

    @LukyLuke sagte in webseite auslesen und in Datenpunkte darstellen json:

    Nur fehlt mir sämtliches Wissen dazu. Leider.

    mir leider auch, aber mit getstate kannst du keine Website auslesen sondern nur den bisherigen Datenpunkt, in den du das JSON geschrieben hast

    kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

    der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

    1 Antwort Letzte Antwort
    0
    • GarganoG Gargano

      @LukyLuke
      TorConnected und TorHi vorher als Objekt anlegen

      
      var Tor =JSON.parse(getState('Torzustand').val);
      log (Tor.connected);
      log (Tor.hi);
      
      setState('TorConnected',Tor.connected);
      setState('TorHi',Tor.hi);
      
      
      bahnuhrB Online
      bahnuhrB Online
      bahnuhr
      Forum Testing Most Active
      schrieb am zuletzt editiert von
      #8

      @Gargano sagte in webseite auslesen und in Datenpunkte darstellen json:

      @LukyLuke
      TorConnected und TorHi vorher als Objekt anlegen

      
      var Tor =JSON.parse(getState('Torzustand').val);
      log (Tor.connected);
      log (Tor.hi);
      
      setState('TorConnected',Tor.connected);
      setState('TorHi',Tor.hi);
      
      

      Bei mir steht stringify !
      Warum nimmst du parse ?


      Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
      Danke.
      gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
      ScreenToGif :https://www.screentogif.com/downloads.html

      GarganoG 1 Antwort Letzte Antwort
      0
      • bahnuhrB bahnuhr

        @Gargano sagte in webseite auslesen und in Datenpunkte darstellen json:

        @LukyLuke
        TorConnected und TorHi vorher als Objekt anlegen

        
        var Tor =JSON.parse(getState('Torzustand').val);
        log (Tor.connected);
        log (Tor.hi);
        
        setState('TorConnected',Tor.connected);
        setState('TorHi',Tor.hi);
        
        

        Bei mir steht stringify !
        Warum nimmst du parse ?

        GarganoG Offline
        GarganoG Offline
        Gargano
        schrieb am zuletzt editiert von
        #9

        @bahnuhr Ein JSON.stringify wandelt ein JSON Objekt in einen String. JSON.parse macht dies umgekehrt.

        bahnuhrB 1 Antwort Letzte Antwort
        0
        • GarganoG Gargano

          @bahnuhr Ein JSON.stringify wandelt ein JSON Objekt in einen String. JSON.parse macht dies umgekehrt.

          bahnuhrB Online
          bahnuhrB Online
          bahnuhr
          Forum Testing Most Active
          schrieb am zuletzt editiert von
          #10

          @Gargano sagte in webseite auslesen und in Datenpunkte darstellen json:

          @bahnuhr Ein JSON.stringify wandelt ein JSON Objekt in einen String. JSON.parse macht dies umgekehrt.

          Genau.
          Und mit parse klappt es nicht.


          Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
          Danke.
          gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
          ScreenToGif :https://www.screentogif.com/downloads.html

          GarganoG 1 Antwort Letzte Antwort
          0
          • bahnuhrB bahnuhr

            @Gargano sagte in webseite auslesen und in Datenpunkte darstellen json:

            @bahnuhr Ein JSON.stringify wandelt ein JSON Objekt in einen String. JSON.parse macht dies umgekehrt.

            Genau.
            Und mit parse klappt es nicht.

            GarganoG Offline
            GarganoG Offline
            Gargano
            schrieb am zuletzt editiert von
            #11

            @bahnuhr In dem Datenpunkt Torzustand steht doch ein String drin,oder nicht ?

            HomoranH 1 Antwort Letzte Antwort
            0
            • GarganoG Gargano

              @bahnuhr In dem Datenpunkt Torzustand steht doch ein String drin,oder nicht ?

              HomoranH Nicht stören
              HomoranH Nicht stören
              Homoran
              Global Moderator Administrators
              schrieb am zuletzt editiert von
              #12

              @Gargano nee, ein json!
              deshalb müsste @LukyLuke diesen zum parsen ja aufrufen, wenn er getstate nuten will

              kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

              der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

              1 Antwort Letzte Antwort
              0
              • LukyLukeL LukyLuke

                Ich komme nicht weiter. Folgendes habe ich zum Ziel:

                • per webrequest hole ich die Zustandsdaten im json Format meines Torantriebes ab: klappt
                {"connected":true,"hi":true}
                
                • jetzt möchte ich die zwei Variablen in zwei Datenpunkte schreiben. Das bekomme ich nicht hin. Ich erhalte immer nur die ganze Zeile im State
                  0b844f7f-3e08-463b-a272-87873fba5fc2-grafik.png
                • den Datenpunkt schreibe ich aus einem blockly script via result
                  block.jpg
                • muss ich result jetzt noch irgendwie parsen?

                Ich komm einfach nicht weiter momentan. Leider habe ich von javascript usw. fast keine Ahnung.

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

                @LukyLuke sagte:

                möchte ich die zwei Variablen in zwei Datenpunkte schreiben.

                Blockly_temp.JPG

                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

                LukyLukeL 1 Antwort Letzte Antwort
                1
                • paul53P paul53

                  @LukyLuke sagte:

                  möchte ich die zwei Variablen in zwei Datenpunkte schreiben.

                  Blockly_temp.JPG

                  LukyLukeL Offline
                  LukyLukeL Offline
                  LukyLuke
                  schrieb am zuletzt editiert von
                  #14

                  @paul53
                  @bahnuhr
                  @Gargano
                  @Homoran

                  Danke, das klappt so. Ich habe die Datenpunkte TorConnected und TorHi angelegt und dann das blockly von Paul53 übernommen. Die Zustände werden jetzt korrekt angezeigt.
                  Hoffentlich versteh ich irgendwann wie man sowas als script richtig erstellt.

                  Fall gelöst.
                  Nochmals vielen Dank!!

                  paul53P GarganoG 2 Antworten Letzte Antwort
                  0
                  • LukyLukeL LukyLuke

                    @paul53
                    @bahnuhr
                    @Gargano
                    @Homoran

                    Danke, das klappt so. Ich habe die Datenpunkte TorConnected und TorHi angelegt und dann das blockly von Paul53 übernommen. Die Zustände werden jetzt korrekt angezeigt.
                    Hoffentlich versteh ich irgendwann wie man sowas als script richtig erstellt.

                    Fall gelöst.
                    Nochmals vielen Dank!!

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

                    @LukyLuke sagte:

                    Fall gelöst.

                    So wird die Abfrage aber nur einmal bei Skript-Start ausgeführt. Für eine zyklische Abfrage sollte request innerhalb eines Zeitplans ausgeführt werden.

                    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

                    LukyLukeL 1 Antwort Letzte Antwort
                    0
                    • paul53P paul53

                      @LukyLuke sagte:

                      Fall gelöst.

                      So wird die Abfrage aber nur einmal bei Skript-Start ausgeführt. Für eine zyklische Abfrage sollte request innerhalb eines Zeitplans ausgeführt werden.

                      LukyLukeL Offline
                      LukyLukeL Offline
                      LukyLuke
                      schrieb am zuletzt editiert von
                      #16

                      @paul53

                      Da hast du recht. Ich überlege noch wie ich das am sinnvollsten regele. Das Tor wird von mehreren Funksendern, Handys und zukünftig auch von der Doorstation im Haus bedient.
                      Entweder ich lasse das im Intervall abfragen oder immer nur bei bedarf wenn z.B. das Tor per webrequest bedient werden soll.

                      Das besondere ist das ich auch noch die Teilöffnung mit berücksichtigen möchte. Das Tor öffnet dann nur etwa 1 m.

                      1 Antwort Letzte Antwort
                      0
                      • LukyLukeL LukyLuke

                        @paul53
                        @bahnuhr
                        @Gargano
                        @Homoran

                        Danke, das klappt so. Ich habe die Datenpunkte TorConnected und TorHi angelegt und dann das blockly von Paul53 übernommen. Die Zustände werden jetzt korrekt angezeigt.
                        Hoffentlich versteh ich irgendwann wie man sowas als script richtig erstellt.

                        Fall gelöst.
                        Nochmals vielen Dank!!

                        GarganoG Offline
                        GarganoG Offline
                        Gargano
                        schrieb am zuletzt editiert von Gargano
                        #17

                        @LukyLuke Hier mal das Script zum Anschauen und evtl. Ausprobieren. Liest jede Minute den Zustand des Tores ein und speichert den Zustand in '0_userdata.0.Tor.Connected' und '0_userdata.0.Tor.Hi'

                        Vorher das npm Module axios in de JS Instanz eintragen

                        2c383cee-48f7-403c-9b8b-69a909051265-grafik.png

                        const prefix = '0_userdata.0.'; //'javascript.0.'; //
                        const idTorConnected = prefix+"Tor.Connected";
                        const idTorHi = prefix+"Tor.Hi";
                        
                        const creatStateList = [
                            {name :idTorConnected, type:"boolean", role : "value"},
                            {name :idTorHi, type:"boolean", role : "value"}
                        ]
                        
                        async function createState (item){
                            await createStateAsync(item.name, { 
                                    type: item.type,
                                    min: 0,
                                    def: 0,
                                    role: item.role
                                });
                        }
                        
                        async function makeStatList() {
                            creatStateList.forEach (function(item) {
                                createState(item);
                            });
                        }
                        
                        makeStatList();
                        
                        const axios = require('axios');
                        const url = 'https://svr39.supla.org/direct/**************/read?format=json';
                        
                        // mySchedule im JS Editor mit dem Uhrsymbol oben rechts erstellen
                        
                        var mySchedule ='* * * * *';  // jede Minute
                        schedule(mySchedule, getTor);
                        
                        function getTor() {
                            axios.get(url)
                                .then(function (response) {
                                    // handle success
                                    let tor = response.data;  
                                    console.log ('JSON '+JSON.stringify(tor));
                                    setState(idTorConnected, tor.connected);
                                    setState(idTorHi, tor.hi);
                                })
                                .catch(function (error) {
                                    // handle error
                                    console.log(error);
                                })
                            
                        }
                        
                        
                        
                        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

                        802

                        Online

                        32.6k

                        Benutzer

                        82.1k

                        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