Skip to content
  • 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
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. Abruf von JSON vom Truckstick

NEWS

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.8k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.1k

Abruf von JSON vom Truckstick

Geplant Angeheftet Gesperrt Verschoben JavaScript
4 Beiträge 3 Kommentatoren 477 Aufrufe 2 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.
  • R Offline
    R Offline
    robbsen
    schrieb am zuletzt editiert von Homoran
    #1

    Hallo Zusammen,

    im TruckiStick (https://github.com/trucki-eu/Trucki2Shelly-Gateway) gibt es zwar einen MQTT Server der liefert jedoch einen Wert nicht (VBat cutoff).
    Ich bin inzwischen soweit, dass http://192.168.x.xxx/json das man den Wert dort abrufe kann, also möchte ich diesen Wert per Script abrufen und in eine Variable schreiben. Leider habe ich sonst immer Blockly genutzt und das ist hier vermutlich fehl am Platz.

    Ich würde mich daher freuen wenn mir jemand bei JavaScript helfen könnte. Bisher bin ich soweit gekommen: Ein Wert kommt leider noch nicht raus.
    Spannend wäre in dem Kontext dann auch gleich die andere Richtung den Wert zu schreiben.

    const axios = require('axios');
    const { setState } = require('iobroker.js-controller');
    
    let vBatCutoffValue;
    
    function getData() {
        axios.get('http://192.168.x.xxx/json')
            .then(response => {
                vBatCutoffValue = response.data.VBATCUTOFF;
                console.log("VBat Cutoff-Wert:", vBatCutoffValue);
                
                // Wert in das Objekt javascript.0.Testwert.1 schreiben
                setState('javascript.0.Testwert.1', vBatCutoffValue);
            })
            .catch(error => {
                console.error('Fehler beim Abrufen der Daten:', error);
            });
    }
    
    // Daten zuerst abrufen
    getData();
    
    // Daten alle 30 Sekunden aktualisieren
    setInterval(getData, 30000); // 30 Sekunden in Millisekunden
    
    
    CodierknechtC 1 Antwort Letzte Antwort
    0
    • R Offline
      R Offline
      robbsen
      schrieb am zuletzt editiert von
      #2

      Hab zwar schon einen anderen Weg über die Instanz von Parser gefunden, es würde mich dennoch interessieren wie es funktioniere könne 🙂

      mickymM 1 Antwort Letzte Antwort
      0
      • R robbsen

        Hab zwar schon einen anderen Weg über die Instanz von Parser gefunden, es würde mich dennoch interessieren wie es funktioniere könne 🙂

        mickymM Online
        mickymM Online
        mickym
        Most Active
        schrieb am zuletzt editiert von
        #3

        @robbsen Du kannst auch mit einem Blockly den JSON String analysieren.

        Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

        1 Antwort Letzte Antwort
        0
        • R robbsen

          Hallo Zusammen,

          im TruckiStick (https://github.com/trucki-eu/Trucki2Shelly-Gateway) gibt es zwar einen MQTT Server der liefert jedoch einen Wert nicht (VBat cutoff).
          Ich bin inzwischen soweit, dass http://192.168.x.xxx/json das man den Wert dort abrufe kann, also möchte ich diesen Wert per Script abrufen und in eine Variable schreiben. Leider habe ich sonst immer Blockly genutzt und das ist hier vermutlich fehl am Platz.

          Ich würde mich daher freuen wenn mir jemand bei JavaScript helfen könnte. Bisher bin ich soweit gekommen: Ein Wert kommt leider noch nicht raus.
          Spannend wäre in dem Kontext dann auch gleich die andere Richtung den Wert zu schreiben.

          const axios = require('axios');
          const { setState } = require('iobroker.js-controller');
          
          let vBatCutoffValue;
          
          function getData() {
              axios.get('http://192.168.x.xxx/json')
                  .then(response => {
                      vBatCutoffValue = response.data.VBATCUTOFF;
                      console.log("VBat Cutoff-Wert:", vBatCutoffValue);
                      
                      // Wert in das Objekt javascript.0.Testwert.1 schreiben
                      setState('javascript.0.Testwert.1', vBatCutoffValue);
                  })
                  .catch(error => {
                      console.error('Fehler beim Abrufen der Daten:', error);
                  });
          }
          
          // Daten zuerst abrufen
          getData();
          
          // Daten alle 30 Sekunden aktualisieren
          setInterval(getData, 30000); // 30 Sekunden in Millisekunden
          
          
          CodierknechtC Online
          CodierknechtC Online
          Codierknecht
          Developer Most Active
          schrieb am zuletzt editiert von
          #4

          @robbsen
          Deine lokalen IP's musst Du nicht X'en. Die sehen bei allen gleich aus.

          @robbsen sagte in Abruf von JSON vom Truckstick:

          Leider habe ich sonst immer Blockly genutzt und das ist hier vermutlich fehl am Platz.

          Geht mit Blockly genau so gut.
          Wie sieht denn das JSON aus?

          "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

          Proxmox 9.0.15 LXC|8 GB|Core i7-6700
          HmIP|ZigBee|Tasmota|Unifi
          Zabbix Cerrtified Specialist
          Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

          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

          723

          Online

          32.4k

          Benutzer

          81.4k

          Themen

          1.3m

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

          • Du hast noch kein Konto? Registrieren

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