Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. JS Variable einlesen

NEWS

  • Neues YouTube-Video: Visualisierung im Devices-Adapter
    BluefoxB
    Bluefox
    11
    1
    371

  • Neuer ioBroker-Blog online: Monatsrückblick März/April 2026
    BluefoxB
    Bluefox
    8
    1
    1.9k

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    11
    1
    803

JS Variable einlesen

Scheduled Pinned Locked Moved Unsolved Blockly
23 Posts 4 Posters 3.0k Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • liv-in-skyL liv-in-sky

    @AlexAtHome ich persönlich stehe mit JSON auf "kriegsfuss" - ich persönlich mache das immer mit einem html formatierten string - den kann man auch gut mit concat erstellen - diesen schreibe ich in einen string-datenpunkt (samt css-formatierung, die im vis definiert ist) - dannach zeige ich den Datenpunkt als htmlwidget in der vis an)

    so entstand z.b diese view: das sind alles datenpunkte, die in den scripts (teilweise blockly oder linux-bash-scripts) erzeugt werden

    Image 7.png

    AlexAtHomeA Offline
    AlexAtHomeA Offline
    AlexAtHome
    wrote on last edited by
    #21

    @liv-in-sky

    WOW!

    Ich taste mich derzeit sukzessive zu komplexeren Problemstellungen vor, und bin schon sehr stolz, dass mein JSON als Tabelle jetzt in der VIS angezeigt wird :-D
    Kann gut sein, dass ich das später dann nochmal umbaue. Klar, als HTML/CSS kann ich sicher besser formatieren.

    Wenn ich fertig bin, poste ich mein Script hier, wie Du vorgeschlagen hast. Denn stimmt absolut, davon profitieren vielleicht ja andere :-) (wie ich selbst auch schon oft...)

    liv-in-skyL 1 Reply Last reply
    0
    • AlexAtHomeA AlexAtHome

      @liv-in-sky

      WOW!

      Ich taste mich derzeit sukzessive zu komplexeren Problemstellungen vor, und bin schon sehr stolz, dass mein JSON als Tabelle jetzt in der VIS angezeigt wird :-D
      Kann gut sein, dass ich das später dann nochmal umbaue. Klar, als HTML/CSS kann ich sicher besser formatieren.

      Wenn ich fertig bin, poste ich mein Script hier, wie Du vorgeschlagen hast. Denn stimmt absolut, davon profitieren vielleicht ja andere :-) (wie ich selbst auch schon oft...)

      liv-in-skyL Offline
      liv-in-skyL Offline
      liv-in-sky
      wrote on last edited by
      #22

      @AlexAtHome

      ja die ersten erfolge sind die besten - es gibt also grund zum feiern :-)

      nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

      AlexAtHomeA 1 Reply Last reply
      1
      • liv-in-skyL liv-in-sky

        @AlexAtHome

        ja die ersten erfolge sind die besten - es gibt also grund zum feiern :-)

        AlexAtHomeA Offline
        AlexAtHomeA Offline
        AlexAtHome
        wrote on last edited by
        #23

        @liv-in-sky
        Danke Dir :-)

        Hier nun mein fertiges Script: (der Urpsprungscredit geht an @liv-in-sky , im Thread oben steht das Blockly mit dem Trigger)

        var cacheSelector = $('[id=alexa2.0.Echo-Devices.*.*Alarm.*.enabled]');
        //log("Ausgelesene Alarme: ");
        //log(cacheSelector);
        
        var count = 0;
        var len = 0;
        var weckerArray = [];
        var str2 = "";
        var weckerOnOff = "";
        
        cacheSelector.each(function(id, i) {
            count++;
        
            //log("Alarm de_aktiviert: " + id);
            //var weckerOnOff = getState(id).val;    
            
            var str = id.substring(0,id.indexOf('enabled')-1);
            //log("Alarm: " + str + " ist aktiviert? " + weckerOnOff);
        
            if (id.indexOf('Music') > 0) {
                str2 = id.substring(0,id.indexOf('MusicAlarm')-1);
            } else {
                str2 = id.substring(0,id.indexOf('Alarm')-1);
            }
        
            var echoName = getObject(str2).common.name;
            var weckerName = getObject(str).common.name;
        
        // aktiver Alarm?
        if (getState(id).val) {
         
            log("Auf Gerät " + echoName + " ist Wecker " + weckerName + " aktiviert.");
            weckerOnOff="On";
            
        } else {
        
            // deaktiver Alarm   
            log("Auf Gerät " + echoName + " ist Wecker " + weckerName + " inaktiv.");
            weckerOnOff="Off";
        
        }
           var weckerEntry = {Echo:echoName, Wecker:weckerName, OnOff:weckerOnOff};
           // in len wird die neue Anzahl Elemente im Array geschrieben
            len = weckerArray.push(weckerEntry);
            log("Element " + len + " angefügt.");
        
        });
            log("Insgesamt sind " + count + " Wecker definiert.");
            
            // JSON erstellen und in Datenpunkt schreiben
            var weckerJSON = JSON.stringify(weckerArray);
            setState("javascript.0.aw_sonstiges.ListeWecker", weckerJSON);
            log("JSON in Datenpunkt geschrieben.")
        

        In der VIS wird das derzeit ganz simpel mittels einer JSON-Tabelle angezeigt.

        1 Reply Last reply
        1

        Hello! It looks like you're interested in this conversation, but you don't have an account yet.

        Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

        With your input, this post could be even better 💗

        Register Login
        Reply
        • Reply as topic
        Log in to reply
        • Oldest to Newest
        • Newest to Oldest
        • Most Votes


        Support us

        ioBroker
        Community Adapters
        Donate

        337

        Online

        32.9k

        Users

        83.0k

        Topics

        1.3m

        Posts
        Community
        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
        ioBroker Community 2014-2025
        logo
        • Login

        • Don't have an account? Register

        • Login or register to search.
        • First post
          Last post
        0
        • Home
        • Recent
        • Tags
        • Unread 0
        • Categories
        • Unreplied
        • Popular
        • GitHub
        • Docu
        • Hilfe